14

with (x)emacs, how could I run the 'compile' command without separately pressing enter to accept the default command? (I can bind the 'compile' to a key but I'd like the whole thing to happen without separate pressing of enter)

Of course, similar behaviour with some else command would also be ok.

Luke Girvin
  • 13,221
  • 9
  • 64
  • 84
Touko
  • 11,359
  • 16
  • 75
  • 105

3 Answers3

28

I used to (setq compilation-read-command nil) in my .emacs and invoke compile with a prefix argument when I actually wanted to change the command line: C-u M-x compile

Since then, I found about the recompile command that's even closer to what I want. Most importantly, it does not prompt for the command line. This one is the command I actually bound to a function key.

The usual workflow then goes: M-x compile the first time per project, and F9 at each iteration of the edit-compile-test process.

JB.
  • 40,344
  • 12
  • 79
  • 106
  • This has the advantage of allowing you to change the command occasionally, and then stick with the change. – Darron Jan 14 '09 at 16:45
9

Hmm,

after still a little bit more googling, I found the answer from the EmacsWiki : Compile command (under No prompt for command):

(setq compilation-read-command nil)

hope it helps somebody else later. No more pressing enter for the same default command.

Touko
  • 11,359
  • 16
  • 75
  • 105
8

most obvious method is to call M-x recompile