f12 是唯一可靠书签开关,因它在所有官方版本中默认绑定、不依赖fn键、无系统冲突;书签纯内存存储,不跨文件/会话,关闭tab即清空。

F12 是唯一能稳定打/删书签的快捷键,其他组合(如 Ctrl+F2、Cmd+F2)在多数笔记本或 macOS 上会被系统劫持或静默失效;书签纯内存存储,不跨文件、不跨会话,关掉 tab 就清空。
为什么 F12 是唯一可靠的书签开关
Sublime 的书签本质是内存里的行号数组,设计目标就是“此刻我需要反复看这几行”。F12 在所有官方版本(ST3/ST4)中默认绑定、不依赖 Fn 键、不和亮度/音量快捷键冲突:光标停在哪一行,按一次,行号旁立刻出现蓝色小点;再按一次,小点消失,无副作用。
-
Ctrl+F2在 Windows 笔记本常需Ctrl+Fn+F2才触发,实际可能调音量 -
Cmd+F2在 macOS 默认调亮度,即使开了「标准功能键」,部分 ST4 安装包仍捕获不到 - 右键菜单里的
Toggle Bookmark滚动后极易点错行,尤其在 500+ 行文件里 - 别把书签打在空行、全注释行末尾或缩进极深的行——
Bookmarks: Show面板只截取行首约 30 字,预览为空就无法识别上下文
Ctrl+F2 和 Ctrl+Shift+F2 跳转不是按添加顺序,而是线性扫描
Sublime 的跳转逻辑非常朴素:从当前光标位置开始,往后找第一个带书签的行(next_bookmark),往前找则用 prev_bookmark。它不记忆、不跨文件、不跳过折叠块——正因为太“朴素”,反而容易误判行为。
- 光标停在第 201 行(本身是书签),按
Ctrl+F2→ 从第 202 行开始搜,不会重复跳自己 - 最后一行是书签,再按
Ctrl+F2→ 自动绕回第一个书签,形成环形遍历 - 被折叠的代码块(如
if DEBUG:块)不影响跳转,照样能准确跳入 - 切到另一个 tab 后,原文件所有书签“隐身”,
Ctrl+F2只在新文件里扫描 - 当前文件没书签时,这些快捷键静默失败——不报错、不提示、光标不动
用 Bookmarks: Show 面板管理比扫小点靠谱十倍
打三四个书签后,靠扫行号旁的蓝色小点效率极低,且容易漏。真正提效的是命令面板入口:Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS)→ 输入 Bookmarks: Show → 回车。它列出每条书签的行号 + 行首约 30 字代码片段,支持实时关键词过滤,双击即跳转。
- 输入
def,列表自动只留含函数定义的书签行 - 输入
TODO就聚焦待办项,不用全局搜索 - 面板只读,不能重命名、不能拖动排序,但快、准、带上下文
- 清空全部书签请用
Clear Bookmarks命令(同样走命令面板),不是反复按Ctrl+F2 -
Clear Bookmarks仅清当前文件,不可逆,且不影响其他 tab 中的书签
别指望书签能跨会话或记住列位置
书签只是内存里的行号数组,不写入文件、不生成配置、不随项目会话持久化。关闭文件 → 所有书签清空;重启 Sublime → 所有书签清空;切换工作区 → 所有书签清空。跳转时总回到行首,不是你上次光标所在的列位置——这是原生限制,不是配置问题。真正容易被忽略的是:跳转顺序永远按行号升序/降序线性扫描,而不是按你添加的先后顺序;哪怕第 800 行的书签是你第一个打的,它也只会在所有比当前光标行号大的书签里找最小的那个。











