dev: merge branch 'master'

This commit is contained in:
Matt Nish-Lapidus 2024-07-12 09:45:39 -04:00
commit 00c1bfdab3
19 changed files with 89 additions and 69 deletions

View file

@ -23,8 +23,11 @@
doom-cache-dir
doom-state-dir))
;; HACK: Load `cl' and site files manually to prevent polluting logs and
;; stdout with deprecation and/or file load messages.
;; HACK: bin/doom invokes Emacs with --no-site-lisp solely to allow us to load
;; site-start manually, here, to suppress any output it produces, and they
;; almost always produce some. This causes premature redraws of the Emacs
;; frame during startup (to display those messages in the minibuffer), which
;; -- as I mention in the comments of doom.el -- really hurts startup time.
(quiet!
(require 'cl nil t)
(unless site-run-file

View file

@ -212,7 +212,8 @@ windows, switch to `doom-fallback-buffer'. Otherwise, delegate to original
(cond ((eq buf (doom-fallback-buffer))
(message "Can't kill the fallback buffer.")
t)
((doom-real-buffer-p buf)
((and (doom-real-buffer-p buf)
(run-hook-with-args-until-failure 'kill-buffer-query-functions))
(let ((visible-p (delq (selected-window) (get-buffer-window-list buf nil t))))
(unless visible-p
(when (and (buffer-modified-p buf)
@ -221,8 +222,10 @@ windows, switch to `doom-fallback-buffer'. Otherwise, delegate to original
buf))))
(user-error "Aborted")))
(let ((inhibit-redisplay t)
buffer-list-update-hook)
(when (or ;; if there aren't more real buffers than visible buffers,
buffer-list-update-hook
kill-buffer-query-functions)
(when (or
;; if there aren't more real buffers than visible buffers,
;; then there are no real, non-visible buffers left.
(not (cl-set-difference (doom-real-buffer-list)
(doom-visible-buffers nil t)))

View file

@ -3,14 +3,19 @@
;;;###autoload
(defconst doom-customize-theme-hook nil)
;;;###autoload
(defun doom--run-customize-theme-hook (fn)
"Run FN, but suppress any writes to `custom-file'."
(letf! (defun put (symbol prop value)
(unless (string-prefix-p "saved-" (symbol-name prop))
(funcall put symbol prop value)))
(let (custom--inhibit-theme-enable)
(funcall fn))))
(add-hook! 'doom-load-theme-hook
(defun doom-apply-customized-faces-h ()
"Run `doom-customize-theme-hook'."
(letf! ((#'custom--should-apply-setting #'ignore)
(defun custom-push-theme (prop symbol theme mode &optional value)
(funcall custom-push-theme prop symbol theme mode value)
(if (facep symbol) (face-spec-set symbol value t))))
(run-hooks 'doom-customize-theme-hook))))
(run-hook-wrapped 'doom-customize-theme-hook #'doom--run-customize-theme-hook)))
(defun doom--normalize-face-spec (spec)
(cond ((listp (car spec))
@ -42,7 +47,7 @@ all themes. It will apply to all themes once they are loaded."
;; macros on the fly and customize your faces iteratively.
(when (or (get 'doom-theme 'previous-themes)
(null doom-theme))
(funcall #',fn))
(doom--run-customize-theme-hook #',fn))
;; FIXME Prevent clobbering this on-the-fly
(add-hook 'doom-customize-theme-hook #',fn 100))))

View file

@ -6,7 +6,7 @@
:pin "17cfa1b54800fdef2975c0c0531dad34846a5065")
(package! compat
:recipe (:host github :repo "emacs-compat/compat")
:pin "80dbd9bc5efee05a479663f8cfd0cc9e0a30dac5")
:pin "09dce8a193c5a70277512263782b82fa1cba84c0")
(package! gcmh
:pin "0089f9c3a6d4e9a310d0791cf6fa8f35642ecfd9")
@ -29,15 +29,15 @@
;; doom-editor.el
(package! better-jumper :pin "47622213783ece37d5337dc28d33b530540fc319")
(package! dtrt-indent :pin "939c5e374ac0175bb7d561542e22e47a72d04aa8")
(package! dtrt-indent :pin "339755e4fb5245862737babf7f2c1e3bae1c129c")
(package! helpful :pin "4ba24cac9fb14d5fdc32582cd947572040e82b2c")
(package! smartparens :pin "f7cf316715e5018186c226aab8242c9e5ce131c8")
(package! smartparens :pin "ab475c78916d7b1666a495e3fe9c54b250195637")
(package! ws-butler :pin "e3a38d93e01014cd47bf5af4924459bd145fd7c4")
;; doom-projects.el
(package! projectile :pin "0163b335a18af0f077a474d4dc6b36e22b5e3274")
(package! project :pin "bf4c3cfcfbf3423d79170aa880a1abb332ed942e")
(package! project :pin "093f42a1b612eaae0d2bdd475663c14973fe0325")
;; doom-keybinds.el
(package! general :pin "826bf2b97a0fb4a34c5eb96ec2b172d682fd548f")
(package! which-key :pin "ed389312170df955aaf10c2e120cc533ed5c509e")
(package! which-key :pin "38d4308d1143b61e4004b6e7a940686784e51500")