直接开“显示空格与制表符”即可:快捷键ctrl+shift+space,或菜单栏视图→显示符号→显示空格与制表符;空格显示为浅灰色圆点·,制表符为浅灰色箭头→,精准定位缩进问题且不干扰界面。

直接开“显示空格与制表符”就行,别点“显示所有字符”——后者会把↵、¶全堆出来,干扰编码。
怎么快速开启空格和Tab可视化
菜单栏点 视图 → 显示符号 → 显示空格与制表符(快捷键 Ctrl+Shift+Space),勾选后立即生效。空格变成浅灰色圆点 ·,制表符变成浅灰色箭头 →。这个组合足够定位缩进问题,又不塞满屏幕。
- 英文界面路径是
View → Show Symbol → Show White Space and TAB - 状态栏右下角那个小图标(像 ¶ 的)也能开关,但容易误触,建议走菜单更稳
- 如果菜单项是灰色的,说明当前文档是只读状态,右键标签页 → 重新加载,或检查文件权限
开了却看不到·或→?先查这三处
常见失效不是功能坏了,而是被环境卡住:
- 文档编码是
UTF-16或UTF-8-BOM:Notepad++ 渲染符号不稳定,另存为 → UTF-8(无 BOM)再重开 - 主题/字体让符号颜色太淡:进
设置 → 样式配置器 → 全局样式 → 空白字符,调亮前景色 - 光标所在行没刷新:滚动几行,或切换到其他标签再切回来,强制重绘
为什么Python程序员必须开这个功能
因为 IndentationError: unindent does not match any outer indentation level 这类报错,90% 是混用 · 和 → 导致的——它们在默认状态下完全不可见。开了之后,一眼就能看出哪行是安全的 ····,哪行藏着危险的 →。
- 网上抄的代码、Git 拉下来的脚本,只要没开这个,就等于蒙眼改缩进
- 真正出问题的那行代码往往没问题,问题藏在它上面三行里一个悄悄混进去的
→ - 缩进语义敏感的语言(如 Python、YAML、JSON)中,显示只是第一步,后续还得统一规则,比如配
.editorconfig
转换前务必确认缩进模式是否匹配
想用 编辑 → 空格/制表符 → 将空格转换为制表符,得先看状态栏右下角显示的是 4 SP 还是 4 TAB。如果显示 4 SP 却执行转 Tab,Notepad++ 会按“4个空格=1个Tab”换算;但若实际缩进是 2 或 8,结果就会错层。
- 右键点击状态栏缩进显示(如
4 SP),可手动切为4 TAB或对应数值 -
设置 → 首选项 → 语言 → 制表符设置中的“制表符大小”必须和状态栏一致,否则转换逻辑错乱 - 全角空格(U+3000)和不间断空格(U+00A0)不会被识别为普通空格,得用十六进制查找
\x{3000}单独清理
最麻烦的不是找不到开关,而是开着它却忘了看——缩进问题从来不在报错那一行,而在它上面三行里藏着一个悄悄混进去的 →。











