mode-line – ¿Mostrar temporalmente un mensaje en la línea de modo?

Pregunta:

¿Cómo puedo imprimir un mensaje durante un período de tiempo en la línea de modo y luego restaurar el formato predeterminado?

Respuesta:

Cambie temporalmente el mode-line-format o cualquiera de sus variables constituyentes .

Consulte el manual de Elisp, Formato de línea de modo de nodo y sus subnodos.

Por ejemplo (tomado de icicle-show-in-mode-line ):

(defun my-show-in-mode-line (text &optional buffer delay)
  "Display TEXT in BUFFER's mode line.
The text is shown for DELAY seconds (default 2), or until a user event.
So call this last in a sequence of user-visible actions."
  (message nil) ; Remove any current msg
  (with-current-buffer (or buffer  (current-buffer))
    (make-local-variable 'mode-line-format) ; Needed for Emacs 21+.
    (let ((mode-line-format  text))
      (force-mode-line-update) (sit-for (or delay  2)))
    (force-mode-line-update)))

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım