Sublime Text 不支持鼠标中键触发列选择,仅支持 Alt+拖拽(Win/Linux)或 Option+拖拽(macOS)进入列选择模式,键盘方案为 Ctrl+Alt+↓(Win/Linux)或 Cmd+Option+↓(macOS)。

怎么用鼠标中键触发列选择?根本不能
Sublime Text 不支持鼠标中键(滚轮按下)进入列选择模式——这是常见误解。官方从未实现该功能,所有“中键列选”说法均源于误传或与其他编辑器(如 VS Code 的扩展)混淆。列选择只依赖两个可靠路径:Alt+拖拽(Windows/Linux)或 Option+拖拽(macOS),别无他法。
Alt/Option 拖拽列选择的实操要点
这是最常用、最可控的列编辑方式,但新手常因松手时机或起始位置出错导致选区歪斜或漏行。
- 必须先按住
Alt(Win/Linux)或Option(macOS),再点击并拖动鼠标——反顺序(先点再按键)会变成普通文本选择 - 拖拽时尽量保持垂直方向;若横向偏移过大,Sublime 会自动转为普通行选择,而非矩形块
- 跨屏操作时可配合鼠标滚轮滚动,同时不松开
Alt和鼠标左键,选区会实时延伸 - 松手前注意看光标下方是否出现「虚线矩形框」——这是列选生效的视觉确认,否则只是普通选中
键盘替代方案:Ctrl+Alt+方向键为什么更精准?
当目标列位置固定(比如每行第12个字符)、但行长度不一时,Ctrl+Alt+↓ 比鼠标拖拽更可靠,因为它不依赖视觉对齐,而是严格按列坐标生成光标。
-
Ctrl+Alt+↓(Win/Linux)或Cmd+Option+↓(macOS):从当前光标位置向下逐行添加光标,每行一个,列号完全一致 - 按一次加一行,连按多次可快速覆盖几十行;配合
←/→键微调列位置,误差控制在 1 字符内 - 适合场景:
log文件批量加前缀、JSON 数组字段对齐、YAML 配置项统一缩进 - ⚠️ 注意:若某行长度小于当前列号(比如想在第20列插入,但某行只有15个字符),光标会落在该行末尾,不是报错也不是跳过
为什么拖完发现只能改第一行?焦点和分组陷阱
这不是列编辑失效,而是 Sublime 的「焦点组(Group)」机制在作祟。当你用 View → Layout → Columns: 2 分屏后,列编辑仍只作用于当前焦点所在的 Group,哪怕你眼睛正看着右列。
- 确认焦点:看窗口左下角状态栏是否显示
Group: 0或Group: 1;没显示说明焦点不在当前视图,需点击任意标签页激活 - 列编辑操作(如
Alt+拖拽)永远只影响焦点 Group 内的文件,不会跨列生效 - 若想对左右两列不同文件同时列编辑,必须分别切换焦点、分别操作——Sublime 不支持跨 Group 的同步列编辑
- 常见误操作:拖完右列内容想批量删,结果只删了左列,就是因为焦点还在左列
Group 提示,比重试十遍更有用。










