マンページ強調色

マンページ強調色

私のマニュアルページを着色するためにこれを置きました。Archlinux.orgのコード.bashrcと入力してください。

man() {
    env LESS_TERMCAP_mb=$'\E[01;31m' \
    LESS_TERMCAP_md=$'\E[01;38;5;74m' \
    LESS_TERMCAP_me=$'\E[0m' \
    LESS_TERMCAP_se=$'\E[0m' \
    LESS_TERMCAP_so=$'\E[38;5;246m' \
    LESS_TERMCAP_ue=$'\E[0m' \
    LESS_TERMCAP_us=$'\E[04;38;5;146m' \
    man "$@"
}

検索を使用すると、/一致する色が強調表示されるのとは対照的に、よりぼやけていることを除いて、うまく機能します。私はこれを見つけようとしばらく時間を費やしましたが、それは本当に理解できませんでした。だから私が何であれば試行錯誤に過ぎませんでした。専門家に相談するのが最善です。それでは、検索結果が黄色の背景に黒いテキストと一致するようにするにはどうすればよいですか。

答え1

の検索パターンはlessハイライトモードの設定によって色分けされているため、黄色の上に黒くなるように入力する必要があります。

export LESS_TERMCAP_so=$'\E[30;43m'

30黒い前景と黄色の背景を表します43

答え2

man termcapエクスポートする変数の完全な定義については、参考資料を参照してください。たとえば、この抜粋は開始と終了の強調表示モード、つまり検索の強調表示に使用される値を扱います。

seはハイライトモードを終了します
...
だからハイライトモードを開始します

次のように、ハイライトモードで黒の背景に黄色を設定できます。

export LESS_TERMCAP_so=$'\E[01;33;03;40m'

すべてのシェルでこれらの変数をエクスポートする必要はないことは注目に値します。この関数を自分のものに移動したり、ログインした~/.profileとき~/.bash_profileにロードしたりすると持続します。

関連情報