最新のvimだとmarkdownのシンタックスファイルが存在していますが、少し古いvimを使う機会が多く、プラグインも入れられる環境にないため、いつでも使えるように自分でシンタックスを作成してみた。
vimの知識が不足しているので、つたないものになっていますが、自分がmarkdownを書く時の見た目としては十分かなーという程度のモノです。
""" MarkDownの簡易ハイライト設定
augroup simpleMarkdownHighlight
autocmd! " シンタックス範囲定義
autocmd VimEnter,WinEnter *.md synsync minlines=500 maxlines=1000 " コードブロック
autocmd VimEnter,WinEnter *.md synmatch mdCodeDelimiter "^```.*" contained
autocmd VimEnter,WinEnter *.md syn region mdCode start="^\s*```.*"end="^\s*```" keepend contains=mdCodeDelimiter
" 見出し
autocmd VimEnter,WinEnter *.md synmatch mdH "^#\+.\+$" " リスト
autocmd VimEnter,WinEnter *.md synmatch mdList "^ *[\-\+\*] " " 順序付きリスト
autocmd VimEnter,WinEnter *.md synmatch mdNumList "^ *\([0-9]\+\.\)\+ " " リンク
autocmd VimEnter,WinEnter *.md synmatch mdLinkDelimiter "[()\[\]]" contained
autocmd VimEnter,WinEnter *.md syn region mdId start="\[\(?=.+?\](\)"end="\]" keepend nextgroup=mdLink skipwhite contains=mdLinkDelimiter
autocmd VimEnter,WinEnter *.md syn region mdLink start="("end=")" keepend contained contains=mdLinkDelimiter
" 引用
autocmd VimEnter,WinEnter *.md synmatch mdBlockQuote "^> .\+$" " カラースキーマ定義
autocmd Colorscheme * highlightdef link mdH Title
autocmd Colorscheme * highlightdef link mdCodeDelimiter Special
autocmd Colorscheme * highlightdef link mdList CursorLineNr
autocmd Colorscheme * highlightdef link mdNumList CursorLineNr
autocmd Colorscheme * highlightdef link mdCode Comment
autocmd Colorscheme * highlightdef link mdBlockQuote Constant
autocmd Colorscheme * highlightdef link mdLink Underlined
autocmd Colorscheme * highlightdef link mdId Type
autocmd Colorscheme * highlightdef link mdLinkDelimiter cleaned
augroup END