在自己的用户目录下面修改 .vimrc 文件。文件前面有个 “.“在ubuntu中表示是个隐藏文件。
然后把配置内容放到文件中即可。
一:插件-代码提示的
找到一个插件:AutoComplPop。从下面的网址中下载该工具的最新版
http://www.vim.org/scripts/script.php?script_id=1879
将解压后的文件(autoload,doc和plugin)放到~/.vim/文件夹下
重启就ok了。
ps:vim里面有个快捷键可以用来补全代码 C-n (Ctrl+n)
二:插件tagbar
下载地址:http://www.vim.org/scripts/script.php?script_id=3465
安装方法(用vim打开tagbar.vba文件,键入:so %命令,然后退出即可):
vim tagbar.vba :so % :q
tagbar配置(F8快捷键启动):
nmap <F8> :TagbarToggle<CR>
如果不愿意设置快捷键的话,每次需要打开tagbar的时候都要输入 :TagbarToggle
如果发现设置完快捷键之后,按了快捷键没有反应,那就要看看是不是快捷键被其他软件给占用了(例如,有道词典,23333)
三:我的vim配置文件内容(.vimrc)
基本的配置:
" 语法高亮 set syntax=on " 在处理未保存或只读文件的时候,弹出确认 set confirm " 自动缩进 set autoindent set cindent " Tab键的宽度 set tabstop=4 " 统一缩进为4 set softtabstop=4 set shiftwidth=4 " 不要用空格代替制表符 set noexpandtab " 在行和段开始处使用制表符 set smarttab " 显示行号 set number " 历史记录数 set history=1000 "禁止生成临时文件 set nobackup set noswapfile "搜索逐字符高亮 set hlsearch set incsearch "行内替换 set gdefault "编码设置 set enc=utf-8 set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936 "语言设置 set langmenu=zh_CN.UTF-8 set helplang=cn " 我的状态行显示的内容(包括文件类型和解码) set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")} "set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%] " 总是显示状态行 set laststatus=2 " 在编辑过程中,在右下角显示光标位置的状态行 set ruler " 命令行(在状态行下)的高度,默认为1,这里是2 set cmdheight=2 " 侦测文件类型 filetype on " 载入文件类型插件 filetype plugin on " 为特定文件类型载入相关缩进文件 filetype indent on " 保存全局变量 set viminfo+=! " 带有如下符号的单词不要被换行分割 set iskeyword+=_,$,@,%,#,- " 字符间插入的像素行数目 set linespace=0 " 增强模式中的命令行自动完成操作 set wildmenu " 使回格键(backspace)正常处理indent, eol, start等 set backspace=2 " 允许backspace和光标键跨越行边界 set whichwrap+=<,>,h,l " 可以在buffer的任何地方使用鼠标(类似office中在工作区双击鼠标定位) set mouse=a set selection=exclusive set selectmode=mouse,key " 通过使用: commands命令,告诉我们文件的哪一行被改变过 set report=0 " 启动的时候不显示那个援助索马里儿童的提示 set shortmess=atI " 在被分割的窗口间显示空白,便于阅读 set fillchars=vert:\ ,stl:\ ,stlnc:\ " 高亮显示匹配的括号 set showmatch " 匹配括号高亮的时间(单位是十分之一秒) set matchtime=5 " 光标移动到buffer的顶部和底部时保持3行距离 set scrolloff=3 " 光标自动移到上次文件关闭时的位置 if has("autocmd") au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif endif
补充:括号自动生成(这个括号生成的,个人喜好了,不过不推荐了现在……)
在.vimrc 文件里面加上下面的内容:
" 为C程序提供自动缩进 set smartindent "代码补全 set completeopt=preview,menu "自动补全 :inoremap ( ()<ESC>i :inoremap ) <c-r>=ClosePair(')')<CR> :inoremap { {<CR>}<ESC>O :inoremap } <c-r>=ClosePair('}')<CR> :inoremap [ []<ESC>i :inoremap ] <c-r>=ClosePair(']')<CR> :inoremap " ""<ESC>i ":inoremap " <c-r>=ClosePair('"')<CR> :inoremap ' ''<ESC>i ":inoremap ' <c-r>=ClosePair('\'')<CR> function! ClosePair(char) if getline('.')[col('.') - 1] == a:char return "\<Right>" else return a:char endif endfunction filetype plugin indent on "打开文件类型检测, 加了这句才可以用智能补全 set completeopt=longest,menu