syntax on set number "显示行号 "set rnu "相对行号 set ts=4 "set expandtab "tab to space set autoindent "自动缩进 set encoding=utf-8 "使用utf-8字符编码 set fileencoding=utf-8 "set cindent set nocompatible "? "set guifont=consolas:h14 set wrap "自动折行 set cursorline "光标行高亮 set hlsearch "高亮显示搜索结果 set incsearch "搜索模式下,每输入一个字符,就跳到对应结果 set ignorecase "忽略搜索大小写 set tags=./tags;,tags "表示从当前文件所在的目录开始查找 tags 文件,如果没有,则向上递归查找 "缓冲区操作 nnoremap b :buffers:b nnoremap e :b# nnoremap n :bnext "页面分割操作 nnoremap s :split nnoremap v :vsp nnoremap d w "保存 nnoremap w :w nnoremap q :q nnoremap fq :q! nnoremap pq :%s/\t/ /g:wq "多标签页 nnoremap tt :tabedit nnoremap tm :vert term "操作优化 nnoremap gm $ nnoremap r :reg inoremap jf cnoremap jf vnoremap gm $ inoremap ! ! inoremap ( ( inoremap ) ) inoremap 【 [ inoremap 】 ] inoremap ; ; inoremap : : inoremap ‘ ' inoremap “ " inoremap , , inoremap 。 . inoremap ? ? inoremap 《 < inoremap 》 > inoremap · ` "自动补全 inoremap jl inoremap jbf inoremap jk " 启用字典补全(Ctrl-X Ctrl-K) set complete+=k " 加载字典补全功能 " 根据文件类型设置不同的字典文件 autocmd FileType c setlocal dictionary+=~/.vim/dict/cpp.dict autocmd FileType cpp setlocal dictionary+=~/.vim/dict/cpp.dict "autocmd FileType python setlocal dictionary+=~/.vim/dict/python.dict "autocmd FileType javascript setlocal dictionary+=~/.vim/dict/javascript.dict "autocmd FileType html setlocal dictionary+=~/.vim/dict/html.dict "autocmd FileType css setlocal dictionary+=~/.vim/dict/css.dict augroup numbertoggle "智能切换绝对行号和相对行号 autocmd! autocmd BufEnter,FocusGained,InsertLeave,WinEnter * if &nu && mode() != "i" | set rnu | endif autocmd BufLeave,FocusLost,InsertEnter,WinLeave * if &nu | set nornu | endif augroup END