LaTeX에서 일부 환경을 무시하도록 맞춤법을 구성하는 방법


10

vim에게 라텍스 문서의 일부를 철자 검사하지 말라고 알려주는 방법이 있습니까? 예를 들어, minted환경이나 URL을 사용하는 코드 블록 은 \url{}?

철자 검사와 관련이 있는지 확실하지 않지만 vimtex 플러그인을 사용하여 라텍스 파일을 편집하고 있습니다.


1
다음 사항도 참조 : vi.stackexchange.com/a/4003/1800
VanLaser

@Gregoire는 또한 vimtex / issues / # 219 에서이 질문을 언급했습니다 .
Karl Yngve Lervåg

답변:


10

와 함께 클러스터에 구문 항목을 추가하여 구문 항목에 대한 맞춤법 검사를 비활성화 할 수 있습니다 @NoSpell. :help spell-syntax몇 가지 정보를 읽고 이미 몇 가지 예제가 들어있는 tex 구문 파일을 볼 수 있습니다 . 입력 :tabe $VIMRUNTIME/syntax/tex.vim하면 tex 구문 파일을 새 탭에 가져와야합니다. 그런 다음 검색하면 다음 /\c@NoSpell과 같은 줄이 나타날 수 있습니다

 syn cluster texMathZoneGroup add=@NoSpell

texMathZoneGroup클러스터는 문법 항목의 수를 포함하는 이전 스크립트에 정의 된 여기에 @NoSpell이러한 항목에 대한 비활성화 맞춤법 검사를 클러스터에 추가됩니다. 구문 파일을 잘 모르기 때문에 특정 구문 항목을 가장 잘 변경할 위치를 정확하게 말할 수 없습니다. 추가 할 수있는 명백한 클러스터가 이미 @NoSpell있거나 contains=문제의 항목이 있는 클러스터를 만들어야 할 수도 있습니다 . 또한 사용자 런타임 디렉토리에 구문 파일의 사본을 작성하고 분산 구문 파일을 변경하지 않고 변경 사항을 적용 after/syntax/tex.vim하거나 구문 파일이로드 된 후 실행되는 다른 스크립트에 변경 사항을 적용하는 것이 좋습니다. .

플러그인을 사용하므로 맞춤법 검사 대상과 관련된 옵션이있을 수 있습니다. 나는 사용하지 vimtex않지만 Karl Lervåg는 여기에서 매우 활동적이며, 그의 관심을 끌면 그것에 대해 대답 할 수 있습니다.


vimtex오늘날 에는 그러한 옵션이 없습니다. 그러나 민트 환경에서는 철자를 무시하는 것이 합리적이므로 해당 플러그인을 업데이트 할 수 있습니다. 좋은 설명 감사합니다!
Karl Yngve Lervåg

나는 코드를 둘러 보았고 기존 환경에 대한 기존 지역을 찾지 못했기 때문에 다음과 같이 나만의 것을 만들려고 시도했지만 syn region mintedZone start="\\begin{minted}" end="\\end{minted}" contains=@NoSpell도움이되지 않는 것 같습니다. 어떠한 제안?
Grégoire

@ Grégoire vimtex 이슈 에서이 토론을 계속하겠습니다 .
Karl Yngve Lervåg

5

예를 들어, 고유 한 구문 규칙을 추가 할 수 있습니다 ~/.vim/after/syntax/tex.vim. 와 같은 명령 내에서 맞춤법 검사를 방지하기 위해 \url다음 코드를 사용할 수 있습니다.

syntax match texStatement '\\command' nextgroup=texMyCommand
syntax region texMyCommand matchgroup=Delimiter start='{' end='}' contained contains=@NoSpell

내부 구문 플러그인으로 정의 된 그룹은 다음 texStatement과 같습니다 .Delimiter:e $VIMRUNTIME/syntax/tex.vim

위의 명령을 이해하려면 다음 도움말 섹션을 권장 할 수 있습니다.

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