-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinit.el
122 lines (103 loc) · 3.59 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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
;;; init.el --- Initialization code for emacs
;; Copyright (c) 2018 Eamonn Sullivan
;; Author: Eamonn Sullivan <[email protected]>
;; Maintainer: Eamonn Sullivan <[email protected]>
;; Updated pretty much constantly
;; Homepage: https://github.com/eamonnsullivan/emacs.d
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the GNU General Public License as
;; published by the Free Software Foundation; either version 3 of
;; the License, or (at your option) any later version.
;;
;; This program is distributed in the hope that it will be
;; useful, but WITHOUT ANY WARRANTY; without even the implied
;; warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
;; PURPOSE. See the GNU General Public License for more details.
;;; Code:
;; (defvar comp-deferred-compilation-deny-list ())
(setq straight-use-package-by-default t
straight-disable-native-compile nil
package-enable-at-startup nil
straight-repository-branch "develop"
straight-recipes-gnu-elpa-use-mirror t)
(defvar bootstrap-version)
(let ((bootstrap-file
(expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
(bootstrap-version 6))
(unless (file-exists-p bootstrap-file)
(with-current-buffer
(url-retrieve-synchronously
"https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el"
'silent 'inhibit-cookies)
(goto-char (point-max))
(eval-print-last-sexp)))
(load bootstrap-file nil 'nomessage))
(straight-use-package 'use-package)
(cond
((eq system-type 'gnu/linux)
(setq straight-find-executable "/usr/bin/find"))
((eq system-type 'darwin)
(setq straight-find-executable "/opt/homebrew/opt/findutils/libexec/gnubin/find")))
(setq load-prefer-newer t) ;; load newest of byte-compiled/text
(defmacro when-available (func foo)
"*Do something if FUNCTION is available."
`(when (fboundp ,func) ,foo))
(prefer-coding-system 'utf-8-unix)
(set-language-environment "UTF-8")
(setq custom-file (make-temp-file "emacs-custom")) ;; Disable the auto-generated customize section.
;; me
(setq user-full-name "Eamonn Sullivan")
(cond
((string= user-login-name "eamonn")
(setq user-mail-address "[email protected]"))
((string= user-login-name "sullie09")
(setq user-mail-address "[email protected]")))
;; my location
(setq calendar-latitude 51.5)
(setq calendar-longitude -0.12)
(setq calendar-location-name "London, England")
(use-package vc
:config
(setq vc-follow-symlinks t))
(straight-use-package 'flymake)
(straight-use-package 'use-package)
(straight-use-package 'project)
;; The rest of my init file, broken up into libraries in the lisp directory
(add-to-list 'load-path (expand-file-name "lisp" user-emacs-directory))
(require 'ert)
(require 'init-git)
(require 'init-elpa)
(require 'init-helm)
(require 'init-org)
(require 'init-utils)
(require 'init-platform)
(require 'init-appearance)
(require 'init-global-bindings)
(require 'init-global-behaviour)
(require 'init-company)
(require 'init-prog)
(require 'init-clojure)
(require 'init-cc)
(require 'init-js)
(require 'init-scala)
(require 'init-web)
(require 'init-go)
(require 'init-abbrev)
(require 'init-term)
(require 'init-projectile)
(require 'init-mc)
(require 'init-markdown)
(require 'init-server)
(require 'init-eglot)
(require 'init-flycheck)
(require 'init-hydra)
(require 'init-json)
(require 'init-cloudformation)
(require 'init-kbd-macros)
(require 'init-yasnippet)
(require 'init-codestyle)
(require 'init-haskell)
(require 'init-crypt)
(require 'init-copilot)
(provide 'init)
;;; init.el ends here