aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/progmodes
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/progmodes')
-rw-r--r--lisp/progmodes/compile.el31
1 files changed, 20 insertions, 11 deletions
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index 2710066c2cd..caf0e94b927 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -917,11 +917,13 @@ non-nil; otherwise uses `compile-command'. With prefix arg, always prompts.
917Additionally, with universal prefix arg, compilation buffer will be in 917Additionally, with universal prefix arg, compilation buffer will be in
918comint mode, i.e. interactive. 918comint mode, i.e. interactive.
919 919
920To run more than one compilation at once, start one and rename 920To run more than one compilation at once, start one then rename
921the \`*compilation*' buffer to some other name with 921the \`*compilation*' buffer to some other name with
922\\[rename-buffer]. Then start the next one. On most systems, 922\\[rename-buffer]. Then _switch buffers_ and start the new compilation.
923termination of the main compilation process kills its 923It will create a new \`*compilation*' buffer.
924subprocesses. 924
925On most systems, termination of the main compilation process
926kills its subprocesses.
925 927
926The name used for the buffer is actually whatever is returned by 928The name used for the buffer is actually whatever is returned by
927the function in `compilation-buffer-name-function', so you can set that 929the function in `compilation-buffer-name-function', so you can set that
@@ -970,7 +972,7 @@ visible rather than the beginning."
970If NAME-FUNCTION is non-nil, call it with one argument MODE-NAME 972If NAME-FUNCTION is non-nil, call it with one argument MODE-NAME
971to determine the buffer name. 973to determine the buffer name.
972Likewise if `compilation-buffer-name-function' is non-nil. 974Likewise if `compilation-buffer-name-function' is non-nil.
973If current buffer is the mode MODE-COMMAND, 975If current buffer has the major mode MODE-COMMAND,
974return the name of the current buffer, so that it gets reused. 976return the name of the current buffer, so that it gets reused.
975Otherwise, construct a buffer name from MODE-NAME." 977Otherwise, construct a buffer name from MODE-NAME."
976 (cond (name-function 978 (cond (name-function
@@ -1009,8 +1011,11 @@ The rest of the arguments are optional; for them, nil means use the default.
1009 1011
1010MODE is the major mode to set in the compilation buffer. Mode 1012MODE is the major mode to set in the compilation buffer. Mode
1011may also be t meaning use `compilation-shell-minor-mode' under `comint-mode'. 1013may also be t meaning use `compilation-shell-minor-mode' under `comint-mode'.
1014
1012If NAME-FUNCTION is non-nil, call it with one argument (the mode name) 1015If NAME-FUNCTION is non-nil, call it with one argument (the mode name)
1013to determine the buffer name. 1016to determine the buffer name. Otherwise, the default is to
1017reuses the current buffer if it has the proper major mode,
1018else use or create a buffer with name based on the major mode.
1014 1019
1015If HIGHLIGHT-REGEXP is non-nil, `next-error' will temporarily highlight 1020If HIGHLIGHT-REGEXP is non-nil, `next-error' will temporarily highlight
1016the matching section of the visited source line; the default is to use the 1021the matching section of the visited source line; the default is to use the
@@ -1617,12 +1622,16 @@ Use this command in a compilation log buffer. Sets the mark at point there."
1617 (setq compilation-current-error (point)) 1622 (setq compilation-current-error (point))
1618 (next-error-internal))) 1623 (next-error-internal)))
1619 1624
1620;; Return a compilation buffer.
1621;; If the current buffer is a compilation buffer, return it.
1622;; Otherwise, look for a compilation buffer and signal an error
1623;; if there are none.
1624(defun compilation-find-buffer (&optional avoid-current) 1625(defun compilation-find-buffer (&optional avoid-current)
1625 (next-error-find-buffer avoid-current 'compilation-buffer-internal-p)) 1626 "Return a compilation buffer.
1627If AVOID-CURRENT is nil, and
1628the current buffer is a compilation buffer, return it.
1629If AVOID-CURRENT is non-nil, return the current buffer
1630only as a last resort."
1631 (if (and (compilation-buffer-internal-p (current-buffer))
1632 (not avoid-current))
1633 (current-buffer)
1634 (next-error-find-buffer avoid-current 'compilation-buffer-internal-p)))
1626 1635
1627;;;###autoload 1636;;;###autoload
1628(defun compilation-next-error-function (n &optional reset) 1637(defun compilation-next-error-function (n &optional reset)