xmodmap 未在 .profile 中运行

xmodmap 未在 .profile 中运行

我最近按照本指南将一些键映射到我的 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在运行命令之前引入一秒钟的延迟。

相关内容