다음은 내가하는 일입니다. Php 색상을 다음과 같이 에코합니다.

php는 터미널의 쉘을 통해 텍스트를 표시 할 때 텍스트를 색칠하는 ANSI 이스케이프 시퀀스가 포함 된 출력을 만듭니다. 여기 에서 PHP 클래스와 설명을 찾을 수 있습니다 .
그러나 출력물을 파일로 보내고 vim을 사용하여 읽으려고하면 "컬러"가 아닌 특수 문자 만 볼 수 있습니다. 쉘에 표시된 것과 같은 색상을 표시하는 방법이 있습니까?
php -f filename
다음은 내가하는 일입니다. Php 색상을 다음과 같이 에코합니다.

php는 터미널의 쉘을 통해 텍스트를 표시 할 때 텍스트를 색칠하는 ANSI 이스케이프 시퀀스가 포함 된 출력을 만듭니다. 여기 에서 PHP 클래스와 설명을 찾을 수 있습니다 .
그러나 출력물을 파일로 보내고 vim을 사용하여 읽으려고하면 "컬러"가 아닌 특수 문자 만 볼 수 있습니다. 쉘에 표시된 것과 같은 색상을 표시하는 방법이 있습니까?
php -f filename
답변:
파일 내용이 수정없이 "있는 그대로"터미널로 전송되면 터미널 출력이 색상으로 표시됩니다. 그러나 vim 및 일부 다른 편집기는 텍스트에서 메타 문자를 이스케이프하고 대신 구문 강조 표시를 위해 다른 색상 코드를 추가하므로 작동하지 않습니다.
을 사용하여 파일을 터미널에 덤프하십시오 cat. 일부 간단한 편집자 또는 호출기 less도 작동 할 수 있습니다.
편집 : vim이 모든 이스케이프 코드를 "통과"할 수있는 방법을 찾지 못했지만이 vim 스크립트에 연결되는 이 답변 을찾았습니다. 이 코드는 이스케이프 코드를 구문 분석하고 vim 구문 강조 표시를 사용하여 색상 코드를 다시 작성합니다. 출력에서. 설명에 따르면 원하는대로 정확하게 수행해야하지만 테스트하지는 않았습니다.
방금 ASCI 이스케이프 문자를 처리하는 Vim 플러그인이 있다는 것을 알았습니다. 이를 'Ansi Highlighting'이라고합니다. 모욕이 있다면 http://www.drchip.org/astronaut/vim/index.html#ANSIESC 를 방문 하십시오
ANSIESC의 포장을 풀려면 'Vimballs'를 사용해야합니다.