diff --git a/modules/ui/modeline/config.el b/modules/ui/modeline/config.el index 5bad71a0a..095a6c5b4 100644 --- a/modules/ui/modeline/config.el +++ b/modules/ui/modeline/config.el @@ -6,13 +6,19 @@ (use-package! doom-modeline :unless (modulep! +light) - :hook (after-init . doom-modeline-mode) + :hook (doom-after-init . doom-modeline-mode) :hook (doom-modeline-mode . size-indication-mode) ; filesize in modeline :hook (doom-modeline-mode . column-number-mode) ; cursor column in modeline :init - (unless after-init-time - ;; prevent flash of unstyled modeline at startup - (setq-default mode-line-format nil)) + (when (>= emacs-major-version 29) + ;; HACK: Emacs 29 treats `nil' for :background as invalid, and complains. + ;; `doom-modeline' hasn't updated its face to address this yet. + ;; REVIEW: PR this fix to doom-modeline + (defface doom-modeline-buffer-modified + '((t (:inherit (error bold) :background unspecified))) + "Face used for the \\='unsaved\\=' symbol in the mode-line." + :group 'doom-modeline-faces)) + ;; We display project info in the modeline ourselves (setq projectile-dynamic-mode-line nil) ;; Set these early so they don't trigger variable watchers @@ -53,13 +59,12 @@ (add-hook 'after-setting-font-hook #'+modeline-resize-for-font-h) (add-hook 'doom-load-theme-hook #'doom-modeline-refresh-bars) - (add-hook '+doom-dashboard-mode-hook #'doom-modeline-set-project-modeline) - + (add-to-list 'doom-modeline-mode-alist '(+doom-dashboard-mode . dashboard)) (add-hook! 'magit-mode-hook (defun +modeline-hide-in-non-status-buffer-h () "Show minimal modeline in magit-status buffer, no modeline elsewhere." (if (eq major-mode 'magit-status-mode) - (doom-modeline-set-vcs-modeline) + (doom-modeline-set-modeline 'magit) (hide-mode-line-mode)))) ;; Some functions modify the buffer, causing the modeline to show a false diff --git a/modules/ui/modeline/packages.el b/modules/ui/modeline/packages.el index da15ff83d..31fbdc1c1 100644 --- a/modules/ui/modeline/packages.el +++ b/modules/ui/modeline/packages.el @@ -2,8 +2,8 @@ ;;; ui/modeline/packages.el (unless (modulep! +light) - (package! doom-modeline :pin "ce9899f00af40edb78f58b9af5c3685d67c8eed2") + (package! doom-modeline :pin "bed80b82d7bf4bd85904d9b093ab690b7bcbac1c") (package! compat :pin "cc1924fd8b3f9b75b26bf93f084ea938c06f9615")) (package! anzu :pin "5abb37455ea44fa401d5f4c1bdc58adb2448db67") (when (modulep! :editor evil) - (package! evil-anzu :pin "d3f6ed4773b48767bd5f4708c7f083336a8a8a86")) + (package! evil-anzu :pin "d1e98ee6976437164627542909a25c6946497899"))