在最基本的 Linux 安装中 (使用xkb
/ xmodmap
),是否可以重新映射LeftAlt+J
以发送ArrowDown
?我找到了各种解决方法或略有不同的方案,CapsLock+J
但都没有使用完全相同的方案LeftAlt+J
。
理想情况下,这应该无需更改即可工作LeftAlt
,AltGr
并且LeftAlt
仍将保持其正常行为。例如:仍然在具有菜单的应用程序中LeftAlt+F
打开菜单。File
另外,我提到是xkb
因为xmodmap
我希望它可以在任何地方工作,而不仅仅是在某些应用程序中重新映射。
要使其成为可接受的解决方案,最低要求之一是,人们应该能够打开 Firefox,聚焦地址栏,输入一些内容,并LeftAlt+J
浏览建议。
xdotool
在我的测试中,像和这样的工具xte
效果不佳,但我很高兴得到纠正。
系统:带有 BSPWM 的 Linux,因此没有 Gnome 或 KDE 解决方法。
附言:我并不是在寻求一种人工解决方案,但如果有人能给我指明正确的方向,我会自己做剩下的事情。
谢谢你!
答案1
(这个答案还没有经过测试,但你暗示这是可以的。)
这
按键映射表
该命令打印的内容xmodmap -pke
包括几列,其中前4列代表以下组合:
- 钥匙
- Shift+键
- 模式_开关+按键
- 模式_切换+Shift+键
我不知道“Mode_switch”代表什么,但可以通过以下命令将其指定为 LeftAlt:
xmodmap -e "keysym Alt_L = Mode_switch"
这意味着上面的第三个条目现在代表该键与 LeftAlt 的组合。
的密钥代码j
似乎是 44。xmodmap
可以通过以下方式检索文件中的条目:
xmodmap -pke | grep 44
可能会返回:
keycode 44 = j J j J dead_hook dead_horn dead_hook
然后将其修改为 map LeftAlt+ Jto Down即可:
keycode 44 = j J Down J dead_hook dead_horn dead_hook
为此,请使用命令
xmodmap -e "keycode 44 = j J Down J dead_hook dead_horn dead_hook"
这个答案可能需要一些调整,但可能会有效。
或者你可以考虑使用 自动键:适用于 Linux 和 X11 的桌面自动化实用程序(另请参阅 维基百科)。
AutoKey 可能已经作为标准包在您的存储库中可用。