sublime text 无内置一键格式化功能,需依赖插件:js/ts用jsprettier(须全局安装prettier并配置prettier_cli_path),html/css/js用html-css-js prettify(需修改默认快捷键避免冲突),python用black(需系统可调用black命令并绑定快捷键),所有插件默认格式化整文件,局部格式化需手动选中或使用特定子命令。

Sublime Text 没有一键格式化的内置能力,按 Ctrl+Shift+F 或 Ctrl+Alt+F 什么也不发生,是常态——不是你操作错了,而是根本没装对插件或没配好环境。
JsPrettier 格式化 JS/TS/JSON 最稳,但必须先装 Prettier CLI
JsPrettier 是目前对现代 JavaScript 和 TypeScript 支持最完整的方案,可处理可选链、空值合并、装饰器等语法,但它不自带格式化引擎,完全依赖本地 prettier 命令。
- 先确认 Node.js 已安装:
node -v和npm -v能正常输出版本号 - 全局安装 Prettier:
npm install -g prettier(若报权限错,加--user或换用npx prettier方式) - 安装插件后,如果按默认快捷键
Ctrl+Alt+F报错Prettier not found,说明prettier_cli_path没配对;进Preferences → Package Settings → JsPrettier → Settings,补上路径(如 Windows 下填"prettier_cli_path": "C:/Users/xxx/AppData/Roaming/npm/prettier.cmd") - 想统一缩进为 2 空格?在设置里加:
"prettier_options": {"tabWidth": 2}
HTML-CSS-JS Prettify 快速美化前端三件套,但快捷键默认冲突
这个插件能同时处理 HTML、CSS、JS,适合快速整理小项目,但它的默认快捷键 Ctrl+Shift+H 和 Sublime 自带的“显示控制台”冲突,且和 Sublime-CSS-Prettify 默认快捷键一样,容易误触发。
- 安装后务必进
Preferences → Key Bindings修改用户键位,例如改成:{"keys": ["ctrl+alt+h"], "command": "html_css_js_prettify"} - 它默认只格式化整文件,不作用于选中代码块;想只格式化局部,得先手动全选再按快捷键
- 右下角语法识别必须是
HTML/CSS/JavaScript,不是Plain Text,否则命令灰掉 - 配置引号、换行宽度等,要改
Preferences → Package Settings → HTML-CSS-JS Prettify → Settings - User,别动 Default 文件
Python 用 Black 最省心,但需系统级 black 命令可用
Black 是 Python 社区事实标准,不接受风格争论,只做一件事:把代码变成它认为唯一正确的样子。Sublime 本身不调用它,得靠插件桥接。
- 先确保
black命令可用:python -m black --version或black --version能返回结果 - 推荐插件是
Sublime-Black(非autopep8或PythonTidy,后者已多年未更新,不支持 3.11+ 新语法) - 安装后需手动绑定快捷键,例如在 Key Bindings 加:
{"keys": ["ctrl+alt+b"], "command": "sublime_black"} - 它不读
pyproject.toml里的[tool.black]配置,除非你在插件 Settings 里显式指定config_file路径
真正容易被忽略的是:所有这些插件默认都忽略选中区域,只处理整个文件——哪怕你只改了三行,也得全文件重排。如果需要局部格式化,要么用插件提供的“Format Selection”子命令(不是所有插件都提供),要么提前复制到新 tab 再格式化。











