2012-03-30 5 views
3

Makefileが存在する場合、:makeコマンドを正常に実行します。それ以外の場合は、たとえばcompileというカスタムスクリプトを実行します。どちらのファイルも存在しない場合は、正常に失敗するようにしてください(理想的には編集画面を離れないでください)。メイクファイルがない場合、vimrc makeprgをカスタムスクリプトに設定します。

私はthis threadを知っています。これは自分のニーズに合うように調整できたbash表現です。ただし、時々bash以外のシェルを実行する必要があります。これを行うためのシェルに依存しない方法はありますか?

+0

上記のbash式は、gnuplotスクリプトでは次のようになります。 .vim/after/ftplugin/gnuplot.vim: '' 'setlocal makeprg =([[\ -f \ Makefile \]] \ && \(make \ $ *; \ true)\\\ | \\\ | \ gnuplot \ -persist \%\ $ *) '' ' – Hotschke

答えて

1

makeprgは、実行可能ファイルの名前に設定できます。 Makefileがある場合はmakeを実行するシェルスクリプトを作成し、それ以外の場合はcompileを実行してください。

+1

目的はvimrcでやることです。そのため、すべてのプロジェクトでそのようなファイルを作成する必要はありません。 – mgold

+0

その場合、 'shell'オプションの値を' makeprg'オプションの値と一緒に変更できますか? – chepner

+0

ああ、まあ、私はそれを避けようとしていました。しかし、十分な ':set shell =/bin/bash'がこのトリックをしたので、私はそれについて行きます。 – mgold

関連する問題