vimからコマンドを実行する

Problem,Solution

コマンド実行で詰まった所が解決した。

:! コマンド

という、単純な話なんですが、コマンド実行で失敗するパターンに遭遇した。
次のコマンドだと、失敗。

" Firefoxを起動させる
:!start firefox http://google.com/
E371: コマンドがありません
続けるにはENTERを押すかコマンドを入力してください

次のコマンドだと、成功。

" Firefoxを起動させる
:! start firefox http://google.com/

でも、次のコマンドも成功。

" ファイル一覧を表示
:!dir


更に、次のコマンドも成功(?)してプロンプトで表示される。

" ファイル一覧を表示(?)
:!dir dir

結果としては、最後の分だけ良く分からないが、(どこか参照した結果で最初に弾かれる?)
半角空白入れずに引数を付けると、どうも良くないらしい。
コマンド実行する場合は、半角空白を入れたほうが無難。

Comment

shell関連の設定は以下の通りでした。
NYACUSをshellに設定(参考サイト:Vim-users.jp - Hack #103: シェルをNYACUSに設定する)

" Shell settings.
" Use NYACUS.
set shell=nyacus.exe
set shellcmdflag=-e
set shellpipe=\|&\ tee
set shellredir=>%s\ 2>&1
set shellxquote=\"