w3mをページャとして使うと便利

ページャとしてはみなさんlessだのlvだの使っていると思いますが、w3mを使うとちょっと便利です。

w3mについては man w3m してください。


検索結果からファイルに直接飛べたりします。


この動画では次のような、 lw という単純なシェル関数を定義して使っています。

lw () {
    perl -pe 's/\&/\&/g' |\
    perl -pe 's/</\&lt;/g' |\
    perl -pe 's/>/\&gt;/g' |\
    perl -pe 's/^([^:]+):(\d+):(.+)$/<a href="$1">$1:$2<\/a>:$3/' |\
    perl -pe 's/$/<br\/>/' |\
    EDITOR='vim' w3m -T text/html
}


grep とか ack とかの
ファイル名:....内容.....
という形式の出力をフィルタして
<a href="ファイル名">ファイル名</a>:....内容.....
というHTMLにして、それをw3mにパイプで渡しています。
これでファイル名がリンクになり、ファイルに直接飛べるというわけです。
編集したくなったらEを押せばエディタが開きます。


w3mなので「戻る」で検索結果に戻れたり、履歴を見れたりもできますね。


>とかが混じってるとHTMLが崩れるのでエスケープしたりしています。
これだとファイル名に「"」とか混じってるとだめだけどそんなファイルなかなかないしまあいいか。