IT박스

마크 다운 파일 미리보기를위한 Vim 플러그인이 있습니까?

itboxs 2020. 11. 14. 10:02
반응형

마크 다운 파일 미리보기를위한 Vim 플러그인이 있습니까?


즉시 렌더링 결과를 미리 볼 수있는 뛰어난 기능을 갖춘 Marked 및 Mou 편집기를 좋아합니다. 그래서 Vim에서 동일한 작업을 수행 할 수있는 방법이 있는지 궁금합니다.


최근에 Chrome에서 마크 다운 파일을 제대로 열고 표시 할 수 있도록하는 Chrome 확장 프로그램 인 Markdown preview를 찾았습니다 .

그런 다음 Vim에서 키를 매핑하여 Chrome으로 파일을 여는 것이 문제였습니다. 내 모습은 다음과 같습니다.

" Open markdown files with Chrome.
autocmd BufEnter *.md exe 'noremap <F5> :!start C:\Users\tomas\AppData\Local\Google\Chrome\Application\chrome.exe %:p<CR>'

물론 파일에 ".md"확장자가없는 경우 다른 키에 매핑을 원하거나 Chrome이 다른 위치에있는 경우이 명령을 편집해야합니다.

이제 ".md"파일을 편집 할 때마다 <F5>Chrome에서 파일을 열 수 있습니다 . 완벽한 해결책은 Chrome이 몇 초마다 자동으로 다시로드되도록하는 것이지만 로컬 파일에서 작동하는 확장 프로그램을 찾을 수없는 것 같습니다.


장점 :

  • 실행중인 서버 나 특수 코드 없이도 버튼을 눌러 마크 다운 파일을 미리 볼 수 있습니다.
  • Vim 및 Chrome을 지원하는 모든 플랫폼에서 작동하며 거의 모든 플랫폼을 포함합니다.

단점 :

  • 자동 새로 고침 <F5>이 없으므로 파일을 미리보고 싶을 때마다 눌러야합니다.
  • Github 풍미의 마크 다운이 없습니다.

운이 좋으시군요-방금 실시간 Markdown 미리보기 기능이있는 vim 플러그인을 작성했습니다. github Markdown과 스타일도 사용합니다 : https://github.com/suan/vim-instant-markdown


Marked.app사용 하여 Markdown 파일을 미리 봅니다 . 그리고 <leader>p미리보기를 위해 매핑 했습니다.

function! s:setupMarkup()
  nnoremap <leader>p :silent !open -a Marked.app '%:p'<cr>
endfunction

au BufRead,BufNewFile *.{md,markdown,mdown,mkd,mkdn} call s:setupMarkup()

당신이 Marked.app에 $ 4 드롭하지 않으려는 경우에 당신은 시도 할 수 Hammer.vim을 . 행을 다음으로 변경하십시오.

map <buffer> <leader>p :Hammer<CR>

실제로 pandoc사용 하여 선택한 문서 형식으로 컴파일하고 외부 기본 명령을 사용하여 볼 수 있습니다. 예를 들어 나는 그것을 pdf로 미리보기를 좋아하고 Ubuntu에서 다음 설정을 사용합니다.

" pandoc , markdown
command! -nargs=* RunSilent
      \ | execute ':silent !'.'<args>'
      \ | execute ':redraw!'
nmap <Leader>pc :RunSilent pandoc -o /tmp/vim-pandoc-out.pdf %<CR>
nmap <Leader>pp :RunSilent gnome-open /tmp/vim-pandoc-out.pdf<CR>

나는 문서를 사용하여 컴파일 ,pc및 미리보기를 사용하여 ,pp. 우분투 evince에서는 기본 뷰어 이므로 변경된 파일을 자동으로로드합니다. 당신 ,pc은 당신의 변경 사항을 반영하기 위해서만하게됩니다 .

추신 : 리더가에 매핑되어 있습니다.


@Codemonkey의 대답에 추가하면 OSX를 사용하는 경우 .vimrc 파일에서 다음을 사용할 수 있습니다.

" Open markdown files with Chrome.
autocmd BufEnter *.md exe 'noremap <F5> :!open -a "Google Chrome.app" %:p<CR>'

아니, 등등 여러 빔 구문 강조를위한 플러그인, 조각과가 있지만, 빔 표시 텍스트와 텍스트는 , 그러므로 당신은 마크 다운 가질 수 없습니다 (또는 다른 종류)를 빔에 미리보기를 .

실시간 미리보기에 관심이 있다면 MarkdownPad 가 더 적합 할 것입니다.


다음은 Chrome에서 Markdown을 볼 수있는 간단한 vim 플러그인입니다.이 플러그인은 루비 나 다른 멋진 것이 필요하지 않으며 vim 버퍼에 쓸 때 미리보기를 새로 고침합니다 (핫키로 활성화 할 수도 있음).

또한 미리보기는 백그라운드에서 이루어 지므로 vim을 떠나지 않아도됩니다.

https://github.com/JamshedVesuna/vim-markdown-preview


내 .vim 디렉토리에 기능이 있습니다.

function! markdown#preview()
  silent update
  let output_name = tempname() . '.html'

  let file_header = ['<html>', '<head>',
        \ '<meta http-equiv="Content-Type" content="text/html; charset=utf-8">',
        \ '<title>'.expand('%:p').'</title>',
        \ '<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/3.3.0/build/cssreset/reset-min.css">',
        \ '<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/3.3.0/build/cssbase/base-min.css">',
        \ '<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/3.3.0/build/cssfonts/fonts-min.css">',
        \ '<style>body{padding:20px;}div#container{background-color:#F2F2F2;padding:0 20px;margin:0px;border:solid #D0D0D0 1px;}</style>',
        \ '</head>', '<body>', '<div id="container">']

  call writefile(file_header, output_name)

  silent exec '!markdown "' . expand('%:p') . '" >> "' . output_name . '"'

  silent exec '!echo "</div></body></html>" >> "' . output_name . '"'

  silent exec '!sensible-browser "' . output_name . '" &'
endfunction

이를 통해 다음 매핑도 있습니다.

inoremap <buffer> <F7> <ESC>:call markdown#preview()<CR>
nmap <buffer> <F7> :call markdown#preview()<CR>

It's not perfect and it's not realtime but it's good enough for my limited needs.


I came across a nice plugin which worked great out of the box https://github.com/waylan/vim-markdown-extra-preview


I don't think preview markdown in vim is a good idea. But you can convert your markdown in HTML just by typing %!markdown, presumably you have markdown installed. Then save that file and open it in a browser.

참고URL : https://stackoverflow.com/questions/9212340/is-there-a-vim-plugin-for-previewing-markdown-files

반응형