diff --git a/init.el b/init.el index 890b8b3..2db9d51 100644 --- a/init.el +++ b/init.el @@ -27,7 +27,8 @@ (setq backup-directory-alist '(("." . "~/.local/state/emacs/backups"))) (use-package secrets - :defer t) + :defer t + :functions (secrets-get-secret)) (setq-default truncate-lines t truncate-partial-width-windows nil) @@ -78,7 +79,8 @@ (use-package nerd-icons :if (package-installed-p 'nerd-icons) - :demand t) + :demand t + :functions (nerd-icons-octicon)) (use-package nerd-icons-dired :if (package-installed-p 'nerd-icons-dired) @@ -94,7 +96,8 @@ (use-package nerd-icons-corfu :if (package-installed-p 'nerd-icons-corfu) - :after nerd-icons) + :after nerd-icons + :functions (nerd-icons-corfu-formatter)) (use-package doom-modeline :if (package-installed-p 'doom-modeline) @@ -242,7 +245,26 @@ (use-package mu4e :if (package-installed-p 'mu4e) - :defines (mu4e-view-mode-map mu4e-use-fancy-chars) + :defines (mu4e-view-mode-map + mu4e-notification-support + mu4e-use-fancy-chars + mu4e-contexts + mu4e-headers-draft-mark + mu4e-headers-flagged-mark + mu4e-headers-unread-mark + mu4e-headers-passed-mark + mu4e-headers-replied-mark + mu4e-headers-trashed-mark + mu4e-headers-attach-mark + mu4e-headers-calendar-mark + mu4e-headers-encrypted-mark + mu4e-headers-signed-mark + mu4e-headers-list-mark + mu4e-headers-personal-mark + mu4e-headers-seen-mark + mu4e-headers-new-mark) + :functions (make-mu4e-context + mu4e-message-field) :bind (("C-c m" . mu4e) :map mu4e-view-mode-map @@ -299,13 +321,27 @@ list personal)) :config - (setq mu4e-use-fancy-chars t) - (require 'mu4e-icalendar) - (require 'khalel-icalendar)) - -(with-eval-after-load 'mu4e (require 'mu4e-context) - (setq mu4e-contexts + (require 'mu4e-notification) + (require 'mu4e-icalendar) + (require 'khalel-icalendar) + (setq mu4e-notification-support t + mu4e-use-fancy-chars t + mu4e-headers-draft-mark '("D" . "") + mu4e-headers-flagged-mark '("F" . "") + mu4e-headers-unread-mark '("u" . "󰻨") + mu4e-headers-passed-mark '("P" . "") + mu4e-headers-replied-mark '("R" . "") + mu4e-headers-trashed-mark '("T" . "") + mu4e-headers-attach-mark '("a" . "") + mu4e-headers-calendar-mark '("c" . "") + mu4e-headers-encrypted-mark '("x" . "") + mu4e-headers-signed-mark '("s" . "") + mu4e-headers-list-mark '("l" . "") + mu4e-headers-personal-mark '("p" . "") + mu4e-headers-seen-mark '("S" . "") + mu4e-headers-new-mark '("N" . "") + mu4e-contexts (list (make-mu4e-context :name "Personal" @@ -349,161 +385,6 @@ "UK Atomic Energy Authority")) ))))) -(with-eval-after-load 'mu4e - (require 'mu4e-modeline) - (setq mu4e-modeline-all-read '("" . "") - mu4e-modeline-all-clear '("" . "") - mu4e-modeline-new-items '("" . "") - mu4e-modeline-unread-items '("" . "")) - (mu4e-modeline-mode +1)) - -(with-eval-after-load 'mu4e - (setq mu4e-search-full-label '("F" . "") - mu4e-search-hide-label '("H" . "") - mu4e-search-related-label '("R" . "") - mu4e-search-skip-duplicates-label '("D" . "") - mu4e-search-threaded-label'("T" . "") - mu4e-headers-draft-mark '("D" . "") - mu4e-headers-flagged-mark '("F" . "") - mu4e-headers-unread-mark '("u" . "󰻨") - mu4e-headers-passed-mark '("P" . "") - mu4e-headers-replied-mark '("R" . "") - mu4e-headers-trashed-mark '("T" . "") - mu4e-headers-attach-mark '("a" . "") - mu4e-headers-calendar-mark '("c" . "") - mu4e-headers-encrypted-mark '("x" . "") - mu4e-headers-signed-mark '("s" . "") - mu4e-headers-list-mark '("l" . "") - mu4e-headers-personal-mark '("p" . "") - mu4e-headers-seen-mark '("S" . "") - mu4e-headers-new-mark '("N" . "") - mu4e-headers-from-or-to-prefix '(" " . "To ") - mu4e-headers-thread-root-prefix '("* " . "* ") - mu4e-headers-thread-duplicate-prefix '("= " . "= ") - mu4e-headers-thread-blank-prefix '(" " . " ") - mu4e-headers-thread-single-orphan-prefix '("─>" . "─>") - mu4e-headers-thread-orphan-prefix '("┬>" . "┬>") - mu4e-headers-thread-connection-prefix '("│ " . "│ ") - mu4e-headers-thread-first-child-prefix '("├>" . "├>") - mu4e-headers-thread-child-prefix '("├>" . "├>") - mu4e-headers-thread-last-child-prefix '("└>" . "╰>"))) - -(with-eval-after-load 'mu4e - (setq mu4e-marks '((refile :char - ("r" . "") - :prompt "refile" :dyn-target - (lambda - (target msg) - (mu4e-get-refile-folder msg)) - :action - (lambda - (docid msg target) - (mu4e--server-move docid - (mu4e--mark-check-target target) - "-N"))) - (delete :char - ("D" . "") - :prompt "Delete" :show-target - (lambda - (target) - "delete") - :action - (lambda - (docid msg target) - (mu4e--server-remove docid))) - (flag :char - ("+" . "") - :prompt "+flag" :show-target - (lambda - (target) - "flag") - :action - (lambda - (docid msg target) - (mu4e--server-move docid nil "+F-u-N"))) - (move :char - ("m" . "") - :prompt "move" :ask-target mu4e--mark-get-move-target :action - (lambda - (docid msg target) - (mu4e--server-move docid - (mu4e--mark-check-target target) - "-N"))) - (read :char - ("!" . "") - :prompt "!read" :show-target - (lambda - (target) - "read") - :action - (lambda - (docid msg target) - (mu4e--server-move docid nil "+S-u-N"))) - (trash :char - ("d" . "") - :prompt "dtrash" :dyn-target - (lambda - (target msg) - (mu4e-get-trash-folder msg)) - :action - (lambda - (docid msg target) - (mu4e--server-move docid - (mu4e--mark-check-target target) - "+T-N"))) - (unflag :char - ("-" . "") - :prompt "-unflag" :show-target - (lambda - (target) - "unflag") - :action - (lambda - (docid msg target) - (mu4e--server-move docid nil "-F-N"))) - (untrash :char - ("=" . "") - :prompt "=untrash" :show-target - (lambda - (target) - "untrash") - :action - (lambda - (docid msg target) - (mu4e--server-move docid nil "-T"))) - (unread :char - ("?" . "") - :prompt "?unread" :show-target - (lambda - (target) - "unread") - :action - (lambda - (docid msg target) - (mu4e--server-move docid nil "-S+u-N"))) - (unmark :char " " :prompt "unmark" :action - (mu4e-error "No action for unmarking")) - (action :char - ("a" . "") - :prompt "action" :ask-target - (lambda nil - (mu4e-read-option "Action: " mu4e-headers-actions)) - :action - (lambda - (docid msg actionfunc) - (save-excursion - (when - (mu4e~headers-goto-docid docid) - (mu4e-headers-action actionfunc))))) - (something :char - ("*" . "") - :prompt "*something" :action - (mu4e-error "No action for deferred mark"))))) - -(with-eval-after-load 'mu4e - (require 'mu4e-notification) - (setq mu4e-notification-support t)) - (use-package erc :commands erc-compute-nick :custom