# Key Mapper Tool to change the mapping of your input device buttons.

# Running First, install the package: ```bash git clone https://github.com/sezanzeb/key-mapper.git cd key-mapper sudo python3 setup.py install ``` To keep injecting the mapping after closing the window, the daemon needs to be running: ```bash sudo key-mapper-service -d ``` To open the UI to modify the mappings, use: ```bash sudo key-mapper-gtk -d ``` You can also start it via your applications menu. # Dependencies Depending on how those packages are called in your distro: `python3-distutils-extra` `python3-evdev` `python3-dbus` It works with both Wayland and X11. # Tests ```bash pylint keymapper --extension-pkg-whitelist=evdev sudo python3 setup.py install && python3 tests/test.py ``` # Roadmap - [x] show a dropdown to select valid devices - [x] creating presets per device - [x] renaming presets - [x] show a mapping table - [x] make that list extend itself automatically - [x] read keycodes with evdev - [x] inject the mapping - [x] keep the system defaults for unmapped buttons - [x] button to stop mapping and using system defaults - [x] highlight changes and alert before discarding unsaved changes - [ ] automatically load presets on login for plugged in devices - [ ] automatically load presets when devices get plugged in after login - [x] ask for administrator permissions using polkit - [x] make sure it works on wayland - [ ] add to the AUR, provide .deb and .appimage files - [ ] support timed macros, maybe using some sort of syntax