(親記事はコチラ Vimコマンド&Script入門)
:vimgrep 続きです。
検索結果に対して、タブが多すぎですので、重複しているタブを削除するため、一旦、現在のタブを全て削除。
:tabnew :tabonly
検索結果を今一度確認。
:echo a
別の空リストを用意します。
:let b=[]
ファイル名のみをbリストに登録。
:for bname in a : call add(b,bufname(bname.bufnr)) : endfor
:echo b
次に、重複しているファイルを削除するため、sortしてuniqします。
:let c=uniq(sort(b)) :echo c
ファイル名一覧ができたので、各ファイルにタブを割り当ててみます。
:for bname in c : execute "tabnew" bname : endfor
だいぶスッキリしました。
コメント