现象:
在Sublime中打开.py文件,按”ctrl+b”执行时无反应。点击工具->编译系统中已经有且识别到Python,但执行”run(ctrl+shift+b)”时无反应,Sublime左下角提示”No Build System with variant run”。
解决:
首先打开一个CMD,在左上角单击,选择”属性”。在属性->选项中查看”当前代码页”一项中的数值。(这一步可选)
然后打开Sublime安装目录,打开Packages,找到里面的”Python.sublime-package”文件,复制出来一份留作备份。把这个文件后缀改为.zip,打开这个压缩包。
在打开压缩包中找到”Python.sublime-build”文件拖出来编辑一下它(编辑工具可用sublime或其它文本编辑器直接打开)。
原文件内容应该类似这样:
{
"shell_cmd": "python -u "$file"",
"file_regex": "^[ ]*File "(...*?)", line ([0-9]*)",
"selector": "source.python",
"env": {"PYTHONIOENCODING": "utf-8"},
"variants":
[
{
"name": "Syntax Check",
"shell_cmd": "python -m py_compile "${file}"",
}
]
}
改成这样:
{
"cmd": ["python", "-u", "$file"],
"file_regex": "^[ ]*File "(...*?)", line ([0-9]*)",
"selector": "source.python",
"encoding": "utf-8",
"env": {"PYTHONIOENCODING": "utf-8"}
}
保存后拖回zip中覆盖,然后把.zip改回.sublime-package,覆盖回Packages目录即修改完成。
打开一个.py,敲一句print ‘hello world’, ctrl+b,成功执行。
PS:不成功的原因可能是第一行cmd命令问题或encoding编码不对(如果上述法不成功,尝试将encoding的值改为第一步查看到的数值)或其它参数有问题比如我这里的variants也有问题,所以我就直接去掉了。。。。