在 IdeaVim 中退出插入模式后自动切换输入法为英文

2017-04-01 01:40:41 +08:00
 hadixlin

之前发过一个帖子咨询大家的处理经验. 之后搜索网上一些资料,最终通过参照smartim写了个插件,初步解决该问题.

安装后在编辑器中输入":set switch-to-english-when-exit-insert-mode",这个把这个命令加入到~/.ideavimrc 中,即可启用该功能.

目前只能支持 macOS 因为不会写 LInux/Windows 的 Native 代码,希望有兴趣的朋友可以帮忙补充.

有需要的朋友可以下载安装,多提意见.

https://pan.baidu.com/s/1nuMXnIx

注意该插件依赖 IdeaVim 需要先安装 IdeaVim,毕竟是作为它的扩展存在的,如果不用 IdeaVim 那么我的插件也没什么用.

4147 次点击
所在节点    程序员
20 条回复
weixiangzhe
2017-04-01 04:39:45 +08:00
马克下
ahjsrhj
2017-04-01 06:44:20 +08:00
Mark
lonenol
2017-04-01 08:30:01 +08:00
厉害
lonenol
2017-04-01 08:35:43 +08:00
已测试好用.
要是直接能切换到当前输入法的英文模式就更好了(类似于按了 shift 键)
forbreak
2017-04-01 08:53:57 +08:00
mark
AbrahamGreyson
2017-04-01 09:11:38 +08:00
太感谢了,这个问题逼疯我。
jixiangqd
2017-04-01 09:23:42 +08:00
好用。。
要是切走以后能再切回来就好了,或者像 @lonenol 说的那样,按 shift 就好了
hadixlin
2017-04-01 15:26:34 +08:00
@jixiangqd 我也想这样,如果输入法提供外部接口,也是可以做到这样的.
hadixlin
2017-04-01 15:27:32 +08:00
@jixiangqd 下次更新加上保存输入发状态的功能,回到插入模式后切回来.敬请期待.
jixiangqd
2017-04-01 16:02:36 +08:00
@hadixlin 如果直接系统级模拟 shift 按键是不是就能实现了? github 开源吧,这样更新了还能接到 notify~
hadixlin
2017-04-01 16:22:53 +08:00
@jixiangqd 我是做 Java 的不了解也不会写操作系统 API,如果有人能贡献本地动态库的话,就可以做了.

晚点儿代码整理好了,会放到 github 上.
xiaohanqing
2017-04-01 20:06:53 +08:00
我在 Windows 下有相同的实现,通过 libcall
hadixlin
2017-04-01 22:54:42 +08:00
@xiaohanqing 我不会写 windows 代码,我把头文件给你,可以帮忙写个 windows 的实现吗?
jinboker
2017-04-02 07:59:55 +08:00
这个为啥不放到 github 上呢
hadixlin
2017-04-02 09:38:51 +08:00
@jinboker 代码整理好会放在上面
xiaohanqing
2017-04-02 10:19:22 +08:00
Echoldman
2017-04-02 15:44:41 +08:00
我用 ctrl+I 作为切换输入发的方式。这样会到导致无效吗?我 10.12.4 , PHPStrom 2017.1
hadixlin
2017-04-02 16:55:37 +08:00
@Echoldman 跟快捷键设置无关,只是调用 macOS 的系统 api 把输入法切换到美国英文键盘
sadhen
2017-04-02 20:28:51 +08:00
👍
aristotll
2017-04-03 03:19:52 +08:00
mark for github

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/351877

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX