
Ctrl+Enter 是最直接、最可靠的换行方式
在 Sublime Text 中,光标停在任意一行(哪怕在中间某个字符上),按 Ctrl+Enter 就会立刻在当前行下方插入一个空行,并把光标跳到新行开头。这个操作不依赖插件、不需选中、不触发任何副作用——就是纯粹“加一行”。Mac 用户对应的是 Cmd+Enter。
常见错误现象:有人误用 Enter 键本身,结果是把当前行“断开”,变成两行带内容的行;也有人习惯先按 End 再回车,多此一举且容易漏掉末尾空格或缩进。
- 适用场景:写代码时补空行、分隔逻辑块、快速留出注释位置
- 注意:它不会自动继承上一行缩进(不像某些 IDE 的智能换行),如需缩进,得额外按
Tab或启用auto_indent设置 - 性能无影响,纯编辑命令,响应即时
为什么不用 Ctrl+Shift+Enter 或其他组合?
Ctrl+Shift+Enter 是在当前行「上方」插入新行,不是下方。新手常混淆这两个方向键,尤其刚从 VS Code 或其他编辑器转来的人,容易按错后发现空行插到了头顶,还得再删一次。
还有人试图用 Ctrl+L(选中当前行)+ Ctrl+C + Ctrl+V 来“复制换行”,这不仅步骤多,还污染剪贴板,后续粘贴可能出错。
-
Ctrl+Shift+Enter和Ctrl+Enter是镜像关系,记成“Shift=向上”更不容易错 - 如果频繁需要在上方加空行,建议只记住
Ctrl+Shift+Enter,别强行统一成一种习惯 - 不要为了“看起来整齐”而提前把光标移到行尾再操作——
Ctrl+Enter对光标位置完全不敏感
粘贴时保持缩进?那是另一个问题
有人问:“我按 Ctrl+Enter 加了空行,然后想粘贴一段缩进好的代码,但缩进乱了。” 这不是换行的问题,而是粘贴行为本身默认不保留原始缩进层级。
解决办法是改用 Ctrl+Shift+V(Windows/Linux)或 Cmd+Shift+V(macOS),它会根据当前光标所在列自动对齐缩进。但注意:这个命令只对“有缩进结构”的内容生效(比如多行 if 块),单行粘贴效果和普通 Ctrl+V 一样。
- 仅当你要粘贴的代码原本就有缩进,且希望它“嵌入”到当前上下文时,才用
Ctrl+Shift+V - 如果你只是加空行后手动敲代码,缩进问题根本不存在
- 全局开启
detect_indentation和auto_indent可减少多数缩进意外
扩展:想一次性在多行下方都加空行?
比如你选中了 5 行,想让每行下面都插入一个空行——这时 Ctrl+Enter 会失效(它只作用于光标所在行)。正确做法是:先用 Ctrl+L 选中第一行,再按住 Ctrl+Shift+↓ 向下扩展选区,直到覆盖所有目标行,松手后按 Ctrl+Enter,Sublime 会在每一行下方都插入空行。
这个技巧容易被忽略,因为很多人以为 Ctrl+Enter 只能单行操作。其实只要选中多行,它的行为就自动批量生效。
真正麻烦的不是怎么加空行,而是加完之后要不要删掉多余空行——Sublime 没有“智能压缩空行”的快捷键,得靠 Ctrl+Shift+K 逐行删,或者用正则 \n\s*\n 批量替换。这点比不上 VS Code 的 editor.trimAutoWhitespace 自动清理机制。










