色分けされたgit diff -> lessは色を正しく表示しません

色分けされたgit diff -> lessは色を正しく表示しません

私はSLES11システムでリモートで作業しています(残念ながら私にとってはそうです)。このコンピュータでは、特にgitを使用してgit diff結果をlessいくつかの色に渡します。これで何らかの理由で、色ではなく次のような線が表示されます。

ESC[1mdiff --git a/path/to/file.h b/path/to/file.hESC[m
ESC[1mindex 1ab153f..0491db9 100644ESC[m

など。

私は端末が色をサポートしていることを知っています(lsの結果は色です)。TERM=xtermそしてそれはCOLORTERM=1私の環境にあります。

色の違いを正しく表示するにはどうすればよいですか?

ベストアンサー1

〜のようにテデンと言うless'デフォルトの動作は、スタイル別に特殊文字に対応する項目を表示することですcat -vless -R表示される内容を処理するためにエスケープシーケンスが配信されるように変更します。

lessデフォルト値はLESS環境変数を指定することで指定できます。例えば

export LESS=-R

gitページャが実行する必要があることについて独自のアイデアを持ってください。環境変数が設定されていない場合は、期待LESSどおりに呼び出し時に設定されます。FRXlessgitLESS はいLESS設定すると変更されずにそのまま保持され、含まれないと出力が読み取れなくなることがあります-R

less利用可能な設定方法には2つありますgit。グローバル構成を使用またはLESS変更することです。このcore.pager設定例えば

git config --global core.pager "less -R"

おすすめ記事