我想将这四个键重新映射()-=
到Caps+jkl;
各自的位置。这样做的目的是不要离开主行来输入这些在编程中非常常见的字符。
这包括要求Caps Shift l
生产_
,这相当于Shift -
我也想在受到压力时自行Caps
采取行动。ESC
我已经尝试过的:
- https://github.com/simos/keyboardlayouteditor- 安装有语法错误
- https://www.bedroomlan.org/projects/evrouter/- 不支持多键
- 编辑
/usr/share/X11/xkb/symbols/pc
- 我没有看到组合选项,也无法从中找出答案文档 - evdevremapkeys- 没有描述中的支持这个问题
xdotool
- 可以工作但是很慢...- 直接映射
vim
- 这是我的后备方案,但我希望这个功能可以在全系统范围内使用
任何帮助都值得感激,也许一些指导就足以让我解决这个问题。
谢谢!
答案1
解决方法
警告:如果发生任何小的打字错误,编辑文件/usr/share/X11/xkb/symbols/us
是非常危险的......它会导致登录循环......只有在这种情况下您可以从 tty 管理事情才能继续......
- 将目录更改为
/usr/share/X11/xkb/symbols/
运行命令:
cd /usr/share/X11/xkb/symbols/
- 备份
us
文件
运行命令:
sudo cp us usbackup
- 编辑文件
us
运行命令:
sudo -H gedit us
- 编辑如下行
内容:
key <AC01> { [ a, A ] };
key <AC02> { [ s, S ] };
key <AC03> { [ d, D ] };
key <AC04> { [ f, F ] };
key <AC05> { [ g, G ] };
key <AC06> { [ h, H ] };
key <AC07> { [ j, J, parenleft ] };
key <AC08> { [ k, K, parenright ] };
key <AC09> { [ l, L, minus, underscore ] };
key <AC10> { [ semicolon, colon, equal, plus] };
key <AC11> { [ apostrophe, quotedbl ] };
保存文件并关闭。
gnome-shell可能需要使用Alt+或 Logout & Login 进行刷新..未经测试..F2rEnter
使用以下命令将 Caps_Lock 设为 3 级修饰符
运行命令:
gsettings set org.gnome.desktop.input-sources xkb-options "['lv3:caps_switch']"
使用上述命令,Caps_Lock
修饰符变为,当按住 Caps_Lock 时,ISO_Level3_Shift
将从编辑的文件中打印第 3 个键符。类似地,如果按住 Caps_Lock 和 Shift,则会打印第 4 个键符。us
- 现在要使修饰符 ISO_Level3_Shift 在按下和释放时自行运行..使用这个伟大的工具
xcape
..
运行命令:
sudo apt install xcape
描述:配置修饰键,使其在按下和释放时充当其他键。xcape 允许您在单独按下和释放修饰键时将其用作另一个键。请注意,这比按下原始键稍慢,因为直到释放该键时才会发生按下事件。默认行为是在单独按下和释放左控制键时生成 Esc 键。
- 一旦安装了 xcape,请运行以下命令,使 Caps_Lock 在按下和释放时表现为 Escape。
运行命令:
xcape -e 'ISO_Level3_Shift=Escape'
- 将上述命令添加到您的启动应用程序首选项列表中,这样就无需在每次登录/启动时运行该命令。
就是这样..你完成了..
使用 Caps_Lock 修饰符可以实现所有 4 件事(
)
-
=
,使用 Caps_Lock+Shift 修饰符则_
可以实现。
当仅按下并释放 Caps_Lock 时,它充当 Escape 键,因为这就是我们的配置方式。