F12是Sublime中唯一稳定可靠的书签切换方式,全版本默认启用、无键位冲突、反馈明确;Ctrl+F2/Cmd+F2跳转为环形扫描且不维护顺序,Bookmarks: Show面板支持关键词过滤与双击跳转,书签仅内存存储、重启即清空。

F12 是最稳的添加/取消书签方式
别折腾 Ctrl+F2、Cmd+F2 或右键菜单里的 Toggle Bookmark——前者在笔记本上常被 Fn 键拦截,Mac 上 F2 默认调亮度,插件还可能覆盖绑定;后者滚动后容易点错行。F12 在所有 Sublime 版本(ST3/ST4)中默认启用、无冲突、反馈明确:光标在哪一行,按一次行号旁就出现蓝色小点,再按一次就消失。
常见错误现象:Ctrl+F2 按了没反应,其实是系统劫持了 F2;Toggle Bookmark 从右键菜单选中时,鼠标稍一偏移就打到隔壁行,尤其在 500+ 行文件里极易误标。
- 空行、注释行、折叠块内部行都能打书签,但别打在长注释末尾或全空行——
Bookmarks: Show面板只截取行首约 30 字,预览为空就无法识别上下文 - F12 不关心光标在行内什么位置,整行都被标记
- 同一行反复按 F12 只是切换状态(有 ↔ 无),不会叠加
Ctrl+F2 跳转是线性环形扫描,不是按顺序编号
Sublime 的 next_bookmark(默认 Ctrl+F2)和 prev_bookmark(默认 Ctrl+Shift+F2)不维护添加顺序,也不跨文件,只从当前光标位置开始往后/往前找第一个带书签的行。
使用场景很实际:你在第 45 行(数据库配置)、第 217 行(超时设置)、第 783 行(日志开关)打了书签,光标在第 100 行 → Ctrl+F2 跳到 217,再按跳到 783,再按绕回 45。
- 光标刚跳到第 217 行,立刻按
Ctrl+F2,它会从第 218 行开始搜,不会卡住也不会重复跳 - 被折叠的代码块(如
if DEBUG:块)不影响跳转,照样能准确跳入 - 切到另一个 tab 后,原文件所有书签“隐身”,
Ctrl+F2只在新文件里扫描 - 当前文件没书签时,这些快捷键静默失败:不报错、不提示、光标不动
Bookmarks: Show 面板才是高效管理入口
靠眼睛扫行号旁的小点效率低、易漏,真正该用的是命令面板里的 Bookmarks: Show——它列出每条书签的行号 + 行首约 30 字代码片段,支持实时关键词过滤,双击即跳转。
打开方式统一可靠:Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS)→ 输入 Bookmarks: Show → 回车。
- 输入
def,列表自动只留含函数定义的书签行;输TODO就聚焦待办项 - 面板只读,不能重命名、不能拖动排序,但快、准、带上下文
- 别把书签打在空行或注释末尾——预览为空白,列表里显示为纯行号,无法区分用途
Clear Bookmarks 是唯一清空方式,关文件就丢不是 Bug
书签是纯内存结构:不写入文件、不生成配置、不随项目会话持久化。关闭标签页、重启 Sublime、甚至切换工作区,所有书签都会清空。
清空操作必须走命令面板:Clear Bookmarks(仅当前文件)、Clear All Bookmarks(所有已打开文件)。菜单栏里的 Selection → Bookmarks → Clear Bookmarks 在多语言界面或旧版中常因翻译映射失效而点击无反应。
-
Ctrl+F2想“逐个取消”是错觉——它是 toggle 操作,对非书签行无效,对已书签行反而可能先删后加 -
Clear Bookmarks不可逆,且不影响其他 tab 中的书签 - 如果真需要跨会话保留关键位置,得靠
// FIXME或// TODO注释,再配合Find in Files

















