linux

您所在的位置:网站首页 linux修改语言环境为中文的命令是什么意思 linux

linux

2024-07-09 22:51| 来源: 网络整理| 查看: 265

上一级页面:wsl2设置中文语言-更换中文字体-进行中文优化

前言

Arch Linux可以查看WikiLocale (简体中文) - ArchWiki (archlinux.org)

本文均在Ubuntu/Debian环境下测试

安装和设置中文语言包language-pack-zh-hans

中文语言包可以让界面成功显示中文,但显示出的中文可能呈现乱码,乱码需要通过安装中文字体解决

如果没有中文语言包,可以通过网上下载安装中文语言包(不能联网的通过其他电脑下载,上传上去吧)

ubuntu的中文语言包样式示例:

123456# 简体中文language-pack-zh-hans #繁体中文language-pack-zh-hant

安装中文语言包

1sudo apt install language-pack-zh-hans

(可选)安装gnome的中文语言包,gnome-keyring会用到

1sudo apt install language-pack-gnome-zh-hans 系统区域设置(locale)

在 /etc/locale.conf 中写入 LANG 变量,为了防止 tty 乱码

不推荐把全局的 LANG设置为中文,即 LANG=zh_CN.UTF-8,因为这样设置会导致 tty 乱码。

您可以在以下文件中找到全局区域设置:

/etc/default/locale - 在Ubuntu / Debian上 /etc/locale.conf - 在CentOS / RHEL / Arch Linux 上 12# 在Ubuntu / Debian上sudo vim /etc/default/locale 12# 在CentOS / RHEL / Arch Linux 上sudo vim /etc/locale.conf

设置LANG="en_US.UTF-8"。

1LANG=en_US.UTF-8 不要设置为LANG=zh_CN.UTF-8。见Localization (简体中文)/Simplified Chinese (简体中文) - ArchWiki (archlinux.org) 在用户会话中覆盖系统区域设置(locale)

在每个用户的配置文件上,设置每个用户单独的 locale。见Locale (简体中文) - ArchWiki (archlinux.org)

12# 或者是其他的用户配置文件,这里以zsh为例sudo vim ~/.zprofile 12345678910111213export LANG="zh_CN.UTF-8"export LANGUAGE="zh_CN:zh:en_US:en"# 其他export LC_NUMERIC="zh_CN.UTF-8"export LC_TIME="zh_CN.UTF-8"export LC_MONETARY="zh_CN.UTF-8"export LC_PAPER="zh_CN.UTF-8"export LC_NAME="zh_CN.UTF-8"export LC_ADDRESS="zh_CN.UTF-8"export LC_TELEPHONE="zh_CN.UTF-8"export LC_MEASUREMENT="zh_CN.UTF-8"export LC_IDENTIFICATION="zh_CN.UTF-8"export LC_CTYPE="zh_CN.UTF-8"

1、字符输入(LC_CTYPE)

2、数字(LC_NUMERIC)

3、比较和排序习惯(LC_COLLATE)

4、时间显示格式(LC_TIME)

5、货币单位(LC_MONETARY)

6、信息:主要是提示信息,错误信息,状态信息,标题,标签,按钮和菜单等(LC_MESSAGES)

7、姓名书写方式(LC_NAME)

8、地址书写方式(LC_ADDRESS)

9、电话号码书写方式(LC_TELEPHONE)

10、度量衡表达方式 (LC_MEASUREMENT)

需要注意的是,有些终端不支持显式设置为UTF-8,详见Locale (简体中文) - ArchWiki (archlinux.org)的疑难解答部分 有些终端必须显式设置为UTF-8。若不显式的设置为UTF-8,则会按照字母顺序排序,来决定实际的字符格式。例如:设置export LC_ADDRESS="zh_CN.UTF-8",系统存在zh_CN.GBK和zh_CN.UTF-8的情况下,会优先使用GBK(字母顺序靠前) 设置 Locale

Locale 决定了软件使用的语言、书写习惯和字符集。

编辑 /etc/locale.gen,去掉 en_US.UTF-8 UTF-8 以及 zh_CN.UTF-8 UTF-8 行前的注释符号(#): 1vim /etc/locale.gen

Pasted%20image%2020221122105945.png

Pasted%20image%2020221122105953.png

注意是这两项

12en_US.UTF-8 UTF-8zh_CN.UTF-8 UTF-8

运行命令

1sudo locale-gen --purge

重启机器

1sudo /sbin/shutdown -r now 语言支持检查

安装language-selector-common

1sudo apt-get install language-selector-common

输出语言支持检查的结果

1echo $(check-language-support)

输出结果如下

1fcitx-module-cloudpinyin fcitx-ui-qimpanel fonts-noto-cjk fonts-noto-cjk-extra

安装它们

1sudo apt install fcitx-module-cloudpinyin fcitx-ui-qimpanel fonts-noto-cjk fonts-noto-cjk-extra

(可选)设置为自动

1sudo apt-mark auto fcitx-module-cloudpinyin fcitx-ui-qimpanel fonts-noto-cjk fonts-noto-cjk-extra 小结

至此问题已经解决,下面我们验证一下,如下面所示,通过locale命令时,已不再提示“No such file or directory”

1locale 12345678910111213141516# localeLANG=zh_CN.UTF-8LANGUAGE=zh_CN:zh:en_US:enLC_CTYPE=zh_CN.UTF-8LC_NUMERIC=zh_CN.UTF-8LC_TIME=zh_CN.UTF-8LC_COLLATE="zh_CN.UTF-8"LC_MONETARY=zh_CN.UTF-8LC_MESSAGES="zh_CN.UTF-8"LC_PAPER=zh_CN.UTF-8LC_NAME=zh_CN.UTF-8LC_ADDRESS=zh_CN.UTF-8LC_TELEPHONE=zh_CN.UTF-8LC_MEASUREMENT=zh_CN.UTF-8LC_IDENTIFICATION=zh_CN.UTF-8LC_ALL= 1locale -a 123456# locale -aCC.UTF-8en_US.utf8POSIXzh_CN.utf8

注意:其他的Linux发行版如debian可能还需要这么做:

1Vi /etc/sysconfig/i18n 1LANG="zh_CN.UTF-8"

17264525-cee156fb03aec322.png.webp

重启系统

1sudo /sbin/shutdown -r now LC_ALL:测试和排除问题

注意: 不推荐使用 export LC_ALL 来覆盖所有 locale 设置,LC_ALL 应该仅用于诊断调试,全局设置 LC_ALL 会为诊断语言设置问题带来不必要的困难。

这个变量的值会覆盖掉 LANG 和所有 LC_* 变量的值,无论它们是否设置。

只有 LC_ALL 不能出现在全局配置文件文件中:它只能为了测试和排除问题而设置。

其中LC_ALL应当作为临时修改,即在运行程序之前手动指定环境变量,

很明显,LC_ALL变量应当且只应当在程序出现问题后,测试和排除问题时临时设置环境变量

在运行程序之前,在命令行输入

1export LC_ALL="zh_CN.UTF-8" locale-gen文件详解

输入命令查找locale-gen的目录

1whereis locale-gen

Pasted%20image%2020220520172120.png

注意到/usr/sbin/locale-gen,打开这个文件

1sudo vim /usr/sbin/locale-gen

注意到这几个配置文件

Pasted%20image%2020220520172234.png

12345LOCALEGEN=/etc/locale.genLOCALES=/usr/share/i18n/localesUSER_LOCALES=/usr/local/share/i18n/localesSUPPORTED=/var/lib/locales/supported.dALIASES=/usr/share/locale/locale.alias

解释:

/etc/locale.gen是由命令dpkg-reconfigure locales自动生成的配置文件,在ubuntu/debian系中可以删除,然后使用命令dpkg-reconfigure locales重新生成即可 /var/lib/locales/supported.d,自定义要生成的语言列表,在supported.d可以新建任意的文件如vim hans,然后写上要生成的文件列表如zh_CN.UTF-8 UTF-8 /usr/share/i18n/locales,核心配置文件,将字符串zh_CN与对应的编码对应起来,不要去动它 /usr/local/share/i18n/locales,作用同/usr/share/i18n/locales,不要去动它 /usr/share/locale/locale.alias,为语言添加别名,没有需要的话,不要去动它 /var/lib/locales/supported.d/

查看/var/lib/locales/supported.d/

1ll /var/lib/locales/supported.d/

该目录包含language-pack软件包提供的locale.gen代码段。

这个目录下的所有文件,应当是由language-pack软件包自动生成的,不建议手动添加新文件

language-pack例如前文的language-pack-zh-hans

以ubuntu为例,里面有一个文件zh-hans

尝试输出这个文件到终端

1bat zh-hans

输出如下:

1234567# bat zh-hans───────┬────────────────────────────────────────────────────────────────────────────────────────────────────── │ File: zh-hans───────┼────────────────────────────────────────────────────────────────────────────────────────────────────── 1 │ zh_CN.UTF-8 UTF-8 2 │ zh_SG.UTF-8 UTF-8───────┴────────────────────────────────────────────────────────────────

我这包含zh_CN.UTF-8 UTF-8和zh_SG.UTF-8 UTF-8。

之后的操作

见wsl2设置中文语言-更换中文字体-进行中文优化

参考、引用、致谢

如何在 Linux 上管理字体 - 知乎 (zhihu.com)

优化中文显示 · GitBook (thoughtworks.cn)

使用X11 Forwarding在WSL 2中运行GUI程序 | ddadaal.me

(23条消息) linux 字体库配置,添加自定义字体库_Ternence_Hsu的博客-CSDN博客_font.conf

Ubuntu 16.04安装字体管理工具 - EasonJim - 博客园 (cnblogs.com)

https://linux.cn/article-4732-1-rss.html

http://www.linuxidc.com/Linux/2014-05/101191.htm

http://blog.csdn.net/tao_627/article/details/45114827

(23条消息) ubuntu server 安装相应图形化界面程序_Blithe的博客-CSDN博客

linux中文乱码问题解决 - 简书 (jianshu.com)

在Windows默认缩放比例和WSL GUI应用程序(HiDPI)上使用模糊字体 | 码农俱乐部 - Golang中国 - Go语言中文社区 (mlog.club)

如何优雅的在Windows 10上装X [Lainme’s Blog]

在 WSL 上配置輸入法 | Patrick Wu’s Space

Ubuntu安装搜狗输入法无法使用 - OSCHINA - 中文开源技术交流社区

Ubuntu 14.04 安装小企鹅输入法 Fcitx - linux_magnetic_storm - OSCHINA - 中文开源技术交流社区

(24条消息) Ubuntu 一键安装搜狗输入法!全网唯一!_Linux猿的博客-CSDN博客

(24条消息) locale的设定中LANG、LC_ALL、LANGUAGE_天下皆白_唯我独黑的博客-CSDN博客

深度学习环境配置 Windows+WSL2 - 知乎 (zhihu.com)

apt - 将安装软件包标记为自动安装 - 询问 Ubuntu (askubuntu.com)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3