InputHelper插件
好奇怪哦,竟然一个文本编辑器在linux平台下竟然原生不能切换并使用系统自带的输入法= =。所以就有了一系列插件,看到网上各种方法,我觉得还是使用inputhelper这个插件最简单。
使用这个插件可以通过Package Control来进行安装。
Package Control:控制台下执行下面的命令
import urllib.request,os,hashlib; h = ‘df21e130d211cfc94d9b0905775a7c0f’ + ‘1e3d39e33b79698005270310898eea76’; pf = ‘Package Control.sublime-package’; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( ‘http://packagecontrol.io/’ + pf.replace(’ ‘, ‘%20’)).read(); dh = hashlib.sha256(by).hexdigest(); print(‘Error validating download (got %s instead of %s), please try manual install’ % (dh, h)) if dh != h else open(os.path.join( ipp, pf), ‘wb’ ).write(by)
也可以直接下载InputHelper插件的安装包unzip到preferrence->browse package指向的文件夹中
然后就可以通过Ctrl+Shift+Z来启动该命令。
接着还是打不开,好气
然后就还是打不开。= = 气死了。
直接在控制台下使用python解释器调用lib下的input_text_xxx_gui.py什么鬼的文件,能够正确执行并返回输入的结果,然而在sublime中不能正确执行。使用命令行输入
view.run_command(“input_helper”)
返回了错误,错误提示是在subprocess的popen函数调用时,Permission deny…what’s?
毕竟不是太会python,可能是哪里的权限没弄好。但是目录结构下所有的文件都已经修改成了跟其他的插件目录下文件一模一样了。所以只好用自己比较熟悉的方法。将lib里的python文件当成shell中执行的脚本文件。
- 将lib中的python文件设置为可执行的文件 sudo chmod +x input_test_xxx_gui.py
- 将inputHelper目录下的Inputhelper.py的popen函数添加参数Shell=True,且将args改为input_test_xxx_gui.py的绝对路径就可以了。