我最近按照本指南将一些键映射到我的 Alt Grhttps://medium.com/@retprogramisto/how-to-make-custom-keyboard-map-with-xmodmap-1341a1552d4f
它工作得很好,但是当需要让命令xmodmap ~/.Xmodmap
在启动时运行时,我的主目录中没有这个命令.xinitrc
,所以我把它放在了我的.profile
.
重新启动后,它没有运行命令(我猜)并且我的重音字符没有像它们应该的那样映射。
输入命令是否错误.profile
?我是否应该创建.xinitrc
并放入其中?
谢谢。
$ lsb_release -a && uname -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.3 LTS
Release: 20.04
Codename: focal
Linux leon 5.11.0-46-generic #51~20.04.1-Ubuntu SMP Fri Jan 7 06:51:40 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
答案1
.profile
当您登录时,用户会话中的键盘可能尚未初始化。
Xmodmap 不再是更改键盘布局的理想方式。例如,切换键盘布局时,每次都需要重新加载。不幸的是,编辑kbd
直接文件很复杂并且不适用于每个用户。
.Xmodmap
正式来说,登录时会自动获取一个文件。这是从 Gnome 3.8 开始不再如此..xinitrc
另一方面,仅当您使用startx
而不是登录管理器来加载会话时才有意义。
相反,您可以使用自动启动启动器在登录时自动运行该命令:使用以下命令在自动启动目录中创建一个 .desktop 启动器
gedit ~/.config/autostart/xmodmap.desktop
并输入以下代码:
[Desktop Entry]
Name=Xmodmap
Exec=xmodmap /home/<yourlogin/.Xmodmap
Terminal=false
Type=Application
X-GNOME-Autostart-Delay=1
X-GNOME-Autostart-enabled=true
如果没有延迟,激活可能无法系统地成功。X-GNOME-Autostart-Delay=1
在运行命令之前引入一秒钟的延迟。