phpstorm 默认仅识别全大写 // todo、// fixme、// xxx 三类行内注释,需后接冒号或空格;小写、中文、块注释及html中格式不符(如非 )均不生效,且依赖目录设为sources root、正则配置正确及索引就绪。

PhpStorm 默认只识别 // TODO、// FIXME、// XXX 这三种全大写、后接冒号或空格的行内注释,其他写法(比如小写 todo、中文 待办、块注释 /* TODO */)默认不生效——不是 IDE 坏了,是规则没匹配上。
为什么写了 // todo 却没进 TODO 窗口
常见错误不是漏写,而是格式或上下文不对:
-
// todo: 修复登录❌ 小写 + 冒号前无空格 → 默认正则不匹配 -
// TODO-xxx❌ 中划线打断关键词连续性 →TODO后必须是空格或冒号 -
/* TODO: xxx */✅ 多行注释里能识别,但仅限 PHP/JS 等支持该语法的语言;HTML 必须用<!-- TODO: xxx --> -
// TODO(urgent): 重试逻辑❌ 括号直接跟在TODO后 → 默认规则不提取标签,需自定义正则 - 光标不在编辑器主区域(比如在搜索框或侧边栏)→
Ctrl+Alt+T快捷键失效
怎么让 PhpStorm 认出小写 todo 和中文待办
要支持非默认关键词,得手动加正则模式,路径是:Settings > Editor > TODO(macOS 是 Preferences > Editor > TODO):
- 点
+新增 Pattern,填正则:\b(todo|待办|fixme):?\b - 务必勾选
Case insensitive,否则todo不匹配 - 给这行规则设个醒目
Color(比如橙红),否则编辑器里不显色 - 改完必须点
Apply(不是OK),否则配置不落地 - 关闭再重开 TODO 窗口(
Alt+6关 → 再按一次开),强制重新扫描,缓存不刷新就看不到新标记
HTML 文件里的 TODO 怎么写才有效
HTML 不支持 // 行注释,只能用 <!-- -->,且 PhpStorm 对 HTML 的 TODO 扫描有额外要求:
- 必须写成:
<!-- TODO: 修复导航栏响应式断点 -->✅ 全大写 + 冒号后空格 -
<!-- todo: xxx -->❌ 小写不匹配;<!-- TODO:xxx -->❌ 冒号后缺空格 - 文件所在目录必须设为
Sources Root(右键目录 →Mark Directory as > Sources Root) - 确认
Settings > Editor > TODO中已启用HTML文件类型(勾选对应复选框) - 如果项目混用 Blade 或 Vue 单文件组件,
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!










