sublime多行编辑依赖快捷键实时叠加光标而非模式切换;ctrl+shift+l按换行符拆解光标致缩进错位,需home对齐或align indent;列选择优于ctrl+shift+l加前缀;ctrl+d默认整词匹配,ctrl+k+d跳过、双击选词更可控;drag_text开启时ctrl点击失效,须设为false;find all光标仅在匹配起始位,注意换行符与正则设置;命令面板弹出即冻结多光标。

Sublime 的多行同时输入不是“开启一个模式”,而是靠快捷键实时叠加光标位置——记错这个逻辑,80% 的操作会失效或漏改。
Ctrl+Shift+L 按行拆解光标时为什么光标全歪了
它只认换行符,不认缩进对齐。选中 4 行带缩进的代码后直接按 Ctrl+Shift+L,所有光标会落在各自行的“末尾位置”(即换行符前),而不是行首或某列。如果这 4 行缩进不一致,光标就彻底错位。
- 想统一从行首编辑?先按
Home把所有光标移到行首,再按Ctrl+Shift+L;或运行命令面板(Ctrl+Shift+P)搜Align Indent - 想给每行开头加
[DEBUG]?别用Ctrl+Shift+L,改用列选择:Alt+鼠标从第一行列首拖到最后一行列首 - 误操作后原选区丢失不可逆,别指望撤销——提前用
Ctrl+Shift+P→Split Selection into Lines备份选区
Ctrl+D 逐词匹配总跳过想改的那一处
Ctrl+D 默认只匹配完整单词(match_whole_word: true),且严格按出现顺序扫描全文。光标在 user_id 上连按,不会命中字符串里的 "user_id",也不会匹配 user_input 中的子串。
- 跳过某处?按
Ctrl+K再按Ctrl+D,当前高亮项被忽略,光标跳到下一个 - 想强制匹配子串?先在查找面板(
Ctrl+F)里关掉match_whole_word,或用正则\buser_id\b - 点错位置导致第一次匹配就偏了?双击选中目标词再按
Ctrl+D,它会以选区文本为基准匹配,更可控
手动 Ctrl+Click 加光标没反应或拖动文本
90% 是因为 drag_text 还开着。Sublime 默认启用该设置,按住 Ctrl 点击时会优先拖动已选中文本,而非添加光标。
- 必须去
Preferences → Settings用户配置里加一行:"drag_text": false,保存并重启 Sublime - 点击位置太靠近已有选区,可能触发列选择或双击选词——轻点行首空格、行尾换行符前,或单词中间偏左更稳
- 点完发现只剩一个光标?很可能是某行光标卡在行尾未同步输入,Sublime 自动合并了——用
Ctrl+U可逐次撤销最近添加的光标,不用全删重来
正则 Find All 后光标没出现,或者输内容只在部分位置生效
Find All(Alt+Enter 或查找面板里点按钮)本质是批量选中,但光标只出现在每个匹配项的**起始位置**。如果匹配的是跨行内容、空行、或换行符本身,光标可能落在不可编辑区域。
- 确保勾选了查找面板里的
.*(正则模式)和Aa(大小写敏感按需),再点Find All;别误点Replace或Replace All - 用了
^或$却不匹配?检查文件换行符是否混用(\r\nvs\n),用Ctrl+Shift+P→Set Line Endings → Unix统一 - 光标落在注释或字符串中间?Sublime 允许编辑,但语法高亮或 LSP 可能不响应——这不是 bug,是设计如此;若需避开,正则里加上负向先行断言,比如
(?
最隐蔽的限制:只要弹出命令面板(Ctrl+Shift+P),所有多光标立刻冻结,关闭后也不会恢复——这个状态不会提示,但输入会失效。改完一段就按 Esc 清掉光标,比依赖撤销更可靠。











