.zshrc
내 파일에 이게 있어요
export MANLESS=""
export LESS="--RAW-CONTROL-CHARS"
export LESS_TERMCAP_mb=$(tput bold; tput setaf 5)
export LESS_TERMCAP_md=$(tput bold; tput setaf 1)
export LESS_TERMCAP_so=$(tput setaf 1; tput setab 3)
export LESS_TERMCAP_se=$(tput rmso; tput sgr0)
export LESS_TERMCAP_us=$(tput setaf 3)
export LESS_TERMCAP_ue=$(tput sgr0)
man 을 다음과 같이 사용할 때: man zshexpn
멋진 색상의 섹션이 있습니다.
man 페이지의 같은 부분에서 man을 다음과 같이 사용하면 man zshexpn | less '+/PROCESS SUBSTITUTION'
더 이상 색상이 지정되지 않습니다.
첫 번째 경우와 마찬가지로 두 번째 경우에도 컬러 출력을 얻으려면 어떻게 해야 합니까?
답변1
나는 당신이 man
주류 Linux 배포판을 사용하고 있다고 가정합니다. man
수동으로 파이프했기 때문에 출력이 터미널이 아닌 경우 기본적으로 형식이 제거됩니다(다른 시스템에서도 less
마찬가지입니다).
MAN_KEEP_FORMATTING
null이 아닌 값으로 설정하여 이를 재정의 할 수 있습니다 .
MAN_KEEP_FORMATTING=1 man zshexpn | less '+/PROCESS SUBSTITUTION'
이 동작을 기본값으로 설정하려면 MAN_KEEP_FORMATTING
다른 설정과 함께 내보내야 합니다. 이는 man
출력 시 모든 호출에 영향을 미칩니다.아니요결국 터미널에서 처리됩니다(예를 들어출력을 원할 경우 grep
).
답변2
파이프를 통해 less
추가 옵션을 전달하는 대신 LESS
이러한 추가 옵션을 변수에 전달하세요.
LESS="$LESS +/PROCESS SUBSTITUTION" man zshexpn