[轉載]HOWTO 使用 vim 的 minibuf 來切換緩衝區

來源:互聯網
上載者:User

轉載自:http://linux.bloghome.cn/posts/114.html

1. 安裝到 http://vim.sourceforge.net/scripts/script.php?script_id=159

下載最新版本的 minibufexpl.vim 指令碼,
將該檔案複製到 plugin 目錄中即可。

2. 配置
在設定檔 .vimrc 中加入:
"
"minibuf plugin
"
let g:miniBufExplMapWindowNavVim = 1 "Ctrl-<hjkl> to move to window 
let g:miniBufExplTabWrap = 1 " make tabs show complete (no broken on two lines)

這樣就可以使用 minibuf 了,而且設定 Ctrl-h/j/k/l 在各個視窗中切換,很方便。
使用提示:
1. minibuf 佔用的就是一個視窗,你可以用 Ctrl-k 切換到其上,然後按 <tab> 迴圈選擇 buffer,
按 <enter> 則啟用該 buffer,按 d 則刪除該 buffer 。
2. 每個 buffer 名稱前都有個數字,那是 buffer 的編號,因此,可以輸入 :b <buffer編號> 來快速切換。

先自聲明,本人是個懶種,因此設定了幾個快速鍵:
<F1> 切換至前一緩衝區
<F2> 切換至後一緩衝區
<F3> 儲存緩衝區(:update 羅)
<F4> 關閉緩衝區(:bd,或 :bdelete,刪除緩衝區)
指令碼如下:nnoremap <F1> :call MyCyclebuffer(0)<CR>
nnoremap <Leader>1 :call MyCyclebuffer(0)<CR>
inoremap <F1> <ESC>:call MyCyclebuffer(0)<CR>
nnoremap <F2> :call MyCyclebuffer(1)<CR>
nnoremap <Leader>2 :call MyCyclebuffer(1)<CR>
inoremap <F2> <ESC>:call MyCyclebuffer(1)<CR>
" Cycle Through buffers 
" from MiniBufExplorer, modified by DJW
function! MyCyclebuffer(forward)
" Change buffer (keeping track of before and after buffers)
let l:origBuf = bufnr(''%'')
if (a:forward == 1)
bn!
else
bp!
endif
let l:curBuf = bufnr(''%'')
" Skip any non-modifiable buffers, but don''t cycle forever
" This should stop us from stopping in any of the [Explorers]
while getbufvar(l:curBuf, ''&modifiable'') == 0 && l:origBuf != l:curBuf
if (a:forward == 1)
bn!
else
bp!
endif
let l:curBuf = bufnr(''%'')
endwhile
endfunction

" <F4> delete buffer
nnoremap <F4> :bd<CR>
nnoremap <Leader>4 :bd<CR>
inoremap <F4> <ESC>:bd<CR>

" <F3> or Ctrl-S update buffer
nnoremap <C-S> :update<CR>
inoremap <C-S> <C-O>:update<CR>
vnoremap <C-S> <C-C>:update<CR>
nnoremap <F3> :update<CR>
inoremap <F3> <C-O>:update<CR>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.