SublimeStringEncode 是最稳定的选择,它自动处理 UTF-8 字节转换、支持多光标、解码失败弹窗提示;而 Python 控制台易出错且无法直接替换选区,老插件则常静默失败。

SublimeStringEncode 是当前最稳的选择,别折腾控制台或老插件——它能自动处理 UTF-8 字节转换、支持多光标、解码失败会弹窗提示,而不是静默输出乱码或空结果。
为什么不能直接用 Python 控制台跑 base64.b64encode()
控制台看似灵活,但极易出错:base64.b64encode("中文") 直接报 TypeError: a bytes-like object is required;漏写 b'' 前缀、解码后忘加 .decode('utf-8')、剪贴板带隐藏 \r\n,都会导致结果不可用。更关键的是,控制台输出无法直接替换选区,还得复制粘贴,打断编辑流。
必须用 SublimeStringEncode,不是“Base64”或“Advanced Encoding”
老插件在遇到中文、emoji、换行符时容易静默失败,因为没显式指定 utf-8 编码路径。而 SublimeStringEncode 内部固定走:base64.b64encode(s.encode('utf-8')).decode('utf-8'),省去所有手动类型转换。
- 安装后无需配置,命令面板搜
StringEncode: Base64 Encode即可执行 - 支持多光标:Ctrl+Click 选中 5 处 API key,一次命令全部编码
- 解码失败时弹窗提示
Invalid base64 string,而非输出一堆\x00或空白 - ⚠️ 切勿
Ctrl+A全选整文件——YAML 注释、JSON key 名、HTML 标签都会被误编码
快捷键绑定比命令面板快 3 秒,但命令名是 string_encode
频繁操作时,反复开命令面板输关键词太打断节奏。在 Preferences → Key Bindings 用户配置区加这两条:
[ {"keys": ["ctrl+alt+b"],"command":"string_encode","args": {"type":"base64_encode"} }, {"keys": ["ctrl+alt+shift+b"],"command":"string_encode","args": {"type":"base64_decode"} } ]
注意:command 是 string_encode,不是 base64_encode;Mac 用户把 ctrl 换成 super。
处理图片 data URL 时,先切出纯 Base64 字符串
Sublime 不识别图片二进制内容,拖 PNG 进来只是乱码字节流。你不能对整行 data:image/png;base64,iVBORw... 执行编码——那会把前缀也编进去,彻底失效。
- 用正则
Ctrl+H→ Find:data:image/[^;]+;base64,([A-Za-z0-9+/=]+)→ Replace:$1→Find All - 确认光标只落在 Base64 字符串上(不含逗号、空格、换行),再执行
StringEncode: Base64 Decode验证是否有效 - 若需新图,用系统命令生成原始 Base64:
base64 -i logo.png | tr -d '\n',再粘贴回 Sublime 补前缀


















