应填相对路径["./node_modules/.bin/jsonlint"],前提是项目通过“Add Folder to Project”加载且本地安装jsonlint;.jsonc文件需额外配置"scopes": ["source.json", "source.jsonc"]。

SublimeLinter-json 的 executable 路径怎么填才有效
填绝对路径是 Windows 用户最常踩的坑——比如写成 C:UsersAliceAppDataRoaming
pmjsonlint.cmd,插件大概率静默失败。SublimeLinter-json 默认用 shell 模式调用命令,而 Windows 下的 .cmd 文件必须显式通过 cmd /c 启动,插件不干这事。
真正可靠的是相对路径写法,且必须满足两个前提:
- 项目已通过 Project → Add Folder to Project 加载(不是只打开单个 .json 文件)
-
jsonlint在项目本地安装:npm install jsonlint --save-dev
然后在 Preferences → Package Settings → SublimeLinter → Settings 的用户配置中写:
{
"linters": {
"jsonlint": {
"executable": ["./node_modules/.bin/jsonlint"]
}
}
}
注意:./ 是相对于当前编辑文件所在项目的根目录,不是 Sublime 安装目录,也不是用户主目录。
为什么 source.jsonc 文件不触发 JSON 校验
带注释的 JSON(.jsonc)被 Sublime 识别为 source.jsonc 语法,而 SublimeLinter-json 默认只监听 source.json。现象是:改完保存,右下角没报错,控制台也没日志。
解决方法是在同一份 SublimeLinter 用户配置里补上 scope 映射:
{
"linters": {
"jsonlint": {
"executable": ["./node_modules/.bin/jsonlint"],
"scopes": ["source.json", "source.jsonc"]
}
}
}
别漏掉 "source.json",否则纯 .json 文件会失效。这个配置不会影响格式化插件(如 Pretty JSON),它只管 lint 行为。
使用约定式提交(Conventional Commits)生成标准化的 Git 提交信息。适用于以下场景: (1) 暂存更改时需要提交信息; (2) 审查 diff 时希望获得结构化摘要; (3) 编写 PR 描述或变更日志(changelog)条目; (4) 用户明确要求“为本次更改编写提交信息”。 该功能会分析已暂存/未暂存的 diff,并生成按类型(type)划分范围的提交信息。
.sublime-project 中如何覆盖 JSON 相关设置
项目级配置能避免全局污染,比如你某个微服务项目强制要求 2 空格缩进、禁用 trailing comma,而其他项目用 4 空格。
在 .sublime-project 的 settings 字段里加:
{
"folders": [{ "path": "." }],
"settings": {
"tab_size": 2,
"translate_tabs_to_spaces": true,
"ensure_newline_at_eof_on_save": true
},
"syntax_override": {
".*\.jsonc?$": "Packages/JSON/JSON.sublime-syntax"
}
}
其中 syntax_override 是可选但推荐的:确保所有 .json 和 .jsonc 文件都用官方 JSON 语法高亮(而非某些插件自定义的变体),这对 lint 和格式化一致性很关键。
格式化插件 Pretty JSON 的路径相关配置在哪生效
Pretty JSON 不走 SublimeLinter 那套,它的行为由 Pretty JSON.sublime-settings 控制,该文件位置在:Packages/User/Pretty JSON.sublime-settings(即 User 目录下)。
常见误操作是把它丢进项目根目录——没用。这个配置是全局生效的,但你可以用项目级设置间接影响它:
- 在
.sublime-project里设"detect_indentation": false,再配"tab_size": 2,Pretty JSON 会尊重这个缩进值 - 如果想让某项目默认用压缩模式,不能靠配置文件,得在命令面板里手动选
Pretty JSON: Minify JSON
真正容易被忽略的是:Pretty JSON 的格式化结果依赖于当前文件的 syntax 设置。如果状态栏显示的是 Plain text,哪怕内容是合法 JSON,Pretty JSON: Format JSON 命令也会拒绝执行——先点状态栏选 JSON。

















