Vimで編集しているプログラムなどをチョチョイっと実行するのに便利なvim-quickrunを非同期で実行するためのおぼえがき。。。
環境
- Mac OS X Yosemite(10.10.5)
パッケージ管理 brew - Vim IMproved 7.4 [MacOS X (unix) version
(コマンドライン上で動くvim) - vimにvimprocが導入済みである
参照:Shougo/vimproc.vim [GitHub] | https://github.com/Shougo/vimproc.vim - vimのプラグイン管理をNeoBundleを利用している
参照:Shougo/neobundle.vim [GitHub] | https://github.com/Shougo/neobundle.vim
やりかた
vimインストール時にclientserverを使えるようにする。
brew reinstall vim --with-client-server # 確認 vim --version | grep "client" # +clientserver -hangul_input +netbeans_intg +title # clientserverの左が'+'になっていればOK
.vimrc
NeoBundleLazy "thinca/vim-quickrun", { "autoload": { "mappings": [['nxo', '<Plug>(quickrun)']] }} nmap <Leader>r <Plug>(quickrun) # \rでQuickrunを実行 let s:hooks = neobundle#get_hooks("vim-quickrun") function! s:hooks.on_source(bundle) let g:quickrun_config = { "_" : { "runner" : "vimproc", "runner/vimproc/updatetime" : 40, } } endfunction
(いろいろな人の設定をコピペして貼り合わせてる感じなので理解していない部分が多いです。。。)
実行結果はこんな感じ
これで、C言語やシェルスクリプトを編集している際に、編集中のファイルで’\r’を入力すると新しい分割画面が現れて実行結果が表示されます。
この際に、実行処理中もソースの編集が可能に〜♪
If you are using vim 8 / neovim, maybe you can try asyncrun: https://github.com/skywind3000/asyncrun.vim as a replacement to quickrun with better user experience and expansibility.
Thank you for your advice! I think it’s very useful and expansible.
アドバイス感謝します。私もそれはとても有用で拡張性に優れていると思います。
“vim-quickrun” can run program same command each source code.(ex. C, C++, Python…)
“vim-quickrun”は同じコマンドでそれぞれのソースコードを実行できます。(例. C, C++, Python…)
“asyncrun.vim” may be to run program alike “vim-quickrun”. But I don’t know. :-(
“asyncrun.vim”も”vim-quickrun”のように実行できるのかもしれません。しかし私はその方法を知りません。
Only run program, I think “vim-quickrun” is easy to use plugin.
プログラムを動かすのみなら”vim-quickrun”は使いやすいプラグインであると思います。
I cannot express my thoughts in English enough. :’-(
I apologize for any confusion.
私は自分の考えを満足に英語で表現できません。わかりずらくてごめんなさい。
Thanks!