必须安装bookmarks插件才能查看所有书签;ctrl+shift+alt+l(win/linux)或cmd+shift+alt+l(mac)弹出完整可搜索列表,包含路径、行号、代码预览,支持过滤和跳转,且能显示被折叠区域内的书签。

当前文件里怎么看到所有已加的书签(Bookmarks)
VSCode 本身不显示书签列表,必须装 Bookmarks 插件才能识别和管理行级标记。没装插件时按 Ctrl+Alt+K 没反应,或行边空白区没图标,就是这个原因。
装好后,所有已打书签的行左侧会出现小圆点(默认蓝色),但仅靠肉眼扫很难确认“全不全”——尤其文件长、书签多、或者有折叠代码块时,部分书签会被遮住。
-
Ctrl+Shift+Alt+L(Windows/Linux)或Cmd+Shift+Alt+L(Mac)直接弹出所有书签的可搜索列表,含文件路径、行号、代码片段预览 - 列表支持实时输入过滤,比如搜
todo或fix,能快速定位带关键词的书签 - 点击任一项直接跳转,双击可编辑备注(需插件开启
bookmarks.showEditor设置)
为什么 Ctrl+Alt+Down/Up 找不全?
快捷键只在当前打开的文件内顺序跳转,但不会告诉你“还有没有漏掉的”。更关键的是:如果某行被折叠(比如函数体、if 块),而书签恰好打在折叠区域内,Ctrl+Alt+Down 会直接跳过它——视觉上没图标,跳转逻辑也绕过,人根本意识不到丢了。
这种情况下,只有 Ctrl+Shift+Alt+L 列表能暴露全部,因为它读取的是插件维护的内存索引,不依赖当前视图渲染状态。
- 折叠区域内的书签仍计入总数,但不会出现在行号旁的图标区
- 关闭再重开文件,书签依然存在(插件默认持久化到工作区)
- 如果列表为空但你知道打过书签,检查是否误用了其他插件的快捷键覆盖了
Ctrl+Alt+K
如何确认书签真被记录了,而不是只是“看起来像”
有人把注释写成 // TODO 或 // HACK 当书签用,但这不是 Bookmarks 插件识别的对象。插件只认它自己打的标记,和语言无关,也不解析注释内容。
- 真正生效的书签:行左侧有图标(哪怕被折叠),且能在
Ctrl+Shift+Alt+L列表中查到 - 纯文本标记如
// ?或/* bookmark */不触发任何跳转逻辑,只是人工约定 - 插件设置里可启用
bookmarks.showLines,让书签行高亮背景色,比图标更醒目(尤其对视力弱或高分屏用户)
跨文件书签太多,怎么避免混淆
Bookmarks 默认全局管理所有打开文件的标记,但列表里只显示相对路径(比如 src/utils.ts),一旦项目里有多个同名文件(如多个 index.ts),单看名字容易点错。
- 列表里每项都带完整路径,鼠标悬停可看 tooltip,但快速浏览时还是得盯清楚
- 建议用不同颜色区分用途:红色标阻塞问题,绿色标待测逻辑,黄色标临时调试点(通过
bookmarks.colors配置) - 清理习惯很重要:
Ctrl+Shift+Alt+C清空当前文件所有书签,Ctrl+Shift+Alt+X清空全部——别等攒到几十个才处理
真正容易被忽略的,是折叠代码块里的书签既不可见也不可跳,却仍算“存在”。不打开列表确认,你永远不知道它还在不在那儿。











