LoginSignup
15

More than 1 year has passed since last update.

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

Last updated at Posted at 2013-01-30

はじめに

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で切り替えることもできる.

参考

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
15