我希望按下I J K L时它能起到箭头键的作用。为此,我将以下内容粘贴到文件底部:CapsLock/usr/shar/X11/xkb/symbols/pc
partial partial alphanumeric_keys
xkb_symbols "alpha_arrows" {
key <AC07> { symbols[Group2]=[ Left, Left, Left, Left ] };
key <AC08> { symbols[Group2]=[ Down, Down, Down, Down ] };
key <AC09> { symbols[Group2]=[ Right, Right, Right, Right ] };
key <AD08> { symbols[Group2]=[ Up, Up, Up, Up ] };
};
然后我将以下命令添加到我的.bashrc
文件中:
setxkbmap -option grp:caps_switch
这确实禁用CapsLock并允许Alt-CapsLock切换大写锁定命令。我的理解是按住CapsLock应该会激活我上面设置的“Group2”键绑定...但这根本就不会发生。
我尝试过多次使用 清除缓存rm -rf /var/lib/xkb/*
并重启机器。仍然没有成功。值得注意的是,我能够交换Left-Control和Left-Super,所以我知道这xkb/symbols/pc
是要编辑的正确文件。
问题:
有没有办法检查/确认“Group2”已激活?您可能已经看出来,我对此的工作原理了解不多。
将该代码块粘贴到文件底部是否有效
xkb/symbols/pc
?Home有没有同样简单的替代方法来重新映射这些键?我还对重新映射、End等感兴趣...
让我走到这一步的参考资料:
- http://domwatson.codes/2014/11/who-needs-capslock-anyway-part-2.html
- https://unix.stackexchange.com/questions/153841/how-to-make-altgri-jkl-work-properly-as-cursor-keys
笔记:这个问题似乎在互联网上以各种形式被问到过,我犹豫着是否要给系统增加更多噪音。但我读到的很多东西xmodmap
现在(显然)已经过时了。AutoKey 让我想刺瞎自己的眼睛。
答案1
我刚刚将我的自定义布局添加到 elementary OS Loki 中的 GUI 中。
要添加我的自定义布局,我执行以下操作:
- 编辑现有的 xkb/symbols/ru 文件以在那里添加我的布局;
- 编辑 evdev.xml 文件以添加适当的变体;
- 编辑evdev.lst文件以添加适当的变体;
- 编辑基础文件文件以添加适当的变体;
- 编辑基础列表文件以添加适当的变体;
看来您没有执行步骤#3、4、5。
你能尝试一下并报告结果吗?
编辑:
我已经做了一些测试,准备说,布局肯定出现在 GUI 中编辑 evdev.xml 和 evdev.lst 后。
适当的变体似乎是:xkb_symbols“alpha_arrows“因此应该在 evdev.lst 中添加以下行:
alpha_arrows gb: Doms l33t 布局
编辑 base.xml 和 base.lst 似乎是多余的和不必要的。
编辑2:此外,还有似乎是初始指南中的一个错误. 应该添加到 evdev.xml
<layout>
<configItem>
<name>alpha_arrows</name>
<shortDescription>endom</shortDescription>
<description>Dom's l33t layout</description>
<languageList>
<iso639Id>eng</iso639Id>
</languageList>
</configItem>
<variantList />
</layout>