
Sublime 的列编辑根本不用“开启”
它没有开关,也没有常驻模式——所谓“进入列编辑”,只是你按住某个键拖动鼠标或按下某个组合键的瞬间,Sublime 就自动切换成矩形选区逻辑,松手即退。这不是设置问题,是触发时机问题。
- 最稳的方式:
Alt(Windows/Linux)或Option(macOS)+ 鼠标左键,**先按住键,再点击拖动**;反顺序(先点再按)会变成普通选择 - 拖动时看光标下方:出现虚线矩形框才算成功,否则只是斜向或行内选中
- 别信“鼠标中键列选”——2026 年实测 Sublime 原生完全不支持中键触发列编辑;所谓中键有效,基本是装了
ColumnSelect插件并自定义了绑定
列选完只能改第一行?漏了关键一步
这是最高频的“以为成功、其实失败”的操作:列选完直接敲 //,结果只有首行加了注释。不是功能坏了,是 Sublime 默认把矩形选区当单个选区处理,输入只作用于第一个光标位置。
- 必须补按:
Ctrl+Shift+L(Win/Linux)或Cmd+Shift+L(macOS),把矩形选区拆成每行一个独立光标 - 拆完再输入,所有光标才同步响应;删、退格、粘贴同理
- 如果已经误输,不用重来:
Ctrl+Z撤回,再补按Ctrl+Shift+L即可挽救
Alt+拖不动?先查这三个干扰项
不是 Sublime 坏了,大概率是环境卡住了触发条件:
- 输入法在中文状态时,
Alt常被系统或输入法热键劫持——切到英文输入法再试 - 检查
Preferences → Settings中是否误设了"drag_text": false,必须为true - 确认
Default包没被加进ignored_packages,否则列选择底层逻辑缺失
列编辑真正难的不是怎么选,而是边界怎么对齐
某行比其他行短时,列选区会在该行末尾静默截断,不报错、不提醒,但你会漏改——这种失效是肉眼难察的。
- 用
Ctrl+Shift+P→ 输入Show Scope Name,看光标实际落在哪一列,验证是否真对齐 - 跨屏列选时,滚动页面要保持
Alt+ 鼠标左键不松,否则选区中断 - 折叠代码块内无法垂直拖选;被折叠的行不会被纳入列选范围










