分页: 1 / 1

gvim的esc如何做到进入normal模式,并让输入法转入英文状态?

发表于 : 2016-04-30 19:34
谢宝良
就是按下Esc,它就自动完成两件工作,即进入normal,又把输入法转入英文状态。

能否把Esc map 成<esc>(变成normal的快捷键)跟<shift>(变成英文状态的快捷键)

Re: gvim的esc如何做到进入normal模式,并让输入法转入英文状态?

发表于 : 2016-04-30 19:47
vickycq

Re: gvim的esc如何做到进入normal模式,并让输入法转入英文状态?

发表于 : 2016-04-30 20:02
lilydjwg

Re: gvim的esc如何做到进入normal模式,并让输入法转入英文状态?

发表于 : 2016-04-30 22:00
duguyipiao
求问有没有ibus的解决方案,好像之前的解决方案都失效了。

https://github.com/bouzuya/vim-ibus
https://github.com/hsanson/vim-im

Re: gvim的esc如何做到进入normal模式,并让输入法转入英文状态?

发表于 : 2016-05-01 0:02
谢宝良
我使用的是小小输入法,只能是ibus。
我用外部命令:

!xdotool key 0xffe3
!xdotool key 0xff1b

的确能做到同时转换normal,跟输入法状态。
可惜输入法只能从一个输入法转换到下一个输入法,不能指定一定转换为英文状态。

Re: gvim的esc如何做到进入normal模式,并让输入法转入英文状态?

发表于 : 2016-05-01 9:26
谢宝良
找到方法了:

代码: 全选

[key]
#打开输入法
trigger=CTRL_SPACE
#二三重码选择
select=LSHIFT RSHIFT
#中英文切换
CNen=LCTRL
#临时英语模式
tEN=NONE
#切换输入法
switch=CTRL_LSHIFT
#翻页
page=- =
#以词定字
w2c=[ ]
#汉字过滤
filter=\\
#调词频
move=CTRL_UP CTRL_DOWN
#显示输入条
ishow=`
#一键切换到输入法
switch_default=CTRL_`
#切换到英语
switch_1=CTRL_E
原来在小小输入法里,这个能指定转换到英文状态。
switch_1=CTRL_E

两句话搞定了。
!xdotool key 0xffe3+E
!xdotool key 0xff1b

现在的问题是如何把这个vim脚本重新绑定到Esc键上?
第一句是按下ctrl+E,转换到英文状态,
第二句是按下Esc,转换到normal下。

如果再map到Esc,那不死循环了?