적은 명령 및 구문 강조


43

나는를 사용할 필요가 less command의 정력 명령의 구문 강조와 함께 python, C, bash다른 언어.

어떻게에 따라 구문 강조 색상을 적용 할 vim에 대한 색상 less command?

답변:


35

의 구문 강조는 less대부분의 * nix 시스템에서 잘 작동합니다.

apt install source-highlight
export LESSOPEN="| /usr/share/source-highlight/src-hilite-lesspipe.sh %s"
export LESS=' -R '

Fedora / RedHat 기반 배포판에서는 /usr/bin/src-hilite-lesspipe.sh대신 사용하십시오.

Cygwin에서도 쉘 스크립트 경로를 약간 조정하고 apt-cyg대신에 설치하여 수행 할 수 있습니다 apt.

그러나 크게이를 사용하여 대용량 파일의 검색 속도가 느려집니다. 필요한 경우 위와 같이 내보내기 alias만 구현하는 방법 을 사용하는 것이 좋습니다 LESSOPEN.

alias lessh='LESSOPEN="| /usr/bin/src-hilite-lesspipe.sh %s" less -M '

를 Where -M플래그가 편리 또한 파일 이름과 줄 번호를 표시합니다.

또한 당신의 빈 경로로 스크립트를 복사 기억 :

cp /usr/share/source-highlight/src-hilite-lesspipe.sh /usr/bin/src-hilite-lesspipe.sh

UPDATE : 2019년 7월 24일

보다 최근의 Cygwin 설치에서는 경로에 다음 파일이 있습니다.

source-highlight.exe
source-highlight-esc.sh
source-highlight-settings.exe

그래서 지금 당신은 또한 실행해야하는 source-highlight-settings.exe구성 파일을 추가 할 것을 :
$HOME/.source-highlight/source-highlight.conf.


'lessh'라는 별칭이 작동하지 않습니다. osx에서 bash 실행 한숨.
Scott Biggs

이는 완전히 다른 문제이며, 다른 쉘 및 환경 옵션을 사용하는 OSX로 인해 작은 따옴표와 큰 따옴표의 해석에 다르게 영향을 줄 수 있습니다. 당신은 확인하고 이러한 설정할 수 있습니다 shopt -pset.
not2qubit

1
이것은 OSX에서 저에게 brew install source-highlightalias lessh='LESSOPEN="| src-hilite-lesspipe.sh %s" less -R '
효과적이었습니다

40

less 구문 강조를 지원하지 않습니다.

vim모든 vi클론 과 마찬가지로 읽기 전용 모드가 view있어 파일을 보는 데 사용할 수 있습니다. 구문 강조를 포함하여 vim의 모든 기능을 지원합니다.

예 :

view filename.py

사이의 주요 차이점 viewvi해당 뷰가 없습니다 "잠금"당신이 .swp 파일을 만들어보고있는 파일을 수행합니다.


view command의미 라면 radare package읽기 전용이 아닙니다
PersianGulf

4
흠, 내 view명령은 구문 강조를 지원하지 않는 것 같습니다. 나는 해봤 :syntax enable하고 :syntax on,하지만 난 항상 얻을 syntax: Not an editor command. 내 vim지원하지만, 강조.
Felix

@ felix-다른 제품 vinvi있거나 elvis설치되어 있습니까? /usr/bin/view내 데비안 시스템에서-를 확인하십시오 . /etc/alternatives/view이 심볼릭 링크는 심볼릭 링크 /usr/bin/vim.basic입니다.
cas

1
흠, 내 경우에는 /usr/bin/ex호기심 많은 vi패키지 가 소유 한 심볼릭 링크 입니다.
Felix

2
@Felix가 말한 것을 확인할 수 있습니다. on arch linux view은 패키지 의 심볼릭 링크 /usr/bin/ex입니다 core/vi.
x-yuri

13

less구문 요소를 강조 표시하는 방법을 배울 수는 없지만 Vim은 호출기로 사용할 수 있습니다 less. 고급 플러그인이 있지만 기본 스크립트는 실제로 Vim ( $VIMRUNTIME/macros/less.sh) 과 함께 제공됩니다 . 자세한 내용 은 Vim Tips Wiki에서 vim을 구문 강조 페이저로 사용을 참조하십시오 .


2
나는 ... 심지어 잘못된 답변을 게시하기 전에 Google에 귀찮게하지 않습니다 놀랄 사람이야
not2qubit

1
@ user1147688 : Felix의 답변을주의 깊게 읽으면 GNU source-highlight는 외부 프로그램이며 less와의 통합은 매우 느슨합니다. 그것은 less강조 표시가 아닙니다 . 그러나 Vim은 실제로이 기능을 내장하고 있습니다.
Ingo Karkat

"명령을 줄이려면 vim 색상에 따라 구문 강조 색상을 적용하려면 어떻게해야합니까?"
Zano

1
+1이지만이 의견이 무엇을 말하려고하는지 확신합니다. 심지어 긍정적이거나 부정적인지 알 수 없습니다 ( "... 답변을 게시하기 전에 Google" "?,"xyz를 설치하는 것이 사용하는 것보다 더 정확합니다 정력"?). 이 답변은 "가장 정답"입니다. 기본적으로 OP는 vim 의이 기능이 존재한다는 것을 알지 못 했으며이 답변은 OP에게 그것이 존재한다는 것을 알려줍니다. 오캄의 면도기 ftw. 대답은 예를 보여줌으로써 만 개선 될 수 있습니다.$ diff file1.c file2.c | /usr/share/vim/vim74/macros/less.sh
michael

11

나는 Ingo에 동의하지 않는 경향이 있으며 , 구문을 강조하도록 가르 칠 less 있습니다. 이 답변 은 수퍼 유저에서 확인하십시오 . 기본적으로, 당신은 (모든 주요 배포판 패키지의 repos에서 사용 가능) GNU의 소스 하이라이트를 설치 한 다음에 다음을 추가 할 필요가 귀하의 .bashrc(또는 .bash_profile또는 무엇을) :

export LESSOPEN="| /path/to/src-hilite-lesspipe.sh %s"
export LESS=" -R "

그러나 형광펜 source-highlight만큼 강력하지는 않습니다 vim. 가장 적합한 것을 사용하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.