Celestia/国际化
从 v1.5 开始,Celestia 完全支持国际化(通常缩写为 i18n)。Celestia i18n 使用 gettext 进行处理,gettext 是一项允许不同语言之间翻译的服务。
程序中使用的所有字符串都可以翻译。对于每种语言,字符串列表及其翻译都保存在一个 .po 文件中。
Celestia 应该会根据计算机的语言自动更改其使用的语言。但是,如果您不想切换计算机的语言和区域,则可以使用命令行专门打开 Celestia
- 打开终端。
- 使用
cd
将目录更改为包含 Celestia 的目录(Unix 可执行文件)。 - 键入
./Celestia -AppleLanguages '(aa)'
,其中aa
指的是语言代码,例如es
代表西班牙语。 - 按 Enter 键。
- 打开命令提示符 (cmd.exe)
- 使用
cd
将目录更改为包含 Celestia 的目录 - 键入
set LC_MESSAGES=aa
,其中aa
是语言代码,然后按 Enter 键 - 键入
celestia
并按 Enter 键
可以从 Celestia GitHub 仓库 或下面“Celestia 翻译概述”部分的表格中下载 .po 文件。
可以使用以下软件编辑 .po 文件
可以使用 celestia.pot 轻松地将特定语言的现有 .po 文件更新到最新版本。在 poEdit 中,可以使用命令“目录/从 POT 文件更新”来实现。然后,程序会显示已删除和更改或新引入的字符串列表。但请注意,.po 文件内部的创建日期不会更新。KBabel 也应该具有这样的机制。
- 从 GitHub 仓库下载 celestia.pot 文件。
- 使用您语言的 ISO 639-1 代码 重命名它。
- 如上文“编辑 .po 文件”部分所述进行编辑。
或者
- 加入 https://www.transifex.com/celestia/celestia/ 作为您的语言翻译人员并上传您的文件。
- 为我们 GitHub 上的仓库创建新的拉取请求
- 或者只需将 .po 文件发送给开发人员中的某个人
- 按照 Celestia/Development/Win32 platform 中描述的 Win 32 平台的 Celestia 构建步骤操作。假设 Celestia 的源代码位于“c:\celestia”中,其他程序也安装在 c 盘中。
- 安装 perl(例如 ActivePerl)和适用于 Windows 的 POEdit
- 添加 POEdit 的路径(例如 C:\Program Files\Poedit\bin)。这是为了 msgfmt。
- 打开 Windows 命令控制台 (cmd.exe)
- 执行“C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat”
- 使用“cd C:\celestia\celestia\po”命令更改目录
- 运行“perl translate_resources.pl”。translate_resources.pl 脚本执行以下操作
- 从 po 文件翻译资源文件 -> src/celestia/rc/celestia_LL.rc
- 构建 dll 文件 -> src/celestia/rc/celestia_LL.res -> locale/res_LL.dll
- 编译目录 -> locale/LL/LC_MESSAGES/celestia[_constellations].mo
Celestia 使用自己的 .txf 字体纹理来显示 OpenGL 叠加文本。不过,标准 Celestia 软件包中分发的字体纹理中可能缺少某些非拉丁字符。
在这种情况下,请使用以下过程从标准 .ttf 字体构建 celestia .txf 字体纹理
- 从 http://www.shatters.net/~claurel/stuff/txfutil.tar.gz (失效链接) 下载 txf 实用程序
- 此链接 包含可能与这些实用程序相同的源代码。
- 生成 .txf 文件
ttf2txf -w 1048 -h 1048 -f codepoints_LL.txt -s 12 -o sans12_LL.txf font.ttf ttf2txf -w 1048 -h 1048 -f codepoints_LL.txt -s 14 -o sans14_LL.txf font.ttf ttf2txf -w 1048 -h 1048 -f codepoints_LL.txt -s 20 -o sansbold20_LL.txf font_bold.ttf
这将创建以下字体纹理,这些纹理应放置在 font/ 目录中
- sans12_LL.txf
- sans14_LL.txf
- sansbold20_LL.txf。
Windows 用户注意
- ttf2txf 的预编译版本可在以下位置获得: http://gvince.perso.sfr.fr/celestia/dev/ttf2txf.zip
- codepoints_LL.txt 文件是通过从 po/ 目录运行 translate_resources.pl perl 脚本生成的。请参阅上面“从 MS Windows 的源代码构建国际化文件”部分。
当前的翻译过程适用于Celestia 1.6.1(开发版本)。
>> 上次 celestia.pot 文件更新时间:2010-01-04
语言 | 文件 | 已翻译 | 模糊 | 未翻译 | 修订日期 | 最后翻译者 |
---|---|---|---|---|---|---|
ar | ar.po | 58% | 335 | 83 | 2006-06-05 | [email protected] |
be | be.po | 100% | 0 | 0 | 2010-11-15 | [email protected] |
bg | bg.po | 68% | 284 | 30 | 2008-01-27 | [email protected] |
de | de.po | 100% | 0 | 0 | 2010-01-29 | [email protected] |
el | el.po | 86% | 128 | 2 | 2010-01-25 | [email protected] |
es | es.po | 100% | 0 | 0 | 2010-01-25 | [email protected] |
fr | fr.po | 100% | 0 | 0 | 2010-02-25 | [email protected] |
gl | gl.po | 100% | 0 | 0 | 2010-04-08 | [email protected] |
hu | hu.po | 100% | 0 | 0 | 2010-04-19 | [email protected] |
it | it.po | 100% | 0 | 0 | 2010-03-31 | [email protected] |
ja | ja.po | 100% | 0 | 0 | 2010-03-13 | [email protected] |
ko | ko.po | 100% | 0 | 0 | 2010-03-13 | [email protected] |
lt | lt.po | 100% | 0 | 0 | 2010-03-02 | [email protected] |
lv | lv.po | 95% | 46 | 0 | 2010-02-06 | [email protected] |
nl | nl.po | 100% | 0 | 0 | 2010-03-28 | [email protected] |
no | no.po | 100% | 0 | 0 | 2010-12-05 | FreewareTips |
pl | pl.po | 100% | 0 | 0 | 2010-02-05 | [email protected] |
pt | pt.po | 74% | 246 | 4 | 2009-01-13 | [email protected] |
pt_BR | pt_BR.po | 100% | 0 | 0 | 2010-04-03 | [email protected] |
ro | ro.po | 74% | 246 | 4 | 2008-12-28 | [email protected] |
ru | ru.po | 100% | 0 | 0 | 2010-11-28 | [email protected] |
sk | sk.po | 100% | 0 | 0 | 2010-04-13 | [email protected] |
sv | sv.po | 99% | 0 | 2 | 2010-03-27 | [email protected] |
tr | tr.po | 28% | 0 | 681 | 2011-01-02 | [email protected] |
uk | uk.po | 100% | 0 | 0 | 2010-01-24 | [email protected] |
zh_CN | zh_CN.po | 100% | 0 | 0 | 2010-04-047 | [email protected] |
zh_TW | zh_TW.po | 100% | 0 | 0 | 2010-03-13 | [email protected] |
语言 | 文件 | 已翻译 | 模糊 | 未翻译 | 修订日期 | 最后翻译者 |
---|---|---|---|---|---|---|
ar | ar.po | 98% | 0 | 1 | 2006-06-05 | [email protected] |
be | be.po | 100% | 0 | 0 | 2010-11-02 | [email protected] |
bg | bg.po | 100% | 0 | 0 | 2007-12-19 | [email protected] |
de | de.po | 100% | 0 | 0 | 2006-02-07 | [email protected] |
el | el.po | 100% | 0 | 0 | 2009-05-08 | [email protected] |
en | en.po | 100% | 0 | 0 | 2005-08-06 | [email protected] |
es | es.po | 100% | 0 | 0 | 2006-02-03 | ElChristou |
fr | fr.po | 100% | 0 | 0 | 2008-11-23 | [email protected] |
gl | gl.po | 100% | 0 | 0 | 2010-04-08 | [email protected] |
hu | hu.po | 100% | 0 | 0 | 2009-01-15 | [email protected] |
it | it.po | 100% | 0 | 0 | 2006-08-11 | [email protected] |
ja | ja.po | 100% | 0 | 0 | 2006-08-07 | [email protected] |
ko | ko.po | 100% | 0 | 0 | 2010-01-26 | [email protected] |
lt | lt.po | 100% | 0 | 0 | 2008-12-04 | [email protected] |
lv | lv.po | 100% | 0 | 0 | 2006-12-14 | [email protected] |
nl | nl.po | 100% | 0 | 0 | 2006-08-02 | [email protected] |
no | no.po | 100% | 0 | 0 | 2010-12-05 | FreewareTips |
pl | pl.po | 100% | 0 | 0 | 2008-10-21 | [email protected] |
pt | pt.po | 100% | 0 | 0 | 2006-12-30 | [email protected] |
pt_BR | pt_BR.po | 100% | 0 | 0 | 2009-02-18 | [email protected] |
ro | ro.po | 100% | 0 | 0 | 2008-12-28 | [email protected] |
ru | ru.po | 100% | 0 | 0 | 2006-05-27 | [email protected] |
sk | sk.po | 100% | 0 | 0 | 2010-02-28 | [email protected] |
sv | sv.po | 100% | 0 | 0 | 2006-02-21 | [email protected] |
uk | uk.po | 100% | 0 | 0 | 2008-??-?? | [email protected] |
zh_CN | zh_CN.po | 100% | 0 | 0 | 2006-08-09 | [email protected] |
zh_TW | zh_TW.po | 100% | 0 | 0 | 2009-08-10 | [email protected] |
以下文件也可以本地化:controls.txt、COPYING、demo.cel、guide.cel、start.cel。
可以使用简单的文本编辑器编辑这些文件。对于 UTF-8 编码,请考虑使用例如 notepad++
翻译完成后,只需将文件重命名为 controls_LL.txt、COPYING_LL、demo_LL.cel、guide_LL.cel、start_LL.cel,其中 LL 代表您语言的ISO 639-1 代码。
翻译完成后,可以将这些文件发送到 [email protected]。