分页: 1 / 1

【更新】大写锁定Caps Lock和左Control键互换的一种方法

发表于 : 2014-09-01 23:08
恒河沙数1
前两天发了个帖子说如何重置键盘映射。现在和大家分享一种可以将大写锁定Caps Lock和左Control键互换的一种方法。
在用户目录下新建文件.Xmodmap在其中写入以下内容:

代码: 全选

remove control = Control_L
remove control = Caps_Lock
remove lock = Caps_Lock
remove lock = Control_L
keycode 66 = Control_L NoSymbol Control_L
keycode 37 = Caps_Lock NoSymbol Caps_Lock
add control = Control_L
add lock = Caps_Lock
重启即可生效。
缺点:
切换tty时会失效,
锁屏后再次登陆会失效。
失效的时候可以使用命令:

代码: 全选

xmodmap .Xmodmap
来恢复之前的设置。
也可以使用图形化工具xkeycaps试试,但是我不太会用,还因此弄乱了键盘 :em06
如果大家有更好的方法或者是能够彻底解决可能会失效的问题,欢迎分享~

-------------------------20140904更新------------------------------------

根据5楼大神duguyipiao提供的方法,在终端中输入以下语句:

代码: 全选

$ dconf read /org/gnome/desktop/input-sources/xkb-options
然后记下得到的结果,如我的返回结果是:
['compose:rctrl', 'terminate:ctrl_alt_bksp']
这个返回的结果是你的键盘已有的一些快捷键或者是映射的改变,为了不使更换大写锁定Caps Lock和左Control键影响到其他设置,下一条命令应该这样写:

代码: 全选

dconf write /org/gnome/desktop/input-sources/xkb-options "['compose:rctrl', 'terminate:ctrl_alt_bksp', 'ctrl:swapcaps']"
注意,只有, 'ctrl:swapcaps'是新加的,其他双引号之间的内容都要根据上一个命令的返回值来写。
这个命令是立即生效~
感谢5楼大神duguyipiao

-------------------------20160130更新------------------------------------
今天不知怎么回事,重启之后,交换消失了,再使用上面的方法也没有效果,于是重看5楼提供的那篇帖子,发现了这个命令:

代码: 全选

setxkbmap -option "ctrl:swapcaps"
立即生效!

Re: 大写锁定Caps Lock和左Control键互换的一种方法

发表于 : 2014-09-03 8:50
eve_ouyang
我的noppoo chro mini 84直接可以改这个键,完美解决 :em04 :em04

Re: 大写锁定Caps Lock和左Control键互换的一种方法

发表于 : 2014-09-03 14:55
royaso
之前我也一直在找方法,

ubuntu 14.04 有用的是 unity-tweak-tool

Re: 大写锁定Caps Lock和左Control键互换的一种方法

发表于 : 2014-09-03 14:58
YeLee
改天给电脑接下脚剎少行,不然vim打字太快了,容易出问题。 :em01

Re: 大写锁定Caps Lock和左Control键互换的一种方法

发表于 : 2014-09-04 11:20
duguyipiao
参见下面的链接中的回答
http://askubuntu.com/questions/349485/r ... untu-13-10

选项可以在这里查,楼主需要的可能是['ctrl:swapcaps']
http://manpages.ubuntu.com/manpages/sau ... ontenttoc4

Re: 大写锁定Caps Lock和左Control键互换的一种方法

发表于 : 2014-09-04 20:40
恒河沙数1
duguyipiao 写了:参见下面的链接中的回答
http://askubuntu.com/questions/349485/r ... untu-13-10

选项可以在这里查,楼主需要的可能是['ctrl:swapcaps']
http://manpages.ubuntu.com/manpages/sau ... ontenttoc4
感谢楼上大神,已经成功了,经测试,切换tty或者锁屏后都不会失效~

Re: 大写锁定Caps Lock和左Control键互换的一种方法

发表于 : 2014-09-05 9:00
duguyipiao
恒河沙数1 写了:
duguyipiao 写了:参见下面的链接中的回答
http://askubuntu.com/questions/349485/r ... untu-13-10

选项可以在这里查,楼主需要的可能是['ctrl:swapcaps']
http://manpages.ubuntu.com/manpages/sau ... ontenttoc4
感谢楼上大神,已经成功了,经测试,切换tty或者锁屏后都不会失效~
真不是大神,以前用ubuntu12.04的时候键盘设置里是有这些选项的,后面安装了13.10就没有了,在网上查到了这个,才知道其实以前的设置还是有的,只是没有图形界面进行设置而已。

Re: 大写锁定Caps Lock和左Control键互换的一种方法

发表于 : 2015-08-10 15:11
囧囧有神的兔纸
duguyipiao 写了:参见下面的链接中的回答
http://askubuntu.com/questions/349485/r ... untu-13-10

选项可以在这里查,楼主需要的可能是['ctrl:swapcaps']
http://manpages.ubuntu.com/manpages/sau ... ontenttoc4
话说,真不好使。。是不是因为ubuntu版本问题,我的是14.04 LTS

➜ ~ dconf read /org/gnome/desktop/input-sources/xkb-options
['ctrl:swapcaps']

上面是复制的终端内容。
话说,能google得到的文章我基本上都看过了,比如你说的这种,比如下了一个叫什么dconf系统配置编辑器,其实跟上面是一回事,还比如
xmodmap -e "keycode 105=Caps_Lock"
xmodmap -e "keycode 66=Control_R"
这种,这种是右边ctrl能改成大写开关,但是caps键依然没有个卵用。比如还有个叫Tweaks的,里面有个选项是调换ctrl和caps的,也是没有个卵用。。
所以,呵呵呵。。我该肿么解决。。。

Re: 大写锁定Caps Lock和左Control键互换的一种方法

发表于 : 2015-08-10 17:33
恒河沙数1
囧囧有神的兔纸 写了:
duguyipiao 写了:参见下面的链接中的回答
http://askubuntu.com/questions/349485/r ... untu-13-10

选项可以在这里查,楼主需要的可能是['ctrl:swapcaps']
http://manpages.ubuntu.com/manpages/sau ... ontenttoc4
话说,真不好使。。是不是因为ubuntu版本问题,我的是14.04 LTS

➜ ~ dconf read /org/gnome/desktop/input-sources/xkb-options
['ctrl:swapcaps']

上面是复制的终端内容。
话说,能google得到的文章我基本上都看过了,比如你说的这种,比如下了一个叫什么dconf系统配置编辑器,其实跟上面是一回事,还比如
xmodmap -e "keycode 105=Caps_Lock"
xmodmap -e "keycode 66=Control_R"
这种,这种是右边ctrl能改成大写开关,但是caps键依然没有个卵用。比如还有个叫Tweaks的,里面有个选项是调换ctrl和caps的,也是没有个卵用。。
所以,呵呵呵。。我该肿么解决。。。
我是14.04这个方法可用。
第一种方法你尝试了么?
还有,你使用的是MacBook么?

Re: 大写锁定Caps Lock和左Control键互换的一种方法

发表于 : 2016-01-31 9:22
恒河沙数1
囧囧有神的兔纸 写了:
duguyipiao 写了:参见下面的链接中的回答
http://askubuntu.com/questions/349485/r ... untu-13-10

选项可以在这里查,楼主需要的可能是['ctrl:swapcaps']
http://manpages.ubuntu.com/manpages/sau ... ontenttoc4
话说,真不好使。。是不是因为ubuntu版本问题,我的是14.04 LTS

➜ ~ dconf read /org/gnome/desktop/input-sources/xkb-options
['ctrl:swapcaps']

上面是复制的终端内容。
话说,能google得到的文章我基本上都看过了,比如你说的这种,比如下了一个叫什么dconf系统配置编辑器,其实跟上面是一回事,还比如
xmodmap -e "keycode 105=Caps_Lock"
xmodmap -e "keycode 66=Control_R"
这种,这种是右边ctrl能改成大写开关,但是caps键依然没有个卵用。比如还有个叫Tweaks的,里面有个选项是调换ctrl和caps的,也是没有个卵用。。
所以,呵呵呵。。我该肿么解决。。。
你是否使用的是新版的搜狗拼音输入法?
这两天我把搜狗拼音输入法升级了一下,发现按键交换都不能用了,我只好把搜狗拼音输入法的版本降回1.1.0.0037,具体原因未知,但是换回去就好啦。