我尝试在 VSCode 中切换行注释,但该命令不起作用。当 Windows 上的键盘布局为挪威语 QWERTY 时,键盘快捷键将映射到
ctrl
+'
(或 ctrl+oem_2
)。当尝试手动分配键盘快捷键时,我发现当与 '
键组合按下时,ctrl
键并未被注册。
根据
键绑定故障排除指南运行命令
Developer: Toggle Keyboard Shortcuts Troubleshooting
,然后按ctrl
+'
,我看到以下输出:
2023-11-07 10:46:12.931 [info] [KeybindingService]: / Soft dispatching keyboard event
2023-11-07 10:46:12.931 [info] [KeybindingService]: \ Keyboard event cannot be dispatched
2023-11-07 10:46:12.931 [info] [KeybindingService]: / Received keydown event - modifiers: [ctrl], code: ControlLeft, keyCode: 17, key: Control
2023-11-07 10:46:12.931 [info] [KeybindingService]: | Converted keydown event - modifiers: [ctrl], code: ControlLeft, keyCode: 5 ('Ctrl')
2023-11-07 10:46:12.931 [info] [KeybindingService]: \ Keyboard event cannot be dispatched in keydown phase.
2023-11-07 10:46:13.551 [info] [KeybindingService]: + Ignoring single modifier ctrl due to it being pressed together with other keys.
此输出表明 VSCode 未在组合中注册
'
键。这不是 VSCode 特定的问题,因为我可以在 https://w3c.github.io/uievents/tools/key-event-viewer.html 看到相同的行为
在这里我们可以看到,没有为
'
键创建keydown事件,并且根据键绑定故障排除指南,如果VSCode没有收到好的组合键,我必须配置我的操作系统或驱动程序来释放应用程序的组合键。
ctrl
+k
ctrl
+c
快捷方式可以添加注释,我知道我可以将toggleLineComment命令分配给另一个快捷方式,但最好在布局中使用相同的快捷方式,并且这可以通过单个快捷方式而不是多个和弦来完成。
如何配置 Windows、驱动程序或键盘布局,以便在按下
'
+ctrl
时发送 '
的按键事件?
问题是我安装了 1Password 应用程序,当转到“设置”>“常规”>“自动填充:”时,它被映射到
ctrl
+\
。删除此映射解决了问题。