在vimrc设置中, 可以简写:
file = f
encoding = enc
fileencodings = fencs
fileencoding = fenc

主要有四个编码, 要了解它们的含义:
encoding 是vim内部,vim程序本身使用的编码, 用这个编码字符集来显示菜单 信息 buffer等, 这个通常要设置成latin1 utf8 , 如果不设置通常是跟系统自身的编码相同, 实际上, 系统自身的编码应该照顾多方面的问题, 还真的应该设置成utf-8

fenc是指当前正在编辑的文件采用的编码方式, 这个也用来保存文件时的编码, 可以用set fenc=...来改变

fencs是vim打开文件时, 用来“探测”“猜测”文件编码的顺序... 这个有很重要的一个问题,就是 最后的那个编码要是 latin1, 不能把gb2312 gbk 等中文编码放在最后, 放在latin1后面, 这个就不能正确探测.?? 估计是一旦用latin1 来探测了, 如果还是不能正确探测(解析分析) 就不再使用后面的编码来猜测了...

参考这篇文章: http://www.cnblogs.com/hopeworld/archive/2011/04/20/2022331.html

摘录: 那么如果我新建文件默认想让它是gb18030编码怎么 办?一个方法是每次新建文件后都:set fenc=gb18030一下,不过我发现在vimrc里面设置fenc=gb18030也能达到这个效果

如何理解记忆这几个encoding?

  1. 如果是单纯的encoding, 则表示vim 这个软件 自己内部的编码方式
  2. 其他是三个 ????-encoding, 分别表示在不同情况 下的 编码
  3. 首先, 排除一个: fileencodings , 因为是加了 -s的 , 表示他是复数形式, 是多个编码的 集合 什么情况下才会用到多个编码呢, 很显然, 就是设置vim打开某个文件时 用来探测 测试的代码集.

  4. fileencoding, 自然就是当前正在编辑的文件使用/将要保存 时使用的编码方式
  5. termencoding, 就很明显了, 从编码名称也可以看出来 是在使用一些终端工具, 如secureCRt等登陆到linux进行vim操作时的编码.

上面提到了, 在设置fileencodings的时候, 要把utf-8放在最开始, 把 latin1 放在最后面结束的位置.

再说vim 乱码问题的更多相关文章

  1. VIM 乱码终极解决

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

  2. vim 乱码问题的方法参考

    linux 中设置当前用户的系统默认编码为 UTF-8 格式解决 vim 乱码问题的方法参考  任侠  2013-05-02 11:58  电脑基础  抢沙发  13,732 views  在使用 l ...

  3. centos7 字体库。vim乱码

    centos7 字体库.vim乱码 windows上传文件到centos,需要先使用dos2unix命令进行格式转换 先查看/usr/share下有没有这两个文件 没有的话yum -y install ...

  4. vim乱码问题

    有的时候使用gvim查看文本文件时,出现乱码,现在来确定下原因. 经过我的查资料,发现gvim里有几个关于编码设置的变量:encoding.fileencoding.fileencodings.ter ...

  5. 3、树莓派的配置:改静态IP、连接ssh、安装中文字体、安装谷歌输入法、增加USB电流、修改触摸屏分辨率、扩展sd卡空间、修复vi和vim乱码问题、安装配置远程桌面vnc

    本博文仅作本人操作过程的记录,留作备忘.自强不息 QQ1222698 1.连接上HDMI线,插上触摸屏,插上键盘,鼠标,网线,启动.系统正常启动,但是一直闪烁,不停的黑屏,是由于触摸屏的usb口供电不 ...

  6. CentOS 解决vim乱码问题

    今天在服务器安装了任务调度工具(TaskCTL) 发现是乱码的,看了官方文档说的办法也没有处理成功,可能由于他们已经有一段时间没有维护这个版本了.(以前提供的免费版本) 后来发现CentOS的Vim的 ...

  7. Ubuntu 16.04系统下解决Vim乱码问题

    方法: 打开终端输入:vim /etc/vim/vimrc,进入编辑模式,加入如下配置: set fileencodings=utf-8,gb2312,gbk,gb18030 set termenco ...

  8. 解决 vim 乱码

    打开vim安装目录下的_vimrc,在头部加上几句配置语句就能搞定: //设置默认编码 set encoding=utf-8 set fileencodings=utf-8,chinese,latin ...

  9. [vim]乱码问题

    在vim输入中文乱码 1. 检查系统是否支持中文 locale -a 没有中文支持 安装中文包 apt-get install language-pack-zh-hans -y 2.这样可以输入中文了 ...

  10. vim乱码的解决

    解决vim文件乱码,打开文件乱码,菜单,提示信息乱码: 有四个跟字符编码方式有关的选项,encoding.fileencoding.fileencodings.termencoding 在linux中 ...

随机推荐

  1. 网络 osi七层协议

    一 互联网的本质 咱们先不说互联网是如何通信的(发送数据,文件等),先用一个经典的例子,给大家说明什么是互联网通信. 现在追溯到八九十年代,当时电话刚刚兴起,还没有手机的概念,只是有线电话,那么此时你 ...

  2. 工作笔记之:如何在eclipse安装CVS插件?找了很久的,自己总结一下

    (1)在主目录里“help”→Install New Software.....→The Eclipse Project Updates - http://download.eclipse.org/e ...

  3. 1、Java调用C语言(本地法)

    这是一个比较麻烦的方法..   一.首先,你要先安装一个VC,我的装在了D:\software\C++\Microsoft Visual Studio   二.我的jdk安装目录是D:\Program ...

  4. django登录注册验证之密码包含特殊字符,确认密码一致实现,Form验证

    Form验证的原理 首先用户在注册界面提交表单,后台收到表单之后通过request.post取到数据然后传入已经写好的Form类 执行obj.is_valid()这里的obj为Form的实例,在For ...

  5. sqlserver 创建 aspstate的方法

    找到路径 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 不同版本找不同版本的路径 在命令行执行命令 aspnet_regsql.exe -ssadd -s ...

  6. vue项目1-pizza点餐系统5-全局守卫

    一.导航守卫描述 当问我们点击主页.菜单等非登陆和注册按钮都会提示先登陆然后跳转到登陆界面. 1.在main.js中引入全局守卫 //全局守卫 //to是要进入那个路由,from是从那个路由出来,ne ...

  7. CSS中:first-child伪类

    使用 :first-child 伪类来选择作为某个元素的第一个子元素.这个特定伪类很容易遭到误解,所以有必要举例来说明.考虑以下标记: 如下: html: <div> <p>T ...

  8. vue elementui 切换语言

    1.安装插件:npm install vue-i18n  --save 2.src下新建i18n文件夹, i18n文件夹下创建langs文件夹和i18n.js文件 langs文件夹下创建cn.js; ...

  9. 内置的configparser模块和hashlib模块

    #configparser模块:配置解析模块 import configparser config = configparser.ConfigParser() #创建一个配置解析对象 config[& ...

  10. caffe与tensorflow中的pooling

    两个框架对poolin的处理方式不同,这就导致在转模型时容易踩雷 tensorflow通过“VALID”和“SAME”参数来控制 caffe 通过pad值来控制 参考:https://blog.csd ...