我正在VcXsrv
使用以下命令运行
"C:\Program Files\VcXsrv\vcxsrv.exe" :0 -ac -terminate -lesspointer -multiwindow -clipboard -wgl -xkblayout us,ru -xkboptions grp:ctrl_shift_toggle
在这种情况下,我可以通过以下方式切换语言
Ctrl+Shift
但无法发送如下组合
Ctrl+ Shift+F
在 PyCharm 等程序中。如果我使用
"C:\Program Files\VcXsrv\vcxsrv.exe" :0 -ac -terminate -lesspointer -multiwindow -clipboard -wgl -xkblayout us,ru
然后就会发生相反的情况:我无法切换语言,但可以发送
Ctrl+ Shift+F
组合。
我可以同时做这两件事吗?
答案1
上次我调查时,这是一个来自 X Window 规范的长期问题。如果我没记错的话,规范规定切换必须在按下按键时发生(而不是按键释放,这是 MS Windows 一贯的做法)。出于这个原因,X.Org 维护者拒绝接受修复此行为的补丁。可能一些发行版应用了补丁,但上游没有应用。
解决方法是使用快捷键中未使用的组合。Shift+Caps、Alt+Caps、同时按 Shift、同时按 Ctrl、同时按 Alt 应该有效。请参阅https://unix.stackexchange.com/a/45499/153754获取列表。