sublime多行编辑依赖光标状态而非开关,需先选中多行(含换行符)再用ctrl+shift+l拆光标;列选需等宽字体且禁用软换行;ctrl+d默认全字匹配、区分大小写;光标管理比记快捷键更重要。

Sublime 多行编辑不是“开个开关”,而是靠快捷键实时叠加光标——没光标,就什么都不会发生;按错一个 Esc 或方向键,所有光标瞬间消失。
Ctrl+Shift+L 拆光标前必须先选中多行
这个操作不看“你心里想改几行”,只认你选区里有没有 \n。鼠标拖选时漏掉最后一行的换行符,Ctrl+Shift+L 就静默当单行处理,只出一个光标。
- 安全做法:先用
Ctrl+L(Windows/Linux)或Cmd+L(macOS)逐行点选目标行,确保每行都被完整选中 - 选区含空格或缩进?光标会落在空格后,一输内容就顶掉缩进;拆完立刻按
Home或Cmd+←把光标拉到行首 - 想给每行加
//前缀?别直接Ctrl+Shift+L,先统一移到行首再输
Ctrl+D 逐词匹配总漏改或误改
Ctrl+D 默认开启 match_whole_word: true,且严格区分大小写、下划线和单词边界。它不是“搜词”,是从当前光标位置出发找下一个字面完全一致的片段。
- 双击选中
user_id再按Ctrl+D,不会匹配user_id_list或USER_ID - 看到不该选的高亮项?立刻按
Ctrl+U撤回上一次匹配 - 要跳过第2个匹配项(比如数据库字段不想动)?按
Ctrl+K,再按Ctrl+D - 想忽略大小写?打开替换面板
Ctrl+H→ 点左下角Aa关闭Match Case,再回来用Ctrl+D
列选择(Alt+拖动)对不齐或输不了中文
列选择本质是矩形框选,依赖等宽字体渲染 + 空格/Tab 的真实宽度。混排中文、用空格代替 Tab、软换行(Word Wrap)开启,都会导致偏移。
- 开启方式:按住
Alt(Windows/Linux)或Option(macOS),鼠标左键垂直拖拽——不是Shift+Alt,也不是Ctrl+Alt - 必须用等宽字体(如
Consolas、Menlo),非等宽字体下列选必然错位 - 缩进不统一?先执行
Ctrl+Shift+P→ 输入Convert Indent to Tabs统一为 Tab - 列选状态下不能用
Ctrl+D或方向键扩展光标——必须先按Esc退出,才能切回多光标模式
Ctrl+Click 加光标点不动或拖出选区
这是唯一不依赖文本内容、完全由你控制光标位置的方式,但前提是用户设置里 "drag_text": false 已生效。否则点击会拖动文本而非加光标。
- 必须先松开
Ctrl/Cmd再点击,否则可能拖出选区 - 软换行(
View → Word Wrap)开启时,同一逻辑列被折成两行,点下去容易偏——临时关掉更准 - Mac 用户点不动?检查是否误触触摸板三指拖拽手势,可外接鼠标或禁用该功能
真正卡住人的从来不是快捷键本身,而是光标状态——它看不见、摸不着,却决定所有操作是否生效。每次操作前确认当前是否有光标、是否在正确位置,比背快捷键重要得多。











