VIM相关问题
最近因为重装了下Ubuntu14.04,然后所有的东西都重新弄了下,记录下过程
一.VIM安装
对于Ubuntu而言,可以直接使用下述指令安装,不过版本略旧,因此我采用自己编译源码的方式安装
sudo apt-get install vim
1. vim下载
下载地址为vim.org,选择一个比较新的版本下载下来即可
2. vim编译和安装
此条指令主要是为了方便后面编译vim做准备
./configure --enable-pythoninterp=yes --prefix=/usr/local
make
sudo make install
其中--enable-pythoninterp=yes
主要是为了对vim启用python支持,方便后面YouCompleteMe的安装,而--prefix=/usr/local
则是安装地址,我将其安装在/usr/local下面。
3. 检查vim版本
vim --version
查看python前面是否具有“+”,如果有,便可以安装YouCompleteMe了,具体步骤可以查看我的这篇博文Ubuntu 14.04下vim安装YouCompleMe插件
二.VIM插入模式下Delete失灵的问题
出现这个问题,基本是因为vim使用了compatible模式以便兼容vi,或者把backspace变量设置为空了。
解决办法也很简单,修改.vimrc
文件即可:
set nocompatible
set backspace=2
这里注释下:
set backspace=0 等价于 set backspace=
set backspace=1 等价于 set backspace=indent,eol
set backspace=2 等价于 set backspace=indent,eol,start
而indent;eol;start三者的作用分别为
indent:如果使用了自动缩进,想用退格键将字段缩进的删掉,必须设置这个选项,否则不响应。
eol:如果插入模式下在行开头,想通过退格键合并两行,需要设置此项
start:要想删除此次插入前的输入,需设置此项。
vim打开中文乱码
修改.vimrc
文件,添加下面指令。
set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1
如果打开之后还是遇到了乱码,那么就需要手动指定编码了。注意,网络上很多地方提到的设置“fileencoding”(注意不带s)的方法是错误的。当你打开一个文件以后,vim就已经选定好了编码并且认为就是这个编码了,set fileencoding
只是修改你希望这个文件以什么编码存在,相当于是设置保存时的编码——一旦设置了不同的fileencoding之后这个文件就变成modified了,需要保存(编码变了)。
正确的做法是在打开文件时使用++enc参数:
:e ++enc=someencoding somefile