Ctrl+B无反应或仅显示“[Finished]”是因为Sublime未激活构建系统:右下角未显示Python/C/JS标识,语法高亮错误、sublime-build文件未存于Packages/User/目录、未手动选择构建系统,或Windows下python路径未写死、macOS/Linux未从终端启动导致PATH未加载。

能一键运行的前提只有一个:gcc --version、python --version 或 javac -version 在你系统的终端里必须有输出。别的全是浮云。
为什么 Ctrl+B 没反应或只显示 “[Finished]”
根本不是快捷键坏了,是 Sublime 根本没激活构建系统:
- 右下角状态栏没显示
Python、C或JavaScript—— 说明selector没匹配上,哪怕文件后缀是.py,语法高亮不对也白搭 -
.sublime-build文件没保存在Packages/User/目录下(可通过Preferences → Browse Packages…进入验证) - 首次使用前没手动点一次
Tools → Build System → [你的名字],Sublime 不会默认选它 - Windows 上
python命令无效?得写死路径,比如["C:/Python311/python.exe", "-u", "$file"]
Python 必须加 -u 参数
不加就卡输出、崩 input()——这不是代码问题,是 Sublime 构建系统默认启用缓冲模式:
-
"cmd": ["python", "-u", "$file"]是最简可靠写法 - macOS/Linux 用户若用
python3,先终端跑which python3确认路径,再硬编码进去 - 别用
shell_cmd写 Python:它不支持stdin,input()会直接抛EOFError
C/C++ 交互输入时窗口一闪而过
不是配置错,是 Sublime 输出面板压根不提供 stdin 流:
- 所有含路径的变量(如
${file_path}/${file_base_name})必须加双引号,否则空格路径直接崩 - Windows 要补
.exe后缀:"${file_path}/${file_base_name}.exe";Linux/macOS 必须加chmod +x - 真要
scanf或cin,只能绕开内置面板:装Terminus插件,或改用外部终端启动,例如 Windows 下:["cmd", "/c", "g++ \"${file}\" -o \"${file_path}/${file_base_name}.exe\" && \"${file_path}/${file_base_name}.exe\" && pause"]
最常被忽略的其实是环境变量加载时机:macOS/Linux GUI 启动 Sublime 时根本不会读 ~/.zshrc,必须从终端执行 subl 才能继承 PATH;Windows 则要确认 MinGW 的 bin 目录真进了系统 PATH,且 Sublime 进程是全新启动的。











