分页: 1 / 1

vim中如何把Super键映射成ESC键(求助)

发表于 : 2010-03-05 8:38
Jarson
RT

Re: vim中如何把Super键映射成ESC键(求助)

发表于 : 2010-03-05 22:28
lilydjwg
应该做不到。但可以在 X 下或者(纯)终端下实现。

这是在 X 下交换 CapsLock 和 Esc 的脚本:

代码: 全选

#!/bin/sh

# 交换 CapsLock 和 Esc

xmodmap - <<EOF
remove Lock = Caps_Lock
keysym Escape = Caps_Lock
keysym Caps_Lock = Escape
add Lock = Caps_Lock
EOF
echo 已经交换 Caps_Lock 和 Escape 键。

Re: vim中如何把Super键映射成ESC键(求助)

发表于 : 2010-03-05 22:32
eexpress
super按键,可是被X认成修饰键的哦。就如同ctrl shift
虽然有一个键值。这映射麻烦的。记得有人搞过。

Re: vim中如何把Super键映射成ESC键(求助)

发表于 : 2010-03-05 22:34
sweating
并且建议映射到Caps Lock键而非sup键上
sup还是一只很好用的快捷键
顺便拜神..........

Re: vim中如何把Super键映射成ESC键(求助)

发表于 : 2010-03-06 8:47
Jarson
lilydjwg 写了:应该做不到。但可以在 X 下或者(纯)终端下实现。

这是在 X 下交换 CapsLock 和 Esc 的脚本:

代码: 全选

#!/bin/sh

# 交换 CapsLock 和 Esc

xmodmap - <<EOF
remove Lock = Caps_Lock
keysym Escape = Caps_Lock
keysym Caps_Lock = Escape
add Lock = Caps_Lock
EOF
echo 已经交换 Caps_Lock 和 Escape 键。
这个脚本只是实现在vim中 CapsLock 和 Esc按键的交换吧,会不会影响到其他程序中 CapsLock按键的使用。
是不是执行一次脚本就可以永久生效的呀(即不用每次都执行脚本)

恩,把Esc映射到Caps_Lock也是个好主意,因为之前不懂得如何在不打开Caps_Lock的前提下输入大写,才想把Esc映射到super,现在懂了,o(∩_∩)o...哈哈

ps:平时还真不知道怎么使用super键 :em20

Re: vim中如何把Super键映射成ESC键(求助)

发表于 : 2010-03-06 10:16
sweating
fhc2007 写了:
lilydjwg 写了:应该做不到。但可以在 X 下或者(纯)终端下实现。

这是在 X 下交换 CapsLock 和 Esc 的脚本:

代码: 全选

#!/bin/sh

# 交换 CapsLock 和 Esc

xmodmap - <<EOF
remove Lock = Caps_Lock
keysym Escape = Caps_Lock
keysym Caps_Lock = Escape
add Lock = Caps_Lock
EOF
echo 已经交换 Caps_Lock 和 Escape 键。
这个脚本只是实现在vim中 CapsLock 和 Esc按键的交换吧,会不会影响到其他程序中 CapsLock按键的使用。
是不是执行一次脚本就可以永久生效的呀(即不用每次都执行脚本)

恩,把Esc映射到Caps_Lock也是个好主意,因为之前不懂得如何在不打开Caps_Lock的前提下输入大写,才想把Esc映射到super,现在懂了,o(∩_∩)o...哈哈

ps:平时还真不知道怎么使用super键 :em20
这个脚本是全局的交换
不是很清楚Gnome的配置
如果用fvwm,sawfish等等的话,感觉就是快捷键真是少,所以不想丢super键(好吧,其实还有一个原因是我用emacs)

Re: vim中如何把Super键映射成ESC键(求助)

发表于 : 2010-03-06 14:00
lilydjwg
fhc2007 写了:
lilydjwg 写了:应该做不到。但可以在 X 下或者(纯)终端下实现。

这是在 X 下交换 CapsLock 和 Esc 的脚本:

代码: 全选

#!/bin/sh

# 交换 CapsLock 和 Esc

xmodmap - <<EOF
remove Lock = Caps_Lock
keysym Escape = Caps_Lock
keysym Caps_Lock = Escape
add Lock = Caps_Lock
EOF
echo 已经交换 Caps_Lock 和 Escape 键。
这个脚本只是实现在vim中 CapsLock 和 Esc按键的交换吧,会不会影响到其他程序中 CapsLock按键的使用。
是不是执行一次脚本就可以永久生效的呀(即不用每次都执行脚本)

恩,把Esc映射到Caps_Lock也是个好主意,因为之前不懂得如何在不打开Caps_Lock的前提下输入大写,才想把Esc映射到super,现在懂了,o(∩_∩)o...哈哈

ps:平时还真不知道怎么使用super键 :em20
这是一次性的 X 全局有效的。如果要用,建议加到启动项中去。不过如果切换到其它 tty (Ctrl+Alt+Fn)后再切换回来,或者休眠后也会失效。

我在 compiz 和 Gnome 的快捷键设置中设置了好些 Super 快捷键,如 Super + G -> Gvim, Super + T -> terminal, Super + Q -> QQ 等等。

Re: vim中如何把Super键映射成ESC键(求助)

发表于 : 2010-03-06 14:50
sweating
lilydjwg 写了:
fhc2007 写了:
lilydjwg 写了:应该做不到。但可以在 X 下或者(纯)终端下实现。

这是在 X 下交换 CapsLock 和 Esc 的脚本:

代码: 全选

#!/bin/sh

# 交换 CapsLock 和 Esc

xmodmap - <<EOF
remove Lock = Caps_Lock
keysym Escape = Caps_Lock
keysym Caps_Lock = Escape
add Lock = Caps_Lock
EOF
echo 已经交换 Caps_Lock 和 Escape 键。
这个脚本只是实现在vim中 CapsLock 和 Esc按键的交换吧,会不会影响到其他程序中 CapsLock按键的使用。
是不是执行一次脚本就可以永久生效的呀(即不用每次都执行脚本)

恩,把Esc映射到Caps_Lock也是个好主意,因为之前不懂得如何在不打开Caps_Lock的前提下输入大写,才想把Esc映射到super,现在懂了,o(∩_∩)o...哈哈

ps:平时还真不知道怎么使用super键 :em20
这是一次性的 X 全局有效的。如果要用,建议加到启动项中去。不过如果切换到其它 tty (Ctrl+Alt+Fn)后再切换回来,或者休眠后也会失效。

我在 compiz 和 Gnome 的快捷键设置中设置了好些 Super 快捷键,如 Super + G -> Gvim, Super + T -> terminal, Super + Q -> QQ 等等。
询问设计这种快捷键的思路是怎么
这种快捷键指的是
S-n S-r在n号pager上打开rxvt
S-n S-f在n号pager上打开firefox
.........
我一直想要实现这种快捷键但是没有找到方法.........

Re: vim中如何把Super键映射成ESC键(求助)

发表于 : 2013-04-30 18:58
hunterzhu
lilydjwg 写了:应该做不到。但可以在 X 下或者(纯)终端下实现。

这是在 X 下交换 CapsLock 和 Esc 的脚本:

代码: 全选

#!/bin/sh

# 交换 CapsLock 和 Esc

xmodmap - <<EOF
remove Lock = Caps_Lock
keysym Escape = Caps_Lock
keysym Caps_Lock = Escape
add Lock = Caps_Lock
EOF
echo 已经交换 Caps_Lock 和 Escape 键。
thx 暂时u1204能用