1 "************************************ 2 " 一般性配置 * 3 "************************************ 4 5 "关闭vim一致性原则 6 set nocompatible 7 8 "显示行号 9 set number 10 11 "设置在编辑过程中右下角显示光标的行列信息 12 set ruler 13 14 "在状态栏显示正在输入的命令 15 set showcmd 16 17 "设置历史记录条数 18 set history=1000 19 20 "设置取消备份 禁止临时文件的生成 21 set nobackup 22 set noswapfile 23 24 "设置匹配模式 25 set showmatch 26 27 "设置C/C++方式自动对齐 28 set autoindent 29 set cindent 30 31 "开启语法高亮功能 32 syntax enable 33 syntax on 34 35 "指定配色方案为256色 36 set t_Co=256 37 38 "设置搜索时忽略大小写 39 set ignorecase 40 41 "配置backspace的工作方式 42 set backspace=indent,eol,start 43 44 "设置在vim中可以使用鼠标 45 set mouse=a 46 47 "设置tab宽度 48 set tabstop=4 49 50 "设置自动对齐空格数 51 set shiftwidth=4 52 53 "设置退格键时可以删除4个空格 54 set smarttab 55 set softtabstop=4 56 57 "将tab键自动转换为空格 58 set expandtab 59 60 "设置编码方式 61 set encoding=utf-8 62 63 "自动判断编码时 依次尝试以下编码 64 set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1 65 66 "不检测文件类型 67 filetype off 68 69 "针对不同的文件采取不同的缩进方式 70 filetype indent on 71 72 "允许插件 73 filetype plugin on 74 75 76 "********************************************************* 77 " vundle 配置 * 78 "********************************************************* 79 80 set rtp+=~/.vim/bundle/Vundle.vim 81 82 call vundle#begin() 83 84 " let Vundle manage Vundle, required 85 Plugin 'gmarik/Vundle.vim' 86 87 88 " My Plugins is here 89 Plugin 'tpope/vim-fugitive' 90 Plugin 'L9' 91 Plugin 'Auto-Pairs' 92 Plugin 'vim-scripts/taglist.vim' 93 Plugin 'The-NERD-tree' 94 Plugin 'Syntastic' 95 Plugin 'FuzzyFinder' 96 Plugin 'Lokaltog/vim-powerline' 97 Plugin 'Valloric/YouCompleteMe' 98 99 call vundle#end()100 101 "启动智能补全102 filetype plugin indent on103 "*****************************************************104 " taglist配置 *105 "*****************************************************106 107 "不显示"press F1 to display help"108 let Tlist_Compact_Format=1109 110 "窗口在左侧显示111 let Tlist_Use_Right_Window=1112 113 "只显示当前文件的tags114 let Tlist_Show_One_File=1 115 116 "高亮显示117 let Tlist_Auto_Highlight_tag=1118 119 "随文件自动更新120 let Tlist_Auto_Update=1121 122 "设置宽度123 let Tlist_WinWidth=30 124 125 "taglist窗口是最后一个窗口,则退出vim126 let Tlist_Exit_OnlyWindow=1 127 128 "单击跳转129 let Tlist_Use_SingClick=1130 131 "打开关闭快捷键132 nnoremap:TlistToggle 133 134 135 136 137 "********************************************************138 " NERD_Tree 配置 *139 "********************************************************140 141 "显示增强142 let NERDChristmasTree=1143 144 "自动调整焦点145 let NERDTreeAutoCenter=1146 147 "鼠标模式:目录单击,文件双击148 let NERDTreeMouseMode=2149 150 "打开文件后自动关闭151 let NERDTreeQuitOnOpen=1152 153 "显示文件154 let NERDTreeShowFiles=1155 156 "显示隐藏文件157 let NERDTreeShowHidden=1158 159 "高亮显示当前文件或目录160 let NERDTreeHightCursorline=1161 162 "显示行号163 let NERDTreeShowLineNumbers=1164 165 "窗口位置166 let NERDTreeWinPos='left'167 168 "窗口宽度169 let NERDTreeWinSize=31170 171 "不显示'Bookmarks' label 'Press ? for help'172 let NERDTreeMinimalUI=1173 174 "快捷键175 nnoremap :NERDTreeToggle 176 177 178 179 "*****************************************************180 " YouCompleteMe配置 *181 "*****************************************************182 183 "leader映射为逗号“,”184 let mapleader = "," 185 186 "配置默认的ycm_extra_conf.py187 let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py' 188 189 "按,jd 会跳转到定义190 nnoremap jd :YcmCompleter GoToDefinitionElseDeclaration 191 192 "打开vim时不再询问是否加载ycm_extra_conf.py配置193 let g:ycm_confirm_extra_conf=0 194 195 "使用ctags生成的tags文件196 let g:ycm_collect_identifiers_from_tag_files = 1 197 198 199 "*****************************************************200 " Syntastic配置 *201 "*****************************************************202 203 204 let g:Syntastic_check_on_open=1