microsoft / microsoft/pxt-microbit
Ability to remap keyboard shortcuts
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 804
- Forks
- 721
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 2
Description
Is your feature request related to a problem? Please describe.
Background: https://github.com/microsoft/pxt/issues/10464 is upgrading to the latest Blockly keyboard navigation and #6152 will add a keyboard controls documentation in the app.
For some users the default keyboard shortcuts are not practical. One common scenario is potential conflicts with screenreader keyboard shortcuts, which are often customised. For this reason to improve accessibility we should allow the user to change the keys.
This should apply to:
- Blockly shortcut registry keyboard shortcuts
- Global shortcuts, e.g. those proposed on #6151
- Potentially Monaco/JavaScript Editor, though this has an overwhelming number of shortcuts and commands that could potentially have shortcuts, so it might be best tackled separately or with a UI approach that allows blocks-focussed users to easily ignore them.
Describe the solution you'd like
There's lots of examples of this type of UI in similar apps.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the Blockly shortcut registry and the global shortcuts proposed in #6151, using the keyboard controls documentation from #6152 and the upgrade context in microsoft/pxt#10464. Define the scope before implementation: configurable Blockly and global shortcuts, with Monaco/JavaScript Editor shortcuts either excluded or handled through a separate UI approach.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- accessibility, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100