Sublime配置Python编译环境
接下来配置Python编译环境(启动python的路径)
输⼊保存
{
"cmd": ["C:/Program Files (x86)/Soft Wcf/","-u","$file"],
"file_regex":"^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector":"source.python",
}
Sublime.Text.3不⽀持input()函数输⼊不⽀持input()函数输⼊;安装SublimeREPL
SublimeREPL是Sublime Text的⼀个插件,它除了可以使你在ST中运⾏解释器(REPL),还有对Python语⾔的特别⽀持,包括在本地/远程(远程仅在linux/osx平台可
⽤)virtualenv中启动Python,快速运⾏选中的代码或者启动PDB等。
本⽂介绍在windows下Sublime Text3安装SublimeREPL插件以及快捷键设置等。
-------------
1、Package Control
*我是建议使⽤的是直接内置了Package Control的Sublime Text3
在Sublime中,"⾸选项"→"插件控制"
(如果没有就意味着你ST⾥没内置这个, or  )
输⼊Install Package或者直接点击上图⿏标所在的位置
然后出现Loading repositories,
然后输⼊sublimeREPL,稍候⼀阵底部就会告诉你安装好了。
(在"⾸选项"→"插件设置"⾥能看到SublimeREPL即是安装好了)
2、Install Package时的错误
*如果第⼀步顺利安装,就可以不看这⼀步
安装时候报错:
Package Control:There are no packages available for installation
据StackOverflow上说是IPv6造成,如果我们的Intent服务提供者(ISP)不⽀持IPv6就会引发上述错误,原⽂如下:
This error is happened with IPv6 problem. If yourInternet Service Provider (ISP) does not support for IPv6 you got this error.
到了问题原因,下⾯着⼿解决它。
在cmd中输⼊以下命令:
ping sublime.wbond
这样就取得sublime.wbond的IPv4地址:
50.116.34.243
打开C:\Windows\system32\drivers\etc\hosts⽂件,增加如下对应关系:
{IPv4 address} sublime.wbond
#to solve Sublime Text IPv6
50.116.34.243 sublime.wbond
#end
3、SublimeRPEL快捷键设置
"⾸选项"→"按键绑定 - ⽤户",添加以下内容
[
{ "keys": ["f7"], "command": "toggle_setting", "args": {"setting": "word_wrap"} },
{ "keys":["f5"], "caption": "SublimeREPL: Python - RUN current file", "command": "run_existing_window_command", "args":{"id": "repl_python_run","file": "config/Python/Main.sublime-menu"}}
python默认安装路径
]
设置后退出Sublime再打开,按f7会⾃动换⾏,在py⽂件页⾯下按f5会新开⼀个标签页运⾏它。
如果按了f5⽽显⽰
can't open file '$file_basename': [Errno 2] No such file or directory
"⾸选项"→"插件设置"→"SublimeREPL"→"Settings - User",添加以下内容
{
"default_extend_env": {"PATH": "{PATH};C:\\Python27"}
}
上⾯路径为⾃⼰python的安装⽬录。
4、 Unable to download SublimeREPL. Please view the console for more details
安装时候报错⽆法下载SublimeREPL,请查看控制台。那么按下快捷键ctrl+`
得到以下信息:
Package Control: Attempting to use Urllib downloader due to WinINet error: Error downloading package. Secure channel error, server not providing SSL (errno 12157) during HTTP write phase of downloading codeload.github/wuub/Sub Package Control: Error downloading package. HTTP exception InvalidCertificateException (Host codeload.github returned an invalid certificate ([SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:550))) downlo error: Package Control
这种是⽹络问题,要么⾃⼰解决⽹络问题,要么直接下载
下载后,解压出来,⽂件夹名字改名为SublimeREPL
打开Sublime,"⾸选项"→"浏览插件",把SublimeREPL⽂件夹复制到其打开的⽂件夹⾥,再重启Sublime即可。
5、其他的
等pcat有空再说 :)
⼀、安装包管理器(如果已经安装可以忽略)
1、简单的安装⽅法:
使⽤Ctrl+`快捷键或者通过View->Show Console菜单打开命令⾏,粘贴如下代码:
点击(此处)折叠或打开
1. quest,os; pf = 'Package Control.sublime-
package'; ipp = sublime.installed_packages_path(); quest.install_opener( quest.build_opener( quest.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').quest.urlo ','%20')).read())
顺利的话,此时就可以在Preferences菜单下看到Package Settings和Package Control两个菜单了
如果是Sublime Text2,代码如下:
点击(此处)折叠或打开
1. import urllib2,os; pf='Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not ists(ipp) else None;
urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler( ))); open( os.path.join( ipp, pf), 'wb').write( urllib2.urlopen( 'sublime.wbond/' +pf.replace( '
','%20' )).read()); print( 'Please restart Sublime Text to finish installation')
2、如果简单安装提⽰有错误可以尝试⼿动安装:
1、点击Preferences > Browse Packages菜单
2.进⼊打开的⽬录的上层⽬录,然后再进⼊Installed Packages/⽬录
3.下载Package Control.sublime-package并复制到Installed Packages/⽬录(可以去百度搜下官⽅下载地址,很简单)
4.重启Sublime Text
提⽰:如果还是没安装成功,请百度sublime包管理安装⽅法;
⼆、安装SublimeREPL
1、调⽤ctrl+shift+p,输⼊:sublimerepl选择并安装;(本机安装时候居然不到这个sublimerepl,后
来输⼊install package才调出来)
2、然后tools --sublimeREPL--Python你会发现打开了⼀个python的shell窗⼝,显然这个并不是我们想要的;
3、继续往下⾛,选择好我们要执⾏的py⽂件,选择Tools -> SublimeREPL -> Python -> RUN current file,这时候已经⽀持输⼊了数据了;
如下图所⽰:
4、为了调试⽅便,我们可以把这个窗⼝放到右边,先设置sublime的窗⼝显⽰为多层:
然后再调⽤发现:
这样更⽅便调试⽤;
5、最后,由于每次运⾏程序都要执⾏:Tools -> SublimeREPL -> Python -> RUN current file 菜单有点⿇烦,所以现在可以考虑给他创建个快捷键;
⽅法:perferences -- key bindings user 中粘贴如下代码(快捷键红⾊标⽰的⾃定义就可以,个⼈喜欢F5):
[ {"keys":["f5"],
"caption": "SublimeREPL: Python - RUN current file",
"command": "run_existing_window_command", "args":
{
"id": "repl_python_run",
"file": "config/Python/Main.sublime-menu"
}}
]
这样以后你打开你要运⾏的Py程序,就可以直接按照你设置的快捷键运⾏了;
三、后语
此插件不知道为什么,有时候运⾏会报错,但有时候是好的,错误如下:
个⼈的解决办法是,按⼏下ctrl+b编译下有时候会好。。。。不知道还有没有根本的解决办法;总体来说这个插件不是太好⽤。。。
问题:Sublime Text已有【插件控制】(Package Control),但在线安装遇到“There are no packages available for installation ”的提⽰,如下图:
解决⽅法是:去github⾥搜索相应插件的名称,下载压缩包,并将同名解压缩⽂件夹放在sublime对应的packages下⾯。
具体步骤:
问题描述:
Sublime Text 3 在build Python时,如果python源代码输出有中⽂,例如“print(‘中⽂’)”,Sublime Text 会报 [Decode error - output not utf-8]
分析:
在Sublime Text 3⾥,新建⼀个python源码⽂件,代码如下为:
View Code
ctrl + B 进⾏build该⽂件。默认输出应该是:
cp936
cp936
但是报 [Decode error - output not utf-8] 错误。
这意味着,python在编译运⾏源码后,默认将输出结果以cp936编码,发送给Sublime Text。⽽Sublime Text 中python build的默认接收编码是utf-8。Sublime Text在接收到python输出后,试图以utf-
8解码cp936编码的流。当cp936编码的流中没有汉字时,因为英⽂字符集在cp936和utf-8中的编码兼容,所以⽤utf-8解码不会出错;当 cp936编码的流中有汉字时,因为汉字字符集在cp936与utf-8的编码不兼容,所以⽤utf-8解码就会错误。
最终Sublime Text就会报 [Decode error - output not utf-8]错误。
解决:
⽅法1. Python有个PythonIoEncoding环境变量,⽤来定义stdin/stdout/stderr的编码。
windows下,cmd中执⾏python -h 可以看到该环境变量的说明。
所以可以在环境变量下,添加⼀个环境变量pythonioencoding,值为utf-8,即可解决该问题。
⽅法2.修改Sublime Text的python build的设置。将其编码设置为cp936。
打开Python.sublime-build⽂件,并添加”encoding”:”cp936″这⼀⾏,保存即可
Python.sublime-build 位置:
Sublime Text 3 :.../SublimeText3/Packages/User/Python.sublime-package
直接⽤记事本打开,修改为

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。