.emacs.d/init.el

43 lines
1.2 KiB
EmacsLisp

;;; init.el --- A (reasonably) minimal initialization file for Emacs.
;; Manage package configuration via `use-package`.
;; https://github.com/jwiegley/use-package
(require 'package)
(setq package-enable-at-startup nil)
(setq package-archives
'(("gnu" . "https://elpa.gnu.org/packages/")
("melpa" . "https://melpa.org/packages/")
("stable" . "https://stable.melpa.org/packages/")))
(unless (package-installed-p 'use-package)
(package-refresh-contents)
(package-install 'use-package))
;; Define a couple simple helper functions for loading user-defined
;; configuration files.
(defconst user-init-dir "~/.emacs.d/")
(defun load-user-file (file)
(interactive "f")
"Load a file in the current user's configuration directory"
(load-file (expand-file-name file user-init-dir)))
(defun load-user-dir (dir)
(interactive "f")
"Recursively load all files in a given directory, relative to the user's
configuration directory"
(setq config-dir (file-name-concat user-init-dir dir))
(dolist (file (directory-files-recursively config-dir ""))
(load-user-file file)))
;; Load all user-defined configuration files:
(load-user-file "key-bindings.el")
(load-user-file "typography.el")