Notepad++无原生“复制当前行到剪贴板”快捷键,可靠方案有两种:一是Ctrl+Shift+X后立即Ctrl+Z实现零配置伪复制;二是v7.8.8+版本在Shortcut Mapper→Plugin Commands中绑定Copy current line命令。

Notepad++ 没有“复制当前行到剪贴板”的原生一键快捷键,但有真正可用、零配置、全版本兼容的方案——别再三击选中或 Ctrl+C 前手动拖了。
Ctrl+D 是克隆行,不是复制到剪贴板
很多人以为 Ctrl+D 就是“复制当前行”,其实它执行的是 Duplicate Line:把当前行内容原样插入到下一行,同时光标留在原位置。它不经过剪贴板,无法后续粘贴到其他文件或位置。
-
Ctrl+D在多行选中时,会对每行分别向下克隆一次(即选中 3 行 → 按一次Ctrl+D→ 新增 3 行) - 空行也能克隆,但部分旧版(如 v7.5 以下)可能跳过空行
- 若
Ctrl+D失效,检查 设置 → 首选项 → 编辑器 → 勾选“启用行复制/移动快捷键” - 注意:某些插件或自定义快捷键会覆盖
Ctrl+D,比如绑定成SCI_SELECTIONDUPLICATE后行为略有差异(只复制选区,非整行)
真正“复制整行到剪贴板”的两种可靠方式
要让当前行进剪贴板(以便粘贴到别处),必须绕过 Notepad++ 的“无选区不复制”限制。目前只有两个稳定路径:
-
伪复制法(所有版本通用):
Ctrl+Shift+X(剪切整行)→ 立刻Ctrl+Z(撤销),行恢复,但已进剪贴板。实测 v6.9–v8.5 全兼容,包括空行和 UTF-8-BOM 文件 -
真复制法(v7.8.8+):进入 设置 → 快捷键管理 → Plugin Commands,找到
Copy current line,双击右侧空白,绑定如Ctrl+Shift+C。注意名称大小写严格匹配,且该命令不在 Main menu 或 Scintilla commands 页签里
别用 PythonScript 插件写脚本实现——启动慢、依赖 win32clipboard、高 DPI 下易失败,纯属多此一举。
复制行为受编码和行尾符影响,容易忽略
所谓“复制当前行”,Notepad++ 实际按文档当前行尾符(\r\n 或 \n)截取,但边界情况常被忽略:
- UTF-8-BOM 文件中,
Copy current line会把 BOM 字节(EF BB BF)一并复制;粘贴到不支持 BOM 的编辑器(如记事本)可能显示乱码 - Unix 格式(LF)文件,在 Windows 下粘贴到记事本,会被识别为单行(因记事本只认 CRLF)
- 最后一行若无换行符,复制结果不含
\n或\r\n,只是纯文本内容;而空行复制后,剪贴板里是纯换行符,不是空字符串
最常卡住人的其实是快捷键冲突和状态干扰:Ctrl+Shift+X 在部分笔记本上被 Fn 键拦截;Copy current line 绑定后不重启 Notepad++ 可能缓存未生效;宏录制中(REC 显示在状态栏)所有 Alt/Shift 组合键都会失效。动手前先看一眼右下角状态栏。


















