Colors
顏色編碼的 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
在我的環境中。如何讓彩色差異正確顯示?
正如terdon 所說,
less
’ 預設行為是以cat -v
樣式顯示特殊字元的等價物。less -R
將改變這一點,以便將轉義序列傳遞給正在處理顯示的任何內容。
less
的預設值可以用LESS
環境變數指定,例如export LESS=-R
git
對尋呼機應該做什麼有自己的想法。如果沒有設置環境變數,呼叫時LESS
會設置為,符合預期;如果設置了,它將保持不變,如果不包含.FRX``less``git``LESS
LESS``-R
有兩種配置
less
使用的方法:要麼使用變數git
全域配置它,要麼更改設置,例如LESS
core.pager
git config --global core.pager "less -R"