パーソナライズされたカラーマニュアルページzshプラグインカラー

パーソナライズされたカラーマニュアルページzshプラグインカラー

ただインストールしました。カラーマニュアルページzshプラグイン。

うまくいきますが、下部のメッセージに見苦しい色が出力されます。

ここに画像の説明を入力してください。

すべてをオーバーライドせずにプラグインの色をパーソナライズする正しい方法は何ですか?色が直接設定されるプロセスのようです。プラグインの有効化

それとも私のシステムのバグなので、別の方法で修正できますか?実際に読み取れない基本的なカラー出力は奇妙に見えます。

私はUbuntu 18.10とgnome-terminalで動作しています。

ベストアンサー1

マニュアルページ( )の形式ではgroff明示的な色の使用は許可されていませんが、視聴者が色を表示するために再解釈できる太字または下線などのいくつかのテキスト装飾を使用します。これはリンクプラグインが行うことなので、このプラグインを削除し、代わりに変数を介して.zshrc直接色を設定することをお勧めします(このプラグインと同様にpagerをLESS_TERMCAP使用すると仮定します)。lessman

説明を含む変数のリストは次のとおりです。

export LESS_TERMCAP_mb=$'\e[6m'          # begin blinking
export LESS_TERMCAP_md=$'\e[34m'         # begin bold
export LESS_TERMCAP_us=$'\e[4;32m'       # begin underline
export LESS_TERMCAP_so=$'\e[1;33;41m'    # begin standout-mode - info box
export LESS_TERMCAP_me=$'\e[m'           # end mode
export LESS_TERMCAP_ue=$'\e[m'           # end underline
export LESS_TERMCAP_se=$'\e[m'           # end standout-mode

カラーコードのリストは、次のスクリプトを使用して見つけることができます。

#!/bin/bash

echo "PALETTE OF 8 COLORS (bold, high intensity, normal, faint)"
for i in {30..37}; do printf "\e[1;${i}m1;%-2s      \e[m" "$i"; done; echo
for i in {90..97}; do printf "\e[${i}m%+4s      \e[m" "$i"; done; echo
for i in {30..37}; do printf "\e[${i}m%+4s      \e[m" "$i"; done; echo
for i in {30..37}; do printf "\e[2;${i}m2;%-2s      \e[m" "$i"; done;

echo -e "\n\n\nPALETTE OF 256 COLORS (only normal)"
j=8
for i in {0..255}; do
    [[ $i = 16 ]] && j=6
    [[ $i = 232 ]] && j=8
    printf "\e[38;5;${i}m38;5;%-4s\e[m" "${i}"
    (( i>15 && i<232 )) && printf "\e[52C\e[1;38;5;${i}m1;38;5;%-4s\e[52C\e[m\e[2;38;5;${i}m2;38;5;%-4s\e[m\e[126D" "${i}" "${i}"
    [[ $(( $(( $i - 15 )) % $j )) = 0 ]] && echo
    [[ $(( $(( $i - 15 )) % $(( $j * 6 )) )) = 0 ]] && echo
done
exit 0

おすすめ記事