文件系统(2)——Ubuntu、buildroot通过locale配置中文字符集

39 篇文章 13 订阅
4 篇文章 0 订阅
参考链接:
https://blog.csdn.net/weixin_33671935/article/details/93224677

Ubuntu

RK3399 Ubuntu系统默认是不支持中文显示,命令行中文输入、中文显示都是不支持的,ls等命令使用tab双击补齐显示的话可以显示中文。
处理的方法相对简单,安装locales区域设置工具,配置默认语言环境为zh_CN.UTF-8即可。

sudo apt-get install locales			//安装locales工具

sudo dpkg-reconfigure locales			//配置locales,选择要安装的区域和默认的区域

部分安装的区域设置
en_US.UTF-8
zh_CN.GB2312
zh_CN.GB18030
zh_CN.GBK
zh_CN.UTF-8
zh_HK.UTF-8

sudo vi /etc/default/locale				//修改locales默认配置

locales相关内容

Locales are a framework to switch between multiple languages and allow 
users to use their language, country, characters, collation order, etc. 
语言环境是一个在多种语言之间切换的框架,允许用户使用他们的语言、国家、字符、排序规则等。

Please choose which locales to generate. UTF-8 locales should be chosen 
by default, particularly for new installations. Other character sets may be 
useful for backwards compatibility with older systems and software.
请选择要生成的语言环境。 默认情况下应选择 UTF-8 语言环境,特别是对于新的安装。 
其他字符集可能有助于向后兼容旧系统和软件。

/etc/default/locale储存locale的默认配置,locale把按照所涉及到的文化传统的各个方面分成12个大类,这12个大类分别是:

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)
11、默认纸张尺寸大小(LC_PAPER)
12、对locale自身包含信息的概述(LC_IDENTIFICATION)。
forlinx@forlinx:~$ locale
LANG=zh_CN.UTF-8
LANGUAGE=
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=

buildroot

RK3399 buildroot文件系统默认配置了中文显示的环境变量

[root@rk3399:/]# cat /etc/profile.d/env.sh 
#!/bin/sh 

export LC_ALL='zh_CN.utf8'
export QT_QPA_PLATFORM=wayland
export WESTON_DRM_MIRROR=1
export WESTON_DRM_KEEP_RATIO=1
export QT_GSTREAMER_WINDOW_VIDEOSINK=waylandsink
mkdir -p /tmp/.xdg &&  chmod 0700 /tmp/.xdg
export XDG_RUNTIME_DIR=/tmp/.xdg
export PATH=$PATH:/usr/bin/cmd
export QT_QPA_GENERIC_PLUGINS=evdevkeyboard

支持中文输入、中文显示:

[root@rk3399:/]# touch 我.txt
[root@rk3399:/]# echo 我爱中国 > 我.txt
[root@rk3399:/]# cat 我.txt
我爱中国

但是存在bug,比如ls使用tab双击补齐显示的话可以显示中文,但是ls回车显示乱码:

[root@rk3399:/]# ls /media/sda1/
 LED.pdf
'System Volume Information'
''$'\345\271\263\345\217\260\347\273\264\346\212\244\350\256\241\345\210\222''.txt'

[root@rk3399:/]# vi 我.txt
我爱中[2;1H~

此外部分情况下输入中文存在问题,比如在双引号中输入中文不会正常显示。

命令行中文显示修复

TBC

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值