如何将 Super(左)键重新映射到 Control 键

如何将 Super(左)键重新映射到 Control 键

谁能告诉我如何将我的Super(左)键重新映射到Ctrl键?

我的意思是Super(左)应该起到Ctrl关键作用。

答案1

要对键盘进行重大更改,包括重新映射字符和更改修饰符,您需要使用 xmodmap 实用程序 - 请参阅man xmodmap。有几种方法可以执行更改:

  • 通过命令行

    xmodmap -e "your commands"
    
  • 或者将命令写入类似的文件.xmodmaprc,然后在您的登录项或 .bashrc 中使用以下命令执行它

    xmodmap .xmodmaprc
    

    如果您命名该文件,~/.xmodmap它将在登录时自动执行。

现在命令

您要执行的操作分为两个步骤。首先,取消 Super 与其修饰符的映射,然后将其映射到控件。

  1. 在终端窗口中运行xmodmap -pm以获取绑定修饰符列表。在我的计算机上(可能还有您的计算机上),Super 被称为mod4Super_LSuper_R是输出相同修饰符的单独键。

    现在您可以取消映射修饰符了。运行 xmodmap 命令(使用上述方法之一)

    remove mod4 = Super_L
    

    现在,物理按键在内部仍然被称为 Super_L,但它不执行任何操作。

  2. 现在只需重新映射它。运行 xmodmap 命令:

    add control = Super_L
    

如果您稍后想要撤消此操作,只需使用适当的参数运行相同的命令。

没有 Super_R?

xmodmap -pm 的输出可能会给出几个名为 Super_L 的键,但没有一个名为 Super_R 的键。如果是这样,您现在有多个额外的键分配给 Control,但没有分配给 Super。您必须重命名一个键。(注意:它可能会给您几个 Super_L 和至少一个 Super_R。这没问题。)

表中的键名旁边都有一个带括号的十六进制数字。此数字是键盘上键的物理键码(可能因​​型号而异)。如果您需要将一个 Super_L 更改为 Super_R,请先找到要与 Super_R 关联的键码(不确定哪个是正确的?运行,xev然后点击右侧 Super 几次。输出迷宫中的某个位置是“keycode = 133”(具有不同的数字))。运行 xmodmap 命令

keycode 133 = Super_R

重命名密钥,然后

add mod4 = Super_R

将其分配给 Super。

答案2

命令行:

xmodmap -e "remove mod4 = Super_L"
xmodmap -e "add control = Super_L"

或者输入~/.Xmodmap在启动时激活:

remove mod4 = Super_L
add control = Super_L

答案3

如果您想使用 GUI:

  1. 安装/打开 Gnome Tweaks
  2. 点击Keyboard & Mouse
  3. 点击Additional Layout Options
  4. 扩张Ctrl position
  5. 选择Swap Left Win with Left Ctrl

答案4

尝试一下这个:

clear Control
clear mod4
remove Control = Control_L Control_R
remove mod4 = Super_L Super_R
add Control = Super_L

将以上几行放入您的~/.Xmodmap并执行xmodmap ~/.Xmodmap

相关内容