Fix mode-line-format and inhibit-display/message issue
This commit is contained in:
@@ -142,32 +142,33 @@ When set to non-nil, Emacs will automatically call `package-initialize' and
|
|||||||
101))
|
101))
|
||||||
|
|
||||||
(unless noninteractive
|
(unless noninteractive
|
||||||
(progn
|
(unless minimal-emacs-debug
|
||||||
;; Disable mode-line-format during init
|
;; Disable mode-line-format during init
|
||||||
|
(setq-default inhibit-redisplay t
|
||||||
|
inhibit-message t)
|
||||||
(defun minimal-emacs--reset-inhibited-vars-h ()
|
(defun minimal-emacs--reset-inhibited-vars-h ()
|
||||||
(setq-default inhibit-redisplay nil
|
(setq-default inhibit-redisplay nil
|
||||||
;; Inhibiting `message' only prevents redraws and
|
;; Inhibiting `message' only prevents redraws and
|
||||||
inhibit-message nil)
|
inhibit-message nil)
|
||||||
(redraw-frame))
|
(remove-hook 'post-command-hook #'minimal-emacs--reset-inhibited-vars-h))
|
||||||
|
(add-hook 'post-command-hook #'minimal-emacs--reset-inhibited-vars-h -100)
|
||||||
|
|
||||||
(defvar minimal-emacs--default-mode-line-format mode-line-format
|
(put 'mode-line-format 'initial-value
|
||||||
"Default value of `mode-line-format'.")
|
(default-toplevel-value 'mode-line-format))
|
||||||
(setq-default mode-line-format nil)
|
(setq-default mode-line-format nil)
|
||||||
|
|
||||||
(defun minimal-emacs--startup-load-user-init-file (fn &rest args)
|
(defun minimal-emacs--startup-load-user-init-file (fn &rest args)
|
||||||
"Advice for startup--load-user-init-file to reset mode-line-format."
|
"Advice for startup--load-user-init-file to reset mode-line-format."
|
||||||
(let (init)
|
(unwind-protect
|
||||||
(unwind-protect
|
(progn
|
||||||
(progn
|
;; Start up as normal
|
||||||
(apply fn args) ; Start up as normal
|
(apply fn args))
|
||||||
(setq init t))
|
;; If we don't undo inhibit-{message, redisplay} and there's an
|
||||||
(unless init
|
;; error, we'll see nothing but a blank Emacs frame.
|
||||||
;; If we don't undo inhibit-{message, redisplay} and there's an
|
(setq-default inhibit-message nil)
|
||||||
;; error, we'll see nothing but a blank Emacs frame.
|
(unless (default-toplevel-value 'mode-line-format)
|
||||||
(minimal-emacs--reset-inhibited-vars-h))
|
(setq-default mode-line-format
|
||||||
(unless (default-toplevel-value 'mode-line-format)
|
(get 'mode-line-format 'initial-value)))))
|
||||||
(setq-default mode-line-format
|
|
||||||
minimal-emacs--default-mode-line-format)))))
|
|
||||||
|
|
||||||
(advice-add 'startup--load-user-init-file :around
|
(advice-add 'startup--load-user-init-file :around
|
||||||
#'minimal-emacs--startup-load-user-init-file))
|
#'minimal-emacs--startup-load-user-init-file))
|
||||||
|
|||||||
Reference in New Issue
Block a user