问题:
sublime text3开启vintage插件(vim键模式)后,按Esc键切换到命令模式后,如果当前输入法是中文,需要再按快捷键切换到英文输入法,才能正常使用命令模式。所以很是麻烦。本文尝试解决这个麻烦。
之前写过针对sublime text2的文章
http://bellstar.iteye.com/blog/1671006,本篇的内容应该也适用sublime text2,只是我没有试。这篇的方法比之前的那个更好,它不需要安装别的插件,改别人的插件。但是也需要手动写一个插件,当然,有空的话,能将下面的东西打包成一个独立插件发布最好。
解决:
我是这样做的:注册escape键,按下时执行run_multiple_commands,这条指令又会执行预定义的subprocess_in_cwd和exit_insert_mode两条指令,其中subprocess_in_cwd会调用外部的changeInputMethod这条指令。(subprocess_in_cwd和exit_insert_mode都是sublime text3自带的命令)。
整个过程是这样的,在插入模式时,按Escape键后,将自动将输入法切换到英文并退出插模式,即进入命令模式。
changeInputMethod是用objective-c实现的,run_multiple_commands是以sublime text3自定义插件的形式实现的,都已包含在附件中。
安装:
将RunMultipleCommands.py文件copy到sublime text3的packages/user/目录下,将下面键映射的内容加入Default (OSX).sublime-keymap。将changeInputMethod放到/usr/local/bin目录下(如果不在此目录下,需要相应的更改下方配置的参数)
[{
"keys": ["escape"],
"command": "run_multiple_commands",
"context": [{
"key": "setting.command_mode",
"operand": false
}, {
"key": "setting.is_widget",
"operand": false
}],
"args": {
"commands": [
{"command": "subprocess_in_cwd", "args": {"cmd": "/usr/local/bin/changeInputMethod U.S.", "wait": true}, "context": "window"},
{"command": "exit_insert_mode"}
]
}
}]
分享到:
相关推荐
Sublime Text3,自带很多的插件,开发利器
已经破解汉化过,主流热门主题和插件也已经预装完成
sublime text 2 3 system verilog自动补充插件,非常好用,我自己在原版的基础上进行了一些修改使得它更加适合我们编程的风格,编程风格可以通过里面的配置文件进行修改,不会可以咨询我哦,
Sublime Text3 插件包(包含前端大部分常用插件,绝版插件)。 解决 Package Control 网站被墙后,无法下载插件,像LESS2CSS等插件 Package Control都无法搜索到了。 插件包列表: All Autocomplete,AutoFileName,...
此SublimeText3 版本为英文版本,支持Win,支持代码提示功能,且软件体积小,启动快,强烈支持! 相关软件推荐: SublimeText3汉化版(注意此中文版不支持代码提示功能) SublimeText 3简介: ...
sublimeText3插件安装 Package Control 的安装与使用方法
Sublime Text 3编辑器用的ThinkPHP5.0语法提示和语法补全插件,常用的语法都写进去了,语法中文注释,可快速用在TP5上。 可按照插件里面的代码格式,自行扩展语法提示和代码补全。
Sublime text3 破解版 免注册 Sublime text3 破解版 免注册 Sublime text3 破解版 免注册 Sublime text3 破解版 免注册 Sublime text3 破解版 免注册 Sublime text3 破解版 免注册 Sublime text3 破解版 免注册 ...
sublime text3常用插件
该插件为Sublime Text3的函数列表插件,可将就着用一用
Sublime Text 3(插件完美配置版),集合了多种插件,web开发的利器
SublimeText模板插件SublimeText模板插件SublimeText模板插件SublimeText模板插件SublimeText模板插件SublimeText模板插件SublimeText模板插件SublimeText模板插件SublimeText模板插件SublimeText模板插件Sublime...
该插件为sublime text 3的Markdown系列插件,包含了PackageControl
Sublime Text3 离线汉化包,可以使用命令安装汉化插件。建议使用命令进行汉化,比离线汉化的支持更好。具体查看压缩包内的txt 文件
直接覆盖sublime的配置文件夹
然后删除这个文件夹中已有的”Package Control文件夹”,将刚才自己下载好的并且重新命名的Package Control复制到该文件夹下,然后重新启动Sublime,这样便可以使用Package Control来安装其他插件了。
SublimeText 3 Nodejs 插件 Sublime3 SublimeText 3 Nodejs 插件 Sublime3
st3用浏览器打开,SublimeCodeIntel-master代码自动完成,SublimeFileDiffs-master比较文件的不同,Sublime-HTMLPrettify-master代码格式化,SublimeLinter-for-ST2-1.8.0,SublimeText-Nodejs-master,SublimeTmpl-...