読者です 読者をやめる 読者になる 読者になる

vimのマーカーの話

vim

vimにはマーカという便利な機能がある。
ファイル内の指定した位置にマーカをつけておけば、いつでもその場所を参照するとこができる。

マーカの付け方はノーマルモードで"m+マーカの記号1文字"を打てば良い。
例えば、

ma
mz
mK

などである。
マーカをつけた場所に移動する場合は、デフォルトでは"`+マーカの記号"である。
つまり、

`a
`z
`K

で良い。
自分のつけたマーカを参照する場合は、

:marks

と打てば良い。

マーカは最大で次の52個つけられる。

  • a-z

 バッファにファイルが存在する限り記録される。バッファからファイルを削除するとマーカも消える。ファイルごとにa-zのマーカがつけられ、ファイル間の移動はできない。

  • A-Z

 ファイル名込みで記録されるマーカ。小文字のものと違いファイル間の移動が可能だが、ファイルごとに同じマーカとなるので他のファイルで同じマーカをつけると、上書きされる。
特殊なマーカとして

  • 0-9

 詳しくは現在のカーソルポジションなどが記録される。

  • [

 直前に変更されたテキストかヤンクしたテキストの最初の文字。

  • ]

 直前に変更されたテキストかヤンクしたテキストの最後の文字。

unite-marks

uniteを入れている場合は、unite-marksというマーカ管理のsourceを使うと良い。
tacroe/unite-mark · GitHub
NeoBundleを入れてる場合は次でOK。

NeoBundle 'tacroe/unite-mark'

使うときは

:Unite mark

A-Zのマーカは表示されないようなので:marksを使う必要がありそう?