업데이트 : CPAN의 HTML :: FromANSI 모듈을perl
사용하여 메소드를 추가했습니다 . 설치하려면 디렉토리로 추출한 다음 해당 디렉토리에서 루트로 실행하십시오 . 요청에 맞는 특정 기능은이라는 스크립트 입니다. 흥미롭게도, elisp-shell 스크립트 와 마찬가지로 파일 이름에 겹쳐진 후 동일한 색상 손실을 보여줍니다 ... 사용법 예는 다음과 같습니다. perl -MCPAN -e 'install HTML::FromANSI'
ansi2html
k
ls -l --color=always /bin/*k* |
grep --color=always "k\|x\|2010" |
ansi2html >/tmp/example.html
firefox /tmp/example.html
다음은 html 출력입니다. Firefox에서 볼 수 있듯이 :
다음은 emacs elisp-shell 스크립트를 사용하는 방법 입니다. 예를 들어, htmlize ... Emacs를 실행할 필요는 없습니다.
원래는 검정색 배경에 그것을 테스트,하지만 난 어떤 이유로, 흰색 배경이 도입 탈출 코드 중 하나가, 잘 재생되지 않는 것으로 나타났습니다 \e[K
, ERASE_LINE 것으로 보인다 (단자 출력의 현재 행을 삭제) . 이 이스케이프 코드를 제거하는 줄을 추가했습니다. 이제 흰색 배경에서 작동합니다.
다음은 추가 색상 강조 ls
를 grep
위해 파이프 에서 출력 된 색상 강조 출력의 예입니다 .
ls -l --color=always /bin/*k* |
grep --color=always "k\|x\|2010" >/tmp/example
htmlize /tmp/example
firefox /tmp/example.html
이것은 elsip-shell
스크립트입니다.
#!/bin/sh
":"; exec /usr/bin/emacs -Q --script "$0" -- "$@" # -*-emacs-lisp-*-
(require 'ansi-color) (require 'htmlize)
(find-file (setq path-in (cadr argv)))
(ansi-color-apply-on-region (point-min) (point-max))
(switch-to-buffer (buffer-name (htmlize-buffer)))
(write-file (concat path-in ".html"))
Firefox의 html 출력 샘플은 다음과 같습니다. 시간이 걸리면 오버레이 ANSI 코드 문제에 대해 자세히 살펴 보겠습니다. 빨간색 k
은 녹색 파일 이름과 겹치지 만 grep에 대해 서둘러 선택한 테스트 정규식 때문입니다 ... (아마 뭔가 \e[K
영향을 줄 수 있습니다 ...