Sublime Text的书签是行级临时标记,不支持命名或分类:Ctrl/Cmd+F2添加删除,F2/Shift+F2顺序跳转,本质是UI层便签而非导航系统。

Sublime Text 本身没有“标签”概念,所谓“书签”其实是通过内置的 toggle_bookmark 命令实现的行级标记,不支持命名、分类或跨文件跳转——想靠它做代码导航,得搭配其他机制。
怎么添加/删除单行书签
书签本质是行号标记,不保存到文件,只存在于当前会话(除非启用 remember_open_files 且关闭时未清空):
- Windows/Linux:按
Ctrl+F2在当前行添加或删除书签 -
macOS:按
Cmd+F2 - 添加后,行号左侧会出现实心圆点;再次触发即取消
- 快捷键冲突时,可检查
Preferences → Key Bindings中是否被插件覆盖
怎么批量跳转到书签位置
书签跳转仅支持顺序遍历,不能按名称或条件过滤:
- 下一个书签:
F2(Windows/Linux/macOS 统一) - 上一个书签:
Shift+F2 - 所有书签会按行号升序排列,跳转顺序与添加顺序无关
- 若当前文件无书签,Sublime 会自动切换到下一个有书签的打开文件中继续跳转
为什么不能给书签起名或加注释
因为 Sublime 的书签是纯 UI 层临时标记,底层没有存储结构支撑命名功能:
-
toggle_bookmark命令不接受参数,无法传入 label、group 或 color - 插件如
Bookmarks(需手动安装)可扩展功能,但依然受限于 API:无法在侧边栏显示带名列表,也不能绑定到符号(如函数名) - 真正需要“语义化跳转”,应改用
goto_definition、symbol_list(Ctrl+R),或配合Project → Add Folder to Project使用Ctrl+P全局模糊搜索
[
{ "keys": ["ctrl+f2"], "command": "toggle_bookmark" },
{ "keys": ["f2"], "command": "next_bookmark" },
{ "keys": ["shift+f2"], "command": "prev_bookmark" }
]
书签适合临时标记几处待修改的行,一旦项目变大、逻辑变复杂,靠它维护跳转路径很快会失效——别把它当导航系统用,它只是个行号便签。










