Ctrl+Shift+K(Windows/Linux)或Cmd+Shift+K(macOS)是Sublime Text删除整行(含换行符)的默认快捷键,光标所在行立即消失,不依赖选中;失效常见于输入法劫持、插件冲突、文件只读或系统级拦截。

Ctr+Shift+K(Windows/Linux)或 Cmd+Shift+K(macOS)就是答案,光标停在哪一行,那一行立刻消失,含换行符,不依赖选中。
为什么 Ctrl+Shift+K 有时按了没反应
它不是坏了,而是被拦住了。常见原因包括:
- 中文输入法正在激活状态,会劫持 Ctrl+Shift+K 组合——切回英文输入法再试
- 插件覆盖了默认绑定,比如
Emacs Pro Essentials或SideBarEnhancements;打开Preferences → Key Bindings搜索"ctrl+shift+k"就能发现冲突规则 - 文件处于只读状态(右下角显示
Read Only),快捷键直接失效,得先保存或改权限 - 远程桌面、录屏软件、甚至某些杀毒弹窗会系统级拦截该组合键
删多行不能靠连按 Ctrl+Shift+K
这个快捷键只作用于当前光标所在行,哪怕你已用鼠标拖选了三行,它也只删第一行。批量删的正确姿势分两类:
- 连续多行:用
Shift+↓或Shift+↑手动选中,再按Delete或Backspace - 不连续多行:按住
Ctrl(Win/Linux)或Cmd(macOS),点击多行左侧行号空白处(出现虚线框即为选中整行),然后统一按Ctrl+Shift+K - 想用命令驱动:先
Ctrl+L选中当前行,再Ctrl+Shift+L拆成多个光标,最后按Delete
批量删指定内容的行必须用正则替换
删所有空行、注释行、console.log 行……靠手动或快捷键效率极低,必须进 Ctrl+H 替换面板,勾选 Regular Expression:
- 删空行:
^\s*$\n(结尾\n很关键,否则最后一行空行可能残留) - 删 JS 注释行:
^//.*$\n(.要转义,但实际写^//.*$\n即可,Sublime 正则引擎认这个) - 删含
error的行:^.*error.*$\n - 替换前务必点
Find All确认命中行数,避免误删
真正容易被忽略的是换行符处理逻辑:Ctrl+Shift+K 总是连内容带换行符一起删,所以删掉第5行后,第4行末尾会直接接上第6行开头——这不是 bug,是设计使然。如果文件混用 \r\n 和 \n,还可能让 Ctrl+L 选行错位,进而影响后续操作。统一行尾用 Ctrl+Shift+P → Convert Line Endings: Unix 是前置保障。

















