Vim에서 마크 다운 하이라이트 활성화


138

OS X Lion이 설치된 MacBook Air의 터미널에서 Vim을 사용하고 있는데 Markdown 구문 강조를위한 훌륭한 플러그인을 찾지 못하는 것 같습니다.

지금까지 plasticboy 플러그인과 Tim Pope의 플러그인을 사용해 보았습니다 . plasticboy 플러그인은 정상적으로 작동했지만 줄 끝에 공백이 강조 표시되어 끄는 방법을 찾지 못했습니다. ( space내가 글을 쓸 때 마다 캐릭터를 강조 표시 하기 때문에 정말 성가시다 .)

Tim의 플러그인은를 사용하는 헤더 이외의 강조 표시 방식으로별로 작동하지 않는 것 같습니다 ###. 코드 블록과 글 머리 기호는 무시됩니다. 거기에 뭔가 빠졌을 수도 있습니다. .mdMarkdown 파일 에서 확장명을 사용 하므로 파일 형식을 선택해야합니다.

또한 Markdown 지원 기능이 내장 된 Vim 7.3에 대한 참조를 보았지만 두 플러그인 중 하나가 없으면 강조 표시가 전혀 없습니다.

이 중 하나가 작동하려면 특정 색 구성표가 필요합니까?


24
*.md마크 다운에 대한 올바른 확장이 아닙니다. 그것은 모듈 파일을위한 것입니다. Tpope 플러그인이 제대로 작동 함 (이 플러그인 모두 정상적으로 작동 함) *.markdown확장 기능을 사용해야합니다
lucapette

7
팀 교황의 플러그인에 대한 ftdetect @lucapette 않습니다 도 포함 *.md과 함께를, : *.markdown,*.mdown,*.mkd,*.mkdn. plasticboy 플러그인은 자동 감지 만*.mkd,*.markdown,*.mdwn
pb2q

1
plasticboy 플러그인 소스에서 실제로 감지하는 것처럼 보입니다 .md. 내 블로그에 Scriptogr.am 을 사용하고 있기 때문에 지금은이 확장 프로그램에 갇혀 있으며 이것이 현재 인식하는 유일한 확장 기능입니다.
조쉬 얼

1
: 그냥이를 발견하고 꽤 GitHub의 맛 인하를 위해 흔들 것 github.com/jtratner/vim-flavored-markdown
매튜 터너

문제를 들어 plasticboy / VIM-인하 가의 devs를 해결할 수 있도록 프로젝트에 열려 문제를하시기 바랍니다. 이중 공백이 <br>태그를 생성 하므로 후행 공백이 많을수록 좋은 동작 임을 알 수 있으므로 작성자는이를 인식해야합니다.
Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功

답변:


22

plasticboy mkd 플러그인을 사용할 때 줄 끝 공간 강조 표시를 비활성화하는 것이 좋습니다.

:syn clear mkdLineBreak

당신은 할 수 autocmd당신이 그것을마다 할 필요가 없도록이 필요한 파일 확장자에 대한 당신은 인하 파일을로드합니다.

노트 마크 다운 취급 라인이 특별히을 삽입하여 2 개 이상의 공백 문자로 끝나는 때문에 특정의 하이라이트는 존재 <br>유용하므로.

plasticboy 플러그인은 TODO이 규칙에 강조 표시를 사용 합니다.이 규칙 기본적으로 실제로 노란색으로 표시되어 눈에 띄 도록 설계되었습니다. highlight규칙 을 변경하여 시각적으로 덜 눈에 띄게 만들 수 있습니다 . 이를 수행하는 한 가지 빠른 방법은 다음과 같습니다.

:hi link mkdLineBreak Underlined

이제 줄 끝 공간이 밑줄로 표시됩니다. highlight당신에게 더 호소력이있는 것을 위해 다른 그룹과 연결을 시도하십시오 . 사용하는 대신 link그 끝 (end-of-line) 공간에 대한 더욱 구체적인를 얻을 수 있습니다 당신을 : 예를 들어 당신은 당신의 자신의 사용, 그들은 일반적인 배경보다 단지 약간 밝게 / 어둡게로 표시하도록 지정할 수있는 highlight사용자 정의 지정 명령을 ctermfg , ctermbg , guifg을 , guibg 설정.

위와 같이 autocmd 특정 설정을 적용 있습니다.

링크 highlight그룹 에 대한 자세한 내용을 보려면 다음을 입력 :help group-name하십시오. 그러면 현재 highlight규칙을 사용하여 유용하게 표시 될 수있는 링크 된 그룹 목록이 표시됩니다 . 또한 : :help highlight.


2
그것은 많은 의미가 있습니다. Markdown에서 두 공간이 중요한 것을 알지 못했습니다. 버그가 계속 발생하지 않는 한 활성화 상태로 두겠습니다. 감사!
Josh Earl

그렇기 때문에 2 개의 공백이 입력 될 때까지 하이라이트가 시작되지 않습니다.
pb2q

@ josh-earl plasticboy 플러그인을 사용할 때 더 많은 대안을 찾기 위해 편집 한 내용을 확인하십시오
pb2q

308

markdown의 기본 구문 강조 정보 .markdown기본적으로 확장자 가 있는 파일에서만 작동한다고 생각합니다 . 파일의
마크 다운 구문 강조 표시에 문제가있었습니다 .md.
나는 시도했다 :

:set syntax=markdown

그리고 효과가있었습니다. 그래서 나는 다음 줄을 내 안에 포함시켰다 .vimrc.

au BufNewFile,BufFilePre,BufRead *.md set filetype=markdown

이제 내 vim에 내 .md파일에 대한 구문 강조 표시가 있습니다.

BufFilePre는 다음에 필요합니다.


13
다른 사람이 이것을 읽고 : 예 그것은 작동하고 플러그인을 설치하는 것보다 문제에 대한 훨씬 간단한 해결책입니다. 명령 행에서이를 수행하는 빠른 방법 : echo "au BufRead, BufNewFile * .md set filetype = markdown">> .vimrc
RobinLovelace

11
이것이 받아 들여야 할 답변 인 것 같습니다.
Enrico Campidoglio

4
@SamStoelinga 버그가 아니며 .mdModula에서도 사용됩니다. 어느 것을 사용해야하는지 탐지하려면 고급 휴리스틱이 필요합니다.
nyuszika7 시간

8
Vim 7.4.480부터 *.md파일은 기본적으로 마크 다운으로 인식됩니다.
fwalch

1
정확하지만 불완전합니다. 이 Save As… :sav명령 과 동일하게 작동 하려면 자동 명령을 BufFilePre다음 과 같이 확장해야합니다 .autocmd BufNewFile,BufFilePre,BufRead *.md set filetype=markdown
Stroobandt Serge

19

기본 구문 강조

Markdown의 기본 구문 강조는 기본적으로 .markdown 파일 확장자에 합니다.

다음 라인은 및 .vimrc모두에 대해 최상의 결과를 제공합니다 .vimgvim

autocmd BufNewFile,BufFilePre,BufRead *.md set filetype=markdown.pandoc

설명:

1. 마크 다운 맛을 지정하십시오!

주로 Markdown (예 : Pandoc ) 의 한 가지 맛으로 작업하는 경우 이를 언급해야합니다. 이렇게하면 Markdown 및 Pandoc 관련 Vim 플러그인을 혼합하고 일치시킬 수 있습니다. 예를 들어 : vim-pandoc-syntax 플러그인이 특히 강조 요구 사항에 적합하다는 것을 알았습니다 . 그럼에도 불구하고 더 일반적인 vim-markdown-folding을 사용합니다. Markdown 접기에 을 .

그건 그렇고, 점으로 분리 된 하나의 맛 만 허용됩니다. filetype=markdown.pandoc

2. gvim요구BufFilePre

gvimBufFilePre명령을 사용하여 마크 다운 파일 형식을 인식하려면 자동 명령 줄에 추가 항목이 필요합니다 Save As… :sav.



7

에 모든 구성을 넣지 않으 ~/.vimrc려면 ~/.vim/ftdetect/markdown.md다음 내용 을 사용하여 구성 (또는 Windows에서 동등한 구성)을 수행 할 수 있습니다 .

au BufNewFile,BufRead *.md setf markdown

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