-
Notifications
You must be signed in to change notification settings - Fork 277
Keybinding Suggestions and Contribution Opportunities #1423
Copy link
Copy link
Open
Labels
A-configurationArea: Configuration, settings, options, preferences etc.Area: Configuration, settings, options, preferences etc.A-inputArea: Input management, keyboard layout, IME etc.Area: Input management, keyboard layout, IME etc.E-good-first-issueCall for participation: Good first issueCall for participation: Good first issueE-help-wantedCall for participation: Help is requested to fix this issue.Call for participation: Help is requested to fix this issue.enhancementNew feature or requestNew feature or requestmetaA big-picture issue, often collecting a number of other issues for discussing overarching solutionsA big-picture issue, often collecting a number of other issues for discussing overarching solutions
Description
Activity
Metadata
Metadata
Assignees
Labels
A-configurationArea: Configuration, settings, options, preferences etc.Area: Configuration, settings, options, preferences etc.A-inputArea: Input management, keyboard layout, IME etc.Area: Input management, keyboard layout, IME etc.E-good-first-issueCall for participation: Good first issueCall for participation: Good first issueE-help-wantedCall for participation: Help is requested to fix this issue.Call for participation: Help is requested to fix this issue.enhancementNew feature or requestNew feature or requestmetaA big-picture issue, often collecting a number of other issues for discussing overarching solutionsA big-picture issue, often collecting a number of other issues for discussing overarching solutions
This is the place to be if you want to suggest a keybinding, or find a nice and (usually) easy task to start contributing.
Suggestions
Default
PR/Issue
SaveMod+S
#1426
Mod+1 - Mod+9
Previous TabMod+PgUp / Cmd+Shift+[
#778/#1447
Next TabMod+PgDn / Cmd+Shift+]
#778/#1447
Mod+C
#1233
Mod+X
#1233
Mod+V
#1233
F8
Shift + F8
F4
Shift + F4
Cmd+,
Zoom InCtrl++
#1556/#1629
Zoom OutCtrl+-
#1556/#1629
Zoom ResetCtrl+0
#1556/#1629
Do you have other suggestions? Post a comment below! If the keybinding exists in vscode as well, it would be nice if you could post the name, command and default keybinding used there.
How to contribute
Keybindings are defined in
KeyBindingsStoreConnector. Here's the keybinding forunfo, for example:oni2/src/Store/KeyBindingsStoreConnector.re
Lines 162 to 166 in bb2df4c
When invoked this will generate a
Command("undo")action, which needs to be handled in a Store somewhere. Theundocomamnd is handled inVimStoreConnectorhere:oni2/src/Store/VimStoreConnector.re
Line 855 in bb2df4c
Which invokes the effect defined a bit further up, here:
oni2/src/Store/VimStoreConnector.re
Lines 827 to 834 in bb2df4c
A lot of keybindings will be like this, just delegating to libvim to handle it. Some might require a bit more though, but a good place to start is to look into how this is done and vim, and whether it can be delegated in the same manner as this.
If you feel ready to tackle one of the suggestions above, post a comment below to lets us know, then dive in! If you have questions, the best place to ask is in the #dev channel on our Discord server.