Vimrc配置文件

来源:互联网 发布:逆战刷nz点软件免费版 编辑:程序博客网 时间:2024/06/05 07:49
" 不要使用vi的键盘模式,而是vim自己的 set nocompatiblesource $VIMRUNTIME/vimrc_example.vimsource $VIMRUNTIME/mswin.vim" 加载配置。 behave mswinset diffexpr=MyDiff()function MyDiff()  let opt = '-a --binary '  if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif  if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif  let arg1 = v:fname_in  if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif  let arg2 = v:fname_new  if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif  let arg3 = v:fname_out  if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif  let eq = ''  if $VIMRUNTIME =~ ' '    if &sh =~ '\<cmd'      let cmd = '""' . $VIMRUNTIME . '\diff"'      let eq = '"'    else      let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'    endif  else    let cmd = $VIMRUNTIME . '\diff'  endif  silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eqendfunction"""""""""""""""编码""""""""""""""""""""""""""""""""""""""""""""""""""set encoding=utf-8set fileencodings=utf-8,chinese,latin-1if has("win32")set fileencoding=chineseelseset fileencoding=utf-8endif"解决菜单乱码source $VIMRUNTIME/delmenu.vimsource $VIMRUNTIME/menu.vim"解决consle输出乱码language messages zh_CN.utf-8""""""""""""""""通用配置""""""""""""""""""""""""""""""""""""""""""""""""""""""    "无菜单、工具栏    set go=     "配色方案    colorscheme evening    " 显示行号     set nu!        "按Ctrl+N进行代码补全      set completeopt=longest,menu        " 设置备份文件后缀    "set backupext=.bak    " 设置备份文件夹    set backupdir=D:/workspace/VIM    " 设置tab键的宽度     set tabstop=4            " 整词换行     set linebreak            " 打开语法高亮    syn on                   " 命令行补全      set wildmenu      "设置快速编辑.vimrc文件 ,e 编辑.vimrc      map <silent> <leader>e :call SwitchToBuf("~/_vimrc")<cr>      "保存.vimrc文件后会自动调用新的.vimrc      autocmd! bufwritepost .vimrc source ~/_vimrc      " 自动格式化设置      filetype indent on      set autoindent      set smartindent     " 查询时非常方便,如要查找book单词,当输入到/b时,会自动找到       set incsearch              " 加了这句才可以用智能补全      filetype pluginindenton       """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""  " 语言的编译和运行             " 支持的语言:java         F5编译(保存+编译)  F6运行  """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""  func! CompileCode()      exec "w"      if &filetype == "java"          exec "!javac -encoding utf-8 %"      endif  endfunc  func! RunCode()      if &filetype == "java"          exec "!java -classpath %:h; %:t:r"      endif  endfunc  " F5 保存+编译  map <F5> :call CompileCode()<CR>  "  F6 运行  map <F6> :call RunCode()<CR>  """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""       快速打开vimrc"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""    "Set mapleader    let mapleader = ","    "Fast reloading of the .vimrc    map <silent> <leader>ss :source ~/.vimrc<cr>    "Fast editing of .vimrc    map <silent> <leader>ee :e ~/.vimrc<cr>    "When .vimrc is edited, reload it    autocmd! bufwritepost .vimrc source ~/.vimrc""""""""""""""""""""""SwitchToBuf()"""""""""""""""""""""""""""""""""""""""""""""""""""""""  "  "实现它在所有标签页的窗口中查找指定的文件名,如果找到这样一个窗口,  "就跳到此窗口中;否则,它新建一个标签页来打开vimrc文件  "上面自动编辑.vimrc文件用到的函数  function! SwitchToBuf(filename)      let bufwinnr = bufwinnr(a:filename)      if bufwinnr != -1      exec bufwinnr . "wincmd w"          return      else          " find in each tab          tabfirst          let tab = 1          while tab <= tabpagenr("$")              let bufwinnr = bufwinnr(a:filename)              if bufwinnr != -1                  exec "normal " . tab . "gt"                  exec bufwinnr . "wincmd w"                  return              endif              tabnext              let tab = tab + 1          endwhile          " not exist, new tab          exec "tabnew " . a:filename      endif  endfunction  """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 保存代码文件前自动修改最后修改时间  au BufWritePre *.sh           call TimeStamp('#')  au BufWritePre .vimrc,*.vim   call TimeStamp('"')  au BufWritePre *.c,*.h        call TimeStamp('//')  au BufWritePre *.cpp,*.hpp    call TimeStamp('//')  au BufWritePre *.cxx,*.hxx    call TimeStamp('//')  au BufWritePre *.java         call TimeStamp('//')  au BufWritePre *.rb           call TimeStamp('#')  au BufWritePre *.py           call TimeStamp('#')  au BufWritePre Makefile       call TimeStamp('#')  au BufWritePre *.php      \call TimeStamp('<?php //', '?>')  au BufWritePre *.html,*htm      \call TimeStamp('<!--', '-->')  " 更改Leader为","  let g:C_MapLeader = ','  """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""  "  "Last change用到的函数,返回时间,能够自动调整位置  function! TimeStamp(...)      let sbegin = ''      let send = ''      if a:0 >= 1          let sbegin = a:1.'\s*'      endif      if a:0 >= 2          let send = ' '.a:2      endif      let pattern =  'Last Change: .\+'          \. send      let pattern = '^\s*' . sbegin . pattern . '\s*$'      let now = strftime('%Y-%m-%d %H:%M:%S',          \localtime())      let row = search(pattern, 'n')      if row  == 0          let now = a:1 .  ' Last Change:  '              \. now . send          call append(2, now)      else          let curstr = getline(row)          let col = match( curstr , 'Last')          let spacestr = repeat(' ',col - 1)          let now = a:1 . spacestr . 'Last Change:  '              \. now . send          call setline(row, now)      endif  endfunction  set shellslash  set grepprg=grep\ -nJ\ $*  let g:tex_flavor='latex'  """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""  "                              搜索和匹配                                      "  """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""  " 高亮显示匹配的括号  set showmatch  " 匹配括号高亮的时间(单位是十分之一秒)  set matchtime=3  " 在搜索的时候忽略大小写  set ignorecase  " 不要高亮被搜索的句子(phrases)  " set nohlsearch  " 在搜索时,输入的词句的逐字符高亮(类似firefox的搜索)  set incsearch  " 输入:set list命令是应该显示些啥?  set listchars=tab:\|\ ,trail:.,extends:>,precedes:<,eol:$  " Tab补全时忽略这些忽略这些  set wildignore=*.o,*.obj,*.bak,*.exe  " 光标移动到buffer的顶部和底部时保持3行距离  set scrolloff=3  "搜索出之后高亮关键词  set hlsearch  nmap <silent> <leader><cr> :noh<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>  :inoremap < <><ESC>i  :inoremap > <c-r>=ClosePair('>')<CR>  """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""           amix/vimrc"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Awesome_version:"       Get this config, nice color schemes and lots of plugins!""       Install the awesome version from:""           https://github.com/amix/vimrc" Sections:"    -> General"    -> VIM user interface"    -> Colors and Fonts"    -> Files and backups"    -> Text, tab and indent related"    -> Visual mode related"    -> Moving around, tabs and buffers"    -> Status line"    -> Editing mappings"    -> vimgrep searching and cope displaying"    -> Spell checking"    -> Misc"    -> Helper functions"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => General"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Sets how many lines of history VIM has to rememberset history=500" Enable filetype pluginsfiletype plugin onfiletype indent on" Set to auto read when a file is changed from the outsideset autoread" With a map leader it's possible to do extra key combinations" like <leader>w saves the current filelet mapleader = ","let g:mapleader = ","" Fast savingnmap <leader>w :w!<cr>" :W sudo saves the file " (useful for handling the permission-denied error)command W w !sudo tee % > /dev/null"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => VIM user interface"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Set 7 lines to the cursor - when moving vertically using j/kset so=7" Avoid garbled characters in Chinese language windows OSlet $LANG='en' set langmenu=ensource $VIMRUNTIME/delmenu.vimsource $VIMRUNTIME/menu.vim" Turn on the WiLd menuset wildmenu" Ignore compiled filesset wildignore=*.o,*~,*.pycif has("win16") || has("win32")    set wildignore+=.git\*,.hg\*,.svn\*else    set wildignore+=*/.git/*,*/.hg/*,*/.svn/*,*/.DS_Storeendif"Always show current positionset ruler" Height of the command barset cmdheight=2" A buffer becomes hidden when it is abandonedset hid" Configure backspace so it acts as it should actset backspace=eol,start,indentset whichwrap+=<,>,h,l" Ignore case when searchingset ignorecase" When searching try to be smart about cases set smartcase" Highlight search resultsset hlsearch" Makes search act like search in modern browsersset incsearch " Don't redraw while executing macros (good performance config)set lazyredraw " For regular expressions turn magic onset magic" Show matching brackets when text indicator is over themset showmatch " How many tenths of a second to blink when matching bracketsset mat=2" No annoying sound on errorsset noerrorbellsset novisualbellset t_vb=set tm=500" Add a bit extra margin to the leftset foldcolumn=1"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => Colors and Fonts"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Enable syntax highlightingsyntax enable try    colorscheme desertcatchendtryset background=dark" Set extra options when running in GUI modeif has("gui_running")    set guioptions-=T    set guioptions-=e    set t_Co=256    set guitablabel=%M\ %tendif" Set utf8 as standard encoding and en_US as the standard languageset encoding=utf8" Use Unix as the standard file typeset ffs=unix,dos,mac"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => Files, backups and undo"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Turn backup off, since most stuff is in SVN, git et.c anyway...set nobackupset nowbset noswapfile"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => Text, tab and indent related"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Use spaces instead of tabsset expandtab" Be smart when using tabs ;)set smarttab" 1 tab == 4 spacesset shiftwidth=4set tabstop=4" Linebreak on 500 charactersset lbrset tw=500set cindentset cinkeys-=0#set indentkeys-=0#set wrap "Wrap lines""""""""""""""""""""""""""""""" => Visual mode related""""""""""""""""""""""""""""""" Visual mode pressing * or # searches for the current selection" Super useful! From an idea by Michael Naumannvnoremap <silent> * :<C-u>call VisualSelection('', '')<CR>/<C-R>=@/<CR><CR>vnoremap <silent> # :<C-u>call VisualSelection('', '')<CR>?<C-R>=@/<CR><CR>"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => Moving around, tabs, windows and buffers"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Map <Space> to / (search) and Ctrl-<Space> to ? (backwards search)map <space> /map <c-space> ?" Disable highlight when <leader><cr> is pressedmap <silent> <leader><cr> :noh<cr>" Smart way to move between windowsmap <C-j> <C-W>jmap <C-k> <C-W>kmap <C-h> <C-W>hmap <C-l> <C-W>l" Close the current buffermap <leader>bd :Bclose<cr>:tabclose<cr>gT" Close all the buffersmap <leader>ba :bufdo bd<cr>map <leader>l :bnext<cr>map <leader>h :bprevious<cr>" Useful mappings for managing tabsmap <leader>tn :tabnew<cr>map <leader>to :tabonly<cr>map <leader>tc :tabclose<cr>map <leader>tm :tabmove map <leader>t<leader> :tabnext " Let 'tl' toggle between this and the last accessed tablet g:lasttab = 1nmap <Leader>tl :exe "tabn ".g:lasttab<CR>au TabLeave * let g:lasttab = tabpagenr()" Opens a new tab with the current buffer's path" Super useful when editing files in the same directorymap <leader>te :tabedit <c-r>=expand("%:p:h")<cr>/" Switch CWD to the directory of the open buffermap <leader>cd :cd %:p:h<cr>:pwd<cr>" Specify the behavior when switching between buffers try  set switchbuf=useopen,usetab,newtab  set stal=2catchendtry" Return to last edit position when opening files (You want this!)au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif""""""""""""""""""""""""""""""" => Status line""""""""""""""""""""""""""""""" Always show the status lineset laststatus=2" Format the status lineset statusline=\ %{HasPaste()}%F%m%r%h\ %w\ \ CWD:\ %r%{getcwd()}%h\ \ \ Line:\ %l\ \ Column:\ %c"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => Editing mappings"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Remap VIM 0 to first non-blank charactermap 0 ^" Move a line of text using ALT+[jk] or Command+[jk] on macnmap <M-j> mz:m+<cr>`znmap <M-k> mz:m-2<cr>`zvmap <M-j> :m'>+<cr>`<my`>mzgv`yo`zvmap <M-k> :m'<-2<cr>`>my`<mzgv`yo`zif has("mac") || has("macunix")  nmap <D-j> <M-j>  nmap <D-k> <M-k>  vmap <D-j> <M-j>  vmap <D-k> <M-k>endif" Delete trailing white space on save, useful for Python and CoffeeScript ;)func! DeleteTrailingWS()  exe "normal mz"  %s/\s\+$//ge  exe "normal `z"endfuncautocmd BufWrite *.py :call DeleteTrailingWS()autocmd BufWrite *.coffee :call DeleteTrailingWS()"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => Ag searching and cope displaying"    requires ag.vim - it's much better than vimgrep/grep"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" When you press gv you Ag after the selected textvnoremap <silent> gv :call VisualSelection('gv', '')<CR>" Open Ag and put the cursor in the right positionmap <leader>g :Ag " When you press <leader>r you can search and replace the selected textvnoremap <silent> <leader>r :call VisualSelection('replace', '')<CR>" Do :help cope if you are unsure what cope is. It's super useful!"" When you search with Ag, display your results in cope by doing:"   <leader>cc"" To go to the next search result do:"   <leader>n"" To go to the previous search results do:"   <leader>p"map <leader>cc :botright cope<cr>map <leader>co ggVGy:tabnew<cr>:set syntax=qf<cr>pggmap <leader>n :cn<cr>map <leader>p :cp<cr>"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => Spell checking"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Pressing ,ss will toggle and untoggle spell checkingmap <leader>ss :setlocal spell!<cr>" Shortcuts using <leader>map <leader>sn ]smap <leader>sp [smap <leader>sa zgmap <leader>s? z="""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => Misc"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Remove the Windows ^M - when the encodings gets messed upnoremap <Leader>m mmHmt:%s/<C-V><cr>//ge<cr>'tzt'm" Quickly open a buffer for scribblemap <leader>q :e ~/buffer<cr>" Quickly open a markdown buffer for scribblemap <leader>x :e ~/buffer.md<cr>" Toggle paste mode on and offmap <leader>pp :setlocal paste!<cr>"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => Helper functions"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""function! CmdLine(str)    exe "menu Foo.Bar :" . a:str    emenu Foo.Bar    unmenu Fooendfunction function! VisualSelection(direction, extra_filter) range    let l:saved_reg = @"    execute "normal! vgvy"    let l:pattern = escape(@", '\\/.*$^~[]')    let l:pattern = substitute(l:pattern, "\n$", "", "")    if a:direction == 'gv'        call CmdLine("Ag \"" . l:pattern . "\" " )    elseif a:direction == 'replace'        call CmdLine("%s" . '/'. l:pattern . '/')    endif    let @/ = l:pattern    let @" = l:saved_regendfunction" Returns true if paste mode is enabledfunction! HasPaste()    if &paste        return 'PASTE MODE  '    endif    return ''endfunction" Don't close window, when deleting a buffercommand! Bclose call <SID>BufcloseCloseIt()function! <SID>BufcloseCloseIt()   let l:currentBufNum = bufnr("%")   let l:alternateBufNum = bufnr("#")   if buflisted(l:alternateBufNum)     buffer #   else     bnext   endif   if bufnr("%") == l:currentBufNum     new   endif   if buflisted(l:currentBufNum)     execute("bdelete! ".l:currentBufNum)   endifendfunction    set nocompatible "不要使用vi的键盘模式,而是vim自己的      source $VIMRUNTIME/mswin.vim      behave mswin    "兼容windows下的快捷键      """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""       " GVIM自身的设置      """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""      language messages zh_CN.utf-8   " 解决consle输出乱码      colorscheme desert              " 灰褐色主题      set guioptions-=T       " 隐藏工具栏      set guifont=Monospace\ 30          " 字体 && 字号      set noerrorbells        " 关闭错误提示音      set nobackup            " 不要备份文件      set linespace=0         " 字符间插入的像素行数目      set shortmess=atI       " 启动的时候不显示那个援助索马里儿童的提示      set novisualbell        " 不要闪烁       set scrolloff=3         " 光标移动到buffer的顶部和底部时保持3行距离      set mouse=a             " 可以在buffer的任何地方 ->      set selection=exclusive         " 使用鼠标(类似office中 ->      set selectmode=mouse,key        " 在工作区双击鼠标定位)      set cursorline                  " 突出显示当前行      set whichwrap+=<,>,h,l        " 允许backspace和光标键跨越行边界       set completeopt=longest,menu    "按Ctrl+N进行代码补全      """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""       " 文本格式和排版       """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""       set list                        " 显示Tab符,->      set listchars=tab:\|\ ,         " 使用一高亮竖线代替      set tabstop=4           " 制表符为4      set autoindent          " 自动对齐(继承前一行的缩进方式)      set smartindent         " 智能自动缩进(以c程序的方式)      set softtabstop=4       set shiftwidth=4        " 换行时行间交错使用4个空格      set noexpandtab         " 不要用空格代替制表符      set cindent         " 使用C样式的缩进      set smarttab            " 在行和段开始处使用制表符      set nowrap          " 不要换行显示一行       """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""      " 状态行(命令行)的显示      """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""      set cmdheight=2          " 命令行(在状态行下)的高度,默认为1,这里是2      set ruler                " 右下角显示光标位置的状态行      set laststatus=2         " 开启状态栏信息       set wildmenu             " 增强模式中的命令行自动完成操作       """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""      " 文件相关      """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""      set fenc=utf-8      set encoding=utf-8      " 设置vim的工作编码为utf-8,如果源文件不是此编码,vim会进行转换后显示      set fileencoding=utf-8      " 让vim新建文件和保存文件使用utf-8编码      set fileencodings=utf-8,gbk,cp936,latin-1      filetype on                  " 侦测文件类型      filetype indent on               " 针对不同的文件类型采用不同的缩进格式      filetype plugin on               " 针对不同的文件类型加载对应的插件      syntax on                    " 语法高亮      filetype plugin indent on    " 启用自动补全      """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""      " 查找      """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""      set hlsearch                 " 开启高亮显示结果      set nowrapscan               " 搜索到文件两端时不重新搜索      set incsearch                " 开启实时搜索功能      """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""      " 语言的编译和运行                 " 支持的语言:java         F5编译(保存+编译)  F6运行      """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""      func! CompileCode()          exec "w"          if &filetype == "java"              exec "!javac -encoding utf-8 %"          endif      endfunc      func! RunCode()          if &filetype == "java"              exec "!java -classpath %:h; %:t:r"          endif      endfunc      " F5 保存+编译      map <F5> :call CompileCode()<CR>      "  F6 运行      map <F6> :call RunCode()<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>      ":inoremap < <><ESC>i      ":inoremap > <c-r>=ClosePair('>')<CR>      :inoremap " ""<ESC>i      :inoremap ' ''<ESC>i      :inoremap ` ``<ESC>i      function ClosePair(char)          if getline('.')[col('.') - 1] == a:char              return "\<Right>"          else              return a:char          endif      endf      "--------启用代码折叠,用空格键来开关折叠       set foldenable           " 打开代码折叠      set foldmethod=syntax        " 选择代码折叠类型      set foldlevel=100            " 禁止自动折叠      nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc':'zo')<CR>       """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""      " 插件      """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""      " <F9>打开文件浏览窗口   插件为WinManager      let g:winManagerWindowLayout='FileExplorer'      nmap <F9> :WMToggle<CR>      " MiniBufExplorer           let g:miniBufExplMapWindowNavVim = 1       let g:miniBufExplMapWindowNavArrows = 1       let g:miniBufExplMapCTabSwitchBufs = 1       let g:miniBufExplModSelTarget = 1   " Make VIM remember position in file after reopen" if has("autocmd")"   au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif"endif""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
1 0