notepad++默认不支持光标停在行内直接复制整行,必须显式选中;最轻量方案是ctrl+shift+x剪切后立即ctrl+z撤销实现“伪复制”,或v7.8.8+版本在shortcut mapper中绑定copy current line命令。

Notepad++ 默认不支持“光标停在行内就直接复制整行”的快捷键,Ctrl+C 严格依赖选区——没选中,就什么都不会复制。这不是设置问题,是 Scintilla 底层行为,所有版本都一样。
用 Ctrl+Shift+X + Ctrl+Z 实现“伪复制整行”
这是最轻量、零配置、全版本通用的方案,本质是利用剪切+撤销把整行送进剪贴板,文档内容完全不变。
- 光标放在任意位置(包括空行)
- 按
Ctrl+Shift+X(剪切整行)→ 行消失 - 立刻按
Ctrl+Z(撤销)→ 行恢复,但已进入剪贴板 - 之后
Ctrl+V即可粘贴该行
常见翻车点:松开 Ctrl+Shift+X 后犹豫半秒再按 Ctrl+Z,中间被其他操作打断,就会真删掉那行。
升级到 v7.8.8+ 后绑定 Copy current line 命令
官方从 v7.8.8 起内置了 Copy current line 命令,可映射到自定义快捷键,比如 Ctrl+Shift+C。
- 路径:
Settings → Shortcut Mapper → Plugin Commands - 向下滚动找到
Copy current line,双击右侧空白处,输入组合键 - 若找不到该命令,说明版本低于 v7.8.8,必须先升级
- 设置后建议重启 Notepad++,避免快捷键缓存未刷新
注意:它不在 Main menu 或 Scintilla commands 页签里,找错位置就白配了。
批量提取含关键字的整行:标记 + 书签 + 复制
不是单行,而是想一次性复制所有匹配某字符串的行?靠手动太慢,得走标记流程。
-
Ctrl+F打开查找框,输入目标字符串(支持正则,如"id":\d+) - 切换到
Mark标签页,勾选Mark line(不是Mark all) - 点
Mark All→ 左侧出现蓝色圆点,表示这些行已被标记为书签 - 菜单栏点
Search → Bookmark → Copy bookmarked lines -
Ctrl+N新建文档,Ctrl+V粘贴 —— 所有匹配行完整进来
别指望右键菜单或“复制已标记”按钮,Notepad++ 没这两个功能;也别用 Find All in Current Document,它只高亮,不生成可导出集合。
列选状态下复制整列内容
Alt 键不是开关,是临时触发器:按住 Alt + 鼠标拖选,才是列选。松手即生效,没“开启列模式”这回事。
- 起点要准:先把光标放到第一行目标列位置(比如第 8 列),再按住
Alt拖到底 - 键盘党可用
Alt+Shift+↓逐行扩展,但不自动滚动,超出可视区得先手动滚过去 - 复制后粘贴,目标区域也必须是列选状态,且行列数严格匹配,否则会错位或静默截断
- 中文、制表符、全角字符会影响列宽计算,实际选区常比肉眼判断偏一格——多试两次比查文档快
真正容易被忽略的是:列编辑基于字符坐标,不是语义对齐。哪怕看着对齐,只要某行混用了空格和 tab,列选就会歪。











