我想将右 Alt 用作另一个 Control 键以与 Emacs 一起使用。
我尝试按照(经过修改)本教程进行操作:http://earthviaradio.wordpress.com/2012/02/06/swapping-the-left-alt-and-ctrl-keys-in-ubuntu-11-10/
现在我的 .Xmodmap 文件中有这个:
clear control
keycode 108 = Control_R
add control = Control_L Control_R
在我重新启动 X.org 后,它似乎对按键的行为没有影响。键 108 仍然用作 Alt。但是当我使用軍,我可以清楚地看到我的更改。当我按下右 Alt 时,我得到了以下内容:
keycode 108 (keysym 0xffe4, Control_R)
它似乎“知道”我的更改,但却不尊重它们。
答案1
如果您和我一样不幸,无法让 xmodmap 将右 Alt 键与右 Ctrl 键切换,那么也许这会有所帮助。
如果您按下右 Alt 和 e 并得到 é 那么此解决方案适合您(需要改进)。
在终端中运行此命令(使用 xev 检查你的键码):
xmodmap -e "keycode 108 = Alt_R Meta_R Alt_R Meta_R"
然后将此代码放入你的 .Xmodmap 中:
remove Control = Control_R
remove Mod1 = Alt_R
keycode 105 = Alt_R
keycode 108 = Control_R
add Control = Control_R
add Mod1 = Alt_R
此代码将您的 Alt_Gr 键设置为 Alt_R,然后将 Alt_r 与 Ctrl_R 交换。
如果您希望在注销后仍保留此信息,请将以下命令放入任何启动 shell 文件中,例如 ~/.profile:
if [ -f $HOME/.Xmodmap ]; then
xmodmap -e "keycode 108 = Alt_R Meta_R Alt_R Meta_R"
/usr/bin/xmodmap $HOME/.Xmodmap
fi
答案2
好的,在这里找到了正确答案https://askubuntu.com/questions/237564/remap-right-alt-to-behave-as-right-ctrl
我现在将发布我在 .Xmodmap 中拥有的内容,因为我想要的与链接的问题略有不同。我不想解除右 Ctrl 的绑定,只想添加另一个(右 Alt)。
remove Mod1 = Alt_R
keycode 108 = Control_R
add Control = Control_R
这是我能想到的对键盘影响最小的。它所做的只是解除 Alt_R 的绑定并将 Control_R 绑定到同一个键。这应该适用于任何 Linux,而不仅仅是 Ubuntu,正如链接的问题。我在 Ubuntu、Fedora 和 OpenSUSE 上进行了测试。