microsoft / microsoft/node-native-keymap
VSCode for Linux should rely on XKB keylabels, not rely on keycodes
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 152
- Forks
- 43
- Avg merge
- 19h 38m
- Merged PRs (30d)
- 2
Description
The [Backspace] key and right Super or Ctrl key are best swapped. VSCode cannot do this.
The setkeycodes command cannot affect >1 keyboard and is reported to be ineffective on USB keyboards. As in microsoft/vscode#24690, keys are currently remapped in /usr/share/X11/xkb/keycodes/evdev, where keylabel assignments to X keycodes (Linux kernel keycodes + 8) can be effectively changed.
While some parts of VSCode—notably the settings editor—do respect these remappings, VSCode’s text editor is the only application that does not, at least not properly:
- The physical right Control key keeps acting as ctrl instead of acting as Backspace;
- The physical Backspace key keeps acting as Backspace, and additionally it acts as Control, that it is remapped to, resulting in
deleteWordLeft.
VSCode key bindings are unable to fix all of this either, only able to change deleteWordLeft to deleteLeft.
Version: 1.44.2
Commit: ff915844119ce9485abfe8aa9076ec76b5300ddd
Date: 2020-04-16T17:50:03.709Z
Electron: 7.1.11
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Linux x64 4.13.0-36-generic
Steps to Reproduce:
- Open
/usr/share/X11/xkb/keycodes/evdev - Replace:
<BKSP> = 22;
<RCTL> = 105;
with:
<RCTL> = 22; // was <BKSP>
<BKSP> = 105; // was <RCTL> - Log out, open new session;
- Check key behavior in Chrome;
- Check key behavior in VSCode.
Does this issue occur when all extensions are disabled?
Yes it is extensions agnostic.
Contributor guide
No contributing guide indexed for this repository
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.
Assessment
This issue has not been assessed yet.