直接在用户设置中添加"draw_white_space": "all"即可实时显示空格(·)、tab(→)和换行符(¶),无需插件或重启;注意修改右侧user面板、逗号位置正确,并确保未被语法高亮或主题抑制。

怎么让空格和 Tab 一直显示出来
直接改设置,加一行 "draw_white_space": "all" 就行。这不是插件,也不用重启,保存后立刻生效。
- 打开 Preferences → Settings – User(注意是右侧“User”面板,不是左边只读的 Default)
- 在已有 JSON 里加上这行(确保逗号位置正确,别漏掉或多余):
"draw_white_space": "all"
- 保存文件,当前所有打开的文件马上显示:空格变
·,Tab 变→,换行符变¶,行尾多余空格也高亮
设成 "all" 是因为 "selection" 只在选中时才画点画箭头,缩进问题往往藏在没选中的地方——比如 Python 的 if 块缩进不一致,你光选一行根本看不出哪行用了 Tab、哪行用了 4 个空格。
菜单里的 “Show Hidden Characters” 为什么有时没反应
它只是临时开关,底层调的也是 draw_white_space,但有隐藏限制:如果当前文件绑定了某种语法(比如 Markdown 或 Python),部分主题或插件会抑制该功能,导致勾选了也没显示。
- 临时排查时,先按
Ctrl+Shift+P(Win/Linux)或Cmd+Shift+P(macOS)打开命令面板 - 输
Set Syntax: Plain Text切成纯文本模式,再输Toggle Whitespaces回车 - 如果这时能显示,说明是语法高亮或主题干扰;如果还不能,大概率是设置改错了位置(比如误改了 Default)或 Sublime 版本太老(v2 不支持
"all")
显示出来了但看不清,点和箭头颜色太淡怎么办
不是设置失效,是主题没给足对比度。Sublime 默认用 white_space_foreground 控制这些符号颜色,但很多主题(尤其深色系)把它设得太浅,或者干脆没定义。
- 可以换一个更清晰的主题试试,比如
Monokai或Adaptive,它们对·和→的渲染更稳 - 不想换主题?在用户设置里补一句:
"white_space_foreground": "hsl(0, 0%, 60%)"
(灰色值可调,50%–70% 区间通常最易辨识) - 注意:这个配置只影响视觉,不影响实际字符内容,也不拖慢编辑器
为什么开了 "draw_white_space": "all" 还看到 →,明明设置了 translate_tabs_to_spaces
因为 translate_tabs_to_spaces 只管“新输入”和“自动转换”,它不会把文件里已有的 Tab 字符扫掉。只要文件里真实存在 \t,→ 就一定会显示出来。
- 想清理旧 Tab?手动执行
Convert Indentation to Spaces(右键或命令面板搜) - 想以后自动处理?除了
"translate_tabs_to_spaces": true,建议加一行:"trim_trailing_white_space_on_save": true
,这样保存时顺手清掉行尾空格,配合"all"才能确认真清干净了 - Python 用户特别注意:混用空格和 Tab 在解释器里报
IndentationError,而→和·并排出现就是最直白的预警信号
真正容易被忽略的是:改完设置后不检查是否写进了 User Settings —— 很多人点开 Preferences → Settings 看到左右两个面板,下意识往左边(Default)里粘贴,结果改了等于没改。










