ctrl+shift+l 默认将光标置于每行末尾而非行首,需按home(win/linux)或cmd+←(macos)移至行首;选区须跨换行符、避免bom/空行/缩进混用,并确保正则模式开启及vintage模式未干扰。

Ctrl+Shift+L 后光标默认在行尾,必须手动按 Home 才能加到行首
Sublime 的 Ctrl+Shift+L(Windows/Linux)或 Cmd+Shift+L(macOS)不会自动把光标移到行首——它只把每行的选区末尾(即换行符前)变成一个独立光标。你看到光标停在行尾,不是 bug,是设计如此。直接输入内容会加在行尾,不是开头。
正确操作链是:选中多行 → Ctrl+Shift+L → 按 Home(Win/Linux)或 Cmd+←(macOS)→ 输入内容。中途不能按方向键以外的键,否则可能中断多光标同步。
- 如果某行有缩进,
Home默认停在缩进起点(比如 4 个空格后),不是物理行首;要跳到绝对开头,再按一次Home或用Ctrl+Home/Cmd+Home - 文件含 BOM(如 UTF-8-BOM)时,
Home会卡在 BOM 字节后;建议先执行File → Save with Encoding → UTF-8清除 BOM - 状态栏右下角显示 “x cursors”(如
5 cursors)才是多光标真正生效,没这个提示就等于白按
选区不跨换行符,Ctrl+Shift+L 就静默失败
这个快捷键只对“包含换行符”的选区响应。鼠标拖选时如果停在最后一行最后一个字符上、没盖住换行符,它就当单行处理,无任何反馈——不是快捷键失效,是你没选对。
安全选中法:
- 先按
Ctrl+L选中第一行,再按住Shift+↓向下扩展,确保选区横跨至少两个\n或\r\n - 避免用
Ctrl+A全选后立刻按Ctrl+Shift+L:它虽能拆光标,但所有光标都卡在行尾,Home只影响第一行 - 空行会被赋予光标,输入后变成“前缀+换行”,若不想要,操作前先删空行或用正则过滤
缩进不一致时,Home 行为不可靠,优先统一格式
混用 Tab 和空格会导致 Home 在不同行停靠位置不一致:有的停在缩进起点,有的停在第一个非空字符前。强行输入会让前缀歪斜,破坏可读性。
一款AI工具,主要用于管理 OpenClaw 所使用的来自 OpenRouter 的免费 AI 模型。自动按质量对模型进行排序,配置回退机制以应对速率限制,并更新 opencla...,适合需要提升相关任务效率的用户。
更稳的做法是提前标准化:
- 执行
Ctrl+Shift+P→ 输入Indentation: Convert to Spaces,把所有 Tab 转为空格 - 或用正则预处理:查找
^(\s*)(.+)$,替换为$1prefix_$2,这样前缀始终紧贴原有缩进后的内容 - 列选择(
Alt+Shift+拖拽)只适合视觉严格对齐的文本;缩进一乱,光标就错位,别硬套
正则替换加行首内容,^ 必须配合 .* 按钮启用
正则快,但漏点一个开关就全白忙:^ 在 Sublime 中默认逐行匹配,但前提是右下角的 .* 按钮必须点亮。没点它,^ 就是字面量,替换结果是把所有行开头替换成 ^your_prefix。
常用正则场景:
- 只给非空行加:搜索
^(?=\S),替换为// - 跳过已有
//的行:搜索^(?!// ),替换为// - 混合换行符(
\r\n和\n共存)会导致部分行漏匹配;操作前先运行Ctrl+Shift+P→Set Line Endings: Unix统一为 LF - 空行也会被
^匹配,加完变成//,这是预期行为,不是错误
最易被忽略的是:Vintage(Vim)模式会劫持 Ctrl+Shift+L,把它重映射为「从光标到行尾选中」。如果你开了 Vim 模式,这个快捷键根本不会拆光标——要么关 Vintage,要么改用正则路径。










