set nocompatible " be iMproved, required filetype off " required " set the runtime path to include Vundle and initialize set rtp+=~/.vim/bundle/Vundle.vim call 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' " The following are examples of different formats supported. " Keep Plugin commands between vundle#begin/end. " plugin on GitHub repo Plugin 'tpope/vim-fugitive' " plugin from http://vim-scripts.org/vim/scripts.html " Plugin 'L9' " Git plugin not hosted on GitHub " Plugin 'git://git.wincent.com/command-t.git' " git repos on your local machine (i.e. when working on your own plugin) " Plugin 'file:///home/gmarik/path/to/plugin' " The sparkup vim script is in a subdirectory of this repo called vim. " Pass the path to set the runtimepath properly. " Plugin 'rstacruz/sparkup', {'rtp': 'vim/'} " Install L9 and avoid a Naming conflict if you've already installed a " different version somewhere else. " Plugin 'ascenator/L9', {'name': 'newL9'} Plugin 'scrooloose/nerdtree' Plugin 'Valloric/YouCompleteMe' Plugin 'universal-ctags/ctags' Plugin 'taglist.vim' Plugin 'flazz/vim-colorschemes' Plugin 'vhdirk/vim-cmake' Plugin 'rhysd/vim-clang-format' Plugin 'SirVer/ultisnips' Plugin 'honza/vim-snippets' Plugin 'DoxygenToolkit.vim' " All of your Plugins must be added before the following line call vundle#end() " required filetype 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 set hlsearch set nu set ts=4 set expandtab " don't add comment autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o " au FileType c,cpp setlocal comments-=:// comments+=f:// syntax on colorscheme Monokai let g:clang_format#code_style='google' "let g:clang_format#auto_format=1 let g:UltiSnipsExpandTrigger="" nmap :NERDTreeMirror nmap :NERDTreeToggle " 寻找全局配置文件 let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/cpp/ycm/.ycm_extra_conf.py' " 禁用syntastic来对python检查 let g:syntastic_ignore_files=[".*\.py$"] " 使用ctags生成的tags文件 let g:ycm_collect_identifiers_from_tag_files = 1 " 开启语义补全 " 修改对C语言的补全快捷键,默认是CTRL+space,修改为ALT+;未测出效果 "let g:ycm_key_invoke_completion = '' " 设置转到定义处的快捷键为ALT+G,未测出效果 "nmap :YcmCompleter GoToDefinitionElseDeclaration =expand("") "关键字补全 "let g:ycm_seed_identifiers_with_syntax = 1 " 在接受补全后不分裂出一个窗口显示接受的项 set completeopt-=preview " 让补全行为与一般的IDE一致 set completeopt=longest,menu " 不显示开启vim时检查ycm_extra_conf文件的信息 let g:ycm_confirm_extra_conf=0 " 每次重新生成匹配项,禁止缓存匹配项 let g:ycm_cache_omnifunc=0 " 在注释中也可以补全 let g:ycm_complete_in_comments=0 " 输入第一个字符就开始补全 let g:ycm_min_num_of_chars_for_completion=2 " 错误标识符 let g:ycm_error_symbol='>>' " 警告标识符 let g:ycm_warning_symbol='>*' " 不查询ultisnips提供的代码模板补全,如果需要,设置成1即可 " let g:ycm_use_ultisnips_completer=0 nnoremap gl :YcmCompleter GoToDeclaration nnoremap gf :YcmCompleter GoToDefinition nmap :YcmCompleter GoToDefinitionElseDeclaration nmap :YcmDiags nmap :TlistToggle "let g:ycm_semantic_triggers = { 'cpp': [ 're!.' ] } " " doxygen let g:DoxygenToolkit_briefTag_funcName = "yes" let g:DoxygenToolkit_commentType = "C++" let g:DoxygenToolkit_briefTag_pre = "\\brief " let g:DoxygenToolkit_templateParamTag_pre = "\\tparam " let g:DoxygenToolkit_paramTag_pre = "\\param " let g:DoxygenToolkit_returnTag = "\\return " let g:DoxygenToolkit_throwTag_pre = "\\throw " " @exception is also valid let g:DoxygenToolkit_fileTag = "\\file " let g:DoxygenToolkit_dateTag = "\\date " let g:DoxygenToolkit_authorTag = "\\author " let g:DoxygenToolkit_versionTag = "\\version " let g:DoxygenToolkit_blockTag = "\\name " let g:DoxygenToolkit_classTag = "\\class " let g:DoxygenToolkit_authorName = "Kim Huang, hgkformap@gmail.com" let g:doxygen_enhanced_color = 1 let g:DoxygenToolKit_startCommentBlock = "/// " let g:DoxygenToolKit_interCommentBlock = "/// "