在阅读完所有答案后,我很惊讶地发现您可以执行以下操作。
<keybind key="Num_Lock">
<action name="Execute">
<command>numlockx on</command>
</action>
</keybind>
因此,每次按时Num,都会禁用数字锁定。它将执行numlockx on
,重新激活numlock。
这个名字来自我的输出xev
,给了我77键和名字Num_Lock
在@MartinVegters的情况下,他需要等待几秒钟,以便numlockx on
在事件Num被处理后一定可以执行。由于在内核中的numlock处理与执行之间存在竞争条件numlockx
。
对于这种情况,您可以编写一个小的脚本,denumlock.sh
例如
#!/bin/sh
sleep "$1"
numlockx on
并在Key绑定中使用它
<command>/bin/sh denumlock.sh 1</command>
这很脏但是可以用。
我推荐以下是我无法测试的内容。您最好遵循建议使用的第一个答案
xmodmap -e 'keycode 77 = Escape'
但是对于LXDE,您需要使用LXDE自动启动机制,该机制与Openbox编辑.NET的方式不同~/.config/openbox/autostart
。
在LXDE中,您显然需要进行编辑~/.config/lxsession/LXDE/autostart
或使用Lubuntu 进行编辑~/.config/lxsession/Lubuntu/autostart
,该工具包含用于启动的命令。(请参阅Arch文档和LXDE文档)您可能需要创建该文件并添加此行。
@xmodmap -e 'keycode 77 = Escape'
遗憾的是,正如我所说的,我无法测试它是否有效,因为我只有一台运行LXDE的VM。