Ubuntu14.04中文乱码以及搜狗输入法无法正常输出中文的问题

###Ubuntu14.04中文乱码以及搜狗输入法无法正常输出中文的问题
  
  前段时间由于ia32-lib的依赖问题安装不上,怒了就被备份下当前系统,然后重装下Ubuntu, 恢复config都很顺利,但是遇到了两个问题:
  1. 仅是终端显示中文乱码,以及无法输入中文到终端上,vim, FileManager都显示正常。
  2. 安装fcitx框架后,安装搜狗deb,无法输入中文,搜狗输入法选中情况下,只能输出英文。
  这两个问题很困扰着我,网络上找了不少方法,修改各种东西,就是没有弄好,后面仔细看了下locale相关的东西,就是一些用户的配置,所以我采用以下这种方法将这两个问题解决了。
  所有乱码分为两类:1. 字库没有安装,没有在Languages里面把中文选进去; 2. locale的设置有问题。
  一、所有的支持的语言在/var/lib/locales/supported.d/local里面,如果没有,需要通过locale相关工具安装对应的语言,目前我的语言支持如下:
zh_CN.UTF-8 UTF-8
en_US.UTF-8 UTF-8
en_US ISO-8859-1
hu_HU ISO-8859-2
hu_HU.UTF-8 UTF-8
zh_CN.GB18030 GB18030
zh_CN.GBK GBK

二、需要配置系统的所要展示的语言,以及输入法的语言(之前不清楚搜狗输入法不能输出中文竟然还跟locale这个有关!)
出现的问题:1. 终端中文乱码; 2. 搜狗输入法只能输出英文。
更改了很多次,都是更改在/etc/profile或者 /etc/default/locale 或/etc/environment, 但是更改了下没有效,想了想,都是更改环境变量,那么我就在基于当前用户上,直接更改 ~/.profile里面的内容, 在最后端输入:
export LANG=en_US:zh_CN.UTF-8
export LANGUAGE=en_US
export LC_CTYPE=en_US:en:zh_CN.UTF-8
export LC_NUMERIC=en_US
export LC_ALL=en_US.UTF-8

然后logout注销重新登陆,输入locale后可以看到如下,此时搜狗输入中文和终端显示中文都正常啦!

LANG=en_US:zh_CN.UTF-8
LANGUAGE=en_US
LC_CTYPE=“en_US.UTF-8”
LC_NUMERIC=“en_US.UTF-8”
LC_TIME=“en_US.UTF-8”
LC_COLLATE=“en_US.UTF-8”
LC_MONETARY=“en_US.UTF-8”
LC_MESSAGES=“en_US.UTF-8”
LC_PAPER=“en_US.UTF-8”
LC_NAME=“en_US.UTF-8”
LC_ADDRESS=“en_US.UTF-8”
LC_TELEPHONE=“en_US.UTF-8”
LC_MEASUREMENT=“en_US.UTF-8”
LC_IDENTIFICATION=“en_US.UTF-8”
LC_ALL=en_US.UTF-8

 具体详细的几个参数,请参考:http://www.cnblogs.com/xlmeng1988/archive/2013/01/16/locale.html

更多精彩,详见个人主页

原创文章,欢迎转载,
转载请注明:https://ifish.site/linux_ubuntu_chinese_messy.html
CSDN http://blog.csdn.net/jjzhoujun2010
作者:Dream Fly

你可能感兴趣的:(电脑操作,嵌入式Linux学习)