配置一个能用的VIM

若干年前,我知道了世界上有vi这么个东西,后来我接触到了vi,并且开始使用vim进行工作,本着磨刀不误砍柴工的原则,对vim的配置研究了一下,也有一些新的,但迟迟没有写出来跟大家共享,今天闲着没事,就跟大家分享一下。各种原因,很多软件还得指着win的环境,所以不能完全抛弃 Windows,所以Linux下边的配置就不说了,跟Win下边的gvim异曲同工。

把我自己在Windows下边gvim的配置贴一贴吧。另外搞了几个小插件。

首先是常规的一些配置和说明:

colorscheme murphy "这是GVIM一个配色方案,默认的,看起来比较舒服
syntax on "语法高亮
filetype on "文件类型检测
filetype plugin on "这个据说是补全需要的
set nocompatible "关闭vi兼容,vi兼容太恶了……
set number "行号
set autoindent "自动缩进
set smartindent "也是缩进
set showmatch "匹配,括号之类的
set hls "搜索高亮
set incsearch "搜索自动定位
set mouse=a "鼠标模式,还可以等于v,至于习惯哪一个,仁者见仁了
set background=dark "顾名思义
set tabstop=4 "缩进4字符
set shiftwidth=4 "一个tab
set guioptions-=m "不显示菜单
set guioptions-=T "不显示工具
set ruler "右下角显示状态
set mousehide "输入隐藏鼠标
set guifont=YaHei_Consolas_Hybrid:h10:cANSI "这个是字体,我用了雅黑和consolas的组合
set fenc=chinese "一下几个都是编码的问题,用来消除乱码的
set encoding=utf-8
set fileencodings=utf-8,chinese,latin-1
set fileformat=unix
set cursorline "高亮当前行,配合后边的hi,我喜欢比较舒服的grey15
set visualbell "屏幕闪烁,我开始是novisualbell,现在想打开玩一段时间
autocmd GUIEnter * simalt ~x "最大化打开
highlight Cursorline guibg=grey15 "这就是当前的背景高亮
if has("win32")
set fileencoding=chinese
else
set fileencoding=utf-8
endif
language messages us_EN.utf-8
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

配置基本就这些,再说说插件,我装了三个插件,nerdTree一个目录树的工具,我很喜欢,个人认为好过project;ctags,这个偶尔读大代码会用到,很方便;mark,这个写代码会用到,避免变量出错,适合我这种人;omni,这是自动补全,就装上了,其实不太用……

下边是有关这几个插件的配置:

" auto command 自动补全用的
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 php set omnifunc=phpcomplete#CompletePHP
autocmd FileType c set omnifunc=ccomplete#Complete

" map 首先是nerdtree的几个很方便
map tr :NERDTreeToggle d:\

map ^c:NERDTree c:\
map ^d:NERDTree d:\
map ^e:NERDTree e:\
map ^f:NERDTree f:\

map ^m:Mark regex
" 先变是ctags的
map fun :TlistOpen
map cls :TlistClose

" taglist
let Tlist_Auto_Highlight_Tag = 1
let Tlist_Auto_Open = 0
let Tlist_Auto_Update = 1
let Tlist_Close_On_Select = 0
let Tlist_Compact_Format = 0
let Tlist_Display_Prototype = 0
let Tlist_Display_Tag_Scope = 1
let Tlist_Enable_Fold_Column = 1
let Tlist_Exit_OnlyWindow = 0
let Tlist_File_Fold_Auto_Close = 0
let Tlist_GainFocus_On_ToggleOpen = 1
let Tlist_Hightlight_Tag_On_BufEnter = 1
let Tlist_Inc_Winwidth = 0
let Tlist_Max_Submenu_Items = 1
let Tlist_Max_Tag_Length = 30
let Tlist_Process_File_Always = 0
let Tlist_Show_Menu = 0
let Tlist_Show_One_File = 1
let Tlist_Sort_Type = "order"
let Tlist_Use_Horiz_Window = 0
let Tlist_Use_Right_Window = 0
let Tlist_WinWidth = 30
let tlist_php_settings = 'php;c:class;i:interfaces;d:constant;f:function'

就这些配置了,后边我挂出我插件和vimrc的文件:

plugins: http://jiajun.org/g/vimplugins.zip

vimrc: http://jiajun.org/g/vimrc

 

 

vimrc的这个,下下来放到相应的位置就好了,默认安装的gvim在我的文档,有个叫.vimrc的

标签:vi vim gvim 编辑器 插件

添加新评论