0%

在 Ubuntu 内如何更改 Chrome 的语言

在 Ubuntu(20.04) 内更改 Chrome 的语言时,并没有像是 Windows 的以这种语言显示 Google Chrome的选项。最多也只能修改提示翻译的优先语言。没有严格意义上的“更改显示语言”的选项。
在 Ubuntu 上,Chrome的显示语言可以根据系统语言变化,一种办法是将系统语言设置成你想要显示的语言,但是对于中文用户来说,更多的场景可能是系统语言是英文,应用语言是中文,比如这里的Chrome。如果你是我所说的这种情况,那么本文的内容可能对你有帮助。

在你的终端尝试以下命令

1
LANGUAGE=zh_cn google-chrome

此时如果启动 Chrome 能显示中文的话,我们的需求已经满足一大半了。如果使用命令行即可满足需求的话,就截至这里就可以了。

Ubuntu 的任务栏可以将常用的 APP 钉在这里(Ubuntu 称为 favorite),那么如何更改从这里启动的 Chrome的语言呢?
通过搜索引擎可以知道,这个 favorite 对应的文件在 /usr/share/applications ,我们找到 Chrome 对应的文件 /usr/share/applications/google-chrome.desktop,查看其内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[Desktop Entry]
Version=1.0
Name=Google Chrome
# Only KDE 4 seems to use GenericName, so we reuse the KDE strings.
# From Ubuntu's language-pack-kde-XX-base packages, version 9.04-20090413.
GenericName=Web Browser
......
Exec=/usr/bin/google-chrome-stable %U
StartupNotify=true
Terminal=false
Icon=google-chrome
Type=Application
Categories=Network;WebBrowser;
......

如果你注意到了 Exec=/usr/bin/google-chrome-stable 字段,那么你肯定能猜到,我们可以为这个可执行程序添加命令行参数LANGUAGE=zh_cn来让Chrome启动时以中文启动。遗憾的是,这里不行。直接加在这里不仅无法使用,而且还会导致 GNOME 桌面找不到 Chrome 了。
下面是我的解决办法

1
2
3
4
touch chrome_cn.sh
echo "#!/bin/bash" > chrome_cn.sh
echo "LANGUAGE=zh_cn /usr/bin/google-chrome-stable $@" >> chrome_cn.sh
sudo cp -f chrome_cn.sh /usr/bin/chrome_cn.sh

然后将 /usr/share/applications/google-chrome.desktop 里的所有 /usr/bin/google-chrome-stable 换成 /usr/bin/chrome_cn.sh 。让我们点击图标的时候,实际执行的是一个 sh 脚本,然后把 LANGUAGE=zh_cn 写在脚本里,让脚本去启动 Chrome ,这样就可以让桌面上任务栏启动的 Chrome 变成中文了。

最好不要直接更改 LANGUAGE 这个环境变量的值,这个值与系统语言相关。