summaryrefslogtreecommitdiff
path: root/dotfiles-darwin/emacs
diff options
context:
space:
mode:
authorGrégoire Duchêne <gduchene@awhk.org>2025-01-11 15:49:44 +0000
committerGrégoire Duchêne <gduchene@awhk.org>2025-01-11 15:49:44 +0000
commiteca7b640967eab0806d0b5eb72983ae95b715c7a (patch)
tree91f8022afe1eba79496bd8c235925304eb702712 /dotfiles-darwin/emacs
parent2ef6316ae717c53071ceecc6e055d890ae0a0bfb (diff)
darwin/emacs: Automatically pick and switch themes
Diffstat (limited to 'dotfiles-darwin/emacs')
-rw-r--r--dotfiles-darwin/emacs/functions.el9
-rw-r--r--dotfiles-darwin/emacs/init.el7
2 files changed, 10 insertions, 6 deletions
diff --git a/dotfiles-darwin/emacs/functions.el b/dotfiles-darwin/emacs/functions.el
index c9b16be..1c57e59 100644
--- a/dotfiles-darwin/emacs/functions.el
+++ b/dotfiles-darwin/emacs/functions.el
@@ -33,3 +33,12 @@
map)
t nil
"Use %k to resize the frame")))
+
+(defun my/set-frame-themes ()
+ "Configure themes, including theme switching."
+ (let ((day-theme (seq-random-elt (alist-get 'day my/themes)))
+ (night-theme (seq-random-elt (alist-get 'night my/themes))))
+ (load-theme day-theme :no-confirm :no-enable)
+ (load-theme night-theme :no-confirm :no-enable)
+ (run-at-time nil (* 15 60) #'my/maybe-switch-theme day-theme night-theme
+ #'my/macos-dark-p)))
diff --git a/dotfiles-darwin/emacs/init.el b/dotfiles-darwin/emacs/init.el
index b0ef91a..57812e4 100644
--- a/dotfiles-darwin/emacs/init.el
+++ b/dotfiles-darwin/emacs/init.el
@@ -27,12 +27,7 @@
;; Theme Management
-(when (or window-system (daemonp))
- (my/with-add-hook 'after-init-hook
- (when my/day-theme (load-theme my/day-theme :no-confirm :no-enable))
- (when my/night-theme (load-theme my/night-theme :no-confirm :no-enable))
- (run-at-time nil (* 15 60) #'my/maybe-switch-theme my/day-theme
- my/night-theme #'my/macos-dark-p)))
+(add-hook 'after-init-hook #'my/set-frame-themes)
;; “Window” Management