参与 calibre
calibre 成功的秘诀在于其充满活力的用户社区。用户贡献了代码,将 calibre 翻译不同的语言,改善了它的外观和感觉,当然还有数以千计的错误报告,促进其成为强健的软件。 此处提供了对 calibre 有贡献的不完整列表。
加入 calibre 社区
要与其他 calibre 用户交流并了解 calibre 领域的最新发展,可以使用以下几种工具:- calibre 用户论坛
- calibre Facebook 主页
- 新版本 calibre 的 RSS 订阅
创建 calibre 插件
calibre 有一个全面的插件界面,可以创建几乎可以做任何事情的插件。有关更多示例,请参阅calibre Plugins 论坛。论坛上有很多有用的关于插件开发的入门教程。
翻译 calibre
calibre 支持翻译其用户界面。您可以在此处查看已存在的翻译语言列表。如果该列表中某项语言翻译不完整/缺失,可以简单的使用 Web 界面贡献翻译。要做到这一点,首先要在 Transifex中创建一个账户,然后在此页面中单击需要语言。点击 “加入团队”按钮。一旦获得批准,只需在此处单击您想要翻译的语言,然后使用“立即翻译”按钮进行翻译。
或者,也可以使用“下载以进行翻译”链接而不是“立即翻译”按钮来下载PO 文件以进行脱机翻译。可以根据自己的喜好使用翻译软件,PO 文件编辑完成后,单击 “上传文件”链接(位于“下载以进行翻译”链接的正下方)上传该文件。
翻译常见问题
- 如何处理 & 符号?
& 符号表示键盘快捷键。例如,字符串“&Title”表示这个 GUI 元素可用键盘快捷键 “Alt+T” 访问到(仅适用于 Windows/Linux)。因此翻译中应尽可能的保留字母前面的 & 符号,或者改用其它合适的字母。 - 如何处理“%A_WORD”字符?
对于 % 字符及其右侧的单词(百分号和单词之间没有空格)表示将由代码替换的单词。因此,当遇到此符号及其旁边的单词(例如:%default)时,不要更改,在翻译的句子中保持原样。同样,对于 %s 或 %d 之类的序列,请保留其原样。最后,像%(SOME_WORD)s 这样的序列也应该保持不变。 - 如何处理带有
{word}
构造的句子?
这些是占位符,不得翻译。代码将用实际内容替换它们。 - 如何处理像dd MMM yyy这样的日期字符串?
这些字符串必须保留为未翻译。 - 翻译用户手册时如何处理特殊标记?
用户手册采用 reStructuredText编写。 您将看到许多类似:guilabel:`Some text`
的结构。其中:guilabel:``
这部分是标记语言,类似 HTML 标签,应该只翻译反引号内的文本。此外,必须特别注意以下形式的链接::ref:`some text`
这里的任何东西都不能翻译。:ref:`Some text <link-location>`
这里只有“Some text”必须翻译``Some text``
这是段字面文本,双反引号内的东西不应该翻译,而是完全保留。:doc:`generated/en/something`
应该换成 :doc:`generated/目标语言代码/something`。例如,在德语中,将:doc:`generated/en/cli-index`
修改为:doc:`generated/de/cli-index`
- 如何测试我的翻译?
首先,需要从此处下载适用于您的语言的.po文件。可以通过将环境变量 CALIBRE_TEST_TRANSING 设置为下载的.po文件的路径来测试.po文件。然后像往常一样运行calibre。目前,无法测试用户手册的翻译。
成为 calibre 的开发者
获取源代码
git clone https://github.com/kovidgoyal/calibre.git
或者,如果您不想等待下载完整的历史版本代码,可以只获得源代码:
curl -L http://code.calibre-ebook.com/dist/src | tar xvJ
有关使用源代码签出运行 calibre 的说明,以及有关 calibre 代码的组织方式的一些信息,请参见用户手册
如果你想出了一个很酷的想法和实现它的补丁,让立即让我们知道,它很可能会在下一周的版本中发布。一个询问 calibre 开发技巧的好地方是 calibre 开发论坛,很多 calibre 开发人员都在这里闲逛。