Giter VIP home page Giter VIP logo

karabiner-virtualhiddevice-archived's Introduction

Build Status License

Karabiner-VirtualHIDDevice

Karabiner-VirtualHIDDevice is a virtual HID device driver for macOS.

  • A virtual keyboard device implementation for macOS.
    • Keyboard/Keypad Usage Page is supported.
    • Consumer Usage Page is supported.
    • AppleVendor Usage Page (fn key, Mission Control key, Launchpad key, etc.) is supported.
  • A virtual pointing device (mouse) implementation for macOS.

Supported systems

  • macOS Sierra (10.12)
  • macOS High Sierra (10.13)
  • macOS Mojave (10.14)
  • macOS Catalina (10.15)

How to build

System requirements:

  • macOS 10.13
  • Xcode 8.3.3 (required for macOS 10.12 support)
  • Command Line Tools for Xcode

Step 1: Getting source code

Clone the source from github.

git clone --depth 1 https://github.com/pqrs-org/Karabiner-VirtualHIDDevice.git

Step 2: Building a package

cd Karabiner-VirtualHIDDevice
make

The make script will create a redistributable kext into dist directory.

Example

  • example/virtual_keyboard_example
  • example/virtual_pointing_example

Usage

Execute the following instructions in Terminal.

  1. Install VirtualHIDDevice.kext by make install in the top directory.
  2. cd example/virtual_pointing_example
  3. make
  4. make run

Acknowledgments

karabiner-virtualhiddevice-archived's People

Contributors

tekezo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

karabiner-virtualhiddevice-archived's Issues

F1, F2, etc. always act as standard function keys (never as the labeled special features)

In system preferences, there is a checkbox labeled:

Use F1, F2, etc. keys as standard function keys
When this option is selected, press the Fn key to use the special features printed on each key.

Regardless of whether this box is checked or not, and regardless of whether Fn is held, the function keys always act as standard function keys.

For example, when I add kHIDUsage_KeyboardF1 to an hid_report::input_report and post it with post_keyboard_input_report, then my desktop environment still receives an F1 keypress (as opposed to a brightness_decrement keypress). All other keys work as expected, and can be properly modified with Fn as a modifier.

Is this the expected behavior of the virtual hid device?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.