vim이 파일을 html로 구문 강조하도록 강제하는 방법은 무엇입니까?


120

파일 확장자를 html 파일로 처리하기 위해 vim의 구문 강조를 어떻게 설정합니까?

ez 템플릿을 사용하고 있으므로 파일 확장자는 .ezt. 그러나 대부분은 정상적인 HTML 코드입니다.

답변:


109

이것을 .vimrc에 넣을 수도 있습니다 :

au BufReadPost *.ezt set syntax=html

E216 : 해당 그룹 또는 이벤트 없음 : BufLoad * .ezt set syntax = html ... 내가 뭘 잘못하고 있니?
Karthick 2010

2
내 경험상이 방법은 정확한 파일 이름 을 제공하면 실패합니다 .myspecialdotfile. 이론적으로 필요하지 않더라도 작동하려면 어딘가에 별이 필요합니다.
SeldomNeedy

나는이가 .vimrc서로 다른 목적을 위해 확장이 Dockerfiles의 파일. autocmd BufNewFile, BufRead Dockerfile * set filetype = docker 그냥 사용 Dockerfile*하면 사용할 때 구문 강조 표시가 작동하지 않습니다.vi Dockerfile - 백 슬래시를 추가하면에 대한 작업에 수 Dockerfile/ Dockerfile.somethingDockerfilesomething
안드로이드 제어

204
:set syntax=html

10
@pbr : 질문 제목에 정확히 답합니다.
Skippy le Grand Gourou

2
> "파일 확장자를 html 파일로 처리"
0atman

이것은 내가 찾던 것입니다 :)
niken

실행 :set syntax하면 현재 적용된 파일 강조 표시가 반환 된다는 것을 아는 것이 도움이 될 수 있습니다.
Ari

26

Vim wikia 주제를 살펴보십시오. . 몇 가지 유용한 팁 :

  • 다른 답변에서 언급했듯이 vim set 명령을 사용하여 구문을 설정할 수 있습니다. :set syntax=<type>여기서 <type>뭔가처럼 perl, html,php , 등

  • 라는 구문 강조를 제어하는데 사용될 수있는 다른기구가 filetype, 또는 ft짧게는. 구문과 유사하게 다음과 같은 유형을 지정 :set filetype=html합니다.. 다른 파일 유형은 perl,php

  • 때로는 vim이 사용할 구문을 "잊어 버립니다". 특히 php와 html과 같은 것을 함께 혼합하는 경우 더욱 그렇습니다. 키보드 단축키 Ctrl+ L( <C-L>)를 사용하여 vim이 강조 표시를 새로 고치도록합니다.


베스트 답변! +!
J. Allan

17

참고 것을 :set syntax=xml제대로 하이라이트하지만 하나의 파일을 자동 들여 시도 할 때 실패 할 것 (즉 실행 gg=G).

로 전환했을 때 :set filetype=xml강조 표시가 제대로 작동하고 파일이 제대로 들여 쓰기되었습니다.


14

.php 파일 (또는 html 파일)에서 Vim Modeline 을 사용하여 특정 명령이나 설정을 강제 할 수 있습니다 .

 1 /* vim: syntax=javascript
 2  *
 3  * .submit_norefresh()
 ~
 ~

2
당신은 modeline 줄 의미
Shammel 리

때때로 내 구문 관련 au ...설정이 ~/.vimrc특정 파일에 대해 무시됩니다 (아마도 수정 된 메타 데이터로 인해?). 해당 파일 내용을 새 파일에 복사하는 것 외에 해당 파일의 맨 위에 모델 린을 설정하는 것이 작동합니다. 예를 들어 BASH 스크립트의 # vim: syntax=sh경우 shebang (첫 번째 줄 :)이 #!/bin/bash안정적으로 작동하는 것처럼 보이는 뒤에 두 번째 줄을 추가합니다 . 기본적으로 "주석"이기 때문에 두 줄을 sbb( "shebang bash") 스 니펫에 포함합니다.
Victoria Stuart

13

자동으로 만들려면 다음 줄을에 추가하십시오 ~/.vimrc.

autocmd BufNewFile,BufRead *.ezt set filetype=html

현재 파일에 대해서만 수행하려면 다음을 입력하십시오.

:set filetype=html

syntax대신 대체 할 수도 filetype있지만filetype 보다 더 많은 것들에 영향을 미치는syntax (구문 강조를 포함하여 규칙을 들여 쓰기, 및 플러그인)를, 그래서 일반적으로 사용해야 filetype만 영향을하지 않으려면 syntax.

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