* src/editfns.c (Fmessage): Don't use minibuffer-message.
(Fmessage_in_echo_area): Remove function message-in-echo-area.
(syms_of_editfns): Remove variable message-in-echo-area.
* lisp/isearch.el (isearch--momentary-message): Remove message-in-echo-area.
* lisp/minibuffer.el (minibuffer-message): Don't record message
in the *Messages* buffer.
(minibuffer-completion-help): Remove message-in-echo-area.
* lisp/subr.el (do-after-load-evaluation): Remove discard-input (bug#38560)
When @code{inhibit-message} is non-@code{nil}, no message will be displayed
in the echo area, it will only be logged to @samp{*Messages*}.
-If the minibuffer is active, it uses the @code{minibuffer-message}
-function to display the message temporarily at the end of the
-minibuffer (@pxref{Minibuffer Misc}).
-
If @var{format-string} is @code{nil} or the empty string,
@code{message} clears the echo area; if the echo area has been
-expanded automatically, this brings it back to its normal size.
+expanded automatically, this brings it back to its normal size. If
+the minibuffer is active, this brings the minibuffer contents back
+onto the screen immediately.
@example
@group
*** Minibuffer now uses 'minibuffer-message' to display error messages
at the end of the active minibuffer.
-+++
-*** The function 'message' now displays the message at the end of the minibuffer
-when the minibuffer is active.
-
+++
*** 'y-or-n-p' now uses the minibuffer to read 'y' or 'n' answer.
(defun isearch--momentary-message (string)
"Print STRING at the end of the isearch prompt for 1 second."
(let ((message-log-max nil))
- (message-in-echo-area "%s%s%s"
+ (message "%s%s%s"
(isearch-message-prefix nil isearch-nonincremental)
isearch-message
(apply #'propertize (format " [%s]" string)
(isearch-message-prefix ellipsis isearch-nonincremental)
m
(isearch-message-suffix c-q-hack)))
- (if c-q-hack m (let ((message-log-max nil)) (message-in-echo-area "%s" m)))))
+ (if c-q-hack m (let ((message-log-max nil)) (message "%s" m)))))
(defun isearch--describe-regexp-mode (regexp-function &optional space-before)
"Make a string for describing REGEXP-FUNCTION.
(progn
(if args
(apply #'message message args)
- (message-in-echo-area "%s" message))
+ (message "%s" message))
(prog1 (sit-for (or minibuffer-message-timeout 1000000))
- (message-in-echo-area nil)))
- ;; Record message in the *Messages* buffer
- (let ((inhibit-message t))
- (if args
- (apply #'message message args)
- (message-in-echo-area "%s" message)))
+ (message nil)))
;; Clear out any old echo-area message to make way for our new thing.
- (message-in-echo-area nil)
+ (message nil)
(setq message (if (and (null args)
(string-match-p "\\` *\\[.+\\]\\'" message))
;; Make sure we can put-text-property.
(defun minibuffer-completion-help (&optional start end)
"Display a list of possible completions of the current minibuffer contents."
(interactive)
- (message-in-echo-area "Making completion list...")
+ (message "Making completion list...")
(let* ((start (or start (minibuffer-prompt-end)))
(end (or end (point-max)))
(string (buffer-substring start end))
minibuffer-completion-predicate
(- (point) start)
md)))
- (message-in-echo-area nil)
+ (message nil)
(if (or (null completions)
(and (not (consp (cdr completions)))
(equal (car completions) string)))
(string-match "\\.elc?\\>" file))
obarray))
(msg (format "Package %s is deprecated" package))
- (fun (lambda (msg) (discard-input) (message "%s" msg))))
+ (fun (lambda (msg) (message "%s" msg))))
;; Cribbed from cl--compiling-file.
(when (or (not (fboundp 'byte-compile-warning-enabled-p))
(byte-compile-warning-enabled-p 'obsolete package))
any existing message; this lets the minibuffer contents show. See
also `current-message'.
-When the variable `message-in-echo-area' is non-nil, use the function
-`message-in-echo-area' to display the message in the echo area.
-Otherwise, when the minibuffer is active, use `minibuffer-message'
-to temporarily display the message at the end of the minibuffer.
-
usage: (message FORMAT-STRING &rest ARGS) */)
(ptrdiff_t nargs, Lisp_Object *args)
-{
- if (NILP (Vmessage_in_echo_area)
- && !inhibit_message
- && !(NILP (args[0]) || (STRINGP (args[0]) && SBYTES (args[0]) == 0))
- && WINDOW_LIVE_P (Factive_minibuffer_window ())
- && WINDOW_LIVE_P (Fold_selected_window ())
- && BUFFERP (Fwindow_buffer (Fold_selected_window ()))
- && !NILP (Fminibufferp (Fwindow_buffer (Fold_selected_window ()))))
- {
- ptrdiff_t count = SPECPDL_INDEX ();
-
- /* Avoid possible recursion. */
- specbind (Qmessage_in_echo_area, Qt);
-
- record_unwind_current_buffer ();
- Fset_buffer (Fwindow_buffer (Fold_selected_window ()));
-
- return unbind_to (count, CALLN (Fapply, intern ("minibuffer-message"),
- Flist (nargs, args)));
- }
- else
- return Fmessage_in_echo_area (nargs, args);
-}
-
-DEFUN ("message-in-echo-area", Fmessage_in_echo_area, Smessage_in_echo_area, 1, MANY, 0,
- doc: /* Display a message at the bottom of the screen.
-The message also goes into the `*Messages*' buffer, if `message-log-max'
-is non-nil. (In keyboard macros, that's all it does.)
-Return the message.
-
-In batch mode, the message is printed to the standard error stream,
-followed by a newline.
-
-The first argument is a format control string, and the rest are data
-to be formatted under control of the string. Percent sign (%), grave
-accent (\\=`) and apostrophe (\\=') are special in the format; see
-`format-message' for details. To display STRING without special
-treatment, use (message-in-echo-area "%s" STRING).
-
-If the first argument is nil or the empty string, the function clears
-any existing message; this lets the minibuffer contents show. See
-also `current-message'.
-
-usage: (message-in-echo-area FORMAT-STRING &rest ARGS) */)
- (ptrdiff_t nargs, Lisp_Object *args)
{
if (NILP (args[0])
|| (STRINGP (args[0])
it to be non-nil. */);
binary_as_unsigned = false;
- DEFVAR_LISP ("message-in-echo-area", Vmessage_in_echo_area,
- doc: /* Non-nil means overwrite the minibuffer with a message in the echo area. */);
- Vmessage_in_echo_area = Qnil;
- DEFSYM (Qmessage_in_echo_area, "message-in-echo-area");
-
defsubr (&Spropertize);
defsubr (&Schar_equal);
defsubr (&Sgoto_char);
defsubr (&Semacs_pid);
defsubr (&Ssystem_name);
defsubr (&Smessage);
- defsubr (&Smessage_in_echo_area);
defsubr (&Smessage_box);
defsubr (&Smessage_or_box);
defsubr (&Scurrent_message);