Sublime Text 中不存在名为 IndentSpy 的官方或主流插件,该名称多为对 Indent Rainbow 或 Indent Guides 的误传;推荐使用原生 draw_indent_guides 配合 indent_guide_options 和 draw_white_space 实现高精度缩进可视化,或安装维护良好的 Indent Rainbow 插件。

Sublime 没有官方或主流插件叫 IndentSpy,这个名字大概率是混淆了 Indent Rainbow、Indent Guides 或误传的自定义配置项。直接搜 IndentSpy 安装会失败,或装上一个不维护/不兼容 v4.4+ 的旧插件。
为什么找不到 IndentSpy 插件
Sublime 的 Package Control 中不存在名为 IndentSpy 的有效包。你可能看到的是:
- 某篇过时教程把
Indent Rainbow拼错成IndentSpy - 有人把自定义的
indent_guide_options配置截图标注为 “Spy mode”,实为误解 - 极个别私有 fork 项目用此名,但未发布到公共仓库,无法通过 Package Control 安装
真正能增强缩进可视化的,是原生 draw_indent_guides + 主题级 guide 颜色控制,或成熟插件如 Indent Rainbow(高亮不同层级为不同颜色)。
替代方案:用原生功能实现“Spy 级”缩进洞察
不需要插件,就能让缩进线暴露每一处缩进异常——关键在组合配置:
- 启用
draw_indent_guides:true,并设indent_guide_options:["draw_normal", "draw_active"] - 强制统一缩进:
translate_tabs_to_spaces:true,tab_size:2(或你项目约定值) - 关掉干扰项:
detect_indentation:false(避免自动覆盖你的设定) - 开启空白符可视化:
draw_white_space:"all"—— 这样·(空格)和→(Tab)同时可见,混用立刻暴露
此时,缩进线位置 + 空白符标记 + 状态栏显示(如 Spaces: 2)三者对齐,等于给每行缩进做了“显微镜扫描”。
如果真想用颜色区分缩进层级
装 Indent Rainbow 是目前最稳的选择(支持 Sublime Text 4):
- 通过 Package Control 安装后,它会自动读取你当前的
tab_size和缩进方式 - 不同缩进深度显示不同颜色,默认配色已足够区分 3–5 层
- 配置入口在
Preferences → Package Settings → Indent Rainbow → Settings,可调colors数组和skip_empty_line - 注意:它和原生
draw_indent_guides不冲突,但若两者都开,视觉上会叠加——建议关掉原生线(设draw_indent_guides:false),只留彩虹色块更清晰
别在用户设置里写 indent_spy 或 spy_indent —— Sublime 不识别,也不会报错,只会静默忽略。
最容易被忽略的调试动作
当你改完所有设置却仍看不到预期效果,先做这三件事:
- 看右下角状态栏:如果显示
Indent: auto或为空,说明detect_indentation失效或被覆盖,不是线没画,是 Sublime 根本没算出缩进层级 - 按
Ctrl+Shift+P输入Convert Indentation to Spaces执行一次——很多“线断了”其实是混用了 Tab 和空格,而draw_indent_guides对混排极其敏感 - 临时切语法为
Plain Text:如果这时线出来了,问题一定出在当前语法包(比如 Vue、JSON 插件)禁用了引导线渲染,而非你的全局设置











