vscode 中需自定义快捷键插入标准格式的 todo/fixme 标记,如配置 ctrl+alt+t 插入 # todo: ${1:brief description},并限定语言作用域;标记必须全大写紧接冒号或空格,配合搜索或 todo tree 扩展实现追踪与可视化。

VSCode 里怎么用快捷键插入 TODO、FIXME 这类任务标记
直接按 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS),输入 “Insert Snippet”,选中当前语言对应的任务标记片段——但更常用、更快的是自定义快捷键绑定,而不是每次调用命令面板。
VSCode 原生不提供默认快捷键插入 TODO 或 FIXME,必须手动配置。否则你只能靠手敲,或者复制粘贴,效率低还容易拼错。
- 打开设置 → 键盘快捷键(或直接按
Ctrl+K Ctrl+S) - 点击右上角“打开键盘快捷键(JSON)”图标,编辑
keybindings.json - 添加如下条目(以 Python 为例,其他语言同理替换
python):
[
{
"key": "ctrl+alt+t",
"command": "editor.action.insertSnippet",
"when": "editorTextFocus && editorLangId == 'python'",
"args": {
"snippet": "# TODO: ${1:brief description} ${2:// @${3:username}}"
}
}
]
保存后,在 Python 文件中光标任意位置按 Ctrl+Alt+T 就能插入带占位符的 TODO 行,Tab 可跳转编辑。
为什么不能只用注释符号硬编码,而要用 snippet
硬写 # TODO: 看似简单,但 VSCode 的任务追踪(Tasks)、搜索(Ctrl+Shift+F 搜 TODO)、以及扩展如 Todo Tree 都依赖**标准格式匹配**:必须是 TODO、FIXME、NOTE 等全大写关键词紧接冒号或空格。手误写成 # todo: 或 # TODO :(冒号前多空格)会导致识别失败。
微软正式发布 Visual Studio Code 1.118 版本 。本次更新重点强化了 AI 开发体验与企业管理能力,其中最引人注目的是新增 Copilot CLI 远程控制功能,允许开发者通过手机或网页远程监控和接管 AI 会话 。同时,为了提高 AI 的运行性价比,新版本优化了令牌缓存策略以降低成本 。此外,1.118 版还引入了 Chronicle 本地历史追踪、TypeScript 7.0 支持以及更严格的企业级访问管控 。
-
TODO必须全大写,且后面紧跟:或(单空格),不能有制表符或多余空格 - 不同语言注释语法不同:Python 用
#,JS/TS 用//或/* */,C++ 同样是//,snippet 要按editorLangId区分 - 如果没限定
when条件,快捷键会在所有文件生效,可能在 JSON 或 Markdown 里误插// TODO——语法错误或无意义
如何让 TODO 在侧边栏实时显示(不用装扩展也行)
VSCode 自带的搜索功能就能做到,但得配合正则和正确作用域。打开全局搜索 Ctrl+Shift+F,输入 TODO|FIXME|NOTE,勾选正则表达式(.* 图标),再点“…”,选择“在文件中” → “排除” → 填入 **/node_modules/**,**/*.min.js,**/dist/**。
- 真正起作用的是工作区级的
todo-tree.filtering.includeGlobs配置,但这是Todo Tree扩展的功能,原生不支持树形视图 - 原生唯一可视化方式:用
Ctrl+Shift+T打开“转到符号” → 输入@TODO,仅限当前文件;跨文件还是得靠搜索面板 - 如果用了
Todo Tree,它默认识别TODO,但会把todo(小写)也抓进来——需在设置里关掉todo-tree.tree.ignoreCase
多人协作时任务标记容易被忽略的三个细节
标记不是写完就完事。没人跟进的 TODO 比没有还糟——它制造虚假安全感。
- 别在 PR 里留
TODO:CI 流水线不会检查,但 Code Review 时应要求当场处理或拆 Issue,否则 merge 后大概率被遗忘 -
FIXME比TODO更紧急,代表已知缺陷;但很多人混用。建议团队约定:FIXME必须关联 Issue 编号,如// FIXME: #1234 fix race condition in init() - Git 提交前运行
grep -r "TODO\|FIXME" --include="*.py" --include="*.js" .,可快速扫出未清理的临时标记——CI 中加这步比靠人眼靠谱
快捷键只是起点,标记的生命周期管理才是关键。漏掉 when 条件、大小写写错、没配排除路径,都会让这个功能失效。真正难的不是加标记,而是让它始终可发现、可追踪、可闭环。










