You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.1 KiB
Markdown
44 lines
1.1 KiB
Markdown
# Key Mapper
|
|
|
|
**Almost done**
|
|
|
|
GUI tool to map input buttons to e.g. change the macro keys of a mouse or any keyboard to something
|
|
different. It should not be device specific, any input device supported by Linux plug and play will likely
|
|
work.
|
|
|
|
<p align="center">
|
|
<img src="data/screenshot.png"/>
|
|
</p>
|
|
|
|
# Running
|
|
|
|
```bash
|
|
sudo python3 setup.py install && sudo key-mapper-gtk -d
|
|
```
|
|
|
|
# Dependencies
|
|
|
|
No idea which one are relevant at the moment
|
|
|
|
`evtest`, `libinput`, `python-evdev`
|
|
|
|
# Tests
|
|
|
|
sudo is required because some tests actually read /dev stuff.
|
|
|
|
```bash
|
|
sudo python3 setup.py install && sudo python3 tests/test.py
|
|
```
|
|
|
|
# Roadmap
|
|
|
|
- [x] show a dropdown to select an arbitrary device from `xinput list`
|
|
- [x] creating presets per device
|
|
- [x] renaming presets
|
|
- [ ] show a list for mappings `[keycode, current key for that keycode -> target]`
|
|
- [ ] make that list extend itself automatically
|
|
- [ ] read keycodes with something like xev
|
|
- [x] generate a file for /usr/share/X11/xkb/symbols/ for each preset, (symlink to home .config/?)
|
|
- [x] load that file with `setxkbmap`
|
|
- [ ] automatically load the preset (on startup?, udev on mouse connect?)
|