英文ubuntu文本文件默认编码是utf-8,windows下是gbk,所以产生乱码问题。

1.前言

  运行命令查看系统编码

  $locale

  结果如下:

  LANG=en_US.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=

修改系统编码

  http://www.cnblogs.com/R-zqiang/archive/2012/11/23/2785125.html

不修改编码的方法如下:

  转自 http://forum.ubuntu.org.cn/viewtopic.php?f=8&t=267255

2.ibus输入法

  Ubuntu系统安装后已经自带了ibus输入法,在英语环境下默认不启动。
  配置ibus自动启动可以在ubuntu系统菜单上选择System --- Preferences --- Startup Applications,在该窗口中增加一个程序:

 Name: ibus-daemon
 Command: ibus-daemon -d -x -r

  ibus默认提供的中文输入法比较弱智,需要额外安装ibus-pinyin,命令如下:

  sudo apt-get install ibus-pinyin

  这时,还需要将ibus-pinyin输入法启动。在ubuntu系统菜单上选择System --- Preferences --- IBus Preferences,在Input Method页中的“Select an input method”下拉框中选择增加Chinese – Pinyin,就是图标中有个一个大大的“拼”字的那一个,然后点击Add按钮,最后通过Up按钮将该输入法移动到最上面。
  ibus输入法总体来说不错,但是在我的环境下发现无法在部分Java程序中调出来,例如Netbeans、OpenProj。

3.fcitx输入法

  由于ibus的缺陷,所以我尝试了fcitx,使用下来也非常不错,而且可以在Java程序中正常使用,只是在这种情况下光标跟随有些问题,输入界面会停留在屏幕最下端,但是可以接受,比起ibus不能使用要好多了。

3.1安装fcitx

  sudo apt-get install fcitx

3.2启动fcitx

  im-switch -s fcitx

  注销后重新登录,fcitx就会生效。
  如果需要切换回ibus,可以运行im-switch -s ibus,然后注销,重新登录。
  fcitx同样可以通过Ctrl + 空格调出,这时会发现fcitx显示的中文是方框,因此需要修改fcitx的配置。Fcitx的配置文件在~/.fcitx/config,该文件为GBK编码,在Ubuntu下显示不正常,可以通过如下方式操作:

  cd ~/.fcitx
  iconv -f gbk -t utf8 config > config.tmp

  编辑config.tmp文件:
  显示字体(中)=WenQuanYi Micro Hei
  显示字体大小=10
  使用粗体=0
  保存退出,然后运行命令:

  iconv -f utf8 -t gbk config.tmp > config

  注销后重新登录,fcitx显示正常。

4.网页上Flash中的中文显示为方框的解决办法

  编辑/etc/fonts/conf.d/49-sansserif.conf文件,作如下修改:

   <edit name="family" mode="append_last">
  <string>WenQuanYi Micro Hei</string>
  </edit>

5.Java程序部分中文显示为方框的解决办法

  在$JAVA_HOME/jre/lib/fonts目录下建立fallback目录,将中文字体文件复制(或link)到fallback目录。

  sudo mkdir $JAVA_HOME/jre/lib/fonts/fallback
  sudo ln /usr/share/fonts/truetype/wqy/wqy-microhei.ttc $JAVA_HOME/jre/lib/fonts/fallback/

6.转换文件内容编码

  Windows下生成的纯文本文件,其中文编码为GBK,在Ubuntu下显示为乱码,可以使用iconv命令进行转换:

  $iconv -f gbk -t utf8 source_file > target_file

7.转换文件名编码

  Windows下压缩的zip文件,在Ubuntu下解开时,中文文件名会显示乱码,可以用convmv解决。
  安装convmv:

  $sudo apt-get install convmv

  转换文件或目录:

  $convmv -f gbk -t utf8 -r --notest *

8.解压zip文件乱码

  在Ubuntu下使用unzip解压Widnows环境下生成的zip文件,会发生文件名或者目录名乱码现象,解决办法是使用7-zip和convmv。
  安装7-zip和convmv:

  $sudo apt-get install convmv p7zip-full

  解压zip文件:

  LANG=C 7z e xxx.zip_file
  convmv -f gbk -t utf8 -r --notest *

9.解压rar文件乱码

  在ubuntu下解压Windows环境下生成的rar文件,同样会碰到中文乱码问题,例如使用7z来解压。
  解决办法是使用unrar来解压。
  安装unrar:

  $sudo apt-get install unrar

10.PDF中文乱码

  PDF文件中的中文显示出乱码的情况下,可以安装poppler-data来解决:

  $sudo apt-get install poppler-data

11.字体安装

  • 安装微软字体

    $sudo apt-get install msttcorefonts
  • 安装msttcorefonts后,可用下面命令删除它。
    $sudo apt-get autoremove ttf-mscorefonts-installer
  • 手工安装其它字体,在/usr/share/fonts目录下建立字体目录,例如:/usr/share/fonts/myfonts,并将字体文件复制或LINK到该目录。

    cd /usr/share/fonts/myfonts/
    sudo mkfontscale
    sudo mkfontdir

  * 在不执行以下命令的情况下,结果正常:

    sudo fc-cache -f -v

12.默认字体配置

  sudo cp /etc/fonts/conf.avail/69-language-selector-zh-cn.conf /etc/fonts/conf.d
  sudo vi /etc/fonts/conf.d/69-language-selector-zh-cn.conf

13.mint安装中文输入法后字体发虚

Linux mint 开始菜单等字体不清晰

在软件管理器中删除以下两个字体即可
Fonts-arphic-ukai
Fonts-arphic-uming

以上软件包也可用命令删除

=============================================================================

LinuxMint 19字体模糊发虚问题
sudo apt remove fonts-wqy-microhei
sudo apt remove fonts-droid-fallback
注销或重启,使用同样的软件界面来比较,这下默认使用的就是思源黑体了,效果比较清晰了,问题解决

在 LinuxMint 19 里解决中文字体模糊发虚的问题,只要卸载文泉驿微米黑和 fonts-droid-fallback 字体即可

英文ubuntu中的乱码,输入法问题 、mint字体发虚的更多相关文章

  1. 英文ubuntu中的乱码,输入法问题 集合

    英文ubuntu文本文件默认编码是utf-8,windows下是gbk,所以产生乱码问题. 1.前言 运行命令查看系统编码 $locale 结果如下: LANG=en_US.UTF-8 LANGUAG ...

  2. 在Ubuntu中设置中文输入法

    在Ubuntu中设置中文输入法 */--> pre { background-color: #2f4f4f;line-height: 1.6; FONT: 10.5pt Consola,&quo ...

  3. 如何在Ubuntu中安装中文输入法

    在使用ubuntu系统时,有的时候总觉得英文输入法不方便操作,总希望能有中文输入法可以辅助操作,那怎样才能在ubuntu中安装中文输入法呢?下面有一种简单的方法可以安装中文输入法. 如何在ubuntu ...

  4. 如何在ubuntu中安装中文输入法?

    如何在ubuntu中安装中文输入法  在桌面右上角设置图标中找到“System Setting”,双击打开. 在打开的窗口里找到“Language Support”,双击打开.  可能打开会说没有安装 ...

  5. 英文操作系统中中文乱码(SQL中 NVARCHAR 和 VARCHAR区别)

        varchar在SQL Server中是采用单字节来存储数据的,nvarchar是使用Unico来存储数据的.中文字符存储到SQL Server中会保存为两个字节(一般采用Unico编码),英 ...

  6. 如何在Ubuntu中添加中文输入法

    首先打开终端,输入以下命令 打开终端输入以下命令 弹出设置IBus首选项对话框,单击输入法文本框,再单击添加按钮,选中汉语中的拼音,单击添加,设置完毕. 最后单击输入法图标的选项中的首选项中的拼音模式 ...

  7. [转]Ubuntu 12.04中文输入法的安装

    Ubuntu上的输入法主要有小小输入平台(支持拼音/二笔/五笔等),Fcitx,Ibus,Scim等.其中Scim和Ibus是输入法框架. 在Ubuntu的中文系统中自带了中文输入法,通过Ctrl+S ...

  8. Ubuntu 12.04中文输入法的安装

    Ubuntu 12.04中文输入法的安装   Ubuntu上的输入法主要有小小输入平台(支持拼音/二笔/五笔等),Fcitx,Ibus,Scim等.其中Scim和Ibus是输入法框架. 在Ubuntu ...

  9. [置顶] Ubuntu 12.04中文输入法的安装

    Ubuntu 12.04中文输入法的安装 Ubuntu上的输入法主要有小小输入平台(支持拼音/二笔/五笔等),Fcitx,Ibus,Scim等.其中Scim和Ibus是输入法框架. 在Ubuntu的中 ...

随机推荐

  1. 使用Android Studio创建模拟器,安装配置Android SDK

    Android Studio 一个写安卓APP应用的代码编辑器之类的?嗯,应该是... 这里只是需要用到里面的AVD Manager 创建安卓模拟器(也可以用mumu类的安卓模拟器):SDK Mana ...

  2. 2 DC电参数测试 (1)

    基本常识: (1)Hot switch好的程序应避免使用热切换(这里热的含义类似于热插拔的“热“),热切换是指带点操作,有电流的情况下断开开关或闭合开关的瞬间,有电流通过,这会减少开关的寿命甚至直接损 ...

  3. Windows包管理工具-Chocolatey

    Chocolatey是一款专为Windows系统开发的.基于NuGet的包管理器工具,类似于Node.js的npm,MacOS的 brew,Ubuntu的 apt-get,简称为 choco. Cho ...

  4. Linux用C语言模拟‘ls‘命令

    原理 在linux下使用C语言,通过调用Linux系统的目录访问API来实现一个类似于ls命令功能的小程序,主要是可以练习程序对命令的解析和目录API函数的使用. 实现代码 #include < ...

  5. 027_go语言中的通道选择器

    代码演示 package main import "fmt" import "time" func main() { c1 := make(chan strin ...

  6. Android Studio--家庭记账本(五)

    想到每次删除之后将表单自动初始化,却发现会导致除去已经删除的不在出现在表单上,数据库中剩余的数据还会再次出现在表单中.导致表单上的数据越来越多.后来又想到,当我实现删除之后,把表单采用全部清除,再重新 ...

  7. Python玩转各种多媒体,视频、音频到图片

    我们经常会遇到一些对于多媒体文件修改的操作,像是对视频文件的操作:视频剪辑.字幕编辑.分离音频.视频音频混流等.又比如对音频文件的操作:音频剪辑,音频格式转换.再比如我们最常用的图片文件,格式转换.各 ...

  8. Python 5 行代码的神奇操作

    Python 语言实现功能直接了当,简明扼要,今天咱们就来一起看看 Python 5 行代码的神奇操作! 1.古典兔子问题 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语 ...

  9. Python 面向对象之高级编程

    7.面向对象高级编程 7.1使用__slots__ python动态语言,new 对象后绑定属性和方法 Tip:给一个实例绑定的方法,对其他对象无效.可以通过对class绑定后,所有对象可以调用该方法 ...

  10. 谈谈对Java平台的理解

    从我第一次接触Java的时候,老师就说"Write once,run anywhere",这句话虽然听起来有一点太过于形式主义,但是也突出了它的特点.那么,现在的我们应该总结一下和 ...