告别丢失断点:VS Code 的断点书签

59 阅读4分钟

如果你曾经在调试过程中停下来去追踪另一个 bug,你一定深有体会:当你回来时,所有精心设置的断点都消失了。你费尽心思去回忆它们的位置、当时的条件、设置了哪些日志……然后,一切进展都泡汤了。

我创建了断点书签来解决这个问题。它允许你将当前断点保存到一个名为“流程”的文件中,并在流程之间即时 切换,并将所有内容(包括条件、日志点、函数断点等)恢复到原来的位置。

TL;DR — 安装它,点击 “保存” ,然后停止看管你的断点。


快速演示

保存当前会话

加载已保存的流程


它的作用

  • 一键保存并恢复所有活动断点(源和功能)
  • 无限流程— 为每个错误、功能或客户问题创建一个
  • 适用于 VS Code 可以调试的任何内容(JS/TS、Python、Java、C#、Go、Rust、PHP、Ruby……)
  • 友好的用户界面:带有内联操作(保存、加载、编辑、删除)的专用侧边栏
  • 类型安全且可靠:内置 TypeScript,经过测试且跨平台

[]/omardulaimi/stop-losing-your-breakpoints-meet-breakpoint-bookmarks-for-vs-code-3c4b#install-10-seconds)安装(10秒)

从命令面板(Ctrl / Cmd + P):

ext install OmarDulaimi.breakpoint-bookmarks

或者通过 CLI:

code --install-extension OmarDulaimi.breakpoint-bookmarks

市场页面:www.tymbjy.com


如何使用

1)照常设置

断点(条件、命中次数、日志点、函数断点——想怎么设置就怎么设置)。2 ) 打开 “断点书签” 视图(活动栏 → “断点书签”)。3

) 点击 “保存” 将当前会话快照保存到指定流程。4

) 稍后,点击任意流程上的 “加载” 即可恢复整个会话——精确的行数、条件和消息。5

) 使用 “编辑” 手动调整 JSON(高级用户,这很适合你)。6

)当流程不再有用时,删除它。

专业提示:保持“快乐路径”流程,您可以在需要干净基线时随时加载。


您可能关心的设置

// Settings → search for “breakpoint bookmark”
{
  // Use relative paths so flows work across machines & teammates
  "breakpointBookmark.useRelativePaths": true,

  // When loading a flow, clear any pre‑existing breakpoints first
  "breakpointBookmark.clearPreviousBreakpoints": true,

  // Pick a custom folder for the saved JSON files
  "breakpointBookmark.saveLocation": ".vscode/breakpoint-flows"
}

实际用途

  • 多个并行错误- 每个问题保留一个流程,在几秒钟内在它们之间跳转。
  • 功能标志和环境——“staging”、“canary”、“prod-sim”的流程。
  • 入职培训——向新员工提供代码库的“调试 101”流程。
  • 客户升级——保存用于重现票证的精确断点。
  • 配对和评论——在 repo 中共享流程,以便每个人都可以遵循相同的路径。

最近有什么新鲜事

  • 完全支持函数断点(以及文件/行断点)
  • 更简洁的侧边栏 UI,带有悬停操作和顶栏 “保存” 按钮
  • 更好的 Windows 路径处理和跨平台行为
  • 向后兼容旧版书签文件

(如果您喜欢详细信息,变更日志位于 repo 中。)


路线图 — 告诉我下一步要发布什么

我有一些烹饪想法,但我更愿意构建所需要的东西:

  • 开箱即用的共享/团队流程(在工作区中自动发现)
  • 分支感知流程(根据当前 git 分支自动切换)
  • “仅保存自上次加载以来的更改”
  • 区分/合并流程,并跨流程搜索
  • CLI 用于自动化 CI/repros 中的流程
  • 用于读/写流的其他扩展的 API

有更好的主意吗?开个 issue 或留言——我会仔细阅读所有内容。


如果这能节省你的时间❤️

一颗星或一条评论意义重大。如果它真的对您的日常工作有帮助,您也可以赞助开发——即使是一点点赞助也能帮助我更快地发布,并保持文档和修复的流畅。

感谢阅读 — 祝你调试愉快。如果你分享一下团队如何使用 Flows,我很乐意从代码库中分享链接。