Esc是唯一能立刻清空所有辅助光标的操作:它不依赖焦点、不触发撤销、不干扰内容,只保留主光标并彻底清除其余辅助光标。

Esc 是唯一能立刻清空所有辅助光标的操作
多光标在 Sublime 中本质是「临时叠加」,不是稳定模式。任意方向键、Backspace、Tab 切换、Alt+Tab 切出再切回、甚至鼠标滚轮滚动,都可能让辅助光标静默坍缩,只剩主光标卡在某处。这时候按 Esc 是最直接、最可控的退出方式:它不依赖焦点位置,不触发撤销栈,不干扰已输入内容,只做一件事——清空所有辅助光标,保留最后操作的那个主光标。
Ctrl+U 只能逐次撤销光标添加动作,不是取消编辑
Ctrl+U(Windows/Linux)或 ⌘+U(macOS)专用于倒退「光标是怎么加进来的」,和 Ctrl+Z 编辑撤销完全无关。常见误操作是狂按 Ctrl+Z 想撤掉第 4 个误选的变量,结果把刚写的函数也回退了——那不是撤销错,是用错了命令。
- 按一次
Ctrl+U,就少一个光标,顺序严格按添加时间倒推(不是按位置远近) - 如果中间穿插过方向键、输入、剪切等操作,
Ctrl+U可能失效或行为不可预测——因为光标早已被强制合并 - 若
Ctrl+U按了没反应,大概率是光标已被其他操作归并,此时必须用Esc
鼠标点击和方向键反而会加速光标丢失
很多人以为按 ← 或 ↑ 后光标“还在”,其实 Sublime 已悄悄把所有光标拉到主光标所在行/列。表面看是移动,实际是强制归并:
- 按方向键后,各光标尝试同步走一格;某光标卡在行首/行尾,其余继续,结果错位,再按一次可能只剩一个
- 输入文字时,所有位置同步插入相同内容,然后立刻转为单光标——想输不同内容?别硬扛,改用
Ctrl+Shift+P→Split Selection into Lines - 鼠标单击看似可靠,但点偏可能展开折叠、选中行号,或触发拖拽(尤其
"drag_text": true未关闭时)
为什么 Ctrl+Shift+L 有时只生成一个光标
Ctrl+Shift+L 的行为完全依赖你**事先选中的范围是否含换行符**。它不是“生成多光标”,而是“把选区按换行符切片,每个片段末尾放一个光标”:
- 拖选了 3 行但没覆盖到换行符(即最后一行末尾没选中
\n),Sublime 就当它是单行选区,只放一个光标 - 安全做法:先用
Ctrl+L选整行(可连续多按),再按Ctrl+Shift+L,100% 按行生效 - 若某行结尾有空格或制表符,光标会落在空格后,容易误删;建议先执行
Ctrl+Shift+P→Trim Trailing White Space
真正需要快速取消多光标时,别试方向键、别点鼠标、别查设置——伸手按 Esc。它不讲道理,但永远有效。其他操作都是在光标还“看起来完整”时做的补救,而 Esc 是唯一能在光标已坍缩、错位、不可信之后仍能立即重置的出口。

















