2
0

More than 3 years have passed since last update.

Vim でのタブ、ウィンドウ、バッファ操作が覚えられなくて、絶望した末に、

Last updated at Posted at 2021-08-14

Vim も現代的なエディタなので、画面分割もタブもあります。タブや画面を渡り歩く操作が覚えられない!

自分の頭のできの悪さに絶望したのだけれども、自分で覚えられるようなキーバインディングを用意してみたら、嘘のように便利に使えるようになったという話です。15年遡って過去の自分に教えてやりたい。

以下が設定です。平凡な設定だから、こういう感じで設定している人も多そう。(2021-08-18 修正)

" タブを巡回
nnoremap <Leader>tl :tabnext<CR>
nnoremap <Leader>th :tabprev<CR>

" 上下左右のウィンドウに移動
nnoremap <Leader>wk <c-w>k
nnoremap <Leader>wh <c-w>h
nnoremap <Leader>wj <c-w>j
nnoremap <Leader>wl <c-w>l

" バッファを交換
nnoremap <Leader>bh :bprev<CR>
nnoremap <Leader>bl :bprev<CR>

基本はカーソル移動のキーの前に、文脈に応じて t, w, b を前置するだけなので苦もなく覚えられるでしょう?以下がいくつかの例です。

  • <Leader>bl: 次のバッファを表示
  • <Leader>wk: 上のウィンドウに移動
  • <Leader>tl: 右のタブを表示

(2021-08-18 の修正内容について)

コメントに書いたように、以前の設定を施したところ t, b などの移動コマンドに対するビジュアルフィードバックが遅くなりました。t の打鍵後に neovim が次の文字の入力を待って、タブの変更かカーソル移動かを判断することが原因と思われます。

今日の修正内容は、tb などの移動コマンドとの衝突を避けることが目的です。私は <Leader> にスペースバーを割り当てています。

2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0