It would be nice for the user to be able to set default key bindings in their termonad.hs configuration file.
Currently there are two types of key bindings:
-
Key bindings to the current menu actions, like new tab, close tab, copy, paste, etc. These are set in the following function:
|
applicationSetAccelsForAction app "app.newtab" ["<Shift><Ctrl>T"] |
-
Other key bindings that aren't associated with a menu action, like Alt-1 for switching to the first terminal tab. These are set in the following function:
|
handleKeyPress :: TMState -> EventKey -> IO Bool |
|
keyMap :: Map Key (TMState -> IO Bool) |
It would be nice to give the user the ability to change both of these key bindings.
That is to say, the user should be able to change the key associated with the menu actions (like new tab). The user should also be able to change key bindings that aren't associated with a menu action (like Alt-1 for switching to the first terminal). Finally, the user should be able to add new key bindings that aren't associated with a menu action to call arbitrary functions they define.
It would be nice for the user to be able to set default key bindings in their
termonad.hsconfiguration file.Currently there are two types of key bindings:
Key bindings to the current menu actions, like
new tab,close tab,copy,paste, etc. These are set in the following function:termonad/src/Termonad/App.hs
Line 317 in 77cb108
Other key bindings that aren't associated with a menu action, like
Alt-1for switching to the first terminal tab. These are set in the following function:termonad/src/Termonad/Keys.hs
Line 110 in 77cb108
termonad/src/Termonad/Keys.hs
Line 63 in 77cb108
It would be nice to give the user the ability to change both of these key bindings.
That is to say, the user should be able to change the key associated with the menu actions (like
new tab). The user should also be able to change key bindings that aren't associated with a menu action (likeAlt-1for switching to the first terminal). Finally, the user should be able to add new key bindings that aren't associated with a menu action to call arbitrary functions they define.