Ctrl+D用于逐次选中相同单词以批量修改,非一键全选;Ctrl+Shift+L将选中多行末尾转为对齐光标;Ctrl+Alt+Enter基于正则捕获组精准生成多光标。

怎么用 Ctrl+D 快速选中重复单词并批量修改
Sublime Text 里最常用也最容易被误用的多光标操作就是 Ctrl+D(Windows/Linux)或 Cmd+D(macOS)。它不是“一键全选相同内容”,而是“逐次扩展选中当前光标所在词的下一个匹配项”。
常见错误:连按十下 Ctrl+D 结果只选了 3 个,因为中间有大小写、空格或标点打断了连续匹配;或者想改函数名,却把注释里的同名字符串也选进去了。
- 先将光标放在目标词上(比如变量名
user_name),按一次Ctrl+D选中它 - 再按一次,Sublime 会向后搜索下一个完全相同的词(严格区分大小写和边界),并添加第二个光标
- 按
Ctrl+K Ctrl+D可跳过当前匹配项,选下一个——适合避开注释或字符串里的干扰项 - 选完后直接输入,所有光标位置同步替换;按
Esc可退出多光标模式
怎么用 Ctrl+Shift+L 把换行内容转成多光标编辑
这是处理列表、日志、CSV 行数据的高频技巧。比如你有一堆路径要加引号,或一堆 SQL 字段要统一加前缀,Ctrl+Shift+L 能把每行末尾的换行符“炸开”成独立光标。
注意:它只作用于当前已选中的多行。如果没选中任何内容,Sublime 会默认对全文每一行都加光标——这通常不是你想要的,容易卡顿甚至崩溃。
- 先用鼠标或
Shift+↓选中目标行块(例如 5 行配置项) - 按
Ctrl+Shift+L,每行末尾出现一个光标,且光标位置对齐(即都在行尾) - 按
Home或Shift+←移动光标到行首,再输入内容(如config.) - 如果某几行结构不一致(比如有的开头有空格),光标不会自动对齐,需手动调整或先用正则替换清理格式
怎么用正则查找 + Ctrl+Alt+Enter 批量生成多光标
当要改的内容没有固定单词形态(比如所有 id="xxx" 中的 xxx),靠 Ctrl+D 就不够用了。Ctrl+H 打开查找面板,开启正则模式(.* 按钮),配合 Ctrl+Alt+Enter 是真正的批量定位核心。
这个组合键不会替换,而是把所有匹配结果的捕获组(通常是 $1)位置变成光标——相当于“先精准圈人,再一起动手”。
- 打开查找面板,输入正则,例如:
class="([a-zA-Z0-9_-]+)",勾选Regular expression - 点
Find All,确保下方预览区高亮了所有目标(比如 12 个 class 名) - 按
Ctrl+Alt+Enter,所有$1捕获的内容区域都会出现光标(即只在引号内) - 此时输入新值,或按
Ctrl+Shift+→扩展选中整个单词再删改——比全局替换安全得多
为什么有时多光标失效或光标乱跑
多光标不是万能的,它的行为高度依赖当前上下文和 Sublime 的内部状态。最常被忽略的是“软制表符/硬制表符混用”和“行尾空白隐藏”导致的光标错位。
- 打开
View → Indentation → Convert Indentation to Spaces,避免 Tab 和空格混排造成光标无法对齐 - 关闭
View → White Space → Show Whitespaces后,看起来对齐的行实际可能有不可见字符,导致Ctrl+Shift+L后光标偏移 - 插件冲突:某些代码补全类插件(如 Anaconda、Jedi)会在你按键瞬间插入提示,打断多光标流程;临时禁用插件可验证是否为此原因
- 大文件(>10MB)下多光标响应变慢甚至无响应,这不是 bug,是 Sublime 主动限制——此时改用正则替换更稳
真正难的不是记住快捷键,而是判断该用哪一种方式切入:是词粒度?行粒度?还是正则粒度?选错了,后面所有操作都在放大误差。










