답변:
와 highlight
같은 색 이스케이프 시퀀스를 지원하는 단말에서 xterm
:
highlight -O xterm256 your-file | less -R
로 ruby-rouge
:
rougify your-file | less -R
pygmentize your-file | less -R
source-highlight -f esc256 -i your-file | less -R
함께 제공되는 스크립트를 사용 vim
하여 호출기로 사용할 수도 있습니다 (자세한 내용은 내부 참조).macros/less.sh
vim
:h less
vim
내 시스템에서 :
sh /usr/share/vim/vim74/macros/less.sh your-file
또는 당신은 지원 HTML 출력과 사용 구문 형광펜을 사용할 수 elinks
또는 w3m
페이저 (또는 AS elinks -dump -dump-color-mode 3 | less -R
와 같은) GNUsource-highlight
:
source-highlight -o STDOUT -i your-file | elinks -dump -dump-color-mode 3 | less -R
less
보다 일반적으로 색상에 관심이있는 경우를 참조하십시오 lesspipe.sh
. 예를 들어 http://freecode.com/projects/lesspipe 를 참조 하십시오 .
lesspipe.sh는 less의 man page에서 설명한대로 pager에 대한 입력 필터입니다. 이 스크립트는 ksh 호환 쉘 (예 : bash, zsh)에서 실행되며 바이너리 컨텐츠, 압축 파일, 아카이브 및 아카이브에 포함 된 파일이있는 파일을 적게 사용하도록합니다.
또한 텍스트 편집기와 유사하게 쉘 스크립트, 펄 스크립트 등을 채색하지만 채색을 위해 "전처리"프로그램을 사용하지 않습니다.
lesspipe.sh
나는 질문을 게시하기 전에 내가 ... 기억하려고했던 것입니다
and와 같은 호출기에 구문 강조 지원을 제공하는 e2ansi 패키지를 사용할 수 있습니다 .more
less
이 패키지는 모든 텍스트 편집기의 어머니 인 Emacs 를 사용하여 실제 구문 강조를 수행합니다. 또한 보너스로 압축 해제 파일과 같이 Emacs에서 일반적으로 수행하는 다른 모든 변환도 수행됩니다.
다음은 less
and를
사용하여 파일을 본 결과입니다 e2ansi
.
이 패키지는 e2ansi-cat
배치 모드에서 Emacs를 시작하고 파일을 열고 구문을 강조 표시하고 ANSI 시퀀스를 사용하여 결과를 렌더링 하는 명령 행 도구 를 제공합니다 .
less
예를 들어 다음과 같은 변수를 설정하여 이를 통합 할 수 있습니다 (init 파일의 위치가 다를 수 있음).
export "LESSOPEN=||-/usr/local/emacs --batch -Q -l ~/.emacs -l bin/e2ansi-cat %s"
export "LESS=-r"
alias "more=less -X -E"
위의 구성 less
에서 원래 터미널 창 내용을 복원 more
하면서 프롬프트 후에 새 내용을 출력하면됩니다.
참고 :의 이전 버전을 사용하는 경우 또는 구문을 less
지원하지 않을
수 있으며이 경우 간단하게 사용해야
합니다.||
-
LESSOPEN=|/usr/local/emacs ...
less
파이프에서 사용"-"문자는 LESSOPEN
텍스트를로 파이핑 할 때 입력 필터도 사용해야 함을 나타냅니다 less
. 이 경우 Emacs는 파일 자체가 아닌 텍스트에만 의존 할 수 있습니다. 다행히 Emacs는이를위한 시스템을 제공합니다. 또한 제공된 파일 파일
e2ansi-magic.el
은 추가 파일 유형을 설정합니다. 예를 들면 다음과 같습니다.
e2ansi
에서 파일을 볼 때 테마의 색상이 유지됩니다 less
. 다양한 소스에서 적절한 색상 테마를 선택하거나 직접 디자인 할 수 있습니다.less
(ANSI 시퀀스 형식 및 터미널 창에서 빼기 제한).less
압축 해제 파일과 같은 자동 변환을 수행하는 Emacs 기능을 활용합니다. 실제로 Emacs가 외부 도구를 사용하여 이진 파일을 사람이 읽을 수있는 형태로 자동 변환하는 것과 같은 모든 종류의 변환을 수행하도록 지시 할 수 있습니다./USER@HOST:FILENAME
.e2ansi
Melpa에 배포되며 표준 Emacs 패키지 시스템을 사용하여 설치할 수 있습니다e2ansi
GitHub에서 호스팅됩니다e2ansi
페이지less
.이를 구문 강조라고합니다.
GNU 소스 는 소스 파일이 주어지면 강조 표시 되어 문서를 생성합니다.
lessfilter
아래 스크립트를 사용 하거나 다음 less
과 같이 자동으로 호출 할 수 있습니다.
export LESSOPEN="| /path/to/lessfilter %s"
export LESS=' -R '
이 기사를 찾아서 이렇게 시작했습니다.
#!/bin/sh
file -b -L "$1" | grep -q text &&
/usr/share/source-highlight/src-hilite-lesspipe.sh "$1"
( 모든 배포판에 포함 src-hilite-lesspipe.sh
되어 source-highlight
있지는 않지만)
export
." 이 명령 less
은 환경 변수의 플래그를 사용 LESS
하므로 답이 필요합니다.