* lisp/progmodes/compile.el: Remove redundant :groups

(compilation-shell-minor-mode, compilation-minor-mode): Use :lighter
rather than the old positional args.
(compilation-next-error): Make "No error here" into a user-error.
This commit is contained in:
Stefan Monnier 2019-02-15 10:29:02 -05:00
parent 00b8c7ef96
commit 877eba7249

View file

@ -43,23 +43,20 @@
;;;###autoload
(defcustom compilation-mode-hook nil
"List of hook functions run by `compilation-mode'."
:type 'hook
:group 'compilation)
:type 'hook)
;;;###autoload
(defcustom compilation-start-hook nil
"Hook run after starting a new compilation process.
The hook is run with one argument, the new process."
:type 'hook
:group 'compilation)
:type 'hook)
;;;###autoload
(defcustom compilation-window-height nil
"Number of lines in a compilation window.
If nil, use Emacs default."
:type '(choice (const :tag "Default" nil)
integer)
:group 'compilation)
integer))
(defvar compilation-filter-hook nil
"Hook run after `compilation-filter' has inserted a string into the buffer.
@ -526,7 +523,7 @@ File = \\(.+\\), Line = \\([0-9]+\\)\\(?:, Column = \\([0-9]+\\)\\)?"
"Alist of values for `compilation-error-regexp-alist'.")
(defcustom compilation-error-regexp-alist
(mapcar 'car compilation-error-regexp-alist-alist)
(mapcar #'car compilation-error-regexp-alist-alist)
"Alist that specifies how to match errors in compiler output.
On GNU and Unix, any string is a valid filename, so these
matchers must make some common sense assumptions, which catch
@ -581,8 +578,7 @@ listed text properties PROP# are given values VAL# as well."
:type '(repeat (choice (symbol :tag "Predefined symbol")
(sexp :tag "Error specification")))
:link `(file-link :tag "example file"
,(expand-file-name "compilation.txt" data-directory))
:group 'compilation)
,(expand-file-name "compilation.txt" data-directory)))
;;;###autoload(put 'compilation-directory 'safe-local-variable 'stringp)
(defvar compilation-directory nil
@ -642,7 +638,6 @@ If this is buffer-local in the destination buffer, Emacs obeys
that value, otherwise it uses the value in the *compilation*
buffer. This enables a major-mode to specify its own value."
:type 'boolean
:group 'compilation
:version "20.4")
(defcustom compilation-read-command t
@ -653,15 +648,13 @@ Note that changing this to nil may be a security risk, because a
file might define a malicious `compile-command' as a file local
variable, and you might not notice. Therefore, `compile-command'
is considered unsafe if this variable is nil."
:type 'boolean
:group 'compilation)
:type 'boolean)
;;;###autoload
(defcustom compilation-ask-about-save t
"Non-nil means \\[compile] asks which buffers to save before compiling.
Otherwise, it saves all modified buffers without asking."
:type 'boolean
:group 'compilation)
:type 'boolean)
(defcustom compilation-save-buffers-predicate nil
"The second argument (PRED) passed to `save-some-buffers' before compiling.
@ -675,7 +668,6 @@ of `my-compilation-root' here."
(const :tag "Default (save all file-visiting buffers)" nil)
(const :tag "Save all buffers" t)
function)
:group 'compilation
:version "24.1")
;;;###autoload
@ -684,8 +676,7 @@ of `my-compilation-root' here."
Elements should be directory names, not file names of directories.
The value nil as an element means to try the default directory."
:type '(repeat (choice (const :tag "Default" nil)
(string :tag "Directory")))
:group 'compilation)
(string :tag "Directory"))))
;;;###autoload
(defcustom compile-command (purecopy "make -k ")
@ -705,8 +696,7 @@ You might also use mode hooks to specify it in certain modes, like this:
(file-name-sans-extension buffer-file-name))))))))
It's often useful to leave a space at the end of the value."
:type 'string
:group 'compilation)
:type 'string)
;;;###autoload(put 'compile-command 'safe-local-variable (lambda (a) (and (stringp a) (or (not (boundp 'compilation-read-command)) compilation-read-command))))
;;;###autoload
@ -715,7 +705,6 @@ It's often useful to leave a space at the end of the value."
This only affects platforms that support asynchronous processes (see
`start-process'); synchronous compilation processes never accept input."
:type 'boolean
:group 'compilation
:version "22.1")
;; A weak per-compilation-buffer hash indexed by (FILENAME . DIRECTORY). Each
@ -741,7 +730,6 @@ This list is temporarily prepended to `process-environment' prior to
starting the compilation process."
:type '(repeat (string :tag "ENVVARNAME=VALUE"))
:options '(("LANG=C"))
:group 'compilation
:version "24.1")
;; History of compile commands.
@ -750,19 +738,16 @@ starting the compilation process."
(defface compilation-error
'((t :inherit error))
"Face used to highlight compiler errors."
:group 'compilation
:version "22.1")
(defface compilation-warning
'((t :inherit warning))
"Face used to highlight compiler warnings."
:group 'compilation
:version "22.1")
(defface compilation-info
'((t :inherit success))
"Face used to highlight compiler information."
:group 'compilation
:version "22.1")
;; The next three faces must be able to stand out against the
@ -774,13 +759,11 @@ starting the compilation process."
(((class color) (min-colors 8)) (:foreground "red"))
(t (:inverse-video t :weight bold)))
"Face for Compilation mode's \"error\" mode line indicator."
:group 'compilation
:version "24.3")
(defface compilation-mode-line-run
'((t :inherit compilation-warning))
"Face for Compilation mode's \"running\" mode line indicator."
:group 'compilation
:version "24.3")
(defface compilation-mode-line-exit
@ -790,19 +773,16 @@ starting the compilation process."
(((class color)) (:foreground "green" :weight bold))
(t (:weight bold)))
"Face for Compilation mode's \"exit\" mode line indicator."
:group 'compilation
:version "24.3")
(defface compilation-line-number
'((t :inherit font-lock-keyword-face))
"Face for displaying line numbers in compiler messages."
:group 'compilation
:version "22.1")
(defface compilation-column-number
'((t :inherit font-lock-doc-face))
"Face for displaying column numbers in compiler messages."
:group 'compilation
:version "22.1")
(defcustom compilation-message-face 'underline
@ -811,7 +791,6 @@ Faces `compilation-error-face', `compilation-warning-face',
`compilation-info-face', `compilation-line-face' and
`compilation-column-face' get prepended to this, when applicable."
:type 'face
:group 'compilation
:version "22.1")
(defvar compilation-error-face 'compilation-error
@ -844,7 +823,6 @@ Faces `compilation-error-face', `compilation-warning-face',
(defcustom compilation-auto-jump-to-first-error nil
"If non-nil, automatically jump to the first error during compilation."
:type 'boolean
:group 'compilation
:version "23.1")
(defvar compilation-auto-jump-to-next nil
@ -867,7 +845,6 @@ info, are considered errors."
:type '(choice (const :tag "Skip warnings and info" 2)
(const :tag "Skip info" 1)
(const :tag "No skip" 0))
:group 'compilation
:version "22.1")
(defun compilation-set-skip-threshold (level)
@ -891,7 +868,6 @@ Visited messages are ones for which the file, line and column have been jumped
to from the current content in the current compilation buffer, even if it was
from a different message."
:type 'boolean
:group 'compilation
:version "22.1")
(defun compilation-type (type)
@ -1583,7 +1559,7 @@ If the optional argument `edit-command' is non-nil, the command can be edited."
(setq command (compilation-read-command (or (car compilation-arguments)
command)))
(if compilation-arguments (setcar compilation-arguments command)))
(apply 'compilation-start (or compilation-arguments (list command)))))
(apply #'compilation-start (or compilation-arguments (list command)))))
(defcustom compilation-scroll-output nil
"Non-nil to scroll the *compilation* buffer window as output appears.
@ -1597,8 +1573,7 @@ point on its location in the *compilation* buffer."
:type '(choice (const :tag "No scrolling" nil)
(const :tag "Scroll compilation output" t)
(const :tag "Stop scrolling at the first error" first-error))
:version "20.3"
:group 'compilation)
:version "20.3")
(defun compilation-buffer-name (name-of-mode mode-command name-function)
@ -1622,8 +1597,7 @@ Otherwise, construct a buffer name from NAME-OF-MODE."
"If t, always kill a running compilation process before starting a new one.
If nil, ask to kill it."
:type 'boolean
:version "24.3"
:group 'compilation)
:version "24.3")
;;;###autoload
(defun compilation-start (command &optional mode name-function highlight-regexp)
@ -1802,11 +1776,11 @@ Returns the compilation buffer created."
(when compilation-always-kill
(set-process-query-on-exit-flag proc nil))
(set-process-sentinel proc 'compilation-sentinel)
(set-process-sentinel proc #'compilation-sentinel)
(unless (eq mode t)
;; Keep the comint filter, since it's needed for proper
;; handling of the prompts.
(set-process-filter proc 'compilation-filter))
(set-process-filter proc #'compilation-filter))
;; Use (point-max) here so that output comes in
;; after the initial text,
;; regardless of where the user sees point.
@ -2114,7 +2088,7 @@ by replacing the first word, e.g., `compilation-scroll-output' from
(let (revert-buffer-function)
(revert-buffer ignore-auto noconfirm))
(if (or noconfirm (yes-or-no-p (format "Restart compilation? ")))
(apply 'compilation-start compilation-arguments))))
(apply #'compilation-start compilation-arguments))))
(defvar compilation-current-error nil
"Marker to the location from where the next error will be found.
@ -2150,7 +2124,7 @@ Optional argument MINOR indicates this is called from
;; It's generally preferable to use after-change-functions since they
;; can be subject to combine-after-change-calls, but if we do that, we risk
;; running our hook after font-lock, resulting in incorrect refontification.
(add-hook 'before-change-functions 'compilation--flush-parse nil t)
(add-hook 'before-change-functions #'compilation--flush-parse nil t)
;; Also for minor mode, since it's not permanent-local.
(add-hook 'change-major-mode-hook #'compilation--remove-properties nil t)
(if minor
@ -2162,7 +2136,7 @@ Optional argument MINOR indicates this is called from
(defun compilation--unsetup ()
;; Only for minor mode.
(font-lock-remove-keywords nil (compilation-mode-font-lock-keywords))
(remove-hook 'before-change-functions 'compilation--flush-parse t)
(remove-hook 'before-change-functions #'compilation--flush-parse t)
(kill-local-variable 'compilation--parsed)
(compilation--remove-properties)
(font-lock-flush))
@ -2175,8 +2149,7 @@ When Compilation Shell minor mode is enabled, all the
error-parsing commands of the Compilation major mode are
available but bound to keys that don't collide with Shell mode.
See `compilation-mode'."
nil " Shell-Compile"
:group 'compilation
:lighter " Shell-Compile"
(if compilation-shell-minor-mode
(compilation-setup t)
(compilation--unsetup)))
@ -2188,8 +2161,7 @@ See `compilation-mode'."
When Compilation minor mode is enabled, all the error-parsing
commands of Compilation major mode are available. See
`compilation-mode'."
nil " Compilation"
:group 'compilation
:lighter " Compilation"
(if compilation-minor-mode
(compilation-setup t)
(compilation--unsetup)))
@ -2379,7 +2351,7 @@ looking for the next message."
'compilation-message))
(setq pt (compilation-next-single-property-change
pt 'compilation-message nil
(line-end-position)))
(line-end-position)))
(or (setq msg (get-text-property pt 'compilation-message))
(setq pt (point)))))
(setq last (compilation--loc->file-struct loc))
@ -2397,7 +2369,7 @@ looking for the next message."
"Moved back before first %s" (point-min))))
(goto-char pt)
(or msg
(error "No %s here" compilation-error))))
(user-error "No %s here" compilation-error))))
(defun compilation-previous-error (n)
"Move point to the previous error in the compilation buffer.
@ -2585,7 +2557,6 @@ compilation output window; an arrow in the left fringe points to
the current message. If nil and there is no left fringe, the message
displays at the top of the window; there is no arrow."
:type '(choice integer (const :tag "No window scrolling" nil))
:group 'compilation
:version "22.1")
(defsubst compilation-set-window (w mk)
@ -2679,7 +2650,7 @@ and overlay is highlighted between MK and END-MK."
(numberp next-error-highlight))
;; We want highlighting: delete overlay on next input.
(add-hook 'pre-command-hook
'compilation-goto-locus-delete-o)
#'compilation-goto-locus-delete-o)
;; We don't want highlighting: delete overlay now.
(delete-overlay compilation-highlight-overlay))
;; We want highlighting for a limited time:
@ -2699,7 +2670,7 @@ and overlay is highlighted between MK and END-MK."
(if (timerp next-error-highlight-timer)
(cancel-timer next-error-highlight-timer))
(remove-hook 'pre-command-hook
'compilation-goto-locus-delete-o))
#'compilation-goto-locus-delete-o))
(defun compilation-find-file (marker filename directory &rest formats)
"Find a buffer for file FILENAME.