-
Notifications
You must be signed in to change notification settings - Fork 0
/
init.el
105 lines (77 loc) · 2.7 KB
/
init.el
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
;;; init.el --- Load the full configuration -*- lexical-binding: t -*-
;;; Commentary:
;; This file bootstraps the configuration, which is divided into
;; a number of other files.
;;; Code:
(let ((minver "25.1"))
(when (version< emacs-version minver)
(error
"Your Emacs is too old -- this config requires v%s or higher"
minver)))
;; (when (version< emacs-version "24.5")
;; (message "Your Emacs is old, and some functionality in this config will be disabled. Please upgrade if possible."))
;; Speed up startup
(defvar keer-gc-cons-threshold (if (display-graphic-p) 8000000 800000)
"The default value to use for `gc-cons-threshold'. If you experience freezing,decrease this.
If you experience stuttering, increase this.")
(defvar keer-gc-cons-upper-limit (if (display-graphic-p) 400000000 100000000)
"The temporary value for `gc-cons-threshold' to defer it.")
(defvar keer-gc-timer (run-with-idle-timer 10 t #'garbage-collect)
"Run garbarge collection when idle 10s.")
(defvar default-file-name-handler-alist file-name-handler-alist)
(setq file-name-handler-alist nil)
(setq gc-cons-threshold keer-gc-cons-upper-limit)
(add-to-list 'load-path (expand-file-name "lisp" user-emacs-directory))
;;----------------------------------------------------------------------------
;; Bootstrap config
;;----------------------------------------------------------------------------
(setq custom-file (expand-file-name "custom.el" user-emacs-directory))
;; Customization
(require 'init-custom)
;; Constants
(require 'init-const)
(require 'init-global-config)
;; Pakcages
;; Without this comment Emacs25 adds (package-initialize) here
(require 'init-elpa)
(require 'init-elpa-prelude)
(require 'init-elpa-purcell)
(require 'init-packages)
(require 'init-utils)
(require 'init-function)
(require 'init-shell)
(require 'init-ui)
(require 'init-themes)
(require 'init-windows)
(require 'init-tree)
(require 'init-which-key)
(require 'init-ivy)
(require 'init-company)
(require 'init-flycheck)
(require 'init-projectile)
(require 'init-yasnippet)
(require 'init-markdown)
(require 'init-magit)
;; eidt
(require 'init-paredit)
(require 'init-edit)
;; Programming Configuration
(require 'prog-common)
(require 'prog-org-mode)
;; LSP mode
(require 'init-lsp)
;;(require 'prog-scala)
(require 'prog-elixir)
(require 'prog-python)
;; (require 'init-format)
;;----------------------------------------------------------------------------
;; Variables configured via the interactive 'customize' interface
;;----------------------------------------------------------------------------
(when (file-exists-p custom-file)
(load custom-file))
(provide 'init)
;; Local Variables:
;; coding: utf-8
;; no-byte-compile: t
;; End:
;;; init.el ends here