Pretty JSON 在 Sublime Text 4 中已从 Package Control 下架,无法直接搜索安装;推荐改用仍在维护的 JSON Reindent(仅缩进)或 HTML-CSS-JS Prettify(支持校验、修复、UTF-8 友好),二者均无需 Node.js 且兼容 ST4。

Pretty JSON 插件在 Sublime Text 4 中已从 Package Control 下架,直接搜索安装会失败。你现在装不上,不是操作问题,是插件本身已被移除——必须手动安装或换用替代方案。
为什么 Pretty JSON 搜不到、装不了
Sublime Text 4 官方源里已下架 Pretty JSON,Package Control 列表中不再包含它。你按 Ctrl+Shift+P → 输入 Package Control: Install Package → 搜索 Pretty JSON,结果为空,这是正常现象。
- 别再尝试拼写变体(如
PrettyJSON、JSONPretty),它们是不同插件,行为和兼容性都不一样 - 手动下载 ZIP 后拖进
Packages/目录容易路径错位(比如多套一层文件夹),导致ImportError: No module named 'sublime' - GitHub 上的原仓库已归档,最新可用 commit 对应 Python 3.8+,但部分旧 ST4 安装包未同步更新依赖
现在该用哪个插件:推荐 JSON Reindent 或 HTML-CSS-JS Prettify
二者都仍在维护、支持 ST4、无需额外环境,且不依赖 Node.js 或外部 CLI:
-
JSON Reindent:只缩进、不校验、不改内容,适合你确认 JSON 绝对合法(比如 API 响应体、本地 mock 数据)。快捷键默认是Ctrl+Alt+J(Windows/Linux)或Cmd+Alt+J(macOS) -
HTML-CSS-JS Prettify:支持.json后缀自动识别,右键菜单有Prettify JSON,也响应Ctrl+Shift+H;配置项里可设"json": true显式启用 JSON 模式,还能控制是否保留尾随逗号、缩进空格数等 - 避开
JsFormat和JSBeautify:它们把 JSON 当 JS 解析,会删反斜杠、转null为字符串、吞注释,生产环境慎用
格式化没反应?先查这三处硬性条件
90% 的“按了没变化”不是插件问题,而是 Sublime 自身状态没对齐:
- 右下角语法必须是
JSON或JSON with Comments:点状态栏语言名手动切换,仅靠文件后缀.json不够 - 编码必须是
UTF-8(不是UTF-8 with BOM):BOM 会导致解析器静默失败,点击右下角编码名 →Convert to UTF-8 - 缩进必须统一为空格:执行
View → Indentation → Convert Indentation to Spaces,再设Indent Using Spaces,宽度固定为2;同时检查用户设置里没有"detect_indentation": true,它会干扰插件缩进策略
中文变 \u4f60\u597d、缩进混乱、快捷键冲突
这些不是 bug,是配置未覆盖到的细节:
- 中文乱码:打开
Preferences → Package Settings → [插件名] → Settings – User,加一行"ensure_ascii": false(仅对Pretty JSON或HTML-CSS-JS Prettify有效) - 快捷键被占:Windows 上
Ctrl+Alt+J常与输入法切换冲突;进Preferences → Key Bindings,在右侧用户键位文件中添加自定义绑定,例如:[ {"keys": ["ctrl+shift+h"], "command": "html_css_js_prettify", "args": {"type": "json"}} ] - 缩进混用 Tab/Space:插件不负责统一缩进,得靠 Sublime 自身设置先行清理——选中全文 →
Convert Indentation to Spaces→ 再设缩进宽度为2
"age" 是否应为数字)、不支持 JSON Schema、也不修复注释或单引号这类“伪 JSON”。如果你常处理带注释的配置(如 VS Code 的 settings.json),得先用在线工具清理,或切到 VS Code + redhat.vscode-yaml 类扩展。


















