如何设置右Alt作为Win(超级)键?

虽然有很多不同的文章如何更改左Alt以模拟win,但我想映射正确的Alt来执行此操作。 我想转移到11.10,我回到团结2d并且没有赢得关键。 我甚至没有在我找到的文章中获得密钥代码…任何帮助或好的建议?

您可以使用xmodmap重新映射键盘上的任何键; 特别是,您可以重新映射右Alt以充当Super / Win键。

使用以下内容在主目录中创建名为.Xmodmap的文件:

 ! free up right-Alt for remapping remove mod1 = Alt_R ! Right-Alt remapped to Super clear mod4 keycode 108 = Super_R add mod4 = Super_R 

当您注销然后再次登录时,GNOME应该询问您是否要加载.Xmodmap文件; 回答“是”,你准备好了。 (你只会问过一次。)

或者,您可以.Xmodmap从终端加载.Xmodmap配置:

 xmodmap .Xmodmap 

根据X服务器版本和键盘型号,有一些事情可能会有所不同。 以下各项可帮助您将.Xmodmap文件调整到您的特定环境。

  1. 检查你的右Alt键最初是否在mod1上 :在终端窗口中发出命令xmodmap ,你应该得到一个这样的输出:

     xmodmap: up to 3 keys per modifier, (keycodes in parentheses): shift Shift_L (0x32), Shift_R (0x3e) lock Caps_Lock (0x9), Caps_Lock (0x4e) control Control_L (0x25), Control_R (0x69) mod1 Alt_L (0x40), Alt_R (0x6c), Alt_L (0xcc) mod2 mod3 Mode_switch (0xcb) mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce) mod5 

    如果Alt_R标记没有出现在mod1行中,而是出现在Alt_R标记上,请相应地调整.Xmodmap

  2. 检查右键Alt键是否为键码108:在终端窗口中,键入命令xev ,然后聚焦弹出的小方块窗口。 如果在那里键入右Alt键,您应该看到终端窗口中出现的行。 寻找像这样的节:

     KeyPress event, serial 25, synthetic NO, window 0x5000001, root 0xbd, subw 0x5000002, time 867397196, (53,48), root:(54,49), state 0x0, keycode 108 (keysym 0xffea, Alt_R), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False 

    keycode字后面的数字是.Xmodmap文件中用于重新映射右Alt的数字

我发现这很简单:

 remove mod1 = Alt_R add mod4 = Alt_R 

按预期工作。 我错过了这种方法的任何“陷阱”吗?