ctrl+shift+d(mac为cmd+shift+d)用于在当前行下方原样复制整行或选中内容,光标位置影响结果:空行复制空行,有选中则仅复制选中片段;多行需先选中再操作;非剪贴板操作,与ctrl+c功能明确区分。

Ctrl+Shift+D 复制当前行,但光标位置有讲究
Sublime Text 默认用 Ctrl+Shift+D 复制当前行——不是“复制到剪贴板”,而是“在当前行下方插入一行相同内容”。这个操作不依赖选中,只要光标在某行任意位置(哪怕在行首或行尾),按一次就原样复制一行。
容易踩的坑:
- 光标在空行上按
Ctrl+Shift+D,会复制一个空行,不是你想复制的上一行 - 如果当前行有部分文字被选中,它只复制选中的文本片段,而不是整行(这是很多人误以为“失效”的原因)
- Mac 用户要换成
Cmd+Shift+D,别下意识按 Ctrl
想复制多行?先选中再 Ctrl+Shift+D
这个快捷键对多行同样有效:只要用鼠标拖选或 Ctrl+↑/↓ 扩展选区,再按 Ctrl+Shift+D,就会把整个选区原样复制到下方。注意不是“逐行复制”,而是把选中的所有行当做一个块粘贴一次。
典型使用场景:
- 写配置项时快速补全相似段落(比如多个
env变量) - 临时备份一段逻辑,稍后修改,避免删错
- 写 Markdown 列表或代码注释块时批量生成缩进结构
复制到剪贴板?别绕弯,用 Ctrl+C 就行
有人想找“复制当前行到剪贴板”的专用快捷键,其实没必要。Sublime 的行为很直接:Ctrl+C 在无选中状态下,默认就是复制当前整行;有选中则复制选中内容。这个逻辑和 VS Code、Vim 模式一致,不用额外装插件或改键位。
关键区别:
-
Ctrl+C→ 内容进系统剪贴板,可粘贴到任意地方(浏览器、记事本等) -
Ctrl+Shift+D→ 仅在当前文件内原地克隆,不走剪贴板,更快更轻量 - 如果按了
Ctrl+C没反应,大概率是光标卡在折叠区域或注释块里,试试先按Ctrl+Shift+P输入toggle_comment看是否误触发了注释命令
自定义快捷键?优先检查是否被插件劫持
如果你发现 Ctrl+Shift+D 没反应,或者复制出的内容不对,先别急着改 Default (Windows).sublime-keymap。很多插件(比如 Emacs Pro Essentials 或旧版 SideBarEnhancements)会悄悄覆盖默认键位。
排查步骤:
- 菜单栏点
Preferences → Key Bindings,左右对比:左边是用户自定义,右边是默认绑定,看Ctrl+Shift+D是否出现在左边且指向非duplicate_line - 临时禁用插件:菜单
Preferences → Package Control → Disable Package,逐个关掉最近安装的插件 - 确认是否开了 Vim 模式:
Ctrl+Shift+P输入vi mode,如果显示已启用,那Ctrl+Shift+D就不会生效(Vim 模式下得用yy+p)










