Changes since last version Fixes: - Fixed compile error on arm due to different char size - Fixed child processes becoming zombies - Fixed infinite loop on config files bigger than 512B - Fixed memory allocation bug upon reloading config file - Fixed crash upon suspending and resuming computer - Fixed bug where last hotkey would be ignored - Fixed crash with small parse block sizes Additions: - Added -h flag - Added -d flag - Added some keys aliases - Added button events - Parsed keys are now case-insensitive Others: - Better code readability - Added license in source file - Keys are now stored in keys.h - Better errors regarding invalid config files - Makefile respects system's $CC |
||
---|---|---|
tests | ||
.gitignore | ||
config.template | ||
hkd.1 | ||
hkd.c | ||
keys.h | ||
LICENSE | ||
makefile | ||
README.md |
hkd: hotkey deamon
hkd allows to define system-wide hotkeys independent from the graphical session, this means, that hotkeys will work in x11, wayland and even in a tty.
Compatibility
hkd only works on linux as it uses the linux-specific epoll and inotify APIs as well as the evdev interface for input recognition.
Compiling
hkd doesn't require any libraries and has no dependency other than a standard C
library, musl
should work too (altough I have not yet tested it).
Run make
to compile, make clean
to remove the mess and make debug
to
compile a debug binary to use with gdb. To install run make install
and
make uninstall
if you re done with it.
Documentation
The man page is (at least in my opinion) pretty simple and explanatory, the program itself is very small (under 600 loc excluding comments and blanks) and the config file is documented trough an example. That said if I recive enough requests for further documentation I'll provide it.