将左 Alt 键映射到 Control,将 Alt Gr 映射到 Alt

将左 Alt 键映射到 Control,将 Alt Gr 映射到 Alt

我在笔记本电脑上使用 Emacs。但是,我没有左键Ctrl,所以我考虑将左键映射Alt到 left Ctrl,将右键Alt( Alt Gr) 映射到Alt(Meta)。这样,我就可以用拇指按下按键了。我该怎么做呢?

我现在正在使用 Windows,但稍后也可能想在 Linux 上尝试一下。

答案1

您可以使用 AutoHotkey 将几乎任何键重新映射到任何其他键。查看重新映射站点:http://www.autohotkey.com/docs/misc/Remap.htm

该代码应该可以工作:

LAlt::LCtrl
LControl & RAlt::Alt

完整的键列表请看这里:http://www.autohotkey.com/docs/KeyList.htm


编辑:

由于此解决方案不起作用(无论出于何种原因),我建议查看 StackOverflow 上的这个答案:https://stackoverflow.com/questions/229633/how-to-globally-map-altgr-key-to-alt-key

这个人遇到了同样的问题,并设法在注册表中将 Alt Gr 重新映射到 Alt(无论如何这更可靠)。

答案2

在 Linux 上,您可以使用xevxmodmap

从终端开始xev并查看其输出以确定您的键的键码是什么。

KeyPress event, serial 36, synthetic NO, window 0x1400001,
    root 0x15a, subw 0x0, time 2274037, (436,185), root:(437,636),
    state 0x0, keycod*emphasized text*e 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

这里我的键的键码Alt_L是 64。现在使用xmodmap为该键码分配一个新的键符。

xmodmap -e "keycode 64 = Control_L"

相关内容