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. 二、Android应用的界面编程(二)布局管理器

    一.线性布局所有布局都可以作为容器类使用,因此可以调用多个重载的addView()向布局管理器中添加组件.实际上,我们完全可以用一个布局管理器嵌套到其他布局管理器中---因为布局管理器也继承了View ...

  2. jqGrid单元格编辑配置,事件及方法

    转自 http://blog.csdn.net/xueshijun666/article/details/18151055 // var ret = $("#in_store_list_de ...

  3. 编写自己的ls命令

    ····要编写ls命令,首先要了解它能做什么,完成了什么工作,是如何完成这些工作的····  一.ls命令能做什么? 我们在命令行输入ls,ls默认找出当前目录中所有文件的文件名,并且按照字典序排序后 ...

  4. 【BZOJ2325】[ZJOI2011]道馆之战 线段树+树链剖分

    [BZOJ2325][ZJOI2011]道馆之战 Description 口袋妖怪(又名神奇宝贝或宠物小精灵)红/蓝/绿宝石中的水系道馆需要经过三个冰地才能到达馆主的面前,冰地中的每一个冰块都只能经过 ...

  5. 解决Vue的表格中,expand只有某些行需要展开的问题。

    element UI里的表格里,type="expand"的话,所有行都有展开的选项,然而实际中有些行根据判断不需要展开,而element目前对这个问题还不是很友好,现在有个可以通 ...

  6. Js中localStorage

    优点: 1.拓展了cookie的4K限制 2.将数据直接存储到本地,相当于一个5M的前端页面数据库 不足: 1.浏览器的大小不统一 2.IE8以上的IE版本才支持 3.localStorage的值类型 ...

  7. studio显示Surface: getSlotFromBufferLocked: unknown buffer: 0xa2a58be0

    根据查询外网资料来看,出现这个错误的原因大致是换个模拟器或者物理机就可以了. 因为我使用的是安卓6.0,貌似都会出现这类的问题. 但是不影响程序运行.

  8. ABAP自动生成程序

    QID            用表 APQD 里的ID REPORT    Z001 去年6月花了一周的成果,可是玩了一周就没玩了, 现在想来: 研究下程序共性 ,这个总结的多,一定会提高效率 这个用 ...

  9. Mac开发环境配置 就喜欢折腾

    暑假放假,开始用自己的电脑配置开发环境进行学习. 虚拟机安装VMware tools也遇到一些问题.折腾之后解决,遇到各种问题,谷歌后都能解决. 折腾了几天虚拟机下的Ubuntu,发现mac带虚拟机太 ...

  10. re模块(Python中的正则表达式)

    re模块 正则表达式本身是一种小型的.高度专业化的编程语言,而在python中,通过内嵌集成re模块,程序媛们可以直接调用来实现正则匹配.正则表达式模式被编译成一系列的字节码,然后由用C编写的匹配引擎 ...