VSCode可通过Markdown All in One等扩展实现轻量开发笔记,核心是与代码同环境、支持跳转和上下文嵌入;推荐用本地notes/文件夹存日志、相对路径链接、自定义时间片段、快捷插入带文件名行号的代码块,并用全局搜索精准定位。
vscode 本身没有原生笔记功能,但用对扩展,能比轻量笔记软件更贴合开发流——关键不是“记”,而是“和代码同环境、可跳转、能嵌入上下文”。核心推荐 logseq 或 obsidian 的 vscode 插件方案,但更轻量、更直接的做法是用 markdown all in one + 工作区本地文件 + 自定义代码片段。
用 Markdown 文件当开发日志本,不装额外笔记软件
在项目根目录下建 notes/ 文件夹,放 dev-log-2024.md 这类文件。VSCode 默认支持 Markdown 预览、大纲、链接跳转,无需配置即可写带标题、列表、代码块的日志。
- 右键 → “Open Preview to the Side” 实时看渲染效果
- 用
[TODO]开头的行会被Todo Tree扩展自动聚合(推荐装) - 插入当前时间:绑定快捷键运行命令
editor.action.insertSnippet,自定义 snippet:"now": "$CURRENT_YEAR-$CURRENT_MONTH-$CURRENT_DATE $CURRENT_HOUR:$CURRENT_MINUTE" - 别用绝对路径链接代码文件,改用相对路径,例如
[utils.ts](src/utils.ts)—— 否则换机器或克隆仓库后链接失效
快速插入带上下文的代码片段,避免手动复制粘贴
写日志时经常要记“刚才调试发现 parseConfig() 在空字符串时没校验”,如果每次都要手敲函数名、参数、报错堆栈,很快放弃记录。用 Code Spell Checker 和 Auto Rename Tag 不解决这事,得靠 snippet + 命令组合。
- 在
keybindings.json中加一条:[ { "key": "ctrl+alt+l", "command": "editor.action.insertSnippet", "args": { "snippet": "> ${1:issue} — ${TM_FILENAME}:${TM_LINE_NUMBER}\n> \n> \`\`\`ts\n${TM_SELECTED_TEXT}\n\`\`\`\n\n" } } ] - 选中一段出问题的代码,按
ctrl+alt+l,自动插入引用块,含文件名、行号、代码块 -
TM_SELECTED_TEXT为空时也不会崩,只是留空代码块 —— 比强行报错友好
搜索日志时别只依赖 Ctrl+F,用 VSCode 全局搜索精准定位
开发日志写多了,靠翻文件效率极低。VSCode 的 Search: Find in Files(ctrl+shift+f)配合 glob 模式才是真生产力。
- 搜某次调试记录:输入
@debug @2024-05-20,在files to include栏填notes/**/*.md - 搜所有含特定函数的日志:
parseConfig(,勾选Match Case和Use Regular Expression可进一步限定为parseConfig\([^)]*\) - 排除已解决项:在
files to exclude填**/archive/**,把旧日志移进notes/archive/文件夹即可自动过滤
真正卡住人的不是“怎么记”,而是“记完能不能三秒内再找到”。路径别嵌太深,命名别依赖记忆(比如不用 idea-1.md),还有——别把日志文件提交到 git,除非你明确想共享这些思考过程。临时笔记放 .gitignore 里更安全。










