aboutsummaryrefslogtreecommitdiff
path: root/src/Rahm/Desktop/RebindKeys.hs
Commit message (Collapse)AuthorAge
* Break out some stuff in Dsl2.Josh Rahm2024-02-03
| | | | | Create new Grab and KeyCodeMapping modules to support keycode mapping. That subsystem did not belong in Dsl2.
* Add support for root-level keycode mappings.Josh Rahm2024-02-02
| | | | | | | | | The code is a bit of a mess, and should probably be moved out of Dsl2 and into a dedicated place, but it works. I had to do a bit of a hack to get around XMonad's ungrabbing the keyboard after a Mapping event, which is not the best, but I don't have a better way of doing it.
* Add limited ability to bind directly to keycodes.Josh Rahm2024-01-31
| | | | | | | | | | | | | | | Binding to keycodes is good for nonmnemonic key bindings -- where the choice of key is due to its position on the keyboard rather than the character associated with it. Right now only window bindings and subbindings can use keycode bindings. Root bindings can still only be keysyms and buttons. I've been using this feature to map some movement keys to Hyper. This emulates the function key on my M770 keyboard where fn+ijkl are used as arrow keys. I use the tab key as my hyper key. With xcape it can operate as a Tab key when release, or a modifier key when held down, which is awesome.
* Add export lists to all modules.Josh Rahm2022-11-23
|
* Remove more unused imports.Josh Rahm2022-11-23
| | | | GHC left some of the unused imports as `import X ()`
* Remove NoPersist.hs. It is redundant to ExtensionClass.Josh Rahm2022-11-23
|
* Change to use minimal imports.Josh Rahm2022-11-23
| | | | | This is achieved by using `stack build --ghc-options=-ddump-minimal-imports` and looking for the *.imports files.
* Format with ormolu.Josh Rahm2022-11-21
|
* Rename Internal to Rahm.DesktopJosh Rahm2022-10-09