LoginSignup
0
3

More than 5 years have passed since last update.

vimの簡易Markdownハイライト設定

Last updated at Posted at 2017-04-01

最新のvimだとmarkdownのシンタックスファイルが存在していますが、少し古いvimを使う機会が多く、プラグインも入れられる環境にないため、いつでも使えるように自分でシンタックスを作成してみた。
vimの知識が不足しているので、つたないものになっていますが、自分がmarkdownを書く時の見た目としては十分かなーという程度のモノです。

""" MarkDownの簡易ハイライト設定
augroup simpleMarkdownHighlight
  autocmd!
  " シンタックス範囲定義
  autocmd VimEnter,WinEnter *.md syn sync minlines=500 maxlines=1000
  " コードブロック
  autocmd VimEnter,WinEnter *.md syn match mdCodeDelimiter "^```.*" contained
  autocmd VimEnter,WinEnter *.md syn region mdCode start="^\s*```.*" end="^\s*```" keepend contains=mdCodeDelimiter
  " 見出し
  autocmd VimEnter,WinEnter *.md syn match mdH "^#\+.\+$"
  " リスト
  autocmd VimEnter,WinEnter *.md syn match mdList "^ *[\-\+\*] "
  " 順序付きリスト
  autocmd VimEnter,WinEnter *.md syn match mdNumList "^ *\([0-9]\+\.\)\+ "
  " リンク
  autocmd VimEnter,WinEnter *.md syn match 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 syn match mdBlockQuote "^> .\+$"
  " カラースキーマ定義
  autocmd Colorscheme * highlight def link mdH Title
  autocmd Colorscheme * highlight def link mdCodeDelimiter Special
  autocmd Colorscheme * highlight def link mdList CursorLineNr
  autocmd Colorscheme * highlight def link mdNumList CursorLineNr
  autocmd Colorscheme * highlight def link mdCode Comment
  autocmd Colorscheme * highlight def link mdBlockQuote Constant
  autocmd Colorscheme * highlight def link mdLink Underlined
  autocmd Colorscheme * highlight def link mdId Type
  autocmd Colorscheme * highlight def link mdLinkDelimiter cleaned
augroup END
0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3