📘
batのページャーをovにする
はじめに
ovはターミナルページャーです。
UTF-8のみをサポートしています。
batはcatの代わりに使用するコマンドで、シンタックスハイライトや加工して出力することができます。
ページャーの代わりに使用することもできますが、ページャー機能はなく、less
などのページャーを自動で呼び出しています。
ov
では、bat
の出力を見やすくできるため紹介します。
bat
のページャーの設定
bat
のページャーは、PAGER
またはBAT_PAGER
環境変数で設定できます。
export BAT_PAGER="ov --quit-if-one-screen -H1"
または ~/.config/bat/config
に設定することもできます。
--wrap=never
--pager="ov --quit-if-one-screen -H1 --section-header"
bat
でも折り返し表示(wrap
)が可能ですが、bat
の方で動的に切り替えができないので、ov
の方で切り替えることをお勧めします(--wrap=never
)。
--quit-if-one-screen
は、1ページの場合に終了するオプションです。
-H1
は、ヘッダーを1行表示するオプションです。
--section-header
は、セクションの区切りをヘッダーにするオプションです。
ソースコードの表示
bat
を使用する目的の一つに多くの種類に対応したシンタックスハイライトがあります。ソースコードを表示するときに便利です。
単純に表示するだけの場合は、less
を使用した場合と大きく変わりませんが、ov
のセクション機能を有効にすると、閲覧が便利になります。
bat
は様々なファイルの閲覧に使用されるため、起動後にそのファイルに合わせて、セクションの区切りを設定しています。
GO言語では、^func
を設定すると、関数の開始がセクションの区切りになります。
そうすると関数単位で移動が可能になり、スクロールして関数の途中を表示しても、関数名がヘッダーとして表示されたままになります。
検索をして移動しても関数名がわかるので便利です。
Discussion