コンパイルコマンドをカスタマイズするにはどうすればよいですか?


8

私のプロジェクトの1つではmake package install、ビルド時にの代わりに実行する必要がありmakeます。最後に使用したコンパイルコマンドは記憶されていますがmake -k、emacsが起動するたびにリセットされます。M-x compileデフォルトにカスタマイズするにはどうすればよいmake package installですか?


の価値はcompilation-read-command何ですか?この変数がnil値以外に設定されているM-x compile場合は、使用するコンパイルコマンドの入力を求めるプロンプトが表示されます。または、次のようにすることもできますC-u M-x compile。この場合、の値に関係なく、コマンドの入力を求められますcompilation-read-command
itsjeyd 2014年

1
tに設定されています。実行前にコマンドを編集することはできますが、デフォルトの設定を変更したいと思います
Connor

そうですか。質問に加えた編集を確認する前に、上記のコメントを投稿しました;)
itsjeyd

いい質問ですね マニュアルから、ファイルの最後の「Local Variables:」セクションに「compile:...」または「compile-command:...」を追加できるという印象がありましたが、新しいEmacsはそうではありませんtはそれらに注意を払っているようです... :(
imz-Ivan Zakharyaschev 2015年

回答:


7

変数compile-commandをカスタマイズして、デフォルトで使用されるコンパイルコマンドを変更できます。

(setq compile-command "make package install")

でない コンパイルコマンドを初めて実行するとmake package install、その新しいコマンドが新しいデフォルトになります。
nispio 2014年

2

グローバルではなくプロジェクトごとに変数をカスタマイズする場合。ディレクトリ変数を使用できます。これらにより、特定のディレクトリとそのサブディレクトリ内のファイルにのみ特定のカスタマイズを適用できます。

たとえば、プロジェクトAでのみmake package install as compileコマンドを使用する場合は、プロジェクトのルートディレクトリにという名前のファイルを作成し、次のようなものを追加する必要があります.dir-locals.el

((nil . ((compile-command . "make package install"))))

構文は、上記のemacsマニュアルへのリンクで詳細に説明されています。@hatschipuhで指摘されているように、コマンドadd-dir-local-variableを使用して、delete-dir-local-variabledirローカル値を簡単に追加および削除できます。


便宜上、コマンドadd-dir-local-variableとがありますdelete-dir-local-variable
クレメラ

@hatschipuh、良い提案により、これらのコマンドに言及するように回答が更新されました
Iqbal Ansari
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.