Eclipse是由IBM及业内领先的软件提供商组成的开放源代码组织eclipse.org提供的软件开发平台,系统以插件的方式构成,所有的功能(包括自身的功能)都以插件出现,并包含全部源代码。它完全可以代替VisualAge for Java,而IBM自己也已经这么干了。
虽然Eclipse号称支持中文,但要等到官方的中文版不知道到什么时候。现在,我们自己来汉化它。
得益于Java对语言的支持,而且Eclipse自身也将所有可翻译的元素保存在属性文件中,因此,我们只要汉化属性文件就可以了。
属性文件大体上分为两类:
1.知名的属性文件,如每个插件都有plugin.properties,直接放在该插件的目录下。
2.提示消息,如message.properties,一般都打包和运行库(xxx.jar)中。
根据Java对属性文件的搜索,只要在相应的属性文件路径下放置以_zh结尾的属性文件,在中文平台中此属性文件优先于缺省属性文件加载。例如plugin_zh.properties优先于plugin.properties加载。
下面,我们就要找到一个好的方法来处理这些大量plugin.properties及message.properties了,我们需要一种方式将它们集成到一起,然后集中翻译,再分别复制到各个目录。对付这种多目录多文件的任务,使用ant最拿手了,首先使用ant编写一个提取plugin.properties的任务:
<pre>
<copy todir="${transdir}" &>
<fileset dir="${plugdir}" includes="**/plugin.properties"/>
<mapper type="regexp" from="^org\.eclipse\.(.*)\\plugin.properties$$" to="org\.eclipse\.\1-plugin.txt"/>
</copy>
</pre>
因为都是同名文件,故使用转换方法加上目录名前缀。
接着,就是人工的活了,将每个txt文件进行翻译,翻译完成后,因为是中文,还需以unicode方式转码,使用ant内置的任务native2ascii完成此步。
<pre>
<native2ascii src="${transdir}" dest="${transdir}" includes="*.txt" ext="_zh.properties"/>
</pre>
最后一步就是发布了,拷贝到相关的目录即可。
<pre>
<copy todir="${plugdir}" overwrite="yes">
<fileset dir="${transdir}" includes="*zh.properties"/>
<mapper type="regexp" from="^(.*)\-plugin_zh\.properties$$" to="\1\\plugin_zh\.properties"/>
</copy>
</pre>
怎么样,你也可以打造自己的中文版eclipse了。
当然,也可以使用eclipse提供的方法,如生成一个片断插件来汉化,或使用nl的标准目录格式来汉化。但我还是觉得这种方法是最java的,对其他java程序也通用。
可以在http://hlstudio.swiki.net/.uploads/demo/trans.rar下载汉化包,解压缩后放到eclipse安装目录下,即让trans目录和plugins目录平级,然后,在dos下进入trans目录,执行ant命令即可。
注意:
1.本汉化包仅针对eclipse2.0.1
2.可使用ant uninstall反安装汉化包
3.免责声明,由于翻译引起歧义而带来的不便,作者不负任何责任。