hydrogen装不上主因是apm不可用或内核未注册:先运行apm --version验证环境,再执行apm install hydrogen(勿加bash),确保jupyter kernelspec list有输出,conda环境需激活后指定--name注册,最后检查右下角kernel状态并禁用冲突插件。

Hydrogen 插件装不上?先查 apm 和内核注册状态
Hydrogen 装不上,90% 不是插件问题,而是 apm 命令不可用或 jupyter kernelspec list 没输出。Atom 自 2025 年底已停止维护,但现有安装仍可运行——前提是底层工具链就位。
- 终端执行
apm --version;若报command not found,macOS 需在 Atom 菜单选 Atom → Install Shell Commands,Windows 用户重装 Atom 时必须勾选 “Add to PATH” - 别输
apm install hydrogen bash—— 多了个bash是常见笔误,正确命令只有apm install hydrogen - 如果 Settings → Packages 里搜不到 Hydrogen,进 Package Manager Settings → Package Repository,把源改成
https://atom.io/api/packages(国内用户可能需临时配代理) - 装完后运行
jupyter kernelspec list,必须看到类似python3 /home/xxx/.local/share/jupyter/kernels/python3的条目;没有就说明内核根本没注册,得重跑python -m ipykernel install --user
Shift+Enter 没反应?检查右下角 kernel 状态和文件保存状态
代码不执行、输出区空白,往往不是代码写错了,而是 Hydrogen 没真正连上内核,或者压根没启动成功。
- 看 Atom 底部状态栏右下角:是否显示
Python 3(或你注册的 kernel 名)和绿色圆点?没有就点它手动 Connect;黄色/红色说明 kernel 启动失败,打开Ctrl+Shift+I查 Console 里的Kernel died或ZMQError - 别在未保存的文件(如
untitled标签页)里按Shift+Enter—— Hydrogen 有时会直接拒绝执行,先Ctrl+S保存为.py或.ipynb文件 - 禁用可能冲突的插件:
atom-julia-client、ink、旧版language-jupyter,它们会抢占 ZeroMQ 通信端口 - 如果你用 conda 环境,注册 kernel 时必须指定名字:
conda activate myenv && python -m ipykernel install --user --name myenv --display-name "myenv",之后在 Hydrogen 右下角手动选这个 kernel
绘图不显示、input() 卡住?这不是 Hydrogen 的 bug,是交互模式限制
Hydrogen 是“内核客户端”,不是完整终端。它能执行、能返回值、能画图(靠 %matplotlib inline),但不能处理阻塞式输入。
-
input()会卡住或抛EOFError—— 这是设计如此,不是配置错误;需要交互输入时,切到platformio-ide-terminal或直接开终端跑python script.py - Matplotlib 图不显示?在代码最开头加一行
%matplotlib inline(注意是 magic command,不是 import);确保已装matplotlib,且没被其他 backend 冲突(比如Qt5Agg在无 GUI 环境下会失败) - 内核响应慢?Hydrogen 要在 Atom 和 Jupyter 之间走网络通信,默认超时较短;可在 Hydrogen 设置里调高
Connection Timeout (ms),比如从 5000 改成 15000 - 不同项目要用不同环境?不用反复改配置 —— 每个项目目录下运行
python -m ipykernel install --user --name project-a --display-name "Project A",Hydrogen 右下角随时切换
为什么 script 插件和 Hydrogen 别混用?用途根本不同
很多人装了 script 插件又装 Hydrogen,结果发现 Ctrl+Shift+B 和 Shift+Enter 都能跑 Python,但行为差异极大,容易误判问题根源。
-
script插件本质是调系统命令行:它启动一个新进程执行python xxx.py,输出只读,不支持变量跨 cell 共享,也不支持%matplotlib inline - Hydrogen 连的是 Jupyter 内核:变量持久、支持 magic command、能实时刷新图表、可中断正在运行的 cell —— 它模拟的是 Notebook 的语义,不是脚本执行器
- 路径配置也完全不同:
script需设script.pythonPath(指向python.exe),Hydrogen 完全不管这个,它只认jupyter kernelspec list注册好的 kernel - 两者可以共存,但别指望用
script的配置去救 Hydrogen 的 kernel 连接问题 —— 它们根本不走同一条路











