web-dev-qa-db-ja.com

「〜」と「(END)」のコマンド変更色が少ない?

Edge of aLessコマンド出力に沿った「〜」文字の色を変更するにはどうすればよいですか。

そして、下部の「(END)」の色を変更するにはどうすればよいですか?

1
Skills

LESSは、いくつかの環境変数を使用して、termcapライブラリに基づいて色を制御します。変数のリストは次のとおりです。

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[0m'          # end mode
export LESS_TERMCAP_ue=$'\E[0m'          # end underline
export LESS_TERMCAP_se=$'\E[0m'          # end standout-mode

別の前景色を設定したい場合は、3倍を別の色に変更します。背景を変更するには、4倍を追加します。 「〜」(チルダ文字)の色を質問から前景が赤、背景が緑に設定する

export LESS_TERMCAP_md=$'\E[31;42m'

これらの変数を使用すると、検索パターン、プロンプトに色を付けることができ、マニュアルでさえカラフルになります(ポケットベルとしての使用量が少ない場合)。

プロンプトのような他の少ない動作を変更することもできます。これを試してください:

export LESS='-iR -j4 --shift 5 -P ?n?f%f .?m(file %i of %m) ..?ltlines %lt-%lb?L/%L. :byte %bB?s/%s. .?e(END) ?x- Next\: %x.:?pB%pB\%..%t'

それで遊んで、楽しんでください。

注1

新しいgroffバージョンのバグにより、設定が必要になる場合があります

export GROFF_NO_SGR=''

色を変えることもできます。

注2(基本カラーコード一覧)

Foreground:
30 - black
31 - red
32 - green
33 - yellow
34 - blue
35 - Magenta
36 - cyan
37 - white

Background:
40 - black
41 - red
42 - green
43 - yellow
44 - blue
45 - Magenta
46 - cyan
47 - white

More about color codes: http://en.wikipedia.org/wiki/ANSI_escape_code
2
jimmij

lessは、表示される機能の微調整を提供せず、太字や反転(または目立つ)などのビデオ属性を使用することを好みます。

  • ~文字は太字で印刷され、「twiddle」オプションが設定されている場合に限ります(「ファイルの終わりの後にチルダを表示する」)。

  • 太字のテキストを描画するために使用される端末機能を変更できますが、「END」は目立つ/スタンドエンド端末機能で囲まれています。

これらの両方について、lessは他の理由で同じ端末機能を使用します。たとえば、

  • 太字は、lessが、文字が同じ文字を含むセルを上書きしたことを確認した場合に使用されます。例: AbackspaceA

  • 目立つのは、エラーメッセージを強調するために使用されます。

とはいえ、次の2つの環境変数に適切なターミナルエスケープシーケンスを設定することで、太字のテキストの外観を変更できます。

LESS_TERMCAP_md
LESS_TERMCAP_me

terminfo(5) マニュアルには、「md」と「me」の意味の手がかりがあり、3番目の列にtermcap名がリストされています。

   enter_bold_mode               bold       md        turn on bold (extra
                                                      bright) mode
   exit_attribute_mode           sgr0       me        turn off all
                                                      attributes

同様に、傑出したものとスタンドエンドは

LESS_TERMCAP_so
LESS_TERMCAP_se

この説明に対応:

   enter_standout_mode           smso       so        begin standout mode 
   exit_standout_mode            rmso       se        exit standout mode  

参考文献:

0
Thomas Dickey