Ctrl+左右キーでvimのタブ切り替えをする

前回、Ctrl 左右キーでscreenのウィンドウ切り替えをする方法を書きましたが、今度はvimのタブを同様にして切り替えられるようにしたいと思います。
これができたりできなかったりして、詳しいことはよくわかってないのですが、とりあえず記しておきますね。

まず、vim のタブですが、これは :tabe コマンドで開くことができます。
vim を起動したら、試しに次のように入力してみて下さい。スクリーン上部にタブが表示されます。

:tabe ~/.vimrc

PuTTYなどのクライアントを使っている場合このタブは、コマンドあるいは .vimrc で次の指定をすることで、マウスクリックでも操作できるようになります。

set mouse=a

タブを閉じたいときは、スクリーンの右上、タブの右側端にある X をマウスでクリックするか、次のコマンドを打ちます。

:tabc

あるいはこう打っても大丈夫です。

:q

タブを閉じてもバッファには残ったままですので、完全に閉じるには、バッファを閉じるか、vim 自体を終了させて下さい。1

タブについて詳しくはこの辺のサイトとかを見て下さい。

さて次に、簡単なファンクションキーに機能の割り当てをしてみましょう。
これは昔どこかのサイトで見つけた書き方を真似したものなのですが、.vimrc に次のように書くと、F3キーを押したときに、:tabn が実行され、右のタブに切り替わります。

map <F3> <ESC>:tabn<CR>

同様にして、Ctrl+左右キーにも機能を割り当ててみましょう。
.vimrc に次のように書きます。この際、^[ は vim では、Ctrl+v の後に ESCキーを押して入力しますので注意して下さい。

map ^[[C <ESC>:tabp<CR>
map ^[[D <ESC>:tabn<CR>

.screenrcの設定をしたときと同じで、^[[Cは、Ctrl+左キーを表します。

.screenrcの時に書きましたが、termcapinfoの指定があると、うまくい効かないことがあるようです。
termcapinfoが具体的に何をしているのかは、僕にはまだ解っていません。

という風にして、screen のウィンドウ切り替えを Alt+左右キーで、vim のタブの切り替えを Ctrl+左右キーで行えるようになりました。

■ 追記

PuTTYのバージョンが v0.59 以下だと Ctrl+左右キー への割り当ては動作しないようです。
ごった煮版の v0.60 に上げたら動作しました。

マウス操作も0.59だと満足に動かないようなので、この際バージョンアップしてしまうのがいいでしょう。
ごった煮版 v0.60 の背景を透過させて使いたい場合は、こちらをご覧下さい。

  1. バッファの中身は :ls コマンドで確認でき、:bw 1 と番号を指定すれば閉じられます。

Ctrl+左右キーでvimのタブ切り替えをする」への1件のフィードバック

  1. ピンバック: PuTTY+tmux 環境で Ctrl+矢印 が効かなかった原因が解ったかも | yuuAn's Note

コメントを残す