webstorm 的 todo 列表需手动唤出(mac:cmd+6;win/linux:ctrl+6),且仅扫描源码根目录下、归属正确文件类型的代码,自定义标签须配正则(如\bbug\b),过滤器仅按已配置pattern筛选,不支持路径/作者/日期过滤。

WebStorm 的 TODO 列表不会自动弹出来,必须手动唤出工具窗口,否则所有 // TODO 都只是普通注释,不聚合、不筛选、不高亮。
怎么打开 TODO 工具窗口(快捷键和常见失效原因)
Mac 用户按 Cmd + 6,Windows/Linux 用户按 Ctrl + 6 —— 这是唯一直接唤出的快捷键。别去菜单栏翻 View → Tool Windows,效率低且容易点错。
- 按了没反应?先确认光标是否在编辑器代码区(比如不在终端、Git 工具窗或设置页里)
- 窗口默认停靠在左下角;如果被关掉,可右键底部状态栏 →
TODO,或走View → Tool Windows → TODO - 刚加的
// TODO可能延迟几秒才出现——WebStorm 在后台重建索引,不用手动刷新或重启 - 如果项目刚导入,或文件夹被标记为
Excluded(右键 →Mark as Excluded),里面的 TODO 永远不会被扫描到
为什么写了 // BUG 却不显示?自定义标签必须配正则模式
WebStorm 默认只识别 TODO、FIXME、XXX(大小写不敏感),且仅对行注释 // 有效;/* TODO */ 块注释在非 JS/TS 文件中基本不识别。
- 路径:
Settings/Preferences → Editor → TODO → Patterns → +(Alt+Insert) - Pattern 填
\bBUG\b:\b是单词边界,避免匹配到BUGGED或DEBUG -
Case sensitive建议不勾——协作时大小写混乱太常见 - JSX/TSX 文件若没出现在 TODO 列表,检查
Settings → Editor → File Types中是否把它们归类到JavaScript files -
/** @todo */这类 JSDoc 注释默认不识别,得加正则:@todo\b
TODO 太多怎么聚焦关键项?过滤器不是搜索框,是 Pattern 组合开关
过滤器本质是“显示哪些已配置的 Pattern”,不是文本模糊匹配。它解决的是信息过载,不是找错字。
- 在 TODO 工具窗口顶部点漏斗图标 →
Edit Filters → Add,起名如Critical Only - 只勾选你定义的
BUG、FIXME、CRITICAL等 Pattern,其他全取消 - 切回 TODO 窗口顶部下拉菜单,选刚建的过滤器——立刻只显示对应标签的行
- 不同过滤器可配不同图标(⚠️ 表 BUG,? 表 REVIEW),靠视觉快速区分优先级
- 注意:过滤器无法按文件路径、作者、日期筛选;想带人名?得用 Live Template 自动生成
// REVIEW[alice]
容易被忽略的硬限制:文件类型、索引范围和颜色陷阱
很多“没显示”问题根本不是配置错,而是踩进了 WebStorm 的扫描规则盲区。
- 只扫描“源码根目录”下的文件(项目中标蓝的文件夹),
node_modules、dist、.git等默认排除 - 非 JS/TS 文件(如
.py、.go)即使写了// TODO,也大概率不识别——除非你手动把该后缀加进对应语言的 file type - 自定义 Pattern 没设颜色或图标时,它仍会出现在列表里,但可能因默认灰底白字太淡而被直接忽略
- 刚添加 Pattern 后,已打开的编辑器标签页不会立即高亮,需切换文件或等 5–10 秒索引完成
真正卡住人的往往不是“怎么加”,而是“为什么没加进去”——索引范围、文件类型归属、正则边界符、过滤器逻辑,这四点漏掉任一个,// TODO 就等于没写。











