当前位置: 首页>>技术问答>>正文


如何永久切换Caps Lock和Esc

ubuntuer 技术问答 , 去评论

问题描述

我如何永久性切换Saucy中的Caps LockEsc键功能?我可以使用这个命令暂时执行它(直到重新启动):

/usr/bin/setxkbmap -option "caps:swapescape"

我尝试将该命令添加为启动应用程序,但它似乎没有做任何事情。

最佳解决方法

另一种方法是通过dconf-editor。此方法从gnome-tweak-tool中执行一些额外的步骤,但如果您不想从柚木工具中提取依赖项,该方法非常有用。

这将允许您使用caps:swapescape语法并自动保持更改永久。

sudo apt-get install dconf-tools

启动dconf-editor后,导航到org>> gnome>>桌面>> input-sources

xkb-options中添加您需要的选项。选项字符串由单引号括起来并用逗号分隔。小心不要删除两端的括号。

keyboard-layout,ubuntu

您可以使用此方法输入系统设置>>中不再可用的大部分传统xkb选项。文本输入。例外情况是用于切换键盘布局的设置,目前由于错误而无法使用。

有关选项和语法的列表,请在终端中使用man 7 xkeyboard-config

此处可以使用的另一个常用选项是terminate:ctrl_alt_bksp,以允许ctrl + alt + backspace结束X-session。

次佳解决方法

好的,找到了一种使用gnome-tweak-tool的方法。

从终端跑,跑

sudo apt-get install gnome-tweak-tool -y && gnome-tweak-tool

您可以在“打字 – >大写锁定键行为”中找到一个将Caps Lock和Esc互换的选项。

第三种解决方法

您可以使用terminal中的xmodmapCaps LockEsc交换:

xmodmap -e "keycode 9 = Caps_Lock NoSymbol Caps_Lock"   #this will make Esc to act as Caps Lock
xmodmap -e "keycode 66 = Escape NoSymbol Escape"        #this will make Caps Lock to act as Esc

要在每个会话中获得此更改,请在运行先前的命令后,使用以下命令,使用新的键盘映射创建名为.xmodmap的文件:

xmodmap -pke > ~/.xmodmap

然后,在主目录中创建一个名为.xinitrc的文件,其中包含以下行/命令:

xmodmap .xmodmap

第四种方法

一个适用于大多数Linux发行版的解决方案:

setxkbmap -option caps:swapescape

其他选项是可能的:

  • caps:none停用

  • caps:escape使它成为一个额外的逃生

  • caps:super使它成为一个额外的超级(Windows)密钥。

要在启动时进行此项工作,您需要将其放入~/.profile中,因为这只会在交互式登录后运行。

第五种方法

类似于@ Radu的answer,但与14.04兼容(另见this answer)。

xmodmap -e "remove Lock = Caps_Lock"
xmodmap -e "keycode 9 = Caps_Lock NoSymbol Caps_Lock"
xmodmap -e "keycode 66 = Escape NoSymbol Escape"
xmodmap -pke > ~/.xmodmap

如果不起作用,请更换:

xmodmap -e "remove Lock = Caps_Lock"

有:

xmodmap -e "clear Lock"

第六种方法

转到屏幕右上角的齿轮图标,然后:

  • 点击系统设置

  • 键盘布局

  • 选项…(右下角)

  • 大写锁定键行为(第4下)

  • 向下滚动并选择“交换ESC和大写锁定”。

完成!

第七种方法

在终端中运行一次该命令。 dconf应该已经与gnome 3一起安装。

dconf write "/org/gnome/desktop/input-sources/xkb-options" "['caps:swapescape']"

第八种方法

这可以从“Keyboard Layout” system setting完成。点击”options”查看您正在使用的布局,然后在“Caps Lock键行为”下选择“切换Escape和Capslock”。

第九种方法

我已经在C语言中专门构建了一个克服many of the issues with the xcape/xmodmap solution的工具:

它做得更多一点,因为它也将CAPSLOCK同时作为ESC和CTRL。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/838.html,未经允许,请勿转载。

相关文章