2009年4月15日水曜日

Vimアドオン: manpageview

前回紹介した「K」でカーソル下の単語のmanを引く方法ですが、ただmanコマンドを起動しているだけなので、いくつか不満があり(そりゃmanのページャがVimでないのでストレスが溜まるってもんです!)今回はそれらを補ってくれるアドオンを紹介しちゃいまっす。

不満点その1

C-w K」としても水平分割してmanを開いてくれず、コーディングしながらmanを見る場合、複雑な型だったりすると一度に覚えきれずmanとコードを行ったり来たりしなくてはならなくなる。
タグジャンプの場合なら「C-w C-]」とすれば水平分割して定義場所に跳んでくれるのに。

ちなみにEmacsではmanにしてもgdbにしても水平分割が基本みたい。ただし、Vimのように"K"一文字で開いてくれる訳ではなさそう。このポリシーの違いでVim派なだけであって、Emacsの方が優れているとかいないとかいう優劣を付ける気はさらさらない(まぁどちらも同等の機能を有しており、片方で出来ることはもう片方でも出来るはずなので)。
それに複数あることは選べる自由があるということで良い事である。GnomeとKDEとかもね。

→ このmanpageviewというアドオンを入れると、「K」とするだけで(デフォルトで)水平分割してmanを開いてくれるようになる!

不満点その2

デフォルトの「K」だと、単にmanコマンドに制御を移しているだけなのでmanのページャが起動される為、Vim操作が出来ない。Vim操作が出来ないとman内で「*」検索ができないし、man中の説明に出てくるコマンドや標準関数のmanを更に引きたい場合に「K」コマンドが使えない。

→ manpageviewでは、manのページャがVimになるので上記操作が可能になる!

不満点その3

上記に関連するがページャがVimでない為、必要なインクルード・ファイルを確認したとき、"#include~"を「yy」でコピれない!
散々Vimでマウスを使うのはNGと言ってきましたが、このアドオンを知るまでは自分もこの時ばかりは渋々マウスでコピペしてました(もちろん納得はいかずこのアドオンを見つけるに至った)。

→ manpageviewでは、以下でコピペできるようになる!
インクルード・ファイルの行にカーソルを持って行き
yy」でヤンク(コピー)
C-w C-w」でフォーカス・ウィンドウをコードの方に切り替えて
gg」でソースの先頭行に移動して
}」でインクルード・ブロックの最下行に移動して
P」で貼り付けて
d0」で前の空白を消去(インデントを揃える)

インストール

インストール方法はここよりmanpageview.vba.gzをDLして、そのページにもあるように
$ vim manpageview.vba.gz
   :so %
   :q
とする。

普通のアドオンは~/vim/plugin/に配置すれば良いだけだが、manpageviewはいろいろ突っ込む必要があり、インストーラとしてVimスクリプトを用意してくれているので、インストール方法が異なる。
$ tree ~/.vim/
.vim/
|-- autoload
|   `-- manpageview.vim
|-- doc
|   |-- manpageview.txt
|   `-- tags
|-- plugin
|   `-- manpageviewPlugin.vim
`-- syntax
    |-- info.vim
    |-- man.vim
    |-- mankey.vim
    `-- manphp.vim

4 directories, 8 files




0 件のコメント:

コメントを投稿