4

PyCharm 界面

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 的安装目录中复制该文件作为备份或用于修改:
I:Program FilesJetBrainsPyCharm 2018.2.2libresources_en.jar

2. 修改文件

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

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

用解压缩包软件打开

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

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

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

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

Active Tool Window

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

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

快速定位: =Active Tool Window

Find =Active Tool Window

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

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

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

Update ActionsBundle.properties

3. 验证

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

Update Success

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

补充

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

活动工具窗口

Update Failed 乱码

中文转 Unicode 编码

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

  • 方法 1(推荐)
>>> print('活动工具窗口'.encode('unicode-escape').decode('utf8'))
\u6d3b\u52a8\u5de5\u5177\u7a97\u53e3
  • 方法 2
>>> 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:保持原生态的英文界面也是挺好的

阅读更多


灵魂
33 声望0 粉丝