web-dev-qa-db-ja.com

デフォルトでgVimにcygwinで外部コマンドを実行させることは可能ですか?

デフォルトでgVim(Windows上)にcygwinの外部コマンドを実行させることは可能ですか?つまり、!psは現在実行中のプロセスを示すcygwinターミナルを開きますか?

4
Rich Ashworth

まず、Vimにcmd.exeではなくbashプログラムを実行するように指示する必要があります。また、プロファイル/ログインスクリプトを読み取るために、bashをログインシェルとして実行する必要があります。環境(PATHなど)を適切に設定します。

また、シェルにコマンドラインオプションを導入する設定を変更する必要があります。

:set Shell=C:\Cygwin\bin\bash.exe\ -login
:set shellcmdflag=-c

Cygwinコマンドに引数が必要な場合は、おそらく

:set shellquote=\"

コマンド全体が適切に引用符で囲まれるようにするため。そうでない場合、シェルは最初のWordのみを取得し、残りを無視します。

4
njd