因为默认配置仅识别FIXME、HACK、NOTE等关键词,未包含TODO;需在插件Settings中Tags栏添加TODO并取消大小写敏感选项,再手动刷新扫描。

为什么Todo-show在Atom里搜不到TODO但能搜到FIXME
默认配置下,todo-show 只识别 FIXME、HACK、NOTE 这几类标记,TODO 被排除在外——不是插件坏了,是它故意没开。
解决方法很简单:打开 Atom 设置 → 插件 → 找到 todo-show → 点击「Settings」→ 在 Tags 输入框里把 TODO 加进去,多个用英文逗号分隔,比如:TODO,FIXME,HACK,NOTE。
- 别漏掉大小写:默认匹配是大小写敏感的,
todo或Todo不会命中,除非你勾选了Case insensitive - 如果项目里混用
// TODO和/* TODO */,不用额外配置,插件自动兼容单行/多行注释格式 - 改完设置后不用重启 Atom,但得手动触发一次扫描(快捷键
ctrl-alt-t或右键菜单选「Todo: Show」)
扫描范围总漏掉node_modules或dist目录
todo-show 默认会跳过常见构建产物和依赖目录,这是为了性能,不是 bug。但它用的是硬编码黑名单,不是靠 .gitignore 或 .eslintignore。
要让它扫 node_modules(比如你想查某个库源码里的 TODO),得进插件设置,找到 Exclude VCS Ignored Paths 和 Exclude Directories 两项:
- 取消勾选
Exclude VCS Ignored Paths(否则它会读.gitignore并自动跳过node_modules) - 在
Exclude Directories输入框里删掉node_modules(默认值通常是node_modules,.git,coverage,dist) - 改完立刻生效,但已有缓存结果不会自动刷新,需要再按一次
ctrl-alt-t
点击列表项打不开对应文件或跳错行
常见现象:列表里显示 src/utils.js:42,点进去却停在第 1 行,或者直接打开空白窗口。
根本原因通常是路径解析失败——尤其当项目根目录不是 Atom 当前工作区根目录时(比如你在子文件夹里双击打开 Atom)。
- 确保 Atom 是从项目根目录启动的:
atom .,而不是atom src/ - 检查文件是否已被删除或重命名,
todo-show不实时监听文件变更,旧缓存可能指向不存在的路径 - 某些编辑器插件(如
project-manager)会干扰路径解析,可临时禁用测试 - Windows 用户注意反斜杠:
todo-show内部用正则提取路径,如果日志里看到src\utils.js这种格式,建议统一用正斜杠或启用插件的Use platform-specific path separator选项
想让TODO带优先级或分类怎么加标签
todo-show 本身不支持语义化标签(比如 TODO(high)),但它能识别括号包裹的任意内容,只要在 Tags 里定义好就行。
例如,你想区分紧急和普通 TODO,可以这样写注释:
// TODO(urgent): refactor auth flow // TODO(low): update README
然后在插件设置的 Tags 里填:TODO(urgent),TODO(low),FIXME。
- 括号里不能有空格,否则匹配失败:
TODO( high )≠TODO(high) - 匹配是前缀式,
TODO(urgent)不会匹配TODO,所以如果还想保留通用 TODO,得单独加上:TODO,TODO(urgent),TODO(low) - 颜色区分靠 Atom 主题,插件不控制样式;想高亮 urgent,得自己改主题 CSS 或装
highlight-selected配合关键词
复杂项目里,靠人工维护 TODO 分类容易失效,真要分级管理,不如上专用工具(比如 Jira 或 Linear),todo-show 适合轻量、临时、开发中快速追踪。

















