Edited at

vim-quickrun シンプルかつまともに使える設定

More than 3 years have passed since last update.

シンプルなvim-quickrunの設定を紹介する。

使用するプラグインはvim-quickrun,vimprocのみ。

これらの導入方法については省略。


成功時はbufferに、失敗時にはquickfixに出力する。

vimprocで動作。

bufferが空なら自動で閉じる。

let g:quickrun_config = get(g:, 'quickrun_config', {})

let g:quickrun_config._ = {
\ 'runner' : 'vimproc',
\ 'runner/vimproc/updatetime' : 60,
\ 'outputter' : 'error',
\ 'outputter/error/success' : 'buffer',
\ 'outputter/error/error' : 'quickfix',
\ 'outputter/buffer/split' : ':rightbelow 8sp',
\ 'outputter/buffer/close_on_empty' : 1,
\ }


おまけ

q でquickfixを閉じれるようにする。

au FileType qf nnoremap <silent><buffer>q :quit<CR>

\r で保存してからquickrunを実行する。

let g:quickrun_no_default_key_mappings = 1

nnoremap \r :write<CR>:QuickRun -mode n<CR>
xnoremap \r :<C-U>write<CR>gv:QuickRun -mode v<CR>

\r でquickfixを閉じて、保存してからquickrunを実行する。

let g:quickrun_no_default_key_mappings = 1

nnoremap \r :cclose<CR>:write<CR>:QuickRun -mode n<CR>
xnoremap \r :<C-U>cclose<CR>:write<CR>gv:QuickRun -mode v<CR>

<C-c> でquickrunを停止

nnoremap <expr><silent> <C-c> quickrun#is_running() ? quickrun#sweep_sessions() : "\<C-c>"