Refactor doom init process

- Refactors doom-initialize
- Moves doom-initialize-modules call to init.el, to more easily isolate
  it during unit testing.
This commit is contained in:
Henrik Lissner 2019-08-23 20:33:30 -04:00
parent 465122320d
commit 8ac1e1a781
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
7 changed files with 53 additions and 48 deletions

View file

@ -79,9 +79,12 @@
(error "%s does not exist" emacs-dir))
;; Bootstrap Doom
(load (expand-file-name "init" emacs-dir)
(load (expand-file-name "core/core.el" emacs-dir)
nil 'nomessage)
(doom-initialize 'force-p)
(doom-initialize-modules)
(cond ((not noninteractive)
(doom-run-all-startup-hooks-h))
((and (not (cdr args))
@ -90,9 +93,9 @@
((not args)
(print! (error "No command detected.\n"))
(usage))
((let ((default-directory emacs-dir))
(setq argv nil
noninteractive 'doom)
((require 'core-cli)
(let ((default-directory emacs-dir))
(setq argv nil)
(condition-case e
(doom-dispatch (car args) (cdr args))
(user-error

View file

@ -199,16 +199,9 @@
(error "No DOOMDIR was found, did you run `doom install` yet?"))
(let ((indent 2))
;; Make sure everything is loaded
(require 'core-cli)
(require 'core-keybinds)
(require 'core-ui)
(require 'core-projects)
(require 'core-editor)
(require 'core-packages)
;; ...and initialized
(doom-initialize)
;; Make sure Doom is initialized and loaded
(doom-initialize 'force)
(doom-initialize-core)
(success! "Initialized Doom Emacs %s" doom-version)
(doom-initialize-modules)
@ -216,7 +209,6 @@
(success! "Initialized %d modules" (hash-table-count doom-modules))
(warn! "Failed to load any modules. Do you have an private init.el?"))
(doom-ensure-straight)
(doom-initialize-packages)
(success! "Initialized %d packages" (length doom-packages))