summaryrefslogtreecommitdiff
path: root/emacs/.config/emacs/early-init.el
blob: 8184bbb50e3965c5f30f2a86462c90eeef422a6c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
;;; -*- lexical-binding: t; -*-

(setq package-enable-at-startup nil)

;; Optimization: file name handlers not needed during startup.
(defvar kj/file-name-handler-alist--old file-name-handler-alist)
(setq file-name-handler-alist nil)
(defun kj/restore-file-name-handler-alist ()
  (if (not (boundp 'kj/file-name-handler-alist--old))
      (message "File name handler already restored")
    (setq file-name-handler-alist kj/file-name-handler-alist--old)
    (makunbound 'kj/file-name-handler-alist--old)))

;; Optimization: avoid garbage collection during startup.
;; Reset by gcmh later.
(setq gc-cons-threshold most-positive-fixnum)

;; Move native compilation cache out of the way. Should be set in
;; early-init so that package loding uses the updated value.
(startup-redirect-eln-cache "~/.cache/emacs/eln-cache")

;; Early options that affect startup.
(setq
 package-native-compile t
 inhibit-startup-message t
 native-comp-async-report-warnings-errors 'silent
 default-frame-alist
 '((tool-bar-lines . 0)
   (menu-bar-lines . 0)
   (undecorated . t)
   (vertical-scroll-bars . nil)
   (horizontal-scroll-bars . nil)))