anaconda插件已从package control移除,因不兼容sublime text 4+;应改用sublimelinter+pylint、terminus及正确配置pythonpath/env构建系统。

Sublime 安装 Anaconda 插件失败,Package Control 找不到它
现在 Anaconda 插件已从 Package Control 官方仓库移除,不是你操作错了,是它真没了。官方明确停止维护,且与 Sublime Text 4+ 的 Python API 不兼容,强行安装会报 ImportError: No module named 'sublime_plugin' 或直接不加载。
替代方案很明确:用 SublimeLinter + SublimeLinter-pylint(或 pyflakes)做语法检查,用 Terminus 或内置 Build System 跑代码,再配个靠谱的 pythonpath 就行。
- 别再搜 “Anaconda sublime install”,所有教程都过期了
- 如果已安装,删掉
~/Library/Application Support/Sublime Text/Packages/Anaconda(macOS)或对应 Windows 路径下的文件夹 -
Package Control: Install Package里输入anaconda,搜不到就是正常现象
Sublime 配置 Python 解释器路径,pythonpath 和 env 哪个该用
关键看你是想让插件(比如 linter)识别你的包,还是只让构建系统跑起来。两者作用范围不同,混用反而容易出错。
-
pythonpath是给 Sublime 自己的 Python 运行时用的,影响SublimeLinter、AutoFileName等插件能否 import 项目依赖 -
env是构建系统(Tools → Build System → New Build System)里配的,只控制ctrl+b时 shell 环境里的PYTHONPATH和PATH - 虚拟环境路径要写绝对路径,比如
/Users/me/venv/myproj/bin/python,不能用~或$HOME - 如果用了 conda,
env里得加"PATH": "/opt/anaconda3/bin:$PATH",否则conda activate不生效
Sublime 构建系统报错 Unable to find target python 或直接闪退
这不是找不到 Python,是构建配置里指定了不存在的命令,或者权限/路径有空格没转义。Sublime 的构建系统对 shell 兼容性很敏感,尤其在 macOS 和 Windows 上表现不一。
- Windows 下用
cmd构建时,路径含空格必须写成"C:\Users\My Name\venv\Scripts\python.exe",单引号无效 - macOS/Linux 推荐用
shell_cmd而非cmd,例如"shell_cmd": "$HOME/venv/bin/python -u "$file"" - 避免在
cmd数组里混用字符串和数组写法,["python", "-u", "$file"]比"python -u $file"更可靠 - 如果用 pyenv,构建系统里别写
pyenv exec python,改用完整路径~/.pyenv/versions/3.11.5/bin/python
为什么 SublimeLinter 显示 import 错误,但终端里能正常 import
因为 linter 默认用系统 Python(/usr/bin/python),不是你项目用的虚拟环境。它不读你的 shell activate,也不继承 terminal 的环境变量。
- 在项目根目录建
.sublimelinterrc,写:{ "linters": { "pylint": { "executable": ["/full/path/to/venv/bin/pylint"] } } } - 或者在 Sublime 设置里全局指定:
"python_interpreter": "/full/path/to/venv/bin/python" - 注意:pylint 必须跟 Python 解释器同环境安装,
pip install pylint得在 venv 里执行,不能全局装 - 如果还报
No module named 'requests',说明 linter 没走对解释器,打开 Sublime 控制台(ctrl+`),看报错前一行是否显示了实际调用的路径
最麻烦的其实是路径拼写和权限——比如 macOS 上 SIP 会阻止访问某些目录,Windows 上杀毒软件可能拦截 venv 里的 .exe,这些细节不报具体错误,但会让整个 lint 流程静默失败。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











