blob: e04135698e006cb5a219ee04573992e780f10fc1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
;; add my lisp directory and its subdirectories to the load path
(add-to-list 'load-path (locate-user-emacs-file "lisp"))
;; stop garbage files
(require 'no-littering)
;; improve garbage collection
(defun my-minibuffer-setup-hook ()
(setq gc-cons-threshold most-positive-fixnum))
(defun my-minibuffer-exit-hook ()
(setq gc-cons-threshold 800000000))
(add-hook 'minibuffer-setup-hook #'my-minibuffer-setup-hook)
(add-hook 'minibuffer-exit-hook #'my-minibuffer-exit-hook)
(defun gc-idle-timer ()
"Trigger garbage collection when Emacs is idle for 0.5 seconds."
(run-with-idle-timer 1.2 t 'garbage-collect))
(gc-idle-timer)
;; opt out of custom and lockfiles
(setq custom-file (make-temp-file "emacs-custom-"))
(setq create-lockfiles nil)
;; backups in one directory
(setq backup-directory-alist
`((".*" . ,temporary-file-directory)))
(setq auto-save-file-name-transforms
`((".*" ,temporary-file-directory t)))
;; better meta behaviour
(setq inhibit-startup-message t
vc-follow-symlinks t
use-short-answers t
enable-recursive-minibuffers t
y-or-n-p t)
;; set up package managers
(require 'package)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))
(package-initialize)
(unless package-archive-contents
(package-refresh-contents))
;; don't complain about bytecomp errors in a window
;; (add-to-list 'display-buffer-alist
;; '("\\`\\*\\(Warnings\\|Compile-Log\\)\\*\\'"
;; (display-buffer-no-window)
;; (allow-no-window . t)))
;; load my config files
(defun loadc (file) (load (locate-user-emacs-file file)))
(loadc "style.el")
(loadc "text-editing.el")
(loadc "minibuffer.el")
(loadc "completion-at-point.el")
(loadc "files.el")
(loadc "misc.el")
(loadc "windows.el")
;; (loadc "ide.el")
;; (loadc "evil.el")
;; (loadc "lang.el")
;; todo: terminal, capfs
;; skipped: diminish, ansi color and rainbow
;; delimiters, evil, rainbow,
|