ui/modeline: minor startup optimization

Prevents project.el from being eager-loaded at startup.
This commit is contained in:
Henrik Lissner 2019-03-13 18:46:06 -04:00
parent 79ac04f0b1
commit 1ce2b29193
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
2 changed files with 11 additions and 1 deletions

View file

@ -1,7 +1,7 @@
;;; core-projects.el -*- lexical-binding: t; -*-
(def-package! projectile
:after-call (after-find-file dired-before-readin-hook)
:after-call (after-find-file dired-before-readin-hook minibuffer-setup-hook)
:commands (projectile-project-root projectile-project-name projectile-project-p)
:init
(setq projectile-cache-file (concat doom-cache-dir "projectile.cache")

View file

@ -27,6 +27,16 @@
(add-hook '+doom-dashboard-mode-hook #'doom-modeline-set-project-modeline)
;; Don't eager-load project.el. Doom only uses projectile anyway, for now.
(defun +modeline*project-root ()
(or doom-modeline-project-root
(setq doom-modeline-project-root
(file-local-name
(if (featurep 'projectile)
(ignore-errors (projectile-project-root))
default-directory)))))
(advice-add #'doom-modeline-project-root :override #'+modeline*project-root)
;; Magit -- modeline only where it's useful
(defun +modeline|hide-in-non-status-buffer ()
(if (eq major-mode 'magit-status-mode)