2017-10-18
因为换上了IDEA作为主要IDE,所以就想找个汉化版的用用。但是网络上没有完整的汉化包,
而且汉化包版本兼容问题又导致在新版的IDEA中产生了各种各样的奇葩效果。。。
所以就只好自己动手去进行汉化了。
在这里记录一下汉化中的各种大坑小坑(/ω\)
搜寻汉化文件
基本是基于网上流传的汉化包进化汉化,用的IDE自然就是DIEA自己了
主要汉化的文件是安装目录中lib
目录下的resource_en.jar
文件。这个文件包含了英文原版的语言信息。
在resource_en.jar
文件中的message
目录中包含了绝大部分的语言配置信息(也就是那一堆.porperties
文件)
这些语言配置文件以键值对的形式保存了显示在界面的语言信息。所以汉化这些配置文件即可产生汉化效果。
注意要转换成unicode的中文ascii码才行。但是,并不是所有的信息都包含在jar包中。有些汉化的键值并不能正常工作,
甚至会让原本的功能失效,比如汉化了git显示历史记录功能的部分,就会导致显示git历史记录功能失效。后来根据研究,
发现plugs
中部分插件也带有resource.jar
这种语言包。推测主界面的大部分语言是根据resource_en.jar
中显示的
但是具体功能部分的显示可能在相应插件中的resource.jar
包中。
让汉化包正常工作
这部分是在使用汉化包时发现的问题。一般在汉化包不兼容的版本强行在lib
目标中插入汉化包将有可能导致主程序不能正常工作
稳妥的方式是将汉化过的配置文件替换掉原版的配置文件。也就是对原版的resource_en.jar
包进行修改。
这样虽然能解决大部分的兼容问题。但是一些版本新增或去除的功能,还是会由于兼容性问题而不能正常工作。
在调查了其他的汉化包之后发现在配置文件添加语言类后缀,可以让IDEA优先加载该配置文件
如果配置文件中找不到的项目IDEA会自动加载原版的配置文件。以这种方正进行汉化的话,应该能提高一下版本的兼容性吧。
2020官方汉化
官方出中文汉化了,走的是插件扩展路线