質問: ### 前提・実現したいこと Vimプラグインのvim-quickrunを使って、C++のプログラムを実行させたいです。 しかしエラーが出てしまい実行できません。何か設定に問題があるのでしょうか。 ### 発生している問題・エラーメッセージ 次のようなエラーメッセージが出て実行できません。 ``` '"D:\dev\hello"' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 ``` ### 該当のソースコード 実行させようとしていたC++のプログラムは以下です。 ``` /* hello.cpp */ #include int main(int argc, char* argv[]) { std::cout << "hello" << std::endl; return 0; } ``` ### 試したこと 別の言語はどうだろうと思い、試しに次のようなCプログラムに対して実行してみたところ、これはうまく動きました。 ``` #include int main(int argc, char* argv[]) { printf("hello\n"); return 0; } ``` ### 補足情報(言語/FW/ツール等のバージョンなど) * OS: Windows 10 64bit * Vimバージョン: 8.0.134 * C++コンパイラ: msys2のmingw-w64-x86_64-clang++ * PATH: `C:\Program Files\Vim;C:\msys64\mingw64\bin;C:\msys64\usr\bin\;C:\Windows\System32` ※`C:\Program FIles\Vim`に上記のバージョンのVimが置いてあります。 作業手順: 1. cmd.exe上から`vim hello.cpp`を実行してファイルを開く 2. vim-quickrunを実行のために、`\r`をタイプする _vimrcは以下です。 ``` let g:quickrun_config={ \ '_': { \ 'hook/output_encode/encoding': 'cp932', \ }} set runtimepath+=~/vimfiles/vim-quickrun filetype plugin indent on syntax enable ```
回答: あなたが期待しているプログラム(コンパイラ)を、quickrun.vim が使っていないのだと思います。 `:QuickRun -debug x` のように quickrun を実行すると、`g:x` に実行情報が格納されます。`:echo g:x.commands` で、実際に実行されているコマンドを確認してみてください。期待通りでない場合、quickrun の設定が必要です。設定方法については別途 help などを参照してみてください。