Notepad++书签是临时行标记,不持久、不命名、不跨会话;Ctrl+F2在光标行添加/取消书签,F2逆序回退,Shift+F11列表导航;推荐用Mark功能批量标记+注释伪标记实现跨会话定位。

Notepad++ 的书签不是“收藏夹”,它不保存、不命名、不跨会话存在——但用对了,比跳转函数列表还快。
Ctrl + F2 添加书签,但光标位置决定一切
书签只绑定「当前光标所在行」,和内容无关。哪怕该行是空行、注释或缩进,只要光标停在那里,Ctrl + F2 就打上一个蓝色圆点。
- 再按一次
Ctrl + F2会取消该行书签,不是“切换到下一个” - 复制文件、另存为新名、甚至拖拽标签页重开,原书签全部丢失——它不写入文件,也不写入配置
- 如果想标记某段逻辑入口(比如
if (user.isAuthenticated())所在行),必须先把光标精准移到那一行,再按Ctrl + F2
F2 和 Shift + F11 跳转行为完全不同
F2 不是“跳到下一个书签”,它是严格按「添加顺序的逆序」单向回退:第一次按跳到最后加的那个,第二次按跳到倒数第二个……直到没有为止。它不循环,也不提示你当前在哪。
-
Shift + F11才是真正可用的导航入口:弹出浮动窗口,列出所有书签的行号 + 前 30 字缩略文本 - 这个窗口支持鼠标点击跳转、回车确认、方向键上下选择,但不显示列偏移——超长行容易点错
- 如果书签超过 50 个,窗口不会自动滚动到当前光标附近,得手动拖动滚动条找
批量标记含关键词的代码行,别手动点
手动给每个 TODO、FIXME 或函数定义行加书签,既慢又易漏。正确路径是用「标记 + 书签联动」:
- 打开
Search → Mark(或Ctrl + F→ 切到Mark标签) - 输入正则,例如
^\s*(function|const|let)\s+\w+匹配变量/函数声明,或//\s*TODO匹配待办注释 - 务必勾选
Bookmark line(注意:必须在点Mark All之前勾选,之后补勾无效) - 点
Mark All,所有匹配行立刻获得书签,且能统一用Shift + F11管理
书签不能持久?那就用可搜索的伪标记
如果你关掉 Notepad++ 再打开,发现所有书签都没了——这不是 bug,是设计如此。真要跨会话保留“标记感”,得换思路:
- 在关键行末尾加可识别注释,例如
// [BK: auth_init]或// ⚠️ REVIEW LATER - 后续用
Ctrl + F搜[BK:或REVIEW,瞬间定位 - 配合
Search → Find in Files(Ctrl + Shift + F)还能跨项目检索这些标记 - 这类注释会被 Git 跟踪、被 IDE 识别(如 VS Code 的 TODO Highlight 插件),比书签更可靠
书签真正的价值不在“记住位置”,而在“临时聚焦”——调试时快速切回几处关键行,查完就清,不依赖持久化。一旦把它当成笔记工具用,就会反复踩空。

















