sublime text多光标需手动关闭drag_text并精准点击;ctrl+d默认匹配整词,可跳过或改正则;ctrl+shift+l按行拆解不保缩进,列编辑须用等宽字体。

Sublime Text 的多光标不是“开启一个模式”,而是靠快捷键实时叠加光标——记错触发逻辑,90% 的失败都源于此。
Ctrl+Click 添加光标没反应?先关掉 drag_text
按住 Ctrl(Windows/Linux)或 Cmd(macOS)再点击却拖动了文本,说明 drag_text 仍为 true。它默认开启,必须手动关掉:
- 打开
Preferences → Settings - 在右侧用户设置中加入:
"drag_text": false - 保存后重启 Sublime(部分版本需重启才生效)
点错位置也容易失效:靠近已有选区时,Sublime 可能误判为双击选词或列选择。建议轻点行首空格、行尾换行符前,或单词中间偏左位置。
点完发现光标只剩一个?很可能是你刚输入了一个字符,而某行光标卡在行尾没同步——Sublime 会自动合并不同步的光标。用 Ctrl+U(Win)或 Cmd+U(Mac)可逐次撤销最近添加的光标,不用全删重来。
Ctrl+D 选不全变量名?注意匹配边界和跳过机制
Ctrl+D 不是“全文高亮同名字符串”,它默认只匹配完整单词(match_whole_word: true),且区分大小写但不区分上下文。比如:
- 光标在
user_name上连按Ctrl+D,不会选中字符串"user_name"或变量username_input - 想命中子串,得先在查找面板里关掉
match_whole_word,或改用正则\buser_name\b - 遇到不想改的那一处(比如注释里的
// user_name),按Ctrl+K再按Ctrl+D跳过,光标不会落在那里
连续按 Ctrl+D 过多后卡顿?说明文档太大或匹配项太多。此时按 Esc 可退出多光标,只保留最后一个光标,避免误输扩散。
Ctrl+Shift+L 后光标全歪了?别直接对缩进块用
Ctrl+Shift+L 的作用是把当前选区“按行拆解”:每行末尾(换行符前)加一个光标。但它不关心内容对齐,只认行结构。
- 选中带缩进的代码块(如 4 行缩进 4 空格的
if块)后直接按,所有光标会落在各自行的第 4 个空格位置——看着对齐,一输内容就全塌了 - 想统一从行首编辑,先按
Home把光标移到行首,或运行命令面板中的Align Indent - 想给每行开头加
[DEBUG],别用Ctrl+Shift+L,改用列选择:Alt+鼠标拖拽从第一行列首拉到最后一行列首
这个操作不可逆:一旦按下,原选区就丢了。如果只是想复制多行再分别粘贴,别用它,改用命令面板搜 Split Selection into Lines。
Alt+拖拽列编辑总不对齐?检查字体是不是等宽
竖直拖拽时光标跳位、错行,大概率不是手抖,而是当前字体非等宽(比如系统 UI 字体)。Sublime 的列选择依赖字符宽度一致。
- 切换到
Consolas、Fira Code或JetBrains Mono等等宽字体即可稳定对齐 - 键盘党可用
Ctrl+Alt+↓(Win/Linux)或Cmd+Option+↓(Mac)在当前光标下方逐行加光标,比鼠标更可控 - 命令面板(
Ctrl+Shift+P)弹出瞬间,所有多光标立即冻结,关掉后也不会恢复——这是硬限制,编辑中途别调命令面板
最隐蔽的坑是:列选择和多光标不能混用。一旦进入列选择模式(Alt+拖拽),其他多光标快捷键会失效,必须先按 Esc 退出列模式再继续。











