Allow keyboard shortcuts to be customized
Problem to solve
GitLab has a lot of existing keyboard shortcuts, and there are a lot of open issues about adding new shortcuts.
It's really difficult to implement keyboard shortcuts that:
- Don't interfere with existing shortcuts (see #26989 (closed) and #250673)
- Work consistently across all platforms, locales, and browsers (see #17600)
- Have some logical connection to the action being performed
Keyboard shortcuts are also very personal; it's difficult to build shortcuts work well for everybody.
Proposal
Allow keyboard shortcuts to be individually customized (or disabled) in User Settings > Preferences. Shortcut customizations would be stored in the database and applied when a user is logged in.
Intended users
Power users of GitLab - particularly people who spend lots of time creating or commenting in issues or reviewing MRs.
User experience goal
Users should be able to use GitLab from the keyboard in ways that are natural and intuitive to them.
Further details
A first step would be to move the "disable keyboard shortcuts" option to User Settings > Preferences: #202494 (closed).
Documentation
This page would need to be updated with instructions on how to customize keyboard shortcut bindings.
What is the type of buyer?
This ability should be available in Core.
Is this a cross-stage feature?
Yes, any GitLab feature that implements shortcuts would benefit from this change.