击键有时是同一软件中的语言 A,有时是语言 B

Keystroke are sometime language A and sometime language B within the same software

我在笔记本电脑上遇到了令人困惑的行为。它是双引导W10/Mint20 都是英文安装。笔记本电脑的键盘是德语 (CH),但在办公桌前工作时我的键盘是法语。

我只是在需要时切换键盘设置,几乎所有的击键都绝对没问题。但是有些击键有时会注册为其他语言的一部分。

示例:我正在使用 Visual Studio 代码进行编码并且键盘设置为法语,但是如果我输入命令 CTRL+z,它会关闭选项卡. CTRL-y 正在撤消上一个操作。德语键盘中的相应键是 wz。所以看起来键盘传递了错误的信息。 使用 Developer: Toggle Keyboard shortcut trouble shooting 如果输入 CTRL-z:

可以看到下面的内容
[2021-01-08 17:08:20.229] [renderer1] [info] [KeybindingService]: | Converted keydown event - modifiers: [ctrl], code: ControlLeft, keyCode: 5 ('Ctrl')
[2021-01-08 17:08:20.229] [renderer1] [info] [KeybindingService]: \ Keyboard event cannot be dispatched.
[2021-01-08 17:08:21.494] [renderer1] [info] [KeybindingService]: / Received  keydown event - modifiers: [ctrl], code: KeyW, keyCode: 90, key: z
[2021-01-08 17:08:21.494] [renderer1] [info] [KeybindingService]: | Converted keydown event - modifiers: [ctrl], code: KeyW, keyCode: 56 ('Z')
[2021-01-08 17:08:21.494] [renderer1] [info] [KeybindingService]: | Resolving ctrl+[KeyW]
[2021-01-08 17:08:21.494] [renderer1] [info] [KeybindingService]: \ From 3 keybinding entries, matched workbench.action.closeActiveEditor, when: no when condition, source: built-in.

所以我明白在这个特定的上下文中,键入 Ctrl-z 被处理为 Ctrl-w。同时,如果我在我的脚本中键入 *z,它会显示为这样...

这不是唯一出现这种情况的软件,ImageJ 的快捷方式也受到影响(快捷方式 q 变成快捷方式 a),但是对面的Firefox的快捷键不是(Ctrl-z确实是Ctrl-Z)...

如果有人知道要检查什么,我根本不知道哪里出了问题。我用同样的问题测试了另一个 Fr 键盘。

我想我终于明白问题的根源了...可以使用键盘快捷键更改键盘布局,但是... 由于某种原因,它并没有完全改变行为,而且快捷方式经常被搞砸。为此,似乎需要手动更改“键盘”->“布局”选项卡(参见图片)中的顺序,并在列表顶部更改所需的顺序。 这至少解决了我的代码和 ImageJ 问题。 (我只需要记住,现在这些软件中的快捷方式总是基于法语布局键盘。

也许有一天这会对其他人有所帮助:)

Where can I change these settings!?