Lessコマンドは「〜」と「(END)」の色を変更しますか?

Lessコマンドは「〜」と「(END)」の色を変更しますか?

Lessコマンドは、出力の端にある「〜」文字の色を変更する方法です。

下部の「(END)」色はどのように変更されますか?

答え1

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

異なる前景色を設定するには、3xを別の色に変更したり、背景の変更を変更したり、たとえば4xを追加したりできます。質問の「〜」(チルダ文字)の色を赤の前景と緑の背景セットに変更します。

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

これらの変数を使用すると、検索パターン、プロンプト、さらにはマニュアルまで色を指定できます(ページャでlessを使用している場合)。

プロンプトなどの他の小さな動作を変更することもできます。次のいずれかを試してください。

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

less表示機能に微調整を提供せず、太字や反転(または強調表示)などのビデオプロパティを使用することをお勧めします。

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

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

どちらの場合も、less同じ端末機能が異なる理由で使用されます。

  • lessたとえば、同じ文字を含むセルに文字がある場合は、太字を使用してくださいAbackspaceA

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

つまり、適切な端末エスケープシーケンスを使用して、次の2つの環境変数を設定することで、太字のテキストの外観を変更できます。

LESS_TERMCAP_md
LESS_TERMCAP_me

これ用語情報(5)マニュアルは、第3列にtermcap名をリストし、「md」と「me」が何を意味するのかについての手がかりを提供します。

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

同様に、StandoutとStandendは次のようになります。

LESS_TERMCAP_so
LESS_TERMCAP_se

この説明に該当します。

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

追加資料:

関連情報