Sublime Text 设置必须写在右侧 User Settings 中,左侧为只读;JSON 语法需严格规范,关键参数如 tab_size 与 translate_tabs_to_spaces 需配对,detect_indentation 必须设为 false 防覆盖,项目配置优先于全局,行距用 line_padding_top/bottom 控制,校验推荐 jsonlint.com。

Preferences → Settings 只改右边用户面板
所有自定义配置必须写在 Preferences → Settings 右侧的「User Settings」里,左侧是只读默认值,改了也无效。右侧如果是空的,直接写一个空对象 {};已有内容就往里加字段,注意用英文逗号分隔、引号不能少、末尾不能多逗号。
常见拼错:font_size 写成 fontsize 或 font_sizee,tab_size 写成 tab_width(已弃用),line_padding_top 写成 line_height(Sublime 根本不认这个)。
改完保存,设置立即生效——不需要重启,也不需要重装插件。但如果 JSON 语法错误(比如少个 }),Sublime 不会报错,只是静默忽略全部设置。最稳的验证方式是把右侧内容复制到 jsonlint.com 过一遍。
关键参数怎么设才不踩坑
几个高频项的实际行为和隐藏约束:
-
"tab_size": 4和"translate_tabs_to_spaces": true要配对用,否则 Git diff 里全是^I和空格混战 -
"detect_indentation": false必须显式关掉,否则打开一个缩进为 2 的旧文件,tab_size立刻被覆盖,你设的 4 就白写了 -
"trim_trailing_white_space_on_save": true只清理「下次保存时」已存在的行尾空格,不会回溯修改历史空格,纯空格行会被整行删掉 -
"word_wrap": true对 Markdown 日志友好,但写代码时开着会导致括号匹配错位、光标跳转异常,建议按需开关,别全局开 -
"line_padding_top": 2, "line_padding_bottom": 2是唯一控制编辑区行距的方式,不是line_height,也不是字体设置能带出来的效果
项目级配置优先于全局设置
如果某个项目需要不同缩进或构建命令,别硬改全局 Preferences.sublime-settings,直接用 .sublime-project 文件:
- 菜单栏
Project → Save Project As…生成项目文件 - 编辑它,加入
"settings"块,例如:{ "folders": [ { "path": "." } ], "settings": { "tab_size": 2, "rulers": [80] } } - 项目设置会完全覆盖同名全局配置,且只对该项目生效
- 记得把
.sublime-project提交进 Git,但忽略.sublime-workspace(含个人状态,如光标位置、折叠状态)
JSON 文件本身编辑要防哪几类错
处理 .json 文件时,配置正确 ≠ 编辑安全。真正容易崩的是内容本身:
- 必须用双引号,
"key": "value"合法,'key': 'value'直接解析失败 - 数组/对象末尾不能有逗号:
["a", "b",]❌,{"x": 1,}❌ - 数字不要加引号除非真要字符串,
"age": "25"和"age": 25类型不同,后端可能拒收 - 中文路径、空格路径在
build_systems的shell_cmd里大概率触发No such file or directory错误,一律用英文路径 - 格式化别靠手调:装
Pretty JSON插件,选中内容 →Ctrl+Shift+P→Pretty JSON: Format JSON,比手动缩进可靠十倍
行距、缩进、项目隔离、JSON 内容校验——这四层漏掉任何一层,都会让“改个配置”变成查半小时日志。尤其 detect_indentation 默认开启这点,几乎每个新人都会栽一次。











