☰
Calibre 中文路径不再变拼音:NoTrans 插件安装与配置完整指南
2026/9/26 3:03:38 网站建设 项目流程

Calibre 中文路径不再变拼音:NoTrans 插件安装与配置完整指南

【免费下载链接】calibre-do-not-translate-my-pathSwitch my calibre library from ascii path to plain Unicode path. 将我的书库从拼音目录切换至非纯英文(中文)命名项目地址: https://gitcode.com/gh_mirrors/ca/calibre-do-not-translate-my-path

很多中文用户都见过这样的场景:书库里按「作者」「分类」建好的中文目录,经过一次导入或一次"发送到设备"之后,变成了拼音或拉丁转写目录。开源项目 calibre-do-not-translate-my-path 提供的 NoTrans 插件(Do Not Translate My Path)正是针对这个问题:它以 Calibre 官方插件机制接管路径处理逻辑,让中文及其他非拉丁文字的路径保持原样,支持 Calibre 5.0 及以上版本,Windows、macOS、Linux 均可使用。

路径为什么会被改写成拼音

Calibre 作为跨平台软件,为了保证不同文件系统的兼容性,默认会对路径做"拉丁化"处理:中文、日文等非 ASCII 字符会被转写成 ASCII 拼音或拉丁字符。这个行为对英文环境无害,但对以中文组织书库的用户来说,意味着目录结构、命名习惯和与设备间的一一对应关系全部被打乱。

NoTrans 的思路并不复杂:在插件入口__init__.py中注册一个 Hook,运行时把 Calibre 内部负责路径净化的几个函数(书库的ascii_filename、USB 设备与智能设备应用的sanitize、MTP 的create_upload_path)替换为只清理非法字符、不转写字形的sanitize_file_name;取消勾选某个选项时,再把对应函数还原回 Calibre 的原始实现。整个过程中不修改 Calibre 的核心文件。

插件覆盖的四种路径场景

配置界面里有四个独立开关,对应 Calibre 的四条路径入口,默认全部启用(见config.py):

  • 书库(Library):添加书籍到书库时生成的目录与文件名,是最常用的场景。
  • USB 设备(含本地文件夹):涵盖 U 盘、SD 卡、挂载目录等系统原生存储,"发送到文件夹"走的就是这条路径。
  • MTP 设备:Android 手机、平板等媒体传输协议设备。
  • 智能设备应用:通过 Calibre 配套 App 访问书库时的路径。

四个开关互相独立,可以只关掉部分场景的翻译行为。插件界面文本带有中文翻译,源文件位于translations/zh_CN.po。

NoTrans 插件安装步骤

  1. 获取插件文件。直接下载项目 Release 中的 zip 包,或者克隆仓库源码:git clone https://gitcode.com/gh_mirrors/ca/calibre-do-not-translate-my-path
  2. 打开 Calibre,进入"首选项 → 高级选项 → 插件",点击右下角的"从文件加载插件"。
  3. 选中下载(或构建)得到的 zip 文件,等待加载完成。
  4. 按提示重启 Calibre,插件即生效。

值得一提的是,仓库里的release.py会负责编译翻译文件并把__init__.py、config.py、ui.py、图标等打包成 NoTrans.zip,所以从源码构建发布包也是一条可复现的路径。

中文路径保持原样的配置方法

配置入口有两个,二选一即可。其一是插件列表:在"首选项 → 插件 → 自定义插件"中双击 NoTrans,会弹出四个勾选框,勾选项含义是"禁用该场景的翻译",保存后 Hook 会立即按新配置更新。其二更顺手:右键 Calibre 工具栏,在"添加/删除工具栏项目"里加入 NoTrans,之后点击工具栏图标即可随时打开配置界面,界面逻辑在ui.py中实现。

修改选项后刷新书库路径

勾选或取消某个选项,只影响之后的新操作;书库里已经存在的旧路径不会被自动改写。如果需要把当前书库所有书籍的保存路径按新规则重刷一遍,使用工具栏 NoTrans 菜单里的"刷新书库(Refresh Library)":

  1. 点击工具栏 NoTrans → 刷新书库,确认对话框提示操作可能需要一段时间。
  2. 插件会以后台任务逐本书重算路径,状态栏显示进度和当前书名。
  3. 完成后即可在书库目录中看到更新后的路径。

刷新书库有三个边界需要清楚:只作用于当前打开的书库,其他书库不受影响;已经发送到设备的文件不会被重写,设备文件与书库文件的关联关系在刷新后原样保留;操作过程是后台线程执行,期间可以继续使用 Calibre。

常见疑问与版本选择

Release 列表里除了 v3.x 还能看到 v6.x、v7.x 这样的高版本号,容易让人困惑。这些高版本号是早期补丁方案使用的,版本号与对应的 Calibre 版本一一绑定;v1、v2 同属补丁路线,而 v3 是插件路线,也就是现在推荐使用的形态。选 v3 的实际理由是:安装是一次性的,不改动 Calibre 自身文件,之后升级 Calibre 无需重新处理,兼容性也更好。如果坚持要用补丁版,项目提供了 bypy-patch 分支可作参考,但维护成本明显更高。

另一个常见误会是担心刷新书库会波及设备上的文件。实际机制只重算书库内的路径记录,设备侧文件与书库文件的对应关系保持不变,任何时点执行刷新都可以。

小结

NoTrans 用四个独立开关覆盖了书库、USB(含本地文件夹)、MTP 和智能设备应用四条路径通道,配合刷新书库功能可以处理存量路径。对于以中文组织书库、并经常向手机或 U 盘传输电子书的用户,按本文步骤装好插件、保留"书库 + USB"两项勾选,再视需要打开 MTP,就能让路径从导入到同步全程保持原样。许可证为 GPL v3,见项目LICENSE与中文说明readme_zh.md。

【免费下载链接】calibre-do-not-translate-my-pathSwitch my calibre library from ascii path to plain Unicode path. 将我的书库从拼音目录切换至非纯英文(中文)命名项目地址: https://gitcode.com/gh_mirrors/ca/calibre-do-not-translate-my-path

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询