jsprettier 是 sublime text 中最稳定、适配性最好的 prettier 封装插件,依赖本地 prettier cli 而非内置 node 环境;需确保 node 和 prettier 在终端可用,正确配置 prettier_cli_path 绝对路径及 use_editorconfig、ignore_project_config 以支持项目级配置。

JsPrettier 是当前 Sublime Text 中最稳定、适配性最好的 Prettier 封装插件,它不依赖 Sublime 内置 Node 环境,而是调用你本地已安装的 prettier CLI 工具。只要 prettier 命令在终端能运行,JsPrettier 就能用 —— 但跳过环境检查或填错路径,90% 的“装了没反应”问题就出在这儿。
确认 node 和 prettier CLI 真的可用
Sublime 插件不会帮你装 Node.js,也不会自动补 PATH。它只认系统命令行里能直接敲出来的 prettier。
- 打开终端,依次运行:
node -v、npm -v、prettier --version - 如果
prettier --version报command not found,说明 npm 全局 bin 路径没进系统PATH:
– macOS/Linux:运行npm config get prefix,然后把bin目录(如/opt/homebrew/bin或~/.npm-global/bin)加进~/.zshrc;
– Windows:检查%AppData% pm是否在系统环境变量PATH中 - 验证成功后,再运行
which prettier(macOS/Linux)或where prettier(Windows),记下完整路径 —— 后面配置要用绝对路径
安装 JsPrettier 插件(别选错名字)
Package Control 里搜到的 “Prettier”、“Prettier-Sublime”、“SublimeLinter-prettier” 都不是推荐项。它们要么多年未维护,要么逻辑复杂、默认不读项目配置。
- 按
Ctrl+Shift+P(Win/Linux)或Cmd+Shift+P(macOS)打开命令面板 - 输入
Package Control: Install Package→ 回车 → 搜索JsPrettier→ 点击安装 - 安装完不用重启,但首次配置前建议关掉再重开一次,确保插件加载了当前 shell 的环境变量
- 装好后,右键一个
.js文件,菜单里应出现Format Code with Prettier选项
配置 prettier_cli_path 和 auto_format_on_save
默认设置里 auto_format_on_save 是 false,且 prettier_cli_path 留空时并不总能自动找到 CLI —— 尤其是 macOS 使用 zsh 启动 Sublime、或 Windows 用户用非管理员权限安装 npm 时。
- 菜单栏 →
Preferences→Package Settings→JsPrettier→Settings – User - 填入以下内容(注意 JSON 语法,布尔值不加引号,字符串值必须用双引号):
{
"auto_format_on_save": true,
"auto_format_on_save_excludes": ["*/node_modules/*", "*/dist/*", "*/build/*"],
"custom_file_extensions": ["js", "jsx", "ts", "tsx", "json", "css", "scss", "vue", "mdx"],
"prettier_cli_path": "/usr/local/bin/prettier"
}
-
prettier_cli_path必须填你刚才which prettier得到的**绝对路径**;Windows 用户路径末尾要带.cmd,例如:C:\Users\YourName\AppData\Roaming\npm\prettier.cmd -
auto_format_on_save_excludes强烈建议加上,否则保存node_modules下文件可能卡死编辑器 - 改完保存,立刻生效;无需重启,但若之前 Sublime 是从 Dock 或开始菜单点开的,PATH 可能没继承,这时就得从终端执行
subl启动
让项目级 .prettierrc 生效的关键开关
JsPrettier 默认只用内置 fallback 规则(比如 semi: true, tabWidth: 2),不会自动读取项目根目录下的 .prettierrc 或 prettier.config.js —— 这是和终端 prettier CLI 行为不一致的最常见原因。
- 在同个
Settings – User配置中,加入"use_editorconfig": true并确保"ignore_project_config": false - 或者更直接:把
.prettierrc放在项目根目录,内容为标准 JSON 格式,例如:
{
"semi": false,
"singleQuote": true,
"tabWidth": 2,
"trailingComma": "es5"
}
- 注意:如果文件在子目录中(比如
src/utils/index.ts),插件会向上查找直到磁盘根目录;但遇到软链接或挂载点,某些旧版本可能中断查找 - 格式化结果仍和 CLI 不一致?打开 Sublime 控制台(
Ctrl+`),看有没有JsPrettier ERROR—— 大部分静默失败都藏在这里,不是弹窗提示
subl 才能继承 PATH,从 Dock 或桌面图标点开则不能。这点在 macOS 上尤其关键,也是为什么很多人明明终端里 prettier --version 成功,但在 Sublime 里却一直报 command not found。











