sublime中无默认“一键复制当前行”快捷键,ctrl+c仅复制选中文本,未选中时无效;可靠方式是先用ctrl+l整行选中再ctrl+c,多行用ctrl+shift+↓扩展选区。

Sublime 里没有“一键复制当前行到剪贴板”的默认快捷键,必须用 Ctrl+L 选中再 Ctrl+C;Ctrl+Shift+D 是克隆行,不进剪贴板,不能用于跨程序粘贴。
为什么 Ctrl+C 单独按经常没反应?
Sublime 默认不支持未选中时隐式复制整行。光标停在某行中间,直接按 Ctrl+C 实际什么都没复制——剪贴板内容不变,切到微信或终端按 Ctrl+V 出来的还是上一次的内容。尤其在 JSON、YAML 或含 Unicode 的文件中,这种失效更常见。
-
Ctrl+C只对已选中文本生效,它不是“复制当前行”命令,而是“复制选区”命令 - 部分语言模式(如 Markdown、LaTeX)下,未选中时
Cmd+C(macOS)甚至只复制光标前/后几个字符 - 盲按
Ctrl+C还容易掩盖真实问题:你以为复制成功了,其实只是粘了旧内容
Ctrl+L 是整行操作的唯一可靠起点
Ctrl+L 不依赖光标位置、语法高亮或缩进格式,是 Sublime 原生定义的「精准整行选中」命令。它的行为稳定且可预测:
- 光标在任意位置按一次:
Ctrl+L选中该行(不含换行符) - 再按一次:扩展选中,包含换行符(粘贴时自动换行)
- 第三次按:选中段落(以空行为界),不再是单行了
- 连续按三次
Ctrl+L→ 选中当前行 + 下两行 → 再按Ctrl+C就复制三行
注意:如果复制后粘贴到终端多出空行,大概率是多按了一次 Ctrl+L,带上了换行符。
复制多行别拖鼠标,用 Ctrl+Shift+↓ 扩展选区
鼠标拖选在长行、折叠代码或滚动条偏移时极易偏移,尤其 Python 缩进深的文件里,一不小心就少选或多选空格。更稳的方式是组合键:
- 先用
Ctrl+L选中第一行 - 按住
Ctrl+Shift+↓向下扩展(每按一次加选下一行;空行会被跳过,不会中断) - 松手后直接
Ctrl+C,所有高亮行一次性进剪贴板 - 粘贴时 Sublime 自动保持原始缩进对齐,比多数编辑器聪明
若需复制不连续的几行(比如第2、5、8行),可用列选择辅助:Alt(Windows/Linux)或 Cmd(macOS)+ 鼠标从各目标行首垂直拖选,松开后立刻按 Ctrl+L 扩展为整行,再 Ctrl+C。
Ctrl+Shift+D 不是复制,是克隆,别指望它进剪贴板
Ctrl+Shift+D 对应命令 duplicate_line,作用是在当前行下方插入副本,并把新旧行都选中。但它不触发系统剪贴板操作:
- 按完
Ctrl+Shift+D立刻切到浏览器按Ctrl+V,粘出来的仍是上一次复制的内容 - 如果已选中 3 行,再按
Ctrl+Shift+D,会为每一行都 clone 一次 → 新增 3 行,不是“复制这 3 行” - 它的真正用途是快速补结构:写多个
console.log、重复配置项、临时调试占位 - Mac 用户注意:
Cmd+Shift+D可能被系统快捷键(如 Mission Control)拦截,需检查系统设置
真正要“把某行内容搬到别处”,走 Ctrl+L → Ctrl+X(或 Ctrl+Shift+K)→ 移动光标 → Ctrl+V 这条路径,比任何克隆都可控。











