Sublime Text多光标编辑无开关,实时叠加且易误清;Ctrl+Shift+L按换行符拆光标,需确保选区含\n;Ctrl+D为字面匹配,非语义识别;列编辑需"drag_text":false+等宽字体;超2000光标静默丢弃,Esc退出最安全。

Sublime Text 没有“开启多行同时编辑”的开关或设置项——所有多光标操作都是实时叠加的,按错一个键(比如 Esc、方向键、Ctrl+X)就会立刻清空非主光标。
Ctrl+Shift+L 拆行光标只出一个?检查选区是否含换行符
Ctrl+Shift+L 不是“选几行就加几个光标”,它只解析当前选区里的 \n 或 \r\n:每遇到一个换行符,就在其前位置放一个光标。
- 鼠标拖选时最后一行末尾没覆盖到换行符(视觉上像选中了,其实停在最后一个字符),
Ctrl+Shift+L就当单行处理,只生成一个光标 - 安全做法:先按
Ctrl+L选中第一行,再按住Shift+↓向下扩展,确保选区包含完整换行符 - 空行也会被拆出光标,但光标落在行首;处理 JSON 或配置文件时务必手动检查是否误改空行
- 如果某行结尾有空格或制表符,光标会落在空格后,容易误删;建议先用
Ctrl+Shift+P→ 输入Trim Trailing White Space清理
Ctrl+D 逐次匹配总选错?它不识别语义,只认字符串
Ctrl+D 是严格字面匹配,不是智能识别变量名边界。比如光标在 user_id 上按一次,下次匹配会命中 user_id_list、user_id_cache 甚至 "user_id" 里的子串。
- 双击选中整个词再按
Ctrl+D,比单纯把光标放进去更可控 - 想跳过当前匹配项,立刻按
Ctrl+K再按Ctrl+D - 想只匹配完整单词,先清空选区,把光标放在词内,再确认
match_whole_word设为true(默认是false) - 对日志批量改
INFO→DEBUG这类固定字串,用Ctrl+Shift+G(不是Ctrl+G)更稳,它全文件暴力匹配起始位
列编辑 Alt+拖拽不直?两个硬条件缺一不可
列选择(矩形选区)必须同时满足:"drag_text": false + 等宽字体(如 Consolas、Source Code Pro)。否则鼠标一碰就拖动文本,根本进不了列选模式。
- 去
Preferences → Settings确认用户设置里有"drag_text": false,没有就手动加一行 -
Alt+左键拖拽时必须垂直移动;斜拉会生成锯齿状选区,尤其在缩进不一致的代码里极易错位 - 想在每行第 10 列插入内容?别靠目测——
Ctrl+Shift+P输入Move to Column,输入数字精确定位 - 列编辑适合对齐位置,
Ctrl+Click适合散点编辑,两者底层逻辑不同,不能混用
光标太多卡顿或输错?撤销与退出有明确路径
Sublime 默认最多保留约 2000 个光标,超限后静默丢弃;且所有光标共享一次输入——Tab 不是跳焦点,Enter 不是换一行,Backspace 会同步删所有光标前的字符。
- 点错一个光标?按
Ctrl+U(Windows/Linux)或Cmd+U(macOS)可逐次撤销最近添加的光标 - 命令面板弹出(
Ctrl+Shift+P)会立即冻结多光标状态,操作完需手动恢复 - 改完立刻按
Esc退出多光标,避免回车/退格时意外劈开所有行 - 最危险的不是不会用多光标,而是忘了自己正在操作的是纯文本——每次敲
Delete前,先Ctrl+F看一眼高亮是否真符合预期










