77 lines
2.8 KiB
EmacsLisp
77 lines
2.8 KiB
EmacsLisp
;;; themes.el --- Description -*- lexical-binding: t; -*-
|
|
;;
|
|
;; Copyright (C) 2026 Michael Chalupiak
|
|
;;
|
|
;; Author: Michael Chalupiak <mikec@archbox>
|
|
;; Maintainer: Michael Chalupiak <mikec@archbox>
|
|
;; Created: January 16, 2026
|
|
;; Modified: January 16, 2026
|
|
;; Version: 0.0.1
|
|
;; Keywords: abbrev bib c calendar comm convenience data docs emulations extensions faces files frames games hardware help hypermedia i18n internal languages lisp local maint mail matching mouse multimedia news outlines processes terminals tex text tools unix vc wp
|
|
;; Homepage: https://github.com/mikec/themes
|
|
;; Package-Requires: ((emacs "29.1"))
|
|
;;
|
|
;; This file is not part of GNU Emacs.
|
|
;;
|
|
;;; Commentary:
|
|
;;
|
|
;; Description
|
|
;;
|
|
;;; Code:
|
|
|
|
(use-package doom-themes
|
|
:ensure t
|
|
:defer t
|
|
:custom
|
|
;; Global settings (defaults)
|
|
(doom-themes-enable-bold t) ; if nil, bold is universally disabled
|
|
(doom-themes-enable-italic t) ; if nil, italics is universally disabled
|
|
;; for treemacs users
|
|
;; (doom-themes-treemacs-theme "doom-atom") ; use "doom-colors" for less minimal icon theme
|
|
:config
|
|
;; (load-theme 'doom-one t)
|
|
|
|
;; Enable flashing mode-line on errors
|
|
;; (doom-themes-visual-bell-config)
|
|
;; Enable custom neotree theme (nerd-icons must be installed!)
|
|
;; (doom-themes-neotree-config)
|
|
;; or for treemacs users
|
|
;; (doom-themes-treemacs-config)
|
|
;; Corrects (and improves) org-mode's native fontification.
|
|
(doom-themes-org-config))
|
|
|
|
(straight-use-package '(nano-theme :type git :host github
|
|
:repo "rougier/nano-theme"))
|
|
|
|
(use-package kaolin-themes)
|
|
|
|
(use-package auto-dark
|
|
:defer t
|
|
:init
|
|
;; Configure themes
|
|
(setq auto-dark-themes '((doom-gruvbox) (doom-gruvbox-light)))
|
|
;; Disable doom's theme loading mechanism (just to make sure)
|
|
;; (setq! doom-theme nil)
|
|
;; Declare that all themes are safe to load.
|
|
;; Be aware that setting this variable may have security implications if you
|
|
;; get tricked into loading untrusted themes (via auto-dark-mode or manually).
|
|
;; See the documentation of custom-safe-themes for details.
|
|
;; (setq! custom-safe-themes t)
|
|
;; Enable auto-dark-mode at the right point in time.
|
|
;; This is inspired by doom-ui.el. Using server-after-make-frame-hook avoids
|
|
;; issues with an early start of the emacs daemon using systemd, which causes
|
|
;; problems with the DBus connection that auto-dark mode relies upon.
|
|
(defun my-auto-dark-init-h ()
|
|
(auto-dark-mode)
|
|
(remove-hook 'server-after-make-frame-hook #'my-auto-dark-init-h)
|
|
(remove-hook 'after-init-hook #'my-auto-dark-init-h))
|
|
(let ((hook (if (daemonp)
|
|
'server-after-make-frame-hook
|
|
'after-init-hook)))
|
|
;; Depth -95 puts this before doom-init-theme-h, which sounds like a good
|
|
;; idea, if only for performance reasons.
|
|
(add-hook hook #'my-auto-dark-init-h -95)))
|
|
|
|
(provide 'themes)
|
|
;;; themes.el ends here
|