我们总是希望GUI的程序都是简体中文的。繁体中文也能够接受。最无奈的就是满屏幕的E文了。
我们常常希望GUI的翻译是最专业准确的。用词生硬尚能够看懂。最无语的就是半中半英了。
前几天,更新了amarok播放器,启动后发现是E文的界面。很纳闷。查看了一下软件包的文件,发现有33个国家/地区的翻译,偏偏就没有简体中文。还好里面有繁体中文的翻译,看着也能接受。
可是,看了几天后总感觉有点别扭,繁体和简体的用词习惯毕竟有些不同。于是,打算把其中的部分文字简体化!
==== 参考:Linux 的翻译系统 =====
现代Linux系统使用gettext库进行翻译。只要程序中涉及需要翻译的字符串以gettext("xxxx")的形式进行调用,就能够通过gettext库自动进行语言环境的探测,取得正确的翻译后的字符串。
Linux的程序翻译文件通常放置在 /usr/share/locale/ 目录中,以国家代码为子文件夹,以应用程序的名称进行存放。
比如amarok的中文简体翻译文件位置就是:
/usr/share/locale/zh_CN/LC_MESSAGES/amarok.mo
====
首先将机器码形式的翻译文件转换为文本形式的翻译文件。使用命令
$ msgunfmt /usr/share/locale/zh_TW/LC_MESSAGES/amarok.mo -o /tmp/amarok.po
接着就可以对/tmp/amarok.po进行翻译了。既可以使用传统的文本编辑工具,也可以使用专门的翻译工具。比如,我就使用lokalize翻译助手。$ lokalize /tmp/amarok.po
翻译完成后(其实我也就把繁体替换成简体而已),在逆向转换为mo文件(下面的命令直接覆盖掉系统的amarok翻译文件,故需要超级用户权限,也可以翻译后自己复制过去):$ sudo msgfmt /tmp/amarok.po -o /usr/share/locale/zh_CN/LC_MESSAGES/amarok.mo
好了!amarok的界面总算变成半简体的了。
PS:这个小技巧可以临时对付Linux中的翻译不准确问题(刚才还看到kdecn-mailist里有人说dolphin的翻译很晕乎)。