Vim
Markdown

quickrunで実行コマンドを複数設定して, 自由に切り替える (Markdownを例に)

More than 1 year has passed since last update.


はじめに

quickrunでは, FileTypeによっては, デフォルトで

複数の実行コマンドが登録されていて, 優先順位が設定されている.

その設定を変更・追加する.


デフォルトの設定

例えば, Ver. 0.60では, Markdownの設定は下記のようになっている (316~339行目あたり).

ここで, Markdownの実行コマンドの優先順位は,


Markdown.pl, kramdown, bluecloth, redcarpet, pandoc


となっている.


vim-quickrun/autoload/quickrun.vim

let g:quickrun#default_config = {

~ 中略 ~
\ 'markdown': {
\ 'type': executable('Markdown.pl') ? 'markdown/Markdown.pl':
\ executable('kramdown') ? 'markdown/kramdown':
\ executable('bluecloth') ? 'markdown/bluecloth':
\ executable('redcarpet') ? 'markdown/redcarpet':
\ executable('pandoc') ? 'markdown/pandoc': '',
\ },
\ 'markdown/Markdown.pl': {
\ 'command': 'Markdown.pl',
\ },
\ 'markdown/bluecloth': {
\ 'command': 'bluecloth',
\ 'cmdopt': '-f',
\ },
\ 'markdown/kramdown': {
\ 'command': 'kramdown',
\ },
\ 'markdown/pandoc': {
\ 'command': 'pandoc',
\ 'exec': '%c --from=markdown --to=html %o %s %a',
\ },
\ 'markdown/redcarpet': {
\ 'command': 'redcarpet',
\ },
~ 中略 ~
}


設定の変更・追加

下記のように実行コマンドを追加し, 優先順位を変更したいとする.


mdown (gh-markdown-cli), pandoc, multimarkdown, MultiMarkdown.pl, rdiscount, bluecloth, markdown, Markdown.pl, redcarpet, kramdown


また, 出力先をウェブ・ブラウザに変更する.

この場合, 以下を~/.vimrcに追記する.


~/.vimrc

let g:quickrun_config = {

\
\ 'markdown': {
\
\ 'outputter': 'browser',
\
\ 'type':
\ executable('mdown') ? 'markdown/mdown':
\ executable('pandoc') ? 'markdown/pandoc':
\ executable('multimarkdown') ? 'markdown/multimarkdown':
\ executable('MultiMarkdown.pl') ? 'markdown/MultiMarkdown.pl':
\ executable('rdiscount') ? 'markdown/rdiscount':
\ executable('bluecloth') ? 'markdown/bluecloth':
\ executable('markdown') ? 'markdown/markdown':
\ executable('Markdown.pl') ? 'markdown/Markdown.pl':
\ executable('redcarpet') ? 'markdown/redcarpet':
\ executable('kramdown') ? 'markdown/kramdown':
\ '',
\
\ },
\
\ 'markdown/mdown': {
\ 'command': 'mdown',
\ 'exec': '%c -i %s',
\ },
\
\ 'markdown/multimarkdown': {
\ 'command': 'multimarkdown',
\ },
\ 'markdown/MultiMarkdown.pl': {
\ 'command': 'MultiMarkdown.pl',
\ },
\
\ 'markdown/rdiscount': {
\ 'command': 'rdiscount',
\ },
\
\ 'markdown/markdown': {
\ 'command': 'markdown',
\ },
\
\ }


実行コマンドの確認

MarkdownファイルをVimで開いた後に, 実際に選択されたコマンドは, 以下で確認できる.

:echo g:quickrun_config.markdown.type

または,

:echo g:quickrun_config['markdown']['type']


実行コマンドの切替

実行コマンドは, 例えば以下のようにして切り替えることができる.

:let g:quickrun_config.markdown.type = 'markdown/pandoc'

または,

:let g:quickrun_config['markdown']['type'] = 'markdown/pandoc'

さらに, unite-quickrun_configを用いて, Uniteで切り替えることもできる.


参考