F12是唯一可靠书签开关,它在所有官方版本中默认绑定、无系统冲突、反馈明确;Bookmarks: Show面板支持关键词过滤与双击跳转,next_bookmark为线性扫描且书签不持久化。

F12 是唯一可靠书签开关,别试 Ctrl+F2 或右键菜单
Sublime 的书签功能本身没问题,但绝大多数人卡在“打不上”或“删不掉”——根本原因是误用了不可靠的快捷键。F12 在 ST3/ST4 所有官方版本中默认绑定、不依赖 Fn 键、不与系统亮度/音量冲突,光标停在哪一行,按一次就加书签(行号旁出蓝色小点),再按一次就删,反馈明确、无延迟。
- Ctrl+F2 在 Windows 笔记本上常需
Ctrl+Fn+F2才触发,实际可能调音量;macOS 上Cmd+F2默认调亮度,即使开了“标准功能键”,部分 ST4 安装包仍捕获不到 - 右键菜单里的
Toggle Bookmark滚动后极易点错行,尤其在 500+ 行配置文件或嵌套模板里 - 别把书签打在空行、全注释行末尾(如
# FIXME: race condition here)、或缩进极深的行——Bookmarks: Show面板只截取行首约 30 字,预览为空就无法识别
Bookmarks: Show 面板才是真实用法,不是扫行号小点
打了三四个书签后,靠眼睛扫行号旁的蓝色小点效率极低,还容易漏。真正提效的是命令面板里的 Bookmarks: Show:它列出每条书签的行号 + 行首代码片段,支持实时关键词过滤,双击即跳转。
- 打开方式统一:
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS)→ 输入Bookmarks: Show→ 回车 - 输入
def,列表自动只留含函数定义的书签;输TODO就聚焦待办项;输assert聚焦断言行 - 面板不支持重命名、拖拽排序,但快、准、带上下文——这是原生限制,不是配置问题
- 别指望它显示完整行内容,预览截断是硬限制;若某行开头全是空格或注释,面板里就是空白,无法通过关键词定位
next_bookmark 跳转是线性扫描,不是按顺序或行号排序
Sublime 的 next_bookmark(默认 Ctrl+F2)和 prev_bookmark(默认 Ctrl+Shift+F2)不做任何排序,只从当前光标位置开始往后/往前找第一个带书签的行。理解这点,才能避免跳错、跳空、反复绕圈。
- 光标在第 200 行(本身是书签),按
Ctrl+F2→ 从第 201 行开始搜,不会重复跳自己 - 书签在第 32、187、602 行,光标在第 100 行 →
Ctrl+F2跳到 187,再按跳到 602,再按绕回 32 - 被折叠的代码块(如
if DEBUG:块)不影响跳转——折叠只是视觉隐藏,行号仍在,照样命中 - 切到另一个 tab 后,原文件所有书签“隐身”,
Ctrl+F2只在新文件里扫描;当前文件没书签时,这些快捷键静默失败——不报错、不提示、光标不动
书签关掉就丢,这不是 Bug 是设计
Sublime 原生书签是纯内存结构:不写入文件、不生成配置、不随项目会话持久化。重启编辑器、关闭标签页、甚至切换工作区,所有书签都会清空。这意味着你不能靠它做长期项目索引,也不能恢复上次调试时的断点位置。
- 清空全部书签请用
Clear Bookmarks命令(同样走命令面板),不是反复按Ctrl+F2——后者只是 toggle,对非书签行无效,还可能误加新书签 - 如果真需要跨会话保留关键位置,得靠
// TODO:或// FIXME:注释 +Ctrl+Shift+F全局搜索来补足 - 别混淆书签和修改点:
Ctrl+U回溯刚改过的地方,书签锚定「重要位置」,两者目的不同,混用反而降低效率


















