这适用于当前会话:
costales@dev:~/Desktop$ xmodmap -e "keycode 166 = less"
costales@dev:~/Desktop$ xmodmap -e "keycode 167 = greater"
然后我创建了这个配置文件:
costales@dev:~/Desktop$ cat ~/.Xmodmap
keycode 166 = less
keycode 167 = greater
costales@dev:~/Desktop$
但是重启后就不行了。我怎么能强制重新映射在重新启动后继续存在?
我一直在使用 16.04,它似乎使用 sddm 作为其桌面管理器。在此之前它曾经是 LightDM 和 GDM。它的两个前身都被记录为自动加载
~/.Xmodmap
,但我找不到任何明确说明 sddm 的东西。因此,建议只强制它加载新脚本。你只需要运行
xmodmap ~/.Xmodmap
,你可以通过多种方式做到这一点:~/.xinitrc
运行它。.desktop
配置~/.config/autostart/
可能有几十种其他方法来管理这个,基本上做同样的事情。
根据我在 Ubuntu中重新映射密钥的长期经验,永久的解决方案是修改一个名为
evdev
./usr/share/X11/xkb/keycodes
在命令提示符下运行此命令。
sudo gedit /usr/share/X11/xkb/keycodes/evdev
请记住 gedit 是一个 Ubuntu 文本编辑器,因此您可以使用 nano 或 vim 代替 gedit。
该文件的格式为:别名:代码。您可以通过交换不同键的代码来交换按钮。例如,要将 RCONTROL 与 RETURN 交换,请将 evdev 中的两行编辑为:
<RTRN> = 105;
<RCTL> = 36;
要知道
xev
终端上运行的按钮的数字代码。我添加了一个
/etc/X11/Xsession.d/80_xmodmap
包含以下内容的文件:这每次都有效。
打开 gnome 会话属性。添加命令和名称。desktop 文件将在 ~/.config/autostart 中创建。
记住:使用绝对路径,例如 /home/xxx/.Xmodmap。永远不要使用 '~' 作为你的主目录。
在谷歌上搜索后,我能够解决我的笔记本电脑错误的键重新映射问题。我的 Thinkpad T400 上的所有故障键在重新映射后都可以正常工作。此外,它是永久性的,不会对 CPU 内核造成额外负载。
首先使用以下命令找到您的键盘布局或键码。
例如,在我的 Thinkpad T400 上找到如下键码:
通过分配功能键“F6”“F10”“F11”“F12”重新映射字符键“z”“x”“c”“v”。
如下修改行(在进行任何更改之前备份文件以在出现问题时轻松回滚)。
找到以下行并更改值:
注释这些行或删除这些行:
保存并退出。
要重新映射特殊键:
如果出现问题,请在更改回滚之前备份文件。
在函数 "xkb_symbols "editing" {" 中添加或修改以下行
保存并退出。
清除缓存。
重启。
导航
使用 sudo 权限,在编辑器中打开您想要编辑的布局。替换值。
重新启动后,将应用更改。
这是一个由于键盘硬件问题而用于重新映射键盘的示例。
键盘重映射示例
转到启动应用程序并使用以下屏幕截图中显示的内容创建一个新条目:
它每次都有效。
图形编辑器
gnome-tweaks
> 键盘和鼠标 > 其他布局选项因为 .Xmodmap 文件比 xkb 更容易编辑,所以我使用 .Xmodmap 作为“源”文件,然后将其转换为 xkb(当前标准)并在启动时使用 .bashrc 方法自动加载。
这是张贴在这里的几个简单的步骤。
完美运行,并且在放弃对 .Xmodmap 的支持时使用 xkb 未来证明。