手动汉化 PyCharm 的过程

2018-09-04 19:14:39 +08:00
 XiiLii

PyCharm 默认是英文界面,如果想汉化它,网上有很多相关的汉化䃼丁可以下载。

我的 Pycharm 版本是 pycharm-professional-2018.2.2,这里仅简单展示手动汉化的原理:需要修改一个名叫 resources_en.jar 的文件

步骤如下:

1. 备份文件

resources_en.jar 的相对路径: .\JetBrains\PyCharm 2018.2.2\lib\resources_en.jar

我的完整路径是:I:\Program Files\JetBrains\PyCharm 2018.2.2\lib\resources_en.jar

在 Pycharm 的安装目录中复制该文件作为备份或用于修改:

2. 修改文件

备份好文件后,我直接修改原文件

.jar 文件本质是个压缩包,可以用解压软件打开

进入其中的 messages 目录(或者单独解压 messages 目录下的 .properties 文件到其它文件夹)

.properties 这种格式的文件是文本文件,打开其中一个文件里面的内容如下所示:

等号 = 右边是可以修改的文本,也就是需要翻译的内容

下面以 PyCharm 菜单栏下的 Active Tool Window 选项为例来将其翻译成中文

(为防止等下无法修改文件,此时可以关闭 PyCharm )

经过我事先搜索,发现 Active Tool Window 这个字符串位于 ActionsBundle.properties 文件的第 917 行。我这里使用软件内置的文本编辑器打开该文件:右键 ActionsBundle.properties 文件,选择 内部查看器打开

快速定位: =Active Tool Window

Active Tool Window 修改为 活动工具窗口 对应的 Unicode 编码,即 \u6d3b\u52a8\u5de5\u5177\u7a97\u53e3(后面再说为什么修改成 Unicode 编码及如何修改为 Unicode 编码)

再次强调:更新前务必先关闭 PyCharm,不然无法更新被修改的文件

修改并保存文件后,就可以看到提示更新原文件的操作,点击确定更新即可

3. 验证

重新打开 PyCharm 验证下原来的 Active Tool Window 是否显示为 活动工具窗口

上图表示验证成功,至此翻译过程展示完毕,翻译过程很明确,但这个过程比较麻烦的是需要将中文转换成 Unicode 编码

补充

为了让使用任何文字的人都可以使用 PyCharm,里面的字符是使用 Unicode 解码的。如果直接用中文修改,会导致解码出错,以下是反面例子(将文件以 UTF-8GBK 编码的形式保存也是看不懂的乱码)

中文转 Unicode 编码

通过下面的一两行 Python3 代码即可将中文转成 Unicode

>>> print('活动工具窗口'.encode('unicode-escape').decode('utf8'))
\u6d3b\u52a8\u5de5\u5177\u7a97\u53e3
>>> for s in '活动工具窗口':
...     print(hex(ord(s)).replace('0x', '\\u'), end='')
...
\u6d3b\u52a8\u5de5\u5177\u7a97\u53e3

如果每个汉字都要像上面这样写实在麻烦,所以可将上面的代码封装起来方便循环使用

当然这里仅演示翻译的一小段过程,喜欢折腾的可以将 messages 目录下的所有 .properties 文件都翻译一下(除了 messages 目录外, .properties 文件在其它目录也有一些),我大概看了下 .properties 文件里面的内容布局,不是完全与 PyCharm 界面布局一致的,手动翻译很麻烦,可以编写个小程序自动完成这个翻译过程,再通过人工检查修正下翻译结果。嫌麻烦的可以获取汉化补丁替换原文件即可,毕竟别人已经翻译好了,直接拿来用比较省事儿。

我这里有个将 messages 目录下的 .properties 文件翻译好的 resources_en.jar 文件,将其替换原文件后,界面如下:

PS:保持原生态的英文界面也是挺好的

阅读更多

2047 次点击
所在节点    Python
4 条回复
MNJKOLnm
2018-09-04 21:34:28 +08:00
macOS 版怎么搞?
XiiLii
2018-09-05 09:17:48 +08:00
@MNJKOLnm 在 MacOS 上没试过
alphadog619
2018-09-05 10:01:08 +08:00
楼主,翻译好的 resources_en.jar 文件,求下载。
XiiLii
2018-09-05 19:56:52 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/486117

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX