;;; init.el --- This is where all emacs start. -*- lexical-binding: t -*- ;;; Commentary: ;;; Code: (defconst emacs-start-time (current-time)) (defun report-time-since-load () "Report how long it takes to load my Emacs configuration." (message "[after-init ]Loading init...done (%.3fs)" (float-time (time-subtract (current-time) emacs-start-time)))) (add-hook 'after-init-hook #'(lambda () (report-time-since-load)) t) ;;; Configure how to install packages (require 'package) (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/")) (add-to-list 'package-archives '("gnu" . "http://elpa.gnu.org/packages/")) (add-to-list 'package-archives '("elpa" . "https://elpa.nongnu.org/nongnu/")) (package-initialize) ;; Auto-install use-package. (unless (package-installed-p 'use-package) (package-refresh-contents) (package-install 'use-package)) ;; This is only needed once, near the top of the file (eval-when-compile (require 'use-package)) ;;; Custom configurations ;; Load custom code under the "lisp" and "config" directories. (add-to-list 'load-path (expand-file-name "config" user-emacs-directory)) (add-to-list 'load-path (expand-file-name "lisp" user-emacs-directory)) (require 'init-ui) (require 'init-modeline) (require 'init-theme) (require 'init-session) (require 'init-osx) (require 'init-buffer) (require 'init-dired) (require 'init-file) (require 'init-time) (require 'init-project) (require 'init-snippets) (require 'init-completion) (require 'init-whitespace) (require 'init-rg) (require 'init-keys) (require 'init-imenu) (require 'init-git) (require 'init-programming) (require 'init-writing) (require 'init-org) (require 'init-eshell) ;;; Custom modules (use-package my-cheeseboard) (use-package my-uptime :init (add-to-list 'display-buffer-alist '("\\*slo-calculator\\*" (display-buffer-in-side-window) (side . left) (slot . 0) (window-width . 0.35)))) ;;; Custom Variables (setq custom-file (user-data "customizations.el")) (load custom-file 'noerror) (report-time-since-load) ;; Local Variables: ;; byte-compile-warnings: (not docstrings lexical noruntime) ;; End: