我想重新映射我的键,使其Ctrl表现为Caps Lock键,反之亦然。另外,如果可能的话,我希望这些设置仅在当前登录的用户中可用。我怎样才能做到这一点?
我是 vim 用户,与使用这台机器的其他人不同,所以我只想为我的帐户设置这些设置。
Jam*_*dge 98
13.10+:
安装和使用gnome-tweak-tool> Keyboard & Mouse> Keyboard> Additional Layout Options> Caps Lock behavior。
13.10 之前:
打开“键盘首选项”对话框 ( System -> Preferences -> Keyboard)。在布局选项卡上,单击Options...按钮。展开该Ctrl key position部分并选择Swap Ctrl and Caps Lock。
每次登录时都应应用这些设置,并且只会影响您的用户帐户。
Jor*_*tro 83
这是一种无需安装额外软件即可完成的方法:
setxkbmap -layout us -option ctrl:nocaps
Run Code Online (Sandbox Code Playgroud)
来源:
Pie*_*amy 70
如果您使用 GNOME shell,以图形方式执行此操作的最佳方法之一是安装Gnome Tweak Tool:
sudo apt-get install gnome-tweak-tool
对于 3.30.0 及更高版本:
对于旧版本:
享受您的新Ctrl钥匙!
小智 53
打开以下内容进行编辑:
sudo vi /etc/default/keyboard
Run Code Online (Sandbox Code Playgroud)
并编辑 XKBOPTIONS="ctrl:swapcaps"
然后,重新配置:
sudo dpkg-reconfigure keyboard-configuration
Run Code Online (Sandbox Code Playgroud)
或者
/usr/bin/setxkbmap -option "ctrl:swapcaps"
Run Code Online (Sandbox Code Playgroud)
小智 26
永久改变行为:
跑 dconf-editor
选择 org.gnome.desktop.input-sources
更改xkb-options为['ctrl:nocaps'](或将其添加到任何现有选项)
或在命令行上(警告 - 这会覆盖您现有的设置!):
gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:nocaps']"
Run Code Online (Sandbox Code Playgroud)
这是通过 XKB 手动(无需其他工具)完成的方法,XKB 是最近 Ubuntu 的默认密钥管理器。修改/usr/share/X11/xkb/symbols/pc,部分xkb_symbols "pc105":
//key <CAPS> { [ Caps_Lock ] };
//key <LCTL> { [ Control_L ] };
key <CAPS> { [ Control_L ] };
key <LCTL> { [ Caps_Lock ] };
Run Code Online (Sandbox Code Playgroud)
登录/注销或重新启动。请参阅此处了解更多详情。
或者,您可以在这些按钮发出的键码级别进行交换。Modify /usr/share/X11/xkb/keycodes/evdev:
<CAPS> = 64; //66;
<LCTL> = 66; //64
Run Code Online (Sandbox Code Playgroud)
您需要sudo rm -rf /var/lib/xkb/*应用更改。
小智 7
接受的答案令人困惑,因为 gnome-tweak-tools 没有显示任何“打字”部分。
相反,单击“键盘和鼠标”部分,然后选择“其他布局选项”。在那里,您将看到“大写锁定行为”,它允许将大写锁定转换为不同的键。
