sublime text多行编辑依赖光标而非选区:ctrl+shift+l仅当选区含换行符才生成多光标;安全做法是先ctrl+l选行再shift+↓扩展,确保包含换行符;行尾加内容需end跳转后输入;csv列编辑需等宽字体和左对齐,否则用正则;跨文件替换必须用ctrl+shift+f项目搜索并手动保存。

Sublime Text 的多行编辑不是“选中多行再打字”,而是靠光标控制——没生成多个独立光标,就永远只改第一行。
Ctrl+Shift+L 为什么只出一个光标
这个快捷键不看“你选了几行”,只认选区里有没有换行符。鼠标拖选停在某行末尾字符上(没跨过 \n),它就当单行处理。
- 安全做法:先按
Ctrl+L选中第一行,再按住Shift+↓多选几行,确保选区包含换行符 - 空行也会被拆出光标,但光标落在行首——若你预期都在行尾,得手动按
End或先运行命令面板里的Align Indent - 如果选区含缩进空格,所有光标会卡在相同列位置,输内容时整块右移,表面齐、实际错位
每行末尾统一加内容(比如分号)
不能靠目测对齐,也不能依赖列编辑——行长不一的时候,Alt+鼠标拖拽 会偏移或锯齿。
- 先用
Ctrl+L选中目标行(可多次按扩展) - 再按
Ctrl+Shift+L拆成多光标 - 按
End(Windows/Linux)或Ctrl+→(某些键盘布局),所有光标跳到各自行尾 - 此时输入
;,就只在行尾添加,前面内容完全不受影响
CSV 第 3 列批量修改(严格对齐场景)
这不是 Sublime 原生强项,硬用正则容易错位;列编辑更稳,但前提是字段严格左对齐且等宽字体开启。
- 确认设置里
"drag_text": false,字体为Consolas或Source Code Pro - 把光标放在第 3 列首字符,按住
Shift+Alt向下拖拽,框出完整列区域 - 直接输入新值,所有行该列同步更新
- 如果列不对齐(比如有空格补位不一致),优先用正则:
^([^,]*,){2}([^,]*)→$1新值,并确保启用.*和Whole Word
跨文件批量替换字段值(如 HTML 属性)
别用 Ctrl+H,它只作用于当前文件可见区域;必须用 Ctrl+Shift+F 进入项目级替换,否则改了等于没改。
- 先用
File → Open Folder…加载整个目录,左下角出现路径才算真正进项目模式 -
Where框填.(全项目)或src,-node_modules(排除) - 点右下角
.*图标启用正则,再勾选↩(Match line breaks) - 匹配属性值别用
.*:写src="([^"]*\.png)"替换为src="{% static '$1' %}",比非贪婪更稳 - 替换完所有标签页右上角出现
*,必须手动Ctrl+K→Ctrl+B保存,否则关窗口就丢
最危险的不是不会用,而是忘了自己正在操作的是纯文本——所有“看起来像”的东西,Sublime 都照单全收。高亮预览、路径范围、正则开关、保存动作,四步缺一不可。











