こんにちわ。ゴリラです。
Vim上でMarkdownをいい感じにプレビューしてくれるpreview-markdown.vimを作ったので紹介します。
サクッとプレビューしたいときに便利です。
どんな感じ
こんな感じです。
使い方
markdownを開いた状態で、:PreviewMarkdown
を実行するだけです。
実行されるとターミナル上でmarkdownがいい感じに表示されます。
オプション
デフォルトは水平に画面分割されますが、垂直に分割したい方はlet g:preview_markdown_vertical = 1
をvimrcに書いてください。
markdownパーサを変更したいときはg:preview_markdown_parser = {command}
で変更できます。好きなパーサを使いたいときは設定してください。
仕組み
MichaelMure/mdrというコマンドを使っています。
現在のバッファの中身をファイルに書き出した後にmdr
でプレビューしています。とてもシンプルです。
function! preview_markdown#preview() abort
let tmp = tempname()
call writefile(getline(1, "$"), tmp)
if !executable('mdr')
call s:echo_err('not found mdr, please insatll from https://github.com/MichaelMure/mdr')
return
endif
if !has('terminal')
call s:echo_err('this version doesn''t support terminal')
return
endif
let opt = {
\ 'in_io': 'file',
\ 'in_name': tmp,
\ 'exit_cb': function('s:remove_tmp', [tmp]),
\ 'vertical': get(g:, 'preview_markdown_vertical', 0),
\ 'term_finish': 'close',
\ }
call term_start('mdr', opt)
endfunction
最後に
さくっとターミナルでmarkdownをプレビューしたいときに使えるのでぜひ試してみてください。