notepad++ 新版(v7.9+)不支持 mime tools 插件,因其仅兼容 32 位旧版(≤v7.8.9)且依赖已移除的 pluginmanager;推荐使用 v8.5+ 内置 utf-8 base64 转换或 python script 插件实现可靠编码。

Notepad++ 本身不支持 Base64 编码,所谓“快速转码”完全依赖插件,而新版(v7.9+)默认装不了 MIME Tools——它只兼容 32 位旧版 Notepad++(≤v7.8.9),且必须手动放 DLL。你点菜单找不到 Base64 Encode,不是操作错,是插件根本没加载成功。
为什么新版 Notepad++ 装不上 MIME Tools
MIME Tools 是个 32 位老插件,依赖已废弃的 PluginManager.dll;Notepad++ v7.9 起彻底移除该机制,改用沙箱模型加载签名插件。Plugins Admin 里搜不到它,不是网络问题,是官方源早已下架。
- 64 位 Notepad++(当前默认安装包)会直接忽略
MimeTools.dll,启动时无提示、无报错、无菜单项 - 即使强行复制 DLL 到
plugins\目录,也会静默失败,日志里只显示Failed to load plugin: MimeTools.dll - 所谓“勾选 Show all plugins”也无效——
MIME Tools不在新插件体系内,根本不会被扫描到
想用 Base64 编码,现在最稳的两个办法
别折腾降级或手动 DLL,风险高、乱码多、不安全。推荐以下两种实操路径:
-
方案一:用内置编码功能(v8.5+)——仅限纯文本,不处理二进制
选中文本 → 右键 →Encoding→Convert to UTF-8 Base64(注意是“UTF-8 Base64”,不是“Base64”)
⚠️ 它把字符串先按 UTF-8 编码成字节,再 Base64,和 Python 的base64.b64encode(s.encode())行为一致 -
方案二:Python Script 插件(推荐)——可控、可扩展、兼容新旧版
安装Python Scriptv1.5+ 后,新建脚本base64_encode.py,内容只需一行:import base64; editor.replaceSel(base64.b64encode(editor.getSelText().encode()).decode())
保存后,从Plugins → Python Script → Scripts下调用即可
MIME Tools 即使能用,也得预处理才能不出错
就算你成功降级到 v7.8.9 并跑通 MIME Tools,它对输入极其苛刻,稍有不符就静默返回空结果,不报错也不提醒:
- 换行干扰:邮件/JSON 中常见 76 字符折行,必须先执行
Edit → Line Operations → Remove Empty Lines,再手动删所有\r\n - URL Safe 字符不认:
-和_得提前替换为+和/,否则解码失败 - 填充缺失:长度不是 4 的倍数就崩,比如
SGVsbG8必须补成SGVsbG8=,SGVsbG补成SGVsbG==
真正要转的是文件(如图片、PDF)?MIME Tools 完全不行——它只处理编辑器里“看到”的文本,不是原始字节流。这时候得切到 PowerShell:[Convert]::ToBase64String([IO.File]::ReadAllBytes('path.png')),或者写 Python 脚本读二进制再 encode。别指望 Notepad++ 自己搞定这事。











