atom本身不运行代码,script插件是唯一持续维护的一键运行方案;90%失败源于解释器路径错误、语言识别未切换(需右下角手动设为python等)、未按ctrl+i/cmd+i启用终端模式。

Atom 本身不运行代码,script 插件是目前唯一持续维护、能真正“一键运行”的方案;装完不等于能跑,90% 的失败都卡在解释器路径、语言识别或终端模式这三处。
为什么按 Ctrl+I 没反应?先确认这三件事
不是插件坏了,是触发条件没满足:
- 文件必须已保存——
script默认不自动保存,未保存的修改会静默跳过执行 - 右下角状态栏必须显示正确语言名(如
Python),不是Plain Text;点它手动切换,或用快捷键Ctrl+Shift+L(Win/Linux)/Cmd+Shift+L(macOS)临时指定 - 文件后缀要匹配:写的是
hello.py,不是hello或HELLO.PY(Linux/macOS 大小写敏感)
python: command not found 或 node: command not found 怎么办?
这不是插件问题,而是它默认调用 python 或 node 命令,而你的系统 PATH 里没有这个可执行文件。验证方式很简单:打开终端,运行 which python3 或 type -p node,把输出结果填进 script 设置里的 Command 字段:
- macOS(Homebrew):
/opt/homebrew/bin/python3或/usr/local/bin/node - macOS(pyenv):
/Users/yourname/.pyenv/shims/python(注意不能写~) - Windows:
C:/Users/me/AppData/Local/Programs/Python/Python311/python.exe(反斜杠必须转义为正斜杠或双反斜杠)
填完必须点“Save”,且**完全退出 Atom 再重开**——设置不热更新。
Bash 脚本、无后缀文件、.mjs 怎么让 script 正确识别?
script 主要靠后缀和右下角语言标识来决定用哪个解释器,不是靠文件内容自动推断:
- 脚本没后缀(如
deploy)或后缀非标准(如build.sh),右下角点语言名 → 手动选Bash - 永久绑定:进
Settings → Packages → script → Settings,在File Extensions里加sh,bash,py,js,ts,mjs(全小写,逗号分隔) -
.mjs文件若报Cannot find module,说明默认node不支持 ES modules——得在Command里改成/path/to/node --experimental-modules,或换用script-runner自定义命令
带 input()、read -p 的脚本一运行就卡住?
script 默认用非交互式子进程执行,stdin 被关闭,所以所有需要键盘输入的操作都会卡死或跳过:
- 临时解法:运行前按
Ctrl+I(Win/Linux)或Cmd+I(macOS),强制走内置终端(支持process.stdin,但仅对 Node.js 有效) - 常驻设置:进
script → Settings,勾选Use Terminal(不是Use Script Panel) - 注意:
Use Terminal对 Python 的input()仍无效——它不会拉起真实终端,只是复用一个面板;真要交互调试,直接开系统终端或换 VS Code
复杂项目(含 venv、package.json scripts)别指望 script 自动激活环境或解析脚本命令,它不读取 .python-version,也不执行 npm run dev。











