mirror of
http://github.com/JaeUs3792/dotfiles
synced 2025-12-14 16:11:34 +09:00
64 lines
2.6 KiB
EmacsLisp
64 lines
2.6 KiB
EmacsLisp
;;; early-init.el -*- lexical-binding: t; -*-
|
|
|
|
;;; Garbage collection
|
|
;; Increase the GC threshold for faster startup
|
|
;; The default is 800 kilobytes. Measured in bytes.
|
|
(setq gc-cons-threshold (* 50 1000 1000))
|
|
|
|
;;; Emacs lisp source/compiled preference
|
|
;; Prefer loading newest compiled .el file
|
|
(customize-set-variable 'load-prefer-newer t)
|
|
|
|
|
|
(defvar crafted-config-path "~/.cache/emacs")
|
|
(unless (file-exists-p crafted-config-path)
|
|
(mkdir crafted-config-path t))
|
|
|
|
;;; Native compilation settings
|
|
(when (featurep 'native-compile)
|
|
;; Silence compiler warnings as they can be pretty disruptive
|
|
(setq native-comp-async-report-warnings-errors nil)
|
|
|
|
;; Make native compilation happens asynchronously
|
|
(setq native-comp-deferred-compilation t)
|
|
|
|
;; Set the right directory to store the native compilation cache
|
|
;; NOTE the method for setting the eln-cache directory depends on the emacs version
|
|
(when (fboundp 'startup-redirect-eln-cache)
|
|
(if (version< emacs-version "29")
|
|
(add-to-list 'native-comp-eln-load-path (convert-standard-filename (expand-file-name "var/eln-cache/" user-emacs-directory)))
|
|
(startup-redirect-eln-cache (convert-standard-filename (expand-file-name "var/eln-cache/" user-emacs-directory)))))
|
|
|
|
(add-to-list 'native-comp-eln-load-path (expand-file-name "eln-cache/" user-emacs-directory)))
|
|
|
|
;;; UI configuration
|
|
;; Remove some unneeded UI elements (the user can turn back on anything they wish)
|
|
(setq inhibit-startup-message t)
|
|
(push '(tool-bar-lines . 0) default-frame-alist)
|
|
(push '(menu-bar-lines . 0) default-frame-alist)
|
|
(push '(vertical-scroll-bars) default-frame-alist)
|
|
(push '(mouse-color . "white") default-frame-alist)
|
|
|
|
;; Loads a nice blue theme, avoids the white screen flash on startup.
|
|
(load-theme 'deeper-blue t)
|
|
|
|
;; Make the initial buffer load faster by setting its mode to fundamental-mode
|
|
(customize-set-variable 'initial-major-mode 'fundamental-mode)
|
|
|
|
;;; Package system
|
|
;; Load the package-system. If needed, the user could customize the
|
|
;; system to use in `early-config.el'.
|
|
(defvar crafted-bootstrap-directory (expand-file-name "bootstrap/" user-emacs-directory)
|
|
"Package system bootstrap configuration.")
|
|
|
|
(load (expand-file-name "crafted-package.el" crafted-bootstrap-directory))
|
|
(when (eq crafted-package-system 'package)
|
|
;; needed in case `early-config.el' has pinned packages configured
|
|
(require 'package))
|
|
|
|
;; this is the default
|
|
;; (setq crafted-package-system 'package)
|
|
;; use this in `early-config.el' to switch to `straight.el'
|
|
;; (setq crafted-package-system 'straight)
|
|
(crafted-package-bootstrap crafted-package-system)
|