vimの便利なPlugin(その22)vim-signature ~ マーク位置の表示

   2017/05/21

みなさんvimにあるマーク機能をご存じでしょうか。 知っておられる方でも旨く使っていない場合もあるのではないでしょうか。 マーク機能とは、ファイル内であるポジションを登録しておき、後で必要に応じてその登録場所に素早く移動できる機能のことです。 特にプラグインを入れなくても、vimに付属している機能ですので、コマンドモードラインからコマンドを実行することによってもいろいろ操作できます。 ただ私にとっては、暫く使わないでいるとコマンドを忘れてしまい毎回調べるのが面倒であったり、複数のポジションを登録してしまうと、どのキーがどのポジションに登録してあるか分からなくなり限られた使い方になっていました。 今回ご紹介するvim-signatureは、登録してあるマークを表示してくれたり、ロケーションウィンドウ(quickfixのようなもで、それぞれのウィンドウが独立して持っているリスト)にマークをリスト表示したり、また登録自体も簡単にしてくれるツールですので是非インストールして試してみて下さい。 それでは、いつもの通り、試してみた環境から。

  • CentOS6.8 x86_64
  • vim-7.4

Install

今回もdein.vimを前提とさせていただきます。 まだ、dein.vimを使っていない方は(その5)から。

call dein#add(‘kshenoy/vim-signature’)

これで「:call dein#install()」をコマンドラインモードで実行すれば、インストールは終了。

使い方

特に設定をすることなく次のテーブルにあるキーマップが使えるようになります。

mx ‘x’をマークしたり、外したりし、左端のカラムに’x’を表示します。
dmx ‘x’をマークから外します。 xは、a-zA-Z
m, ‘x’をしていしなくとも、次に利用可能な文字をマークする。
m. もしカーソルがあるラインにマークが登録してなければ次に利用可能な文字をマークする。 もしマークが登録してあれば、始めに存在するマークを削除する。
m-  カーソルがあるラインに登録してあるマークを全て削除する。
m<Space>  現バッファーから登録してある全てのマークを削除する。
]  次のマークに移動。
[  前のマークに移動。
]’  次のマークが存在するラインの先頭カラムに移動。
[‘ 前のマークが存在するラインの先頭カラムに移動。
]  アルファベット順で次のマークに移動する。
[  アルファベット順で前のマークに移動する。
‘]  アルファベット順で次のマークがある行の先頭カラムに移動する。
‘[   アルファベット順で前のマークがある行の先頭カラムに移動する。
 m/  ロケーションリストを開き現バッファーにあるマークを表示する。

私は、黄色にハイライトしたコマンドしか使っていませんが、それでも不自由しません。  次にいくつかマークを登録していき、移動していくところを動画にしてみました。

どうでしょうか? 3〜4コマンド覚えるだけでかなり便利になりますね。 是非試してみて下さい。

  • このエントリーをはてなブックマークに追加
  • Pocket

この記事へのコメントはこちら