less
이에 따르면 구문 강조 자체를 수행할 수 없습니다.이 스레드.
그러나 git diff
less의 기본 호출기에서는 컬러 출력을 멋지게 표시합니다. 출력을 파일로 리디렉션하면 git diff
색상 이스케이프 시퀀스가 표시되지 않습니다.
git diff
전송되는 위치를 알고 이에 따라 출력 형식을 지정할 수 있습니까 ? 무엇을 할 것인가?
방금 git이 출력에 색상을 지정하는 것을 확인했지만 diff
(예 git diff
: ) 일반적으로 구문 강조를 수행하는 방법을 모릅니다. 예를 들어
git show 415fec6:log.tex
TeX와 유사한 구문을 활성화하지 않습니다.
소스를 읽으면서 git
다음 팁을 찾았습니다.
존재하다 diff.h
:
int use_color;
아까도 언급했는데구문 강조, 그러나 이것은 잘못된 것입니다. 출력 색상을 의미합니다.
답변1
답변2
달리기:
git diff --color=always > output
색상 이탈을 표시합니다.
젠장, 파일에서 찾았어요 git
:color.c
static int check_auto_color(void)
{
if (color_stdout_is_tty < 0)
color_stdout_is_tty = isatty(1);
if (color_stdout_is_tty || (pager_in_use() && pager_use_color)) {
char *term = getenv("TERM");
if (term && strcmp(term, "dumb"))
return 1;
}
return 0;
}
답변3
less
색상을 지원할 수 -r
--raw-control-chars
있으며-R
--RAW-CONTROL-CHARS
파이썬을 사용할 수 있습니다pygmentize
하이라이트를 만들고 입력하세요.
모두 결합하려면 less 필터를 구성하세요.슈퍼유저가 언급했듯이