linux 中设置当前用户的系统默认编码为 UTF-8 格式解决 vim 乱码问题的方法参考

 任侠  2013-05-02 11:58  电脑基础  抢沙发  13,732 views 

在使用 linux 的终端工具 SecureCRT 或 Xshell 时,当SVN 提交输入日志为中文时提示失败无法提交

svn ci -m ” “

即当两个引号之间输入中文即提交失败或根本无法输入中文

根据提示大概意思是,提交的字符不是 UTF-8 格式。

那么如何解决呢?参考步骤如下:

1. 首先保证 SecureCRT 或 Xshell 等终端工具是 UTF8 格式的。以 SecureCRT 为例,设置方法为:选项-会话选项-终端-外观的字符编码,选择 utf-8

2. 在 /home/yourname 下面打开/建立一个文件 .vimrc

$ vim ~/.vimrc

在该文件底部增加如下代码

set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
set termencoding=utf-8
set encoding=utf-8
set fileencodings=ucs-bom,utf-8,cp936
set fileencoding=utf-8
set nohls
set nu
filetype on
syntax on
set tabstop=4
set shiftwidth=4
set autoindent
set smartindent
set showmatch
set ruler

注释参考:

如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,你可以在 ~/.vimrc 文件中添加以下内容

set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936

这样,就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件),其实就是依照 fileencodings 提供的编码列表尝试,如果没有找到合适的编码,就用 latin-1(ASCII) 编码打开。

3. 然后执行如下命令

$ export LANG=zh_CN.UTF-8

如果想在 SSH 客户端启动的时即执行export LANG=zh_CN.UTF-8,可在/home/yourname 下的 .bash_profile 文件末尾增加该句命令

$ vim ~/.bash_profile

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

# User specific environment and startup programs

# 有一些实用工具虽然位于 /usr/sbin or /sbin,但实际上普通用户也可以用,比如 ifconfig。
export PATH=/usr/sbin:/sbin:$PATH:.

if [ -d ~/bin ] ; then
PATH=~/bin:”${PATH}”
fi

export PATH
unset USERNAME

# EDITOR 是非常古老的环境变量了,一些软件需要通过它来决定使用何种编辑器编辑资料
export EDITOR=vim

# time 命令的输出格式有时候需要调整一下
export TIME=’\nreal\t%es\nuser\t%Us\nsys\t%Ss’

# 关闭终端的 Ctrl+s Ctrl+q 流控功能。有时候不小心按了 Ctrl+s 会导致终端假死,其实是流控了。
stty -ixoff -ixon

# 如果登录 shell 不是 screen,就自动启动 screen。
ppid=`awk ‘{print $4}’ /proc/$$/stat`
name=`cat /proc/$ppid/cmdline | awk ‘{print $1}’`
if [ $name == ‘sshd:’ -a $COLUMNS -gt 79 ]; then
screen -wipe
exec screen -D -RR
fi
# 设置默认编码为 UTF-8
export LANG=zh_CN.UTF-8

本文固定链接: http://lzw.me/a/linux-vim-set-charset-utf8.html | 志文工作室

vim 乱码问题的方法参考的更多相关文章

  1. win使用telnet到ubuntu下vim显示中文为乱码的解决方法~

    1.几个路径: ubuntu: /etc/default/locale  相当于 centos:/etc/sysconfig/i18n vimrc的路径:① ~/.vimrc    ② /etc/vi ...

  2. (收集)linux环境下乱码的解决方法

    **************************** 就是从数据库中取出来时,在存入linux的文件里时,在字符流时制定编码格式.代码如下: FileOutputStream fos=new Fi ...

  3. 关于php读mysql数据库时出现乱码的解决方法

    关于php读mysql数据库时出现乱码的解决方法 php读mysql时,有以下几个地方涉及到了字符集. 1.建立数据库表时指定数据库表的字符集.例如 create table tablename ( ...

  4. xShell终端中文乱码完全解决方法

    xShell终端中文乱码完全解决方法 xShell(xShell5)以及其他终端中文乱码的原因无非有三种:(1)Linux系统的编码问题:(2)xShell终端的编码问题: (3)两端的语言编码不一致 ...

  5. VIM 乱码终极解决

    原文链接:http://blog.163.com/mageng11@126/blog/static/1408083742012128105645169/ 关于vim乱码,这篇文章讲的很详细,mark一 ...

  6. WINDOWS XP 系统显示乱码的解决方法(修改注册表,使用正常字体)

            一位同事的计算机进入WINDOWS XP系统后,电脑里的所有汉字全部显示乱码,很多办公文档无法打开而影响工作.因为第一次遇到这种问题,当然首先是百度解决了,搜索了相关的信息后找到了答案 ...

  7. mac下MySQL出现乱码的解决方法

    之前写过一篇Linux下MySQL出现乱码的解决方法,本文说下mac下的处理,其实处理方式是一样的,我电脑的mysql版本是5.7.26-log 网上很多帖子都说去/usr/local/mysql/s ...

  8. zabbix监控图形中文乱码的解决方法

    问题描述: 最近搭建了一套zabbix,当我把语言切换到中文的时候,发现监控的图形界面中一些中文参数乱码,但是图形界面在英文环境下完全没有乱码问题.如下图(中文界面): 解决方法: 解决方法有两种,方 ...

  9. linux下打开txt显示乱码的解决方法

    Linux打开txt文件乱码的解决方法   Linux显示在Windows编辑过的中文就会显示乱码是由于两个操作系统使用的编码不同所致.Linux下使用的编码是utf8,而Windows使用的是gb1 ...

随机推荐

  1. python学习【第七篇】python文件操作

    一.文件操作过程 1. 打开文件,得到文件句柄并赋值给一个变量2. 通过句柄对文件进行操作3. 关闭文件 # 1.打开文件,得到文件句柄 f_handle = open('aa.txt', 'r', ...

  2. (八)solr7实现搜索框的自动提示并统计词频

     solr7实现搜索框的自动提示并统计词频 1:用solr 的suggest组件,统计词频相对麻烦. 2:用TermsComponent,自带词频统计功能. Terms组件提供访问索引项的字段和每个词 ...

  3. AngularJS定时器任务

    由于项目需要监测用户在线时长,所以用定时器来实现. /*计算在线时长,一分钟执行一次*/ var stopEvent = $interval(function(){ //每分钟执行一次定时任务 $sc ...

  4. commit Commit changes to stable storage 对变化提交

    Python36\site-packages\pymysql\connections.py # Python implementation of the MySQL client-server pro ...

  5. PHP-Heredoc用法:<<<EOFEOF;

    Heredoc,用来输出大段的HTML和JavaScript <<<EOF后面不能有空格. EOF;末尾的结束符必须靠边,并且前面不能有空格和缩进符. 例如: $mazey=< ...

  6. python问号堂--第二篇

    1.分别书写数字5,10,32,7的二进制表示? 5---0b101      10---0b1010     32---0b100000    7---0b111 以上结果可以bin()来检测 2. ...

  7. 安装nginx包

    1.二进制安装源码包,直接输入yum stall nginx -y就可以 2,后面会涉及路径,所以先查下nginx的路径rpm -ql nginx 3,进入bin目录进行设置 4, 5,查看系统自带的 ...

  8. python构造wireshark可以解析的LTE空口数据

    Wireshark是可以解析LTE的空口数据.但是在wireshark的实现中,这些数据都是被封装到UDP报文中.然后根据wireshark的格式文件对LTE的数据加上头信息.头信息的定义参考附件pa ...

  9. python 里安装 tensorflow 后运行出错的问题解决

    如果出现一下错误: libcublas.so.8.0: cannot open shared object file: No such file or directory 原因是没有 cuda 环境, ...

  10. HTML+CSS理解

    HTML+CSS1.对WEB标准以及W3C的理解与认识标签闭合.标签小写.不乱嵌套.提高搜索机器人搜索几率.使用外 链css和js脚本.结构行为表现的分离.文件下载与页面速度更快.内容能被更多的用户所 ...