-
Notifications
You must be signed in to change notification settings - Fork 0
/
init.el
executable file
·124 lines (111 loc) · 3.55 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
123
124
;; +=============================================================+
;; | Jacob's (@j4cobj, @jacobj, [email protected]) init.el |
;; +=============================================================+
;; I don't exactly remember what needs this.
(require 'cl)
;; package.el
(require 'package)
;; Package repos
(add-to-list 'package-archives
'("marmalade" . "http://marmalade-repo.org/packages/"))
(add-to-list 'package-archives
'("melpa" . "http://melpa.org/packages/"))
(add-to-list 'package-archives
'("elpa" . "http://tromey.com/elpa/"))
(add-to-list 'package-archives
'("org" . "http://orgmode.org/elpa/"))
;; We want to use the stuff we install right?
(package-initialize)
(unless package-archive-contents (package-refresh-contents))
;;; On-demand installation of packages (by @purcell)
(defun require-package (package &optional min-version no-refresh)
"Install given PACKAGE, optionally requiring MIN-VERSION. If
NO-REFRESH is non-nil, the available package lists will not be
re-downloaded in order to locate PACKAGE."
(if (package-installed-p package min-version) t
(if (or (assoc package package-archive-contents) no-refresh)
(package-install package)
(progn
(package-refresh-contents)
(require-package package min-version t)))))
(add-to-list 'package-pinned-packages '(cider . "melpa-stable") t)
;; Grab packages
(require-package 'ag)
(require-package 'angular-snippets)
(require-package 'arduino-mode)
(require-package 'company)
(require-package 'company-jedi)
(require-package 'company-tern)
(require-package 'deft)
(require-package 'dockerfile-mode)
(require-package 'ein)
(require-package 'ess)
(require-package 'evil)
(require-package 'flycheck)
(require-package 'gist)
(require-package 'git-gutter-fringe)
(require-package 'helm)
(require-package 'helm-ag)
(require-package 'helm-themes)
(require-package 'helm-projectile)
(require-package 'ido-ubiquitous)
(require-package 'jedi)
(require-package 'js2-mode)
(require-package 'js2-refactor)
(require-package 'linum-relative)
(require-package 'magit)
(require-package 'markdown-mode)
(require-package 'multi-term)
(require-package 'paradox)
(require-package 'projectile)
(require-package 'python-mode)
(require-package 'rainbow-delimiters)
(require-package 'scala-mode2)
(require-package 'smart-mode-line)
(require-package 'smex)
(require-package 'sml-modeline)
(require-package 'solarized-theme)
(require-package 'sx)
(require-package 'tern)
(require-package 'web-beautify)
(require-package 'web-mode)
(require-package 'writeroom-mode)
(require-package 'yaml-mode)
(require-package 'yasnippet)
;; Require exec-path-from-shell if on OS X.
(when (memq window-system '(mac ns))
(require-package 'exec-path-from-shell))
;; Load path
(add-to-list 'load-path "~/.emacs.d/lisp/")
;; Mode inits
(require 'init-arduino)
(require 'init-asm)
(require 'init-company)
(require 'init-docker)
(require 'init-ess)
(require 'init-evil)
(require 'init-flycheck)
(require 'init-flyspell)
(require 'init-general)
(require 'init-git)
(require 'init-helm)
(require 'init-javascript)
(require 'init-latex)
(require 'init-linum)
(require 'init-org)
(require 'init-projectile)
(require 'init-scala)
(require 'init-sh)
(require 'init-term)
(require 'init-theme)
(require 'init-utils)
(require 'init-web)
(require 'init-yasnippet)
;; OS specific GUI configs.
(when (display-graphic-p)
(if (string-equal system-type "gnu/linux")
(require 'linux)
(require 'osx)))
;; Set a seperate file for customize interface changes.
(setq custom-file "~/.emacs.d/custom.el")
(load custom-file)