ctrl+shift+d(windows/linux)或 cmd+shift+d(macos)是 sublime text 中用于无选择复制当前行并插入到下一行的原生快捷键,不依赖剪贴板、不改变缩进、不需预先选中。

复制当前行到下一行,用 Ctrl+Shift+D(Windows/Linux)或 Cmd+Shift+D(macOS)
这是 Sublime Text 原生支持的「无选择复制」操作,光标停在哪一行,就复制哪一行,直接在下方插入新行——不依赖剪贴板,不改变缩进,也不需要先按 Ctrl+C。
- 误按
Ctrl+C再Ctrl+V很可能什么都没复制(因为没选中时Ctrl+C实际是空操作),反而多了一步还容易粘错内容 - 连续按
Ctrl+Shift+D会逐行向下复制:第一次复制第5行到第6行,再按一次就把第6行复制到第7行,适合快速生成模板结构 - 如果光标在多行选中状态下按这个快捷键,它会对每一行都执行一次复制,导致行数翻倍——想批量复制多行,应该先用
Ctrl+L选中,再Ctrl+C/Ctrl+V
想把当前行内容真正“复制进剪贴板”,得先选中再复制
Ctrl+Shift+D 只负责“复制并插入”,并不把内容放进系统剪贴板;如果你要切到浏览器、微信或另一个编辑器里粘贴这行代码,必须走标准复制流程。
- 最稳做法:
Ctrl+L(选中当前行)→Ctrl+C(复制进剪贴板)→ 切换窗口 →Ctrl+V -
Ctrl+L可连按:第一次选中光标所在行,第二次加选下一行,第三次再加一行……适合复制连续几行 - 别信“没选中也能
Ctrl+C复制整行”的说法——这行为不稳定,尤其在 JSON、YAML 或带 Unicode 符号的行里常失效
复制后想移动位置?别只靠 Ctrl+Shift+D
Ctrl+Shift+D 是“原地克隆”,不是“剪切+粘贴”。如果你的目标是把某行挪到文件另一处,用它反而会留下冗余副本。
- 正确动线:
Ctrl+L→Ctrl+X(剪切整行)→ 移动光标 →Ctrl+V -
Ctrl+Shift+K也能删整行并进剪贴板,但它删得更快(不触发撤销栈里的“插入”动作),适合清理后立刻重贴 - 注意:
Ctrl+X和Ctrl+Shift+K都会清空原行,但后者不进撤销历史的第一步——万一手滑删错,Ctrl+Z可能不能一步撤回
Mac 用户特别注意:Cmd+C 在某些语言模式下不等于“复制整行”
Sublime 的 macOS 版本对 Cmd+C 的隐式整行复制支持比 Windows 更弱,尤其在 Markdown、LaTeX 或自定义语法高亮文件中,未选中时按 Cmd+C 经常只复制光标前/后零星字符。
- 统一方案:
Cmd+L→Cmd+C,永远可靠 -
Cmd+D是“选中单词”,不是选行,别和Cmd+L混;Cmd+Shift+K是删行,不是复制 - 如果发现
Cmd+Shift+D没反应,检查是否启用了输入法(比如中文拼音),快捷键会被拦截——切回英文输入法再试
真正卡住人的从来不是记不住快捷键,而是搞不清「复制到剪贴板」和「复制并插入」是两件事。一个进系统剪贴板,一个只在编辑器里克隆——分清这点,就不会再对着微信对话框里粘出旧代码发呆了。











