配置c++ 等编程语言补全等
from blog http://www.cnblogs.com/xiaobo-Linux/p/8909402.html
1. 安装 macvim
brew install macvim
将vim替换为mvim
alias vim='mvim -v'
2.安装Vundle
git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
输入 vim
shift + :
输入
:PluginInstall
自动安装 YouCompleteMe
3.安装cmake
brew install CMake
4.配置YouCompleteMe
cd ~/.vim/bundle/YouCompleteMe安装所有编程语言支持./install.py --all
5. vim .vimrc
" Set vundle settings here" git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vimset nocompatible " be iMproved, requiredfiletype off " required" set the runtime path to include Vundle and initializeset rtp+=~/.vim/bundle/Vundle.vimcall vundle#begin()" alternatively, pass a path where Vundle should install plugins"call vundle#begin('~/some/path/here')" let Vundle manage Vundle, required"Plugin 'VundleVim/Vundle.vim' "https://github.com/VundleVim/Vundle.vimBundle 'Valloric/YouCompleteMe'Plugin 'gmarik/Vundle.vim'" Custom pluginsPlugin 'scrooloose/nerdtree' "https://github.com/scrooloose/nerdtreePlugin 'MattesGroeger/vim-bookmarks' "https://github.com/MattesGroeger/vim-bookmarksPlugin 'maciakl/vim-neatstatus' "https://github.com/maciakl/vim-neatstatus" All of your Plugins must be added before the following linecall vundle#end() " requiredfiletype plugin indent on " required" To ignore plugin indent changes, instead use:"filetype plugin on"" Brief help" :PluginList - lists configured plugins" :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate" :PluginSearch foo - searches for foo; append `!` to refresh local cache" :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal"" see :h vundle for more details or wiki for FAQ" Put your non-Plugin stuff after this line" Vim5 and later versions support syntax highlighting. Uncommenting the" following enables syntax highlighting by default.if has("syntax") syntax on " 语法高亮endif" Uncomment the following to have Vim jump to the last position when" reopening a fileif has("autocmd") au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif"have Vim load indentation rules and plugins according to the detected"filetype on"filetype plugin indent onendifset numberset autoindentset softtabstop=4 " 设置软制表符的宽度set shiftwidth=4 " (自动) 缩进使用的4个空格set tabstop=4 " 设置制表符(tab键)的宽度set expandtab " 行首tab转换为4个空格set cindent " 使用 C/C++ 语言的自动缩进方式set cinoptions={ 0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s "设置C/C++语言的具体缩进方式set showmatch " 设置匹配模式,显示匹配的括号set linebreak " 整词换行set whichwrap=b,s,<,>,[,] " 光标从行首和行末时可以跳到另一行去set ruler " 标尺,用于显示光标位置的行号和列号,逗号分隔。每个窗口都有自己的标尺。如果窗口有状态行,标尺在那里显示。否则,它显示在屏幕的最后一行上set showcmd " 命令行显示输入的命令set showmode " 命令行显示vim当前模式set incsearch " 输入字符串就显示匹配点set enc=utf-8 " 文件编码set cursorlinehighlight CursorLine cterm=NONE ctermbg=blue ctermfg=white guibg=NONE guifg=NONE" highlight CursorColumn cterm=NONE ctermbg=green ctermfg=NONE guibg=NONE guifg=NONE" NERDTree settingsautocmd StdinReadPre * let s:std_in=1autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif" vim-bookmarks settingslet g:bookmark_auto_close = 1let g:bookmark_save_per_working_dir = 1let g:bookmark_highlight_lines = 1let g:bookmark_center = 1let g:bookmark_location_list = 1" key mapping:inoremap { {}i:map :NERDTreeToggle