2021-09-08 11:48:59 +00:00
|
|
|
;;; init.el --- Init File -*- lexical-binding: t; no-byte-compile: t -*-
|
2021-08-17 11:49:19 +00:00
|
|
|
;;; Commentary:
|
|
|
|
;;; Code:
|
|
|
|
|
2021-08-26 11:26:32 +00:00
|
|
|
(setq load-prefer-newer t
|
|
|
|
native-comp-async-report-warnings-errors nil
|
|
|
|
byte-compile-warnings '(not free-vars unresolved noruntime lexical make-local))
|
2021-08-17 11:49:19 +00:00
|
|
|
|
|
|
|
(defvar save-dir (expand-file-name "save" user-emacs-directory))
|
|
|
|
(unless (file-exists-p save-dir)
|
|
|
|
(make-directory save-dir))
|
|
|
|
|
|
|
|
(setq custom-file (expand-file-name "custom.el" user-emacs-directory))
|
|
|
|
|
|
|
|
(defgroup djm nil
|
|
|
|
"Custom variables added by me"
|
|
|
|
:group 'convenience)
|
|
|
|
|
|
|
|
(add-to-list 'load-path (expand-file-name "lisp" user-emacs-directory))
|
|
|
|
|
2022-08-30 11:46:43 +00:00
|
|
|
(add-hook 'emacs-startup-hook
|
|
|
|
(lambda ()
|
|
|
|
(message "%s packages loaded in %0.1f seconds"
|
2022-10-10 15:28:16 +00:00
|
|
|
(hash-table-count straight--profile-cache)
|
2022-08-30 11:46:43 +00:00
|
|
|
(string-to-number (emacs-init-time)))))
|
|
|
|
|
2022-08-10 14:52:43 +00:00
|
|
|
(add-hook 'after-init-hook #'(lambda ()
|
|
|
|
(setq gc-cons-threshold (* 100 1024 1024)
|
|
|
|
gc-cons-percentage 0.1)))
|
|
|
|
|
2022-10-18 15:27:27 +00:00
|
|
|
;; Some straight functions need to be able to reload everything, so require won't do
|
|
|
|
(defun require! (feature &optional filename noerror)
|
|
|
|
"Like `require', but if `force-reload' is non-nil, `load' instead.
|
|
|
|
`FEATURE', `FILENAME' and `NOERROR' have the same meaning as with require"
|
|
|
|
(if (and (boundp 'force-reload) force-reload)
|
|
|
|
(load (prin1-to-string feature) noerror nil nil t)
|
|
|
|
(require feature filename noerror)))
|
|
|
|
|
|
|
|
(require! 'init-packages)
|
|
|
|
(require! 'init-ui)
|
|
|
|
(require! 'init-compile)
|
|
|
|
(require! 'init-editor)
|
|
|
|
(require! 'init-search)
|
|
|
|
(require! 'init-windows)
|
|
|
|
(require! 'init-project)
|
|
|
|
(require! 'init-modeline)
|
|
|
|
(require! 'init-completion)
|
|
|
|
(require! 'init-minibuffer)
|
|
|
|
(require! 'init-navigation)
|
|
|
|
(require! 'init-kill)
|
|
|
|
(require! 'init-dired)
|
|
|
|
(require! 'init-smartparens)
|
|
|
|
(require! 'init-emacs-lisp)
|
|
|
|
(require! 'init-clojure)
|
|
|
|
(require! 'init-crux)
|
|
|
|
(require! 'init-lsp)
|
|
|
|
(require! 'init-git)
|
|
|
|
(require! 'init-shell)
|
2022-11-26 16:20:13 +00:00
|
|
|
(require! 'init-nix)
|
2022-10-18 15:27:27 +00:00
|
|
|
(require! 'init-org)
|
|
|
|
;;(require! 'init-latex)
|
|
|
|
(require! 'init-xml)
|
|
|
|
(require! 'init-web)
|
|
|
|
(require! 'init-misc)
|
|
|
|
(require! 'init-tramp)
|
|
|
|
(require! 'init-sql)
|
|
|
|
(require! 'init-local nil t)
|
2021-08-17 11:49:19 +00:00
|
|
|
|
|
|
|
;;; init.el ends here
|