Vim
Unite

unite.vim まとめ

More than 5 years have passed since last update.

unite.vim とは

vim 用の統合ユーザインターフェース。

様々なデータを共通のインタフェースを用いて操作できる。
unite.vim のインターフェースを学習するだけで色々なデータを簡単に操作できるようになり、また異なる種類のデータを同時に操作できる。

例えば、ノーマルモードで以下のコマンドを実行すると、カレントディレクトリとバッファの一覧を同時に表示できる。

:Unite file buffer

導入方法

unite.vim は GitHub で公開されている。
Shougo/unite.vim

NeoBundle を導入済みの場合は、まずは以下を .vimrc に記述する。

NeoBundle 'Shougo/unite.vim'

そして、ノーマルモードで以下のコマンドを実行すると、 unite.vim をインストールできる。

:NeoBundleInstall

使い方

操作の流れ

  1. データの種類(Source)を選択
  2. データを選択
  3. Action を選択

操作方法

  1. :Unite {source} を実行し、 unite を起動する
  2. データの一覧からデータを選択する(カーソルをデータに合わせる)
  3. Action を選択する
    • <Tab> を押すと、 Action の一覧が出力される。その一覧から実行したい Action を選択する。
    • <Tab> の代わりに <Enter> を押すと、 default のアクションをすぐに実行できるので便利。

実行例

例えば、 source として file を指定する場合は、以下のコマンドを実行する。

:Unite file

上記コマンドを実行すると、カレントディレクトリのディレクトリとファイルが一覧表示される。
この時に insert モードに入ることで、データの絞り込みを行えるので便利。

Source が file の場合は、 default のアクションは file の open なので、ファイル選択中に Enter キーを押すと選択中のファイルを開くことができる。

Source

よく利用する source の一覧。

source 内容
file カレントディレクトリのファイルとディレクトリ一覧
file/new ファイルの新規作成
file_mru 最近開いたファイル(Most Recently Used)の一覧
buffer buffer の一覧
register register の一覧
source unite の source の一覧

insert モードでの操作

unite 起動時の insert モードでよく利用する操作の一覧。

キー 動作
Ctrl + p 上の候補に移動
Ctrl + n 下の候補に移動
Enter default の Action を実行
Tab Action 選択画面に移行

Tips

  • Unite の停止
    • q で unite が停止する。

.vimrc

以下は私の unite.vim の設定。

.vimrc
" Unite
NeoBundle 'Shougo/unite.vim'
let g:unite_enable_start_insert=1
let g:unite_source_history_yank_enable =1
let g:unite_source_file_mru_limit = 200
nnoremap <silent> ,uy :<C-u>Unite history/yank<CR>
nnoremap <silent> ,ub :<C-u>Unite buffer<CR>
nnoremap <silent> ,uf :<C-u>UniteWithBufferDir -buffer-name=files file<CR>
nnoremap <silent> ,ur :<C-u>Unite -buffer-name=register register<CR>
nnoremap <silent> ,uu :<C-u>Unite file_mru buffer<CR>

上記設定をすると、 insert モードで unite が起動する。

また、ノーマルモードで ,uu と入力するだけで source に file_mru と buffer が指定された状態で unite が起動するのでとても便利。

ノーマルモードで ,uy と入力すると、 yank の履歴が表示される。

参考