为什么我的 xmodmap 命令不会在启动/登录时运行?

Mat*_*hew 10 linux boot login xmodmap ubuntu

我想在每次登录时(或每次启动时,如果这不起作用)运行此命令: xmodmap -e 'keysym Delete = Menu' -e 'keysym Menu = Delete'

我尝试了很多东西。我把命令放在System > Preferences > Startup Applications. 我把它放在一个.sh文件中,标记它chmod +x并将该文件放在System > Preferences > Startup Applications. 我把脚本放在/etc/init.d. 我把命令放在~/.profile. 似乎没有任何效果。

最后,我把它放在我的~/.profile

touch test1
xmodmap -e 'keysym Delete = Menu' -e 'keysym Menu = Delete'
touch test2
Run Code Online (Sandbox Code Playgroud)

test1 和 test2 都被创建,但键仍然没有重新映射。如果我只是复制/粘贴命令并手动运行它,它工作正常。但它不会在登录时运行。有任何想法吗?

Gil*_*il' 11

~/.profile在登录序列的早期运行。如果您的桌面环境配置了键盘布局,它可以覆盖您刚刚加载的设置。

将您的设置放在一个名为的文件中~/.Xmodmap

keysym Delete = Menu
keysym Menu = Delete
Run Code Online (Sandbox Code Playgroud)

在Ubuntu 10.04默认的Gnome环境下,下次登录时会提示是否加载~/.Xmodmap. 加载它,并勾选“不要再问我”。然后您.Xmodmap将在默认设置后应用。