Vimのw,e,b,f,t
を使ったVimの移動、面倒くさくないですか?
目的の場所に移動するために何度もw
を押したり、行数を入力するために数字キーまで手を伸ばしたり、 そんなことをしている間に日が暮れてしまいそうです。
そんなあなたにオススメしたいのが、 vim-easymotion です。
このプラグインはいくつかのアルファベットの入力だけでカーソル自由自在に爆速で動かせるようになります。
Install vim-easymotion
vim-plugを使ってインストールする場合はvimrcに以下を追加してください。
Plug 'easymotion/vim-easymotion'
Settings vim-easymotion
vim-easymotionはデフォルトでも十分使えますが以下の設定を加えておくと、更に便利に使えます。
1つは easymotion-<motion-prefix>-f2
で任意の2文字から始まる文字列の先頭にジャンプすることができます。bd
はBidirectionalの略で現在のカーソルから上下どちらにも移動することができます。overwin
はウィンドウを飛び越えて移動できるモードです。
" s{char}{char} to move to {char}{char}
map <leader>s <Plug>(easymotion-bd-f2)
nmap <leader>s <Plug>(easymotion-overwin-f2)
<leader>s
などに設定しておくと便利です。
もう1つはeasymotion-bd-jk
とeasymotion-overwin-line
です。これらを下のように設定しておくと、<leader>l
を押して任意の行に表示されたアルファベットを押すだけで、ウィンドウ内外問わず、その行に移動することができます。
" Move to line
map <leader>l <Plug>(easymotion-bd-jk)
nmap <leader>l <Plug>(easymotion-overwin-line)
これまで10G
や5k
など数字キーを使って行移動していましたが、これのお陰で数字を数えたり、読んだりすることなく、 より直感的に移動することができるようになりました!
Usage vim-easymotion
vim-easymotionでよく使う移動方法を下にまとめました。上の設定と合わせてご覧ください。
<leader><leader>w,W,e,E,b,B
で任意の単語へ移動できる
<leader><leader>s
で1文字を入力して移動するモード
<leader>s
で2文字を入力して移動する
<leader>l
で行移動モード
コメント