doomemacs/early-init.el

29 lines
1.2 KiB
EmacsLisp
Raw Normal View History

2018-03-22 03:21:18 +08:00
;;; early-init.el -*- lexical-binding: t; -*-
2018-03-28 12:41:57 +08:00
;; Emacs HEAD (27+) introduces early-init.el, which is run before init.el,
;; before package and UI initialization happens.
2018-03-28 12:41:57 +08:00
;; Defer garbage collection further back in the startup process
(setq gc-cons-threshold most-positive-fixnum)
;; In Emacs 27+, package initialization occurs before `user-init-file' is
;; loaded, but after `early-init-file'. Doom handles package initialization, so
;; we must prevent Emacs from doing it early!
(setq package-enable-at-startup nil)
2020-10-21 04:52:39 +08:00
(fset #'package--ensure-init-file #'ignore)
2019-07-23 06:30:45 +08:00
;; Prevent the glimpse of un-styled Emacs by disabling these UI elements early.
(push '(menu-bar-lines . 0) default-frame-alist)
(push '(tool-bar-lines . 0) default-frame-alist)
(push '(vertical-scroll-bars) default-frame-alist)
;; Resizing the Emacs frame can be a terribly expensive part of changing the
;; font. By inhibiting this, we easily halve startup times with fonts that are
;; larger than the system default.
(setq frame-inhibit-implied-resize t)
;; Prevent unwanted runtime builds in gccemacs (native-comp); packages are
;; compiled ahead-of-time when they are installed and site files are compiled
;; when gccemacs is installed.
(setq comp-deferred-compilation nil)