如何在Xubuntu中将一个键重新映射到Caps Lock键?

我正在使用Xubuntu 12.04。我应该如何交换或重新映射Control(或任意键)和Caps Lock键呢?
4个回答

另一种方法:
sudo vi /etc/default/keyboard

然后找到以XKBOPTIONS开头的那一行,并添加ctrl:nocaps来将Caps Lock键变为额外的Control键,或者添加ctrl:swapcaps来交换Caps Lock和Control键的位置。
例如,我的设置如下:
XKBOPTIONS="lv3:ralt_alt,compose:menu,ctrl:nocaps"

然后运行
sudo dpkg-reconfigure keyboard-configuration

这种方法更好的原因是它会在虚拟控制台(例如Ctrl+Alt+F1)和图形桌面上生效。

1这太美了!XKBOPTIONS已经存在多久了? - Ehtesh Choudhury
2XkbOptions是X中的一个设置选项。这个功能由console-setup软件包提供,似乎至少从Lucid版本开始就存在于Ubuntu中,可能还有更早的版本。 - Mikel
我喜欢你的方法,但不幸的是它并没有起作用。我甚至看到了一个新的初始化图像生成。 - Evan Carroll
2在Xubuntu 14.04上完美运行,谢谢。 - Bjarke Freund-Hansen
1在Ubuntu 14.04上也能完美运行,没有任何问题。 - Doorknob
每次我启动桌面(在我这里是LXDE),都必须执行最后一个命令吗? - Dror
Dror,是的,在一些系统上是可能的。 - Mikel
6使用caps:escape将大写锁定键重新映射为Esc - Harry Moreno
我喜欢它在虚拟控制台上工作,但有没有办法使其“持久化”,这样我就不必在每次启动时都进行操作? - unhammer
1据我回忆,你还需要确保已经启用了任何“使用系统键盘布局”选项,并/或禁用IBus。请参见例如http://askubuntu.com/a/442415/1951 - Mikel
我为了测试一些东西而安装了Unity,所以不能移除Ibus。它已经设置了“使用系统键盘布局”,我尝试过sudo dconf write /desktop/ibus/general/use-system-keyboard-layout true,但没有起作用。最后只能制作一个.Xmodmap文件。 - unhammer
1这适用于14.04版本。我对Linux在如今竟然没有一个设置来解决这个问题感到震惊。 - Edward Falk
也适用于Lubuntu 15.10。其他答案中有几个似乎只适用于Xubuntu。 - typesanitizer
此外,如果您使用的是类似于Ubuntu的操作系统,/usr/share/X11/xkb/rules/xorg.lst中存储了完整的选项列表。 - Forbesmyester
这似乎只在X中工作,而不是虚拟控制台,在Ubuntu 17.10上进行了测试。 - Mitar
适用于xfce ubuntu 18.04 LTS。但需要重新启动才能生效。 - scientific_explorer

要交换键位,请按照以下步骤操作:
1. 打开Xubuntu设置管理器会话和启动 2. 在“会话和启动配置器”中,选择
应用程序自动启动(顶部选项卡)→ 添加(底部按钮)
3. 现在,在添加应用程序屏幕上,
- 名称:控制键和CapsLk交换 - 描述:交换这两个键 - 命令:/usr/bin/setxkbmap -option "ctrl:swapcaps"
将Caps Lock键重新映射为Control键的步骤如下:
1. 打开Xubuntu菜单,选择"设置管理器"。 2. 在"会话和启动"选项中进行配置。 3. 在"应用程序自动启动"选项卡中,点击"添加"按钮。 4. 在"添加应用程序"界面上,进行相应设置。
Name: Remap CapsLk to Ctrl
Description: Remap the CapsLk key to Control
Command: /usr/bin/setxkbmap -option "ctrl:nocaps"

4哇,这比以前难多了。 - foxxtrot
在我几乎全新的Ubuntu 13.10安装上,当手动执行时它可以工作,但无法从“会话和启动”中启动。 - Chris
我不再建议使用这种方法,可以尝试其他答案。http://askubuntu.com/a/223674/29097 - Evan Carroll

对于使用小写字母而不是大写字母进行组合,请将compose:caps作为-options参数。

对于Raring版本(至少): 打开“键盘布局”(从Dash菜单中)。 点击“选项…”进入“键盘布局选项”菜单。 我选择了“Ctrl键位置” => “将Caps Lock键设为Ctrl键”。当然,你的喜好可能不同。

2“Dash”是什么意思?希望不是指的Unity(在Xubuntu中)。这听起来很像Gnome的解决方案,在Xubuntu中是不可用的。 - Marty Fried