VSCode原生无收藏功能,需安装alefragnani的Bookmarks扩展实现书签;默认快捷键为Ctrl+Alt+K(加/删)、J(上一)、L(下一);需开启bookmarks.showGutterIcon并配置bookmarks.languages和persisted确保图标显示与跨重启保存。

VSCode 里没有叫“收藏”的功能,只有 bookmarks 扩展实现的书签
VSCode 原生不支持代码行收藏或书签。所谓“代码行收藏”,实际依赖第三方扩展 Bookmarks(作者:alefragnani)。装错扩展(比如搜“favorite”“star”“pin”)基本无效,也容易遇到兼容问题。
实操建议:
- 在扩展市场搜
Bookmarks,认准作者是alefragnani,安装量超千万的那个 - 别装
Code Bookmarks或Bookmark(单数)等名字近似的替代品,快捷键和命令不一致,文档也少 - 安装后无需配置,默认就生效;但首次使用前建议重启 VSCode,避免命令未注册
怎么给某一行加书签、跳转、删书签:三个核心快捷键
加/删书签、跳转到上一个/下一个书签,全靠快捷键驱动,不是右键菜单也不是命令面板常驻项。记不住快捷键就等于没用上这个功能。
默认快捷键(Windows/Linux):
- 加/删当前行书签:
Ctrl+Alt+K - 跳转到上一个书签:
Ctrl+Alt+J - 跳转到下一个书签:
Ctrl+Alt+L
macOS 用户把 Ctrl 换成 Cmd 即可。如果冲突(比如跟输入法或系统快捷键撞了),进 Preferences: Open Keyboard Shortcuts 搜 bookmark,改 bookmarks.toggle、bookmarks.jumpToNext 这几项。
书签不显示?检查 bookmarks.showGutterIcon 和文件类型
加了书签但左边距没出现图标,常见原因有两个:设置被关了,或者当前语言不被支持。
解决办法:
- 打开设置(
Ctrl+,),搜bookmarks.showGutterIcon,确保它是true - 该扩展默认只对源码类语言启用(如
javascript、python、typescript),对plaintext、markdown、json等可能不显示图标(但书签仍存在,跳转正常) - 想强制开启所有语言的图标?在
settings.json里加:"bookmarks.languages": ["*"]
,但会轻微拖慢大文件打开速度
多个文件的书签怎么管理?别依赖“全局列表”,它不实时同步
Bookmarks 扩展提供 Bookmarks: List All 命令,但它列出的是当前工作区里所有已加载文件中的书签——没打开的文件里的书签不会出现,关掉再重开文件也会丢失书签(除非启用了持久化)。
真正可靠的管理方式:
- 开启书签持久化:在
settings.json加"bookmarks.persisted": true
,这样书签会存到.vscode/bookmarks.json,跨重启保留 - 但注意:它不会自动跨工作区同步。A 项目加的书签,在 B 项目里完全不可见
- 不要指望它替代 git 注释或 TODO 注释——书签纯本地,不进版本控制,换电脑就消失
书签本质是临时导航辅助,不是代码元数据。真要长期标记关键逻辑,还是得靠 // TODO: 或 // HACK: 配合 VSCode 内置的 TODO Tree 扩展。











