Webtech Walker

vimでコマンドの出力をキャプチャする

vimで:mapとかしたとき、その出力を検索したかったんですけど、やりかたがわからなかったのでtwitterで聞いたら解決方法を教えていただきました。ありがとうございました。

https://twitter.com/kana1/status/12874074721

:redirで出力をリダイレクトできるんですね。知らんかった。詳しくは:help redirしてもらうとわかると思うんですが、以下の様な感じでキャプチャを取れます。

:redir > file
:silent map
:redir END

他にも変数とかレジスタにもリダイレクトできます。でもまあこれだといろいろとめんどいので一発でキャプチャとれるような設定書こうと思ってたら以下の設定を教えてもらいました。

Shougo's gist: 369112 — Gist

これで

:Capture map

でキャプチャとれるようになりました。

さらに自分好みに修正してみたのがこれ。

hokaccha's gist: 380535 — Gist

buftype=nofileにしたりバッファ名に入力したコマンドを入れたりとか。

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