]> git.eshelyaron.com Git - emacs.git/commitdiff
(compilation-start-hook): New hook.
authorSam Steingold <sds@gnu.org>
Tue, 18 Nov 2008 14:14:37 +0000 (14:14 +0000)
committerSam Steingold <sds@gnu.org>
Tue, 18 Nov 2008 14:14:37 +0000 (14:14 +0000)
(compilation-start): Run it on the compilation process.

lisp/ChangeLog
lisp/progmodes/compile.el

index 4010ba0e9f70d2fd5cd37caf2d5d8ee6c5f23207..0fca95bea2d673e7d575adcfb16fd6f73a268cd9 100644 (file)
@@ -1,3 +1,8 @@
+2008-11-18  Sam Steingold  <sds@gnu.org>
+
+       * progmodes/compile.el (compilation-start-hook): New hook.
+       (compilation-start): Run it on the compilation process.
+
 2008-11-18  Juanma Barranquero  <lekktu@gmail.com>
 
        * international/mule-cmds.el (update-leim-list-file): Simplify.
index f29c93f5ffa486e4544c84d23aba27f4f1b8dad6..9993f1197c3505634bf2ca9d59c76a820a683a75 100644 (file)
   :type 'hook
   :group 'compilation)
 
+;;;###autoload
+(defcustom compilation-start-hook nil
+  "List of hook functions run by `compilation-start' on the compilation process.
+\(See `run-hook-with-args').
+If you use \"omake -P\" and do not want \\[save-buffers-kill-terminal] to ask whether you want
+the compilation to be killed, you can use this hook:
+  (add-hook 'compilation-start-hook
+    (lambda (process) (set-process-query-on-exit-flag process nil)) nil t)"
+  :type 'hook
+  :group 'compilation)
+
 ;;;###autoload
 (defcustom compilation-window-height nil
   "Number of lines in a compilation window.  If nil, use Emacs default."
@@ -1277,7 +1288,8 @@ Returns the compilation buffer created."
                    (process-send-eof proc)
                  ;; The process may have exited already.
                  (error nil)))
-             (setq compilation-in-progress
+             (run-hook-with-args 'compilation-start-hook proc)
+              (setq compilation-in-progress
                    (cons proc compilation-in-progress)))
          ;; No asynchronous processes available.
          (message "Executing `%s'..." command)