Sublime Text 无法运行 .ipynb 文件或执行 Jupyter 功能,仅能通过 SublimeREPL 将选中代码发送至手动启动的 IPython 内核;需确保 ipython 可执行、内核活跃,并正确配置环境路径与 matplotlib 模式。

Sublime Text 不能运行 .ipynb 文件,也不能执行单元格、渲染图表或管理内核——它压根不实现 Jupyter 协议。所谓“联动”,只有一条可行路径:把选中的 Python 代码发给已启动的 IPython 内核执行。
Sublime 怎么发送代码到 IPython 内核?
本质是「文本编辑器 + 外部 REPL」,依赖 SublimeREPL 插件和手动启动的内核服务。关键不是“配置 Jupyter”,而是确保 ipython 可执行且内核处于活跃状态。
- 必须先在终端运行
jupyter console或ipython启动内核(不是jupyter notebook);Sublime 不会帮你拉起进程 - 安装
SublimeREPL后,通过Tools → SublimeREPL → Python → Python - IPython打开的是本地ipython进程,不是 notebook kernel - 快捷键绑定里
"repl": "IPython"指向的是 SublimeREPL 自带的 IPython 启动逻辑,若系统未装ipython或环境变量不对,会静默失败 - 若用 conda 环境,需确认
ipython安装在该环境中:conda activate myenv && pip install ipython
为什么选中代码发过去却没输出?
常见现象:按快捷键后光标跳走、控制台无响应、或只显示 In [1]: 后卡住——这不是 Sublime 的 bug,而是内核未就绪或通信中断。
图片提示词生成器?不止如此。 马甲系统 —— 把脑海中的画面,翻译成AI能理解的专业表达。 用得越多,它越懂你:首次需要多问几句确认方向,用久了几乎一说就懂。 用得越多,它越快:缓存机制让后续对话越来越省。 RAG进化:成功案例持续入库,越跑越聪明。 输入「新手指南」查看完整功能介绍
- 检查终端是否真有
ipython进程在运行:ps aux | grep ipython(macOS/Linux)或任务管理器(Windows) - SublimeREPL 的 IPython 控制台默认不启用
--matplotlib,绘图命令如plt.show()会阻塞;需手动在控制台输入%matplotlib inline(仅对当前会话有效) - 若用
virtualenv或conda env,SublimeREPL 默认调用系统python路径,可能加载错包;可在SublimeREPL → Config → Python → IPython中修改cmd字段,显式指定解释器路径,例如["/path/to/env/bin/ipython"] - 发送含
input()的代码会卡死——SublimeREPL 的 IPython 终端不支持交互式输入,这是设计限制,非配置问题
如何安全编辑 .ipynb 文件而不破坏结构?
.ipynb 是 JSON 文件,Sublime 可高效编辑文本内容,但绝不能当成普通 .py 文件对待。重点在“不执行、只整理”。
- 安装
Jupyter插件(非官方,Package Control 可搜),它提供语法高亮和基础折叠,但不解析 cell 输出;禁用自动保存输出字段("jupyter_remove_output_on_save": true),避免 diff 泛滥 - 手动清理输出时,删掉所有
"outputs": [...]和"execution_count": ...字段即可,保留"source"和"cell_type";可用正则"outputs":\s*\[[^\]]*\],?批量删除 - 版本控制前务必运行
jupyter nbconvert --clear-output --inplace notebook.ipynb,比手工删更可靠;Git hook 可自动化这步 - 不要用 Sublime 的“格式化”功能(如 JsPrettier),JSON 格式稍错就会让 Jupyter 加载失败;用内置的
Ctrl+Shift+P → Pretty JSON更稳妥
真正容易被忽略的点是:Sublime 里的“运行”永远不等于 notebook 的执行上下文。Cell 依赖、变量生命周期、输出渲染——这些全由 Jupyter runtime 管理,Sublime 只负责把字符串扔过去。想复现 notebook 行为,就得自己维护状态,比如手动重跑前置 cell 对应的代码块。这不是缺陷,而是定位差异:一个管文本,一个管状态。

















