때때로 나는 자신의 환경 설정으로 색상과 스타일을 강조하는 기본 구문을 재정의하려고합니다.
이 작업을 수행하는 가장 적절한 방법은 내 자신의 색 구성표를 만드는 것입니다. 그러나 몇 가지 질문이 있습니다.
-
특정 언어로 특정 구문 그룹에 대한 강조 표시를 설정하려면 이것이 내 색 구성표에 속합니까, 아니면 배치하는 것이 좋습니다
after/syntax/[filetype].vim
?highlight jsAssignExpIdent cterm=bold gui=bold
내가 사용하는 언어가 무엇이든로드되므로 색 구성표에 모호한 언어 별 규칙을 배치하는 것은 조금 이상하게 보이지만 구문 파일에 강조 표시 규칙을 배치하는 것이 더 나빠 보입니다.
-
때로는에서 특정 언어에 대한 새 구문 규칙을 만듭니다
after/syntax/[filetype].vim
. 다른 사용자가 이러한 확장을 사용하려는 경우 일반적인 기본 강조 그룹으로 연결되는 기본 강조 규칙을 제공하는 것이 적절합니까? 다른 사용자가 해당 강조 색상을 재정의하려면 어떻게해야합니까?::::: after/syntax/asm.vim ::::: syn match asmHexNumber /\(0x\|\$\)[0-9A-Fa-f]\+/ highlight default link asmHexNumber Number
답변
첫 번째 질문
하이라이트 정의는 귀하의 색 구성표에 속합니다. 언어에 상관없이 모든 버퍼에로드된다는 사실은 전혀 문제가되지 않습니다.
색상 표를 편집하지 않으려면 해당 강조 표시 정의를 plugin/myhighlights.vim
다음 위치에 넣을 수 있습니다 .
function! MyHighlights()
highlight ...
highlight ...
endfunction
augroup MyHighlights
autocmd!
autocmd ColorScheme * call MyHighlights()
augroup END
두번째 질문
샘플은 정확히 어떻게해야하며 모든 구문 스크립트가 수행하는 방식입니다. 이 방법을 사용하면 플러그인 개발자가 특정 색상을 사용자의 목 아래로 강요하지 않고 정상적인 기본값을 정의 할 수 있습니다.