Sublime Text 需安装 Node.js 和全局 prettier(npm install -g prettier),配置插件指定 prettier_cli_path,设置语法高亮为对应语言,并启用 auto_format_on_save;格式化规则以项目 .prettierrc 为准。

Sublime Text 本身不内置代码格式化对齐功能,必须通过插件(如 Prettier)配合配置才能实现 JavaScript/TypeScript/JSON 等文件的自动对齐和标准化格式化。
怎么安装 Prettier 插件并让它真正生效
很多人装完 Prettier 插件后按 Ctrl+Shift+P → Prettier: Format 没反应,根本原因是没装 Node.js 运行时或没配好 prettier CLI。
- 必须先在系统中全局安装
prettier:npm install -g prettier
- 确认安装成功:
prettier --version能输出版本号(如3.3.3) - Sublime 的
Prettier插件默认会找系统 PATH 下的prettier命令;如果装在非标准位置(比如用nvm),需在插件设置里手动指定prettier_cli_path - Windows 用户注意:不要用
prettier.cmd,插件只认prettier(无后缀)
为什么保存时没自动格式化(Save on Save 不触发)
插件默认关闭自动保存格式化,且只对已识别语法的文件生效 —— 即使文件后缀是 .js,如果右下角显示的是 Plain Text 而不是 JavaScript,Prettier 就不会运行。
- 检查右下角语法标识,点击它 → 选择对应语言(如
JavaScript、TypeScript、Vue Component) - 打开插件用户设置(
Preferences → Package Settings → Prettier → Settings),确保开启:{ "auto_format_on_save": true, "auto_format_on_save_excludes": [], "allow_inline_formatting": false } -
auto_format_on_save_excludes若包含"*.js"或当前路径,会静默跳过 —— 留空或删掉该项最稳妥
格式化后缩进/引号/分号不按预期?那是 Prettier 配置没生效
Prettier 的规则优先级:项目根目录的 .prettierrc > 插件设置 > 默认规则。Sublime 插件不会读取 package.json 中的 prettier 字段。
- 在项目根目录新建
.prettierrc(JSON 格式):{ "semi": false, "singleQuote": true, "tabWidth": 2, "trailingComma": "es5" } - 插件设置里的
prettier_options是兜底项,仅当找不到配置文件时才用,不推荐长期写在这里 - 如果用了
eslint-config-prettier,它只关 ESLint 规则,不影响 Prettier 行为 —— Sublime 里没 ESLint,这点无需操心
最容易被忽略的一点:Prettier 对 HTML/CSS/SCSS 文件默认不处理(除非显式配置 parser)。如果想格式化 Vue 或 JSX 中的模板部分,得在 .prettierrc 里加 "htmlWhitespaceSensitivity": "ignore" 并确保文件语法被正确识别为 Vue Component 或 JavaScript (Babel)。










