Vim による markdown の執筆環境
January 01, 2021
Template/Snippet ツール
安心と信頼の mattn さん製。
使用方法
例えば空の markdown ファイルを開いて下記のコマンドで blog post 用のテンプレートを呼び出す。
:Template blog
設定
~/.vimrc には下記のように個人用の template を配置するディレクトリを指定。
let g:sonictemplate_vim_template_dir = ['~/.vim/template']
以下のように自分で作ったテンプレートを作成。
$ tree .vim/template/.vim/template/├── markdown│ ├── base-blog.md│ └── base-meeting.md└── sh└── base-shebang.sh
ファイル内容が空のときに使われるテンプレートは、ファイル名先頭に base-
を付ける。
ファイル内容が何かしら既に書き込まれている場合に使うスニペットはファイル名先頭に snip-
を付ける。
テンプレート例は、下記を参考に。
- https://github.com/mattn/vim-sonictemplate/blob/master/template/python/snip-class.py
- https://github.com/hnishi/dotfiles/blob/8f110775035f7d9d9f5c211bcbecde1688c9caa4/.vim/template/markdown/base-blog.md
より詳細な使い方は、 ヘルプ を参照する。
:help sonictemplate
クリップボードの画像を貼り付ける
ferrine/md-img-paste.vim: paste image to markdown
使用方法
<leader> + p
mac だと ctrl + command + shift + 4 で範囲選択してスクリーンショットを clip board にキャプチャできる。
設定
" key map の登録autocmd FileType markdown nmap <buffer><silent> <leader>p :call mdip#MarkdownClipboardImage()<CR>" clip board 画像ファイルを保存するディレクトリ名let g:mdip_imgdir = 'images'" 画像ファイル名の prefixlet g:mdip_imgname = 'image'
URL を貼り付けたときに自動でタイトルを取得してハイパーリンクにする
使用方法
<C-y> + a
キーマッピングでハイパーリンクを素早く作成(自動でタイトルは取得しない)
すでに text があって、そこに URL を貼って hyperlink にしたい場合は
nnoremap <Leader>3 ciw[<C-r>"]()<Esc>vnoremap <Leader>3 c[<C-r>"]()<Esc>nnoremap <Leader>4 ciw[<C-r>"](<Esc>"*pa)<Esc>vnoremap <Leader>4 c[<C-r>"](<Esc>"*pa)<Esc>
を .vimrc に書く。
markdown の preview
github でのレンダリング
grip
ハイパーリンクをいい感じに Reference 形式にする
このツールは実際に使って試したわけではないのだが、もし reference 形式にしたいときのためにメモ。
textlint
文章の lint ツール。
TBD