vim的安装与配置

本文转载自http://blog.csdn.net/g_brightboy/article/details/14229139#comments

【vim的下载与安装】

1. 在线安装

直接shell中输入如下命令:
[plain] view plain copy
在CODE上查看代码片派生到我的代码片

sudo apt-get install vim (ubuntu)  
yum install vim (redHat/Fedora/CentOS)  

linux会自动检测并下载安装。

2 手动下载编译安装

  截止当前最新版本是7.4(vim-7.4.tar.bz2),可在windows环境下载好,拷贝至linux环境安装,或直接linux命令行下载。这里给出 linux直接下载并编译安装(以下均为shell命令):

1). wget下载
wget ftp://ftp.vim.org/ftp/pub/vim/unix/vim-7.4.tar.bz2
(或用ftp命令登陆ftp://ftp.vim.org,get命令获取)

2). 解压

bunzip2 vim-7.4.tar.bz2

3). 解压

tar xvf vim-7.4.tar

4). 进入vim74(解压后的)目录,执行

./configure --disable-selinux --enable-cscope
(./configure -help 查看后面参数选项的含义)

5). 编译
make

6). 安装
make install

只要不出现error即代表成功安装,也可直接用vim命令来检测,或whatis vim(whereis vim)查看。通常情况下,许多发行版会默认安装vim,则可省略上述步骤。

【vim的初始化配置.vimrc】

1. 存放位置

  linux环境下vim的初始化配置文件为.vimrc, 通常有两个:系统版本和用户版本,前者不同发行版linux会有不同,一般位于/etc/vimrc,是整个系统vim的默认配置;后者位于~/.vimrc,是当前用户的vim配置,会覆盖系统配置。关于vim的其他配置参数文件位于/usr/local/share/vim/下,可进入vim,在命令模式下键入

:version (查看基本配置路径)
:echo VIM:echo HOME(查看具体路径值)
~/.vimrc有时并不存在,此时用户可以建立一个.vimrc,放入主目录以实现自己的vim配置。

2. 主要命令参数
.vimrc通常用于指定vim的编辑参数和外观环境。下面列出常用的命令参数及其含义:

"打开语法高亮
syntax on

"使用配色方案
colorscheme desert

"打开文件类型检测功能
filetype on

"不同文件类型采用不同缩进
filetype indent on

"允许使用插件
filetype plugin on
filetype plugin indent on

"关闭vi模式
set nocp

"与windows共享剪贴板
set clipboard+=unnamed

"取消VI兼容,VI键盘模式不易用
set nocompatible

"显示行号, 或set number
set nu

"历史命令保存行数 
set history=100 

"当文件被外部改变时自动读取
set autoread 

"取消自动备份及产生swp文件
set nobackup
set nowb
set noswapfile

"允许使用鼠标点击定位
set mouse=a

"允许区域选择
set selection=exclusive
set selectmode=mouse,key

"高亮光标所在行
set cursorline

"取消光标闪烁
set novisualbell

"总是显示状态行
set laststatus=2

"状态栏显示当前执行的命令
set showcmd

"标尺功能,显示当前光标所在行列号
set ruler

"设置命令行高度为3
set cmdheight=3

"粘贴时保持格式
set paste

"高亮显示匹配的括号
set showmatch

"在搜索的时候忽略大小写
set ignorecase

"高亮被搜索的句子
set hlsearch

"在搜索时,输入的词句的逐字符高亮(类似firefox的搜索)
set incsearch

"继承前一行的缩进方式,特别适用于多行注释
set autoindent

"为C程序提供自动缩进
set smartindent

"使用C样式的缩进
set cindent

"制表符为4
set tabstop=4

"统一缩进为4
set softtabstop=4
set shiftwidth=4

"允许使用退格键,或set backspace=2
set backspace=eol,start,indent
set whichwrap+=<,>,h,l

"取消换行
set nowrap

"启动的时候不显示那个援助索马里儿童的提示
set shortmess=atI

"在被分割的窗口间显示空白,便于阅读
set fillchars=vert:\ ,stl:\ ,stlnc:\

"光标移动到buffer的顶部和底部时保持3行距离, 或set so=3
set scrolloff=3

"设定默认解码
set fenc=utf-8
set fencs=utf-8,usc-bom,euc-jp,gb18030,gbk,gb2312,cp936

"设定字体
set guifont=Courier_New:h11:cANSI
set guifontwide=新宋体:h11:cGB2312

"设定编码
set enc=utf-8
set fileencodings=ucs-bom,utf-8,chinese
set langmenu=zh_CN.UTF-8
language message zh_CN.UTF-8
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

"自动补全
filetype plugin indent on
set completeopt=longest,menu

"自动补全命令时候使用菜单式匹配列表
set wildmenu
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
autocmd FileType java set omnifunc=javacomplete#Complet

【vim的语法高亮/配色方案】

vim的配色分两部分:编辑环境配色和文本区域配色
1) vim编辑环境配色:比如Vim编辑区的前景背景色、状态栏颜色、错误提示颜色、查找、光标、圈选区、行号、折叠等的颜色
这里列出几个配色组名及其含义(全部的详细信息查看帮助文件 :help hi 查找 “highlight-group” 即可):

Cursor        光标下的字符颜色    
CursorLine    光标所在行颜色    
ErrorMsg      命令行出现的错误信息提示    
IncSearcg     被搜索字符的颜色    
Normal        普通字符    
Pmenu         弹出的提示条目颜色    
PmenuSel      弹出的提示条目中被选中条目的颜色    
SpellBad      拼写错误字符颜色    
Visual        可视化模式下选中字符的颜色    
Menu          菜单栏的颜色字体    
Scrollbar     滚动条的颜色

2) 文本区域配色:可编辑的文本区域的字符配色(详细信息请执行 :help hi搜索 “*comment”)
由于配色种类较多,vim默认分了几大类(帮助信息中带*的):

*Comment        注释  
*Constant       常量  
*statement      常用关键字标示符  
*PrePoc         预处理符号  
*Type           数据类型

下面是较为详细的组别:

String          字符串常量: "string abc\n"  
Character       单个字符常量: 'c', '\n'  
Number          数字常量: 234, 0xff  
Boolean         布尔常量: TRUE, false  
Function        函数名  
Conditional     条件关键字: if, then, else, endif, switch, etc.  
Repeat          循环关键字: for, do, while, etc.  
Operator        操作符: "sizeof", "+", "*", etc.  
Exception       异常关键字: try, catch, throw 

这样便可以更为详细的为每一个组别进行配色。

查看当前的vim配色情况
:hi/highlight

另外,文本区域的配色可以关闭,但环境配色不能,通常vim给定的默认可选配色方案中同时包含了以上两个方面。
下面就一条具体的配色命令(对数据类型配色)解释每个字段的含义:

hi Type cterm=none ctermbg=White ctermfg=Green guibg=Gray guifg=Red

hi: highlight的缩写,配色命令
Type: 配色组名,可以自定义(修改$VIMRUNTIME/syntax/下对应的文件可改变不同语言的高亮方案)其内容
cterm,ctermbg,ctermfg,guibg,guifg: 代表了不同显示环境
White,Green: 表示颜色(也可以用数字或者类似与html的16进制颜色表示方法)

显示环境有三种:黑白终端,彩色终端,图形界面,三种环境下参数名称如下:

term        attributes in a B&W terminal  
cterm       attributes in a color terminal  
ctermfg     foreground color in a color terminal  
ctermbg     background color in a color terminal  
gui         attributes in the GUI  
guifg       foreground color in the GUI  
guibg       background color in the GUI 

其中term仅有黑白两色,cterm下颜色较为单一,GUI模式颜色丰富

若要仅修改某种语言(c、Java、pascal)的配色,则在配色组名前加语言名称即可,比如对c/c++语言的数据类型单独配色:
hi cType ctermfg=Blue

若是修改java/pascal的数据类型,则相应的将cType替换为javaType/pascalType即可。

对于文本区域的语法高亮(即配色),我们可根据需求特殊化定制,比如自定义组: myUniqueWord, mySymbol,使用syn/syntax命令
syn keyword myUniqueWord gang Gang swagger
syn match mySymbol “[,.;(){}[]]” (可使用正则表达式)

vim目前7.4版本给出的可直接使用(colorscheme命令加于.vimrc中即可)的配色方案位于目录:
/usr/local/share/vim/vim74/colors,比如使用desert.vim中的配色,则于.vimrc中添加一行
colorscheme desert
即可

网友提供的配色方案列表(带效果图),可参考:
http://vimcolorschemetest.googlecode.com/svn/html/index-c.html
http://www.oschina.net/news/32306/10-vim-color-schemes-you-need-to-own

:hi/highlight
命令,可查看当前vim的颜色配置

:help hi/highlight
显示帮助文件(syntax.txt,可访问官方在线版http://vimdoc.sourceforge.net/htmldoc/syntax.html)内容,介绍了颜色配置脚本中关键字的含义和使用方法

相同配色vim脚本在不同的终端下可能显示不太一致,这是由终端下颜色设置不一致导致的,属正常情况。

【vim的代码补全、结构化视图】(基于autocomplpop + omnicppcomplete + ctags + taglist + cscope + NERDtree)

先一句话介绍每个插件的用途:
–> ctags: 为源码的变量/对象、结构体/类、函数/接口、宏等产生索引,以便快速查找和定位
- Official site http://ctags.sourceforge.net/
- VIM online http://www.vim.org/scripts/script.php?script_id=610

–> taglist:提供源码的结构化浏览功能
- Official site http://vim-taglist.sourceforge.net/
- VIM online http://www.vim.org/scripts/script.php?script_id=273

–> AutoComplPop:代码补全提示自动弹出
- VIM online http://www.vim.org/scripts/script.php?script_id=1879

–> OmniCppComplete:基于ctags的索引文件提供全面的c++(类成员、继承、this指针、.->访问符等)的代码补全功能
- VIM online http://www.vim.org/scripts/script.php?script_id=1520

–> cscope:对代码产生索引数据库,提供对象接口字符串的查找,并用列表显示(:cw - quickfix)
- Official site http://cscope.sourceforge.net/
- VIM online http://www.vim.org/scripts/script.php?script_id=4082

–> NERDtree:以树形结构显示文件系统的目录(同windows的资源管理器),并可以在目录间切换
- VIM online http://www.vim.org/scripts/script.PHP?script_id=1658

vim支持的几乎所有plugin&&utility都在这里可以下载到(主要以vim脚本的形式)
http://www.vim.org/scripts/index.php

下面逐一介绍各个插件的安装和使用方法
1) ctags
2) taglist
3) AutoComplPop
4) OmniCppComplete
5) cscope

6) NERDtree
(待续)

由于后续各个插件的介绍篇幅较长,单独形成博文,请参考:

ctags 的安装和使用方法,请猛击:http://blog.csdn.net/g_brightboy/article/details/16830395

taglist的安装和使用方法,请猛击:http://blog.csdn.net/g_brightboy/article/details/16843899

AutoComplPop和OmniCppComplete的安装和使用方法,请用力敲鼠标左键:http://blog.csdn.net/g_brightboy/article/details/19498983

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值