vimの便利なPlugin(その7)unite.vim
unite.vimは、既にくいくつか紹介しているShougo氏が開発したPluginの一つで、vimの統合ユーザインターフェイスです。 「vimの便利なPlugin(その2)bufexlorer」で紹介したbufexplorerと同様にカレントディレクトリのファイルや、オープンしているファイルバッファを同時に一覧表示し操作できます。 また、それ以外にもいろいろ便利な機能がありますので、vimmerでしたら必須でインストールしておくべきPluginの一つと思います。
Install
インストールは、「vimの便利なPlugin(その5)」でご紹介したdein.vimの使用を前提とさせていただきます。 まだ、ご利用になったことのない方は、先に(その5)の方をご覧下さい。
以下の設定を.vimrcに追加します。
以下のインストールコマンドを実行します。
インストールは以上で終了です。
使い方
ディレクトリやファイルの一覧表示とファイルオープン
例えば、vimで/etc配下のあるファイルを開いているところで、以下のコマンドを実行します。※CentOS6での環境を想定しています。
すると以下ようにvim内で/etc配下のディレクトリやファイルがリストされます。
ノーマルモードでディレクトリを選択してエンターを押すと、ディレクトリを辿って行くことができます。 また、ファイルを選択するとファイルを開くことができます。※インサートモードにすると入力した文字列でリストが絞り込まれていきます。
ディレクトリやファイルを再帰的に一覧表示
上記と同様に/etc 配下で、以下のコマンドを実行します。※CentOS6での環境を想定しています。
するとvim内で/etc配下のディレクトリやファイルが再帰的にリスト表示されます。
バッファ一覧表示とオープン
いくつかファイルをオープンしている状態で、以下のコマンドを実行する。
すると以下ようにvim内で/etc配下のディレクトリやファイルがリストされます。
unite.vimで取り扱えるものの一覧を表示
以下の様に取扱可能なリストを表示する。
詳しくは、:help unite-source-file を参照して下さい。このリスト上でカーソールを合わせてエンターを押すと選択した機能が実行されます。
ここでは、いくつか便利そうな機能をご紹介します。
ブックマーク機能
以下のコマンドで現在開いているファイルをブックマークとして登録できます。 ここでは.vimrcファイルを開いてコマンドを実行してみました。
以下の様に登録名の入力を促されます。
そのまま何も入力せずにエンターを押すと、defaultというファイル名でブックマーク情報が記録されていきます。 違うファイル名でbookmarkの情報を記録していきたい場合はここでファイル名を入力します。 ファイルは、CentOS等のLinuxの場合、/home/ユーザ名/.cache/unite/bookmark/ の下に保存されます。
続いてブックマーク名を入力します。 ここで入力した情報が上記で指定したファイルに保存され、ブックマークとしてリスト表示されます。 何も入力せずにエンターを押すと現在開いているファイル名が入力されたことになります。
ブックマーク一覧を開くには、以下のコマンドを実行。
表示したいブックマーク名の上にカーソールを合わせてエンターをおすとファイルが開けます。 ※ちなみに私は、vimで開発する場合、ブックマークでファイルを記録していくより、セッションをファイルに保存する事が多いです。
grep機能
grep機能を紹介する前に、少し脱線してhighwayという高速検索ツールをインストールし利用してみることにしました。 興味のある方は、highwayでググってみて下さい。
- highwayのインストール
※CentOS6を想定しています。
まずは、epelをインストール
続いてレポジトリファイルを作成します。
[repos.highway]
name=highway
baseurl=http://tkengo.github.io/highway/centos/6
enabled=0
gpgcheck=0
インストールする。
依存性の解決をしています
–> トランザクションの確認を実行しています。
—> Package highway.x86_64 0:1.0.0-1 will be インストール
–> 依存性の処理をしています: gperftools-libs のパッケージ: highway-1.0.0-1.x86_64
–> 依存性の処理をしています: libtcmalloc.so.4()(64bit) のパッケージ: highway-1.0.0-1.x86_64
–> 依存性解決を終了しました。
エラー: パッケージ: highway-1.0.0-1.x86_64 (repos.highway)
要求: libtcmalloc.so.4()(64bit)
エラー: パッケージ: highway-1.0.0-1.x86_64 (repos.highway)
要求: gperftools-libs
インストール中に上記のようなエラーがでたら、
- unite.vimからhighwayを叩けるように.vimrcに設定を追加
let g:unite_source_grep_command = ‘hw’
let g:unite_source_grep_default_opts = ‘–no-group –no-color’
let g:unite_source_grep_recursive_opt = ”
endif
- 検索の方法
「Target .」と画面下に出力されたら検索したいディレクトリを指定しエンター。「Pattern: 」のあとに検索したい文字列を入力して検索を実行。画面上部に検索結果が羅列されます。
最後にコマンドを毎回タイプするのではなく、メタキーと組み合わせて起動させるのが便利だと思います。 例えば以下を.vimrcに追記して、<leader>f でディレクトリやファイルの一覧が表示されると思います。※<leader>は、設定を変更してなければ通常 ‘\’ です。
nnoremap <leader>r :<C-u>Unite file_rec<CR>
nnoremap <leader>b :<C-u>Unite buffer<CR>
nnoremap <leader>g :<C-u>Unite grep<CR>
nnoremap <leader>a :<C-u>UniteBookmarkAdd<CR>
nnoremap <leader>m :<C-u>Unite bookmark<CR>
まとめ
いかがでしょうか。 私は、まだuniteのをそこまで使い込んでいるわけではありませんので、説明が不十分だったかもしれません。 便利な使い方を発見したら追記していきたいと思います。
この記事へのコメントはこちら
コメントを投稿するにはログインしてください。