ctrl+shift+l只按选区是否含换行符判断拆分光标数,若鼠标拖选未覆盖末尾\n则仅生成一个光标;安全做法是先用ctrl+l逐行选中再统一执行。

Ctrl+Shift+L 为什么只出一个光标?
它不识别“你心里想选几行”,只处理选区里有没有 \n。鼠标拖选时末尾没盖住换行符,就当单行处理——看着像选中了 5 行,实际选区结尾是字符而非 \n,Ctrl+Shift+L 就只拆一个光标。
- 安全做法:先用
Ctrl+L逐行点击选中目标行(每按一次加一行),再统一按Ctrl+Shift+L - 空行也会被拆出光标,但光标落在行首;若需在行尾操作,得手动按
End或运行命令面板里的Trim Trailing White Space清理不可见字符 - 如果已选中多行却仍失效,检查是否开启了软换行(
View → Word Wrap),临时关闭更准
想改所有 user_id,但别碰 user_id_list?
Ctrl+D 是纯字符串匹配,不是语义识别。双击 user_id 后连按 Ctrl+D,只要前缀一致(比如 user_id_list),就会被框中。
- 精准做法:先
Ctrl+F搜user_id,勾选Whole Word,再按Enter跳到第一个匹配,紧接着按Ctrl+Shift+L—— 这样只匹配完整单词 - 更保险:用正则模式(
Alt+R),输入\buser_id\b,再按Ctrl+Alt+G(Win/Linux)或Ctrl+Cmd+G(macOS)全量匹配 - 误选了?立刻按
Ctrl+K再按Ctrl+D跳过当前项,不用重来
每行末尾统一加 ; 或前缀怎么办?
不能靠普通搜索替换,因为“行尾”不是固定文本。必须让光标精准落在每行末尾再输入。
- 步骤:先
Ctrl+L选中目标行 →Ctrl+Shift+L拆光标 → 按End(或Ctrl+→)跳到各行末尾 → 输入; - 想加前缀?拆光标后按
Home,或运行命令面板搜Align Indent对齐光标到行首再输 - 注意:
End在某些远程终端或键盘布局下无效,优先试Ctrl+→
CSV 第 3 列批量改值,列选择总偏移?
列选择(Alt+Shift+↑/↓ 或 Alt+鼠标拖拽)依赖垂直对齐。某行末尾多两个空格,光标就往右多走两格,整列就歪了。
- 先确保对齐:运行命令面板(
Ctrl+Shift+P)→ 输入Align Indent,或手动补空格使各行列头对齐 - 列选择时必须保持鼠标垂直移动;斜拉会生成锯齿状选区
- 替代方案:用正则替换,如
^(1,){2}(1)→$1新值,适用于结构固定的 CSV
Ctrl+Shift+L 或 Ctrl+Alt+G 前,务必先点 Find 看高亮数量是否符合预期。这一步跳过,90% 的误操作就发生在这里。











