fix: ensure top-level file-name-handler-alist is affected
Ensures that lexical contexts are never taken into account, in the case where Doom's core is loaded in an isolated environment (e.g. the sandbox). Also improves my startup time by 10%? I'll take it.
This commit is contained in:
parent
f1e77e6692
commit
a5ffbd8550
1 changed files with 19 additions and 17 deletions
20
lisp/doom.el
20
lisp/doom.el
|
@ -331,15 +331,16 @@ users).")
|
|||
;; `file-remote-p'). You get a noteable boost to startup time by unsetting
|
||||
;; or simplifying its value.
|
||||
(let ((old-value (default-toplevel-value 'file-name-handler-alist)))
|
||||
(setq file-name-handler-alist
|
||||
;; HACK: If the bundled elisp for this Emacs install isn't
|
||||
;; byte-compiled (but is compressed), then leave the gzip file
|
||||
;; handler there so Emacs won't forget how to read read them.
|
||||
(set-default-toplevel-value
|
||||
'file-name-handler-alist
|
||||
;; HACK: If the bundled elisp for this Emacs install isn't byte-compiled
|
||||
;; (but is compressed), then leave the gzip file handler there so Emacs
|
||||
;; won't forget how to read read them.
|
||||
;;
|
||||
;; calc-loaddefs.el is our heuristic for this because it is built-in
|
||||
;; to all supported versions of Emacs, and calc.el explicitly loads
|
||||
;; it uncompiled. This ensures that the only other, possible
|
||||
;; fallback would be calc-loaddefs.el.gz.
|
||||
;; calc-loaddefs.el is our heuristic for this because it is built-in to
|
||||
;; all supported versions of Emacs, and calc.el explicitly loads it
|
||||
;; uncompiled. This ensures that the only other, possible fallback would
|
||||
;; be calc-loaddefs.el.gz.
|
||||
(if (eval-when-compile
|
||||
(locate-file-internal "calc-loaddefs.el" load-path))
|
||||
nil
|
||||
|
@ -352,7 +353,8 @@ users).")
|
|||
;; needed for handling encrypted or compressed files, among other things.
|
||||
(add-hook! 'emacs-startup-hook :depth 101
|
||||
(defun doom--reset-file-handler-alist-h ()
|
||||
(setq file-name-handler-alist
|
||||
(set-default-toplevel-value
|
||||
'file-name-handler-alist
|
||||
;; Merge instead of overwrite because there may have been changes to
|
||||
;; `file-name-handler-alist' since startup we want to preserve.
|
||||
(delete-dups (append file-name-handler-alist old-value))))))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue