必须先开启「启用多点编辑」设置,路径为菜单栏→设置→首选项→编辑器→多点编辑;编码需为纯utf-8(非bom变体),插入模式(ins)须开启,禁用自动换行及干扰插件;「全部查找+直接输入」是最稳定批量修改法,ctrl+d等高级多光标功能需安装bettermultiselection插件。

必须先开启「启用多点编辑」设置
这个选项默认关闭,不手动勾选就永远用不了 Ctrl+Click 多光标。路径是:菜单栏 → 设置 → 首选项 → 编辑器 → 多点编辑 → 勾选「启用多点编辑」。没这一步,后续所有点击都只加一个光标,甚至完全没反应。
常见错误现象:Ctrl+Click 后光标没叠加、状态栏无变化、鼠标点击像普通单击。此时别折腾快捷键,直接去检查这个勾选框是否点亮。
编码和输入模式不匹配会导致光标错位或失效
多光标对文档编码极其敏感:必须是纯 UTF-8,不能是 UTF-8 with BOM 或 UTF-16 LE。BOM 会把第一列偏移,导致你点第5列,光标实际落在第7列。
列编辑(Alt+拖拽)还依赖插入模式:INS 必须亮起,不是 OVR。按一次 Insert 键切换即可。否则你输一个字母,整行内容会被覆盖,误以为“输不进去”。
- 检查编码:菜单栏 → 编码 → 选择
UTF-8(不要选带 BOM 的变体) - 禁用自动换行:视图 → 自动换行(取消勾选),否则列坐标计算失准
- 临时禁用插件:某些插件(如 Python Script、TextFX)会劫持鼠标事件,插件 → 插件管理 → 全部禁用后测试
「全部查找 + 直接输入」是最稳的批量同步改法
它不依赖设置、不挑编码、不看系统平台,Windows/macOS/Linux 全通,大文件也扛得住。本质是把“多光标”转化成“多选中”,再靠编辑器原生机制同步写入。
操作流程很直白:Ctrl+F → 输入目标词(比如 user_id)→ 勾选「全部选中」→ 点击「全部查找」→ 关闭查找框 → 直接输入新内容(比如 uid)。
注意两个坑:
- 若目标含正则元字符(如
api.v1+),必须勾选「正则表达式」,并把+写成\+,否则只匹配字面量api.v1+而非api.v1后跟任意字符 - 想精确匹配单词边界(避免把
user_id_long里的user_id也改掉),查找框里填\buser_id\b,同样要勾选正则
想用 Ctrl+D 追加光标?得装 BetterMultiSelection 插件
原生 Notepad++ 没有 Ctrl+D、Ctrl+Shift+L 这类自动匹配加光标的功能。所谓“按一次加一个相同词的光标”,是插件行为,不是内置逻辑。
装了 BetterMultiSelection 后,Ctrl+D 才真正生效:选中一个 host,按 Ctrl+D 就跳到下一个 host 并加光标;Ctrl+Shift+L 则全文档匹配生成光标,支持「仅在选中区域查找」限定范围。
关键提醒:原生的 Alt+拖拽 是矩形选区,一按方向键就塌缩;插件把它升级成可微调的独立光标,这才是能落地的多光标体验。没装这个插件,所有关于“持续多光标操作”的讨论,都在对抗 Notepad++ 的底层设计限制。











