MiniBufExplorer を試しましたが、通常はいくつかのウィンドウが表示されるか、完全に閉じます。私が望むのは LustyJuggler のようなもので、インクリメンタル検索、つまりEmacsでバッファーを切り替える方法です。確かにこのようなスクリプトはありますか?
Wincent Colaiutaの Command-T vimプラグイン を数か月間使用しています。 Wincentは、Cで高速にする必要がある部分を作成しました。また、ファイルパターンマッチングロジックは、TextmateのCommand-Tよりも優れていると思います。 screencast を確認してください。
VIM=のCommand-Tプラグインは、最小限のキーストロークでファイルを開くための非常に高速で直感的なメカニズムを提供します。 "Go- TextMateでCommand-Tにバインドされた「ファイルへ」ウィンドウ。
ファイルは、パスに表示される文字を入力することで選択され、特定の場所(パスセパレーターの直後など)に表示される文字にさらに重みを付ける必要があることを認識するアルゴリズムによって順序付けられます。
簡単なバッファー切り替え には多くの便利なヒントが含まれています。バッファ名の自動補完を行う.vimrcに以下を適用し、最も便利なバッファ切り替えコマンドを<Leader>および左側のホーム行キーにマップし、ステータス行に現在のバッファ番号を表示します:
"" Tab triggers buffer-name auto-completion
set wildchar=<Tab> wildmenu wildmode=full
let mapleader = ","
map <Leader>t :CommandT<Return>
map <Leader>a :bprev<Return>
map <Leader>s :bnext<Return>
map <Leader>d :bd<Return>
map <Leader>f :b
"" Show the buffer number in the status line.
set laststatus=2 statusline=%02n:%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P
MiniBufExplorer も使用します。これにより、リストされた各バッファーが水平方向に分割された上部にコンパクトにリストされます。
以前はタブと複数のgvimインスタンスを組み合わせて使用し、関連ファイルのグループを各インスタンスのタブとして保持していました。 1つのインスタンスでタブが多すぎない限り、タブバーには編集中の各ファイルの名前が一目でわかります。
次に、Jamis Buckが TextMateからvimに戻る に切り替えた方法についての投稿を読み、いくつかの素晴らしいトリックを学びました。
これで、1つのgvimインスタンスが最大化され、複数のウィンドウに分割されるため、一度に複数のファイルを表示できます。 Ctrl-Fをfuzzyfinder_textmateにバインドしたので、(たとえば)Ctrl-F mod/usob
app/models/user_observer.rbを開きます。私はもうタブに煩わされることはほとんどありません。
2010/08/07更新
Fuzzyfinder_textmateは素晴らしいままですが、Caseyがコメントで指摘しているように、それはもはや維持されていません。また、大きなプロジェクト(多くのディレクトリまたはファイル)で作業する場合、(および/またはfuzzyfinder.vim)が少し遅くなり不安定になるため、代替手段を探していました。
幸いなことに、 Wincent Colaiuta の Command-Tプラグイン という形式の非常に素晴らしい代替手段があるようです。これは、fuzzyfinder_textmateと非常によく似た(わずかではないにしても)動作をしますが、著しく高速です。また、見つかったファイルを分割または垂直分割で開くことができるなどの便利な機能も備えています。指摘してくれたDavid Riversに感謝します(そして賛成です!)。
基本を使用します-':ls
'+' :bn
'/' :bp
'+' :b <part-of-name>
'
「ctrl-w s」と「ctlr-w v」がウィンドウを分割するのが好きです。次に、ctrlを押しながら分割ウィンドウ間を移動する移動キー(h、j、k、l)をマップします。
" Map ctrl-movement keys to window switching
map <C-k> <C-w><Up>
map <C-j> <C-w><Down>
map <C-l> <C-w><Right>
map <C-h> <C-w><Left>
手を矢印キーに移動するのは面倒です。
次に、ctlr-tabを設定して、現在のウィンドウのバッファーを切り替えます(他の多くの環境と同様)。
" Switch to alternate file
map <C-Tab> :bnext<cr>
map <C-S-Tab> :bprevious<cr>
Vimには常にあなたが知っているよりも多くの秘密がありますが、これらは過去数年にわたって私にとって非常にうまく機能しています。
nmap <Leader>bb :ls<CR>:buffer<Space>
誰も素敵なプラグインについて言及していませんでした ctrlp.vim 。このプラグインを使用すると、名前でバッファを検索できます。
私が使う
CTRL-J 次のバッファ用
CTRL-K 前のバッファ用
CTRL-L 次のタブ
CTRL-H 前のタブ用
.vimrc
設定:
map <C-J> :bnext<CR>
map <C-K> :bprev<CR>
map <C-L> :tabn<CR>
map <C-H> :tabp<CR>
http://syskall.com/my-biggest-vim-productivity-boost/ を参照してください
imap <A-1> <Esc>:tabn 1<CR>i
imap <A-2> <Esc>:tabn 2<CR>i
imap <A-3> <Esc>:tabn 3<CR>i
imap <A-4> <Esc>:tabn 4<CR>i
imap <A-5> <Esc>:tabn 5<CR>i
imap <A-6> <Esc>:tabn 6<CR>i
imap <A-7> <Esc>:tabn 7<CR>i
imap <A-8> <Esc>:tabn 8<CR>i
imap <A-9> <Esc>:tabn 9<CR>i
map <A-1> :tabn 1<CR>
map <A-2> :tabn 2<CR>
map <A-3> :tabn 3<CR>
map <A-4> :tabn 4<CR>
map <A-5> :tabn 5<CR>
map <A-6> :tabn 6<CR>
map <A-7> :tabn 7<CR>
map <A-8> :tabn 8<CR>
map <A-9> :tabn 9<CR>
私は最近、よりミニマルになりました。
使用するバッファーを循環させるには ]b そして [b 損なわれていない場合: https://github.com/tpope/vim-unimpaired
開いているバッファーに直接ジャンプするには、Vimのタブ補完を使用します。 :b。数文字で、1つまたは2つのタブで開いているバッファーにアクセスできます。
私が使用するオープンバッファと同様に :e 相対パスとタブの完全な。
私も使用します :ls たまに、開いているバッファを確認したり、変更されたステータスを確認したりします。
私が使用するバッファを取り除くために :bw バッファを消去します。私は通常、一時的な分割を行い、レイアウトを保持するためにバッファを変更します :bw アクティブなウィンドウも閉じます。
私が試したすべてのminibufのことは、私をいらいらさせてしまいました。そして、ランダムなファイルを開くスマートマッチングのことはしたくありません。本当に何かをブラウズする必要がある場合は、NERDtreeを使用します(:e .)。
IDK、最近ヤンクリングも落としました xp)およびレジスタの使用を開始し、最近決定しました f/t 動きはこれまでで最大のものです...
私が使用するバッファーをリストして切り替えるには:
nnoremap <Leader>l :ls<CR>:b<space>
バッファを切り替えるには:
map <Leader>n :bn<CR>
map <Leader>p :bp<CR>
このHTML :: Masonプロジェクトで作業するために.vimrcを作成するのにかなりの時間を費やしました。そのため、タブと分割ウィンドウの奇妙な組み合わせがあります。視聴を楽しむために:
map ;o :Sex <CR>
map <C-J> <C-W>j
map <C-K> <C-W>k
map <C-l> <C-W>l
map <C-h> <C-W>h
map ;] :tabnext<CR>
map ;[ :tabprev<CR>
map <C-t> :tabe +"browse ."<CR>
map <C-O> :NERDTreeToggle ~/curr/trunk/<CR>
tselectbuffer を使用します。それは非常に高速で、bufexplorerとは異なり、ウィンドウのスペースを取りません。また、インクリメンタル検索もあります。minibufexplorerを試してみましたが、バッファー内のナビゲーションが少し難しいことがわかりました。
Tselectbufferを使用します。それは非常に高速で、bufexplorerとは異なり、ウィンドウのスペースを取りません。また、インクリメンタル検索もあります。minibufexplorerを試してみましたが、バッファー内のナビゲーションが少し難しいことがわかりました。
優れた Buffer Explorer は、他のアプリケーションで使用できることを願うほどの強力な筋肉記憶であることがわかりました。 3つ以上のファイルをアクティブに編集すると、非常に高速であることがわかりました。
<S-J>
および<S-K>
を:bp
および:bn
にマッピングしましたが、ファイル数が10を超えているため、使用していません。 <C-J>
および<C-K>
をGnomeターミナルの前および次のタブに移動します。通常、作業している4つの異なるプロジェクトごとにvimの4つのインスタンスを実行します。私はまだ、次のバッファと前のバッファが、バッファリストの順序ではなく、作業中のバッファの履歴に移動することを本当に望んでいます。
Vimセッションで複数のバッファが開いている場合、バッファとそれぞれのバッファ番号を追跡することが難しくなる可能性があります。この場合、簡単なマップを使用して別のファイルへの切り替えを簡単に行うことができます。
:nnoremap(F5):buffers(CR):buffer(Space)
^ W + w/^ W + rでシンプルな:vsplitを使用し、Ctrl + Alt + PgUp/PgDownキーの組み合わせで:tabnewを使用します。