ctrl+l→ctrl+c是唯一稳定复制上一行的路径:先↑移光标至上一行,再ctrl+l选中(不含换行符),最后ctrl+c复制;若需带换行符则需连按两次ctrl+l。

Ctrl+L → Ctrl+C 是唯一能稳定复制上一行内容的路径
Sublime Text 原生不支持“光标停在某行,按快捷键直接复制上一行”。想复制上一行,必须手动把光标移到目标行(即你要复制的那一行),再执行整行选中+复制。没有一键跳转+复制的内置组合键。
常见错误现象:Ctrl+C 直接按——什么都没进剪贴板;Ctrl+Shift+D 按了——结果复制的是当前行,不是上一行;用鼠标往上拖选——缩进深或折叠代码时容易偏移、漏空格。
- 先按
↑把光标移到上一行任意位置(哪怕停在中间字符上) - 再按
Ctrl+L选中该行(不含换行符) - 最后按
Ctrl+C,内容才真正进入系统剪贴板
复制上一行并粘贴到当前位置?用 Ctrl+L + Ctrl+X + Ctrl+V
如果目标是“把上一行内容挪到当前光标所在位置”,直接复制粘贴可能破坏结构(比如缩进错位)。更稳的做法是:先剪切上一行,再粘贴到当前行上方或下方。
-
↑移动光标到上一行 -
Ctrl+L选中它 -
Ctrl+X剪切(进剪贴板,且删掉原行) -
↓或↑回到目标位置,再Ctrl+V粘贴
注意:Ctrl+Shift+K 虽然也能删整行,但它不进剪贴板,无法后续粘贴。
为什么不能用 Ctrl+Shift+D 复制上一行
Ctrl+Shift+D 对应的是 duplicate_line 命令,只作用于光标所在行——它不会向上找、也不会跳转,只会原地克隆当前行到下一行。即使你刚按过 ↑,只要没松手或没触发选中,Ctrl+Shift+D 仍操作的是“新光标所在行”,而非“逻辑上的上一行”。
误用高发点:
- 光标在第5行,按
↑到第4行,再按Ctrl+Shift+D→ 第5行出现副本(即复制了第4行,但插入在第5行下方) - 你以为复制成功了,切到终端按
Ctrl+V,结果粘出的是上次复制的内容——因为Ctrl+Shift+D不碰系统剪贴板
多行向上复制?别靠方向键反复跳,用 Ctrl+Shift+↑ 扩展选区
要复制连续的上三行(比如第10、9、8行),逐次按 ↑ + Ctrl+L 效率低还易错。更直接的方式是反向扩展选区:
- 先把光标移到第10行(目标范围的最下面一行)
- 按
Ctrl+L选中第10行 - 按住
Ctrl+Shift+↑不放,每按一次加选上一行(第9行 → 第8行),空行会被跳过 - 松手后直接
Ctrl+C
这个组合比鼠标拖选可靠得多,尤其在 YAML/Python 缩进敏感场景里,不会因视觉偏差漏掉前导空格或 Tab。
真正容易被忽略的点:复制行为是否带换行符,取决于你按了几次 Ctrl+L。第一次只选中行内容,第二次才包含换行符——粘贴到终端或配置文件时,换行符缺失会导致格式错乱。别省那一下。











