今日Vim&Emacs エキスパート活用術を買ってきた。

この記事の下書きは先週綴っていたのだが、記述するプラグインが被りまくっていたら微妙だと思っていたので、放置していたが、あまり被っていなかったためアップ。

------------------------------------------

プラグイン管理(日本語記事はNeoBundleばかりだか、他にもいくつかメジャーっぽいのがある)。

https://github.com/junegunn/vim-plug

vimagit(vim版magit?)

https://github.com/jreybert/vimagit

agit(Gitのログ閲覧)

https://github.com/cohama/agit.vim

Gitの差分を確認できる(+とか-とか出るやつ)

差分箇所に一気に移動できるのも便利。

https://github.com/mhinz/vim-signify

メモプラグイン。パスをDropboxに指定してメモを共有化してる。

https://github.com/glidenote/memolist.vim

ファイル操作。移動の際にも使用(Uniteと依存していた気がする)。

https://github.com/Shougo/vimfiler.vim

最近開いたファイルを開く

https://github.com/vim-scripts/mru.vim

コメントアウト

https://github.com/tyru/caw.vim

カーソル下の単語をハイライト

https://github.com/osyo-manga/vim-brightest

行ブックマーク(別バッファを開いていても飛べるので便利)

https://github.com/MattesGroeger/vim-bookmarks

ファイルを絞り込んでジャンプ

https://github.com/ctrlpvim

バッファをタブに表示

http://nanasi.jp/articles/vim/minibufexpl_vim.html

カーソル移動

https://github.com/easymotion/vim-easymotion

 

その他、ここから色々見つけられる

http://vimawesome.com/

-----------------------------------

 

便利な設定(.vimrcに記述)

 

スペース+evで設定ファイルを開くことができる
nnoremap <silent> <Space>ev  :<C-u>edit $MYVIMRC<CR>
nnoremap <silent> <Space>eg  :<C-u>edit $MYGVIMRC<CR>

 

同じようにスペース+xxxの流れで色々なコマンドを即座に叩けるように設定すると、作業がスムーズになる。

nnoremap <silent> <Space>gb :Gblame<CR>

本来ならLeaderキーを設定して行うのだろうけど、横着して調べてない

 

vimはgrepが遅いがAgを使えば劇的に早くなる

https://github.com/rking/ag.vim

http://qiita.com/0829/items/7053b6e3371592e4fbe6

 

また、以下の設定でカーソル配下でg*キーでAgでGrepできる(同様に検索や置換も同じように設定している)
nnoremap <expr> g* :Ag . expand(<cword>)
vnoremap <expr> g* :Ag . expand(<cword>)

 

スペース+<o-n>でonlyコマンド(選択しているバッファ以外を閉じる)

vimをいじっていると結構バッファがカオスになることがあるので地味に多用

nnoremap <silent> <Space>o  :only<CR>

 

NERDTreeも入れているが、以前「ツリーは意外となくても大丈夫」的な記事を読んでから、なるべく開かなくなった(そして本当に意外と、今の所問題ない)。

基本的に.gitのある箇所をプロジェクトルートとして、vimfiler,ctrlpvimなどでやりくりできている。