Sublime Text 无原生“交换两行”命令,但可通过内置 move_line_up/down 命令实现等效操作:Windows/Linux 用 Ctrl+Shift+↑/↓,macOS 用 Cmd+Shift+↑/↓,整行物理移动,支持多行选区,空行同样生效。
Sublime Text 本身没有“交换两行”的原生命令,但可以通过组合快捷键或启用内置的行移动功能快速实现——关键不是找“交换”,而是用“剪切+粘贴到上/下行”或“移动行”来等效完成。
如何用快捷键把当前行向上或向下移动一行
Sublime 内置了 move_line_up 和 move_line_down 命令,对应默认快捷键:
- Windows / Linux:
Ctrl+Shift+↑(上移)、Ctrl+Shift+↓(下移) -
macOS:
Cmd+Shift+↑、Cmd+Shift+↓
这个操作会直接把整行(含空行)在编辑器中物理位移,不依赖剪贴板,也不影响选区。适合快速调整代码顺序,比如把 import 行提到文件顶部,或把某句 return 上提一行。
注意:如果光标在行首或行尾,仍会整行移动;但如果已选中多行,会把整个选区一起移动。
为什么不能直接“交换第3行和第4行”?
Sublime 没有类似 VS Code 的 editor.action.moveLinesUpAction 那种“交换相邻行”的原子命令。所谓“交换”,本质是两次移动:
- 先选中第4行 →
Ctrl+Shift+↑→ 它变成第3行,原第3行被挤到第4行 - 或者选中第3行 →
Ctrl+Shift+↓→ 它落到第4行位置,原第4行升为第3行
两种方式效果一致,但后者更顺手:因为不需要额外定位到下方那行。实际使用中,几乎没人真去“交换”,都是靠单次移动达成目的。