All Projects → tildearrow → input-modifier

tildearrow / input-modifier

Licence: GPL-2.0 license
uinput based key bindings and macros tool for Linux

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to input-modifier

wc-keyboard
自定义数字键盘, 仿照大众点评闪惠买单的键盘
Stars: ✭ 67 (+294.12%)
Mutual labels:  keyboard
hillside
Family of split ergonomic keyboards with three rows of five or six keys, aggressive column stagger, a generous thumb arc and most have a partial bottom utility row
Stars: ✭ 101 (+494.12%)
Mutual labels:  keyboard
V60Mini-firmhack
A project to disassemble the KBParadise V60 Mini keyboard firmware.
Stars: ✭ 23 (+35.29%)
Mutual labels:  keyboard
bepo developpeur
Quelques modifications de la disposition clavier Bépo pour la rendre plus adaptée à mon usage. Update Bépo V1.1
Stars: ✭ 20 (+17.65%)
Mutual labels:  keyboard
snackymini-keyboard
Snackymini Keyboard
Stars: ✭ 28 (+64.71%)
Mutual labels:  keyboard
GKey
German Keyboard Layout for TempleOS
Stars: ✭ 20 (+17.65%)
Mutual labels:  keyboard
cAndroid
cAndroid is tool for control your PC by Android phone
Stars: ✭ 23 (+35.29%)
Mutual labels:  keyboard
NumPad
Number Pad (inspired by Square)
Stars: ✭ 81 (+376.47%)
Mutual labels:  keyboard
fpga-virtual-console
VT220-compatible console on Cyclone IV EP4CE55F23I7
Stars: ✭ 33 (+94.12%)
Mutual labels:  keyboard
nucular-keyboard
USB Keyboard Adapter for old ThinkPad keyboards
Stars: ✭ 27 (+58.82%)
Mutual labels:  keyboard
keymacs
Ergonomic keyboard layout for nonergonomic keyboards.
Stars: ✭ 22 (+29.41%)
Mutual labels:  keyboard
djinn
Djinn Split Keyboard
Stars: ✭ 685 (+3929.41%)
Mutual labels:  keyboard
ukrainian-typographic-keyboard
Combined Ukrainian keyboard layout with typographic symbols
Stars: ✭ 356 (+1994.12%)
Mutual labels:  keyboard
re-pressed
re-pressed is a clojurescript library that handles keyboard events for re-frame applications.
Stars: ✭ 150 (+782.35%)
Mutual labels:  keyboard
NavilIME
Windows Hangul (Korean) Input Method Editor based on TSF
Stars: ✭ 79 (+364.71%)
Mutual labels:  keyboard
BadUSB
Personal implementation of the BadUSB exploit with an Atmel 8-bit AVR ATTiny85 acting as a HID keyboard
Stars: ✭ 63 (+270.59%)
Mutual labels:  keyboard
CustomKeyboard
A simple and fast implementation of a custom numeric keypad. There is always a keyboard for you.
Stars: ✭ 20 (+17.65%)
Mutual labels:  keyboard
SulfurKeyboard
Android Gingerbread Keyboard with Myanmar(Zawgyi-one) Language
Stars: ✭ 18 (+5.88%)
Mutual labels:  keyboard
ctrl-info
Personal discoveries for Massdrop CTRL Keyboard
Stars: ✭ 65 (+282.35%)
Mutual labels:  keyboard
mirrorboard-mac
Intuitive one-handed typing on macOS by mirroring the keyboard while spacebar is held
Stars: ✭ 29 (+70.59%)
Mutual labels:  keyboard

input-modifier

uinput based key bindings and macros tool for Linux.

The purpose of this project is to allow the user to assign actions to keys, which can come in handy if you want to do repetitive actions easily (e.g. tap a key repeatedly by simply holding it or launch a sequence of keys with a single keypress), launch applications using keys, disabling keys you don't want to be pressed by accident, mapping gaming keypads, etc.

Comparison with Xdotool

The advantages over Xdotool are:

  • Interacts with the evdev input layer, which is lower-level than X.
  • Works outside X, e.g. VT or Wayland.

The disadvantages are:

  • You can't directly map a key to closing a window, or something that has to do with X (however, you can execute xdotool from input-modifier).

Comparison with AutoKey

The advantages over AutoKey are: (although I've never used it)

  • Is written in C++, which means less overhead than Python.
  • Allows for doing things like remapping keys (besides executing applications and running macros) without resorting to complex hacks.

The disadvantages are:

  • No GUI yet.
  • Does not allow for DE-specific actions or X11-specific ones (but I am pretty sure it may be possible to use both programs in tandem).

installation

Arch Linux

AUR.

universal installer

download the installer from here (select the first element from "Assets").

extract release:

tar -xvf <RELEASE>.tar.gz

run the installer:

cd input-modifier
sudo ./install

add yourself to the input group if not done previously:

sudo usermod -a -G input $USER

and then re-login.

running

run imodd:

imodd

usage

documentation can be found here.

to-do

  • X11 integration (per-application profile bind, warping cursor and the like).

  • bug fixes.

  • proper packages.

  • passing environment variables to execute.

  • changing the weird devices setting.

    • I will talk about this later
  • ignoring non-input devices such as the Firefly or Polaris.

  • fix pressing non-bit-set keys.

  • implement binds for relative and switch events.

  • add feature here.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].