emacs - projectile and helm config
[dotfiles.git] / emacs.d / init.el
1
2
3 ;; Added by Package.el.  This must come before configurations of
4 ;; installed packages.  Don't delete this line.  If you don't want it,
5 ;; just comment it out by adding a semicolon to the start of the line.
6 ;; You may delete these explanatory comments.
7 ;(package-initialize)
8
9  (load-library "url-handlers")
10
11 (setenv "PATH" (concat (getenv "PATH") ":/usr/local/bin"))
12 (setq exec-path (append exec-path '("/usr/local/bin")))
13
14 ;; package manager
15 (require 'package)
16
17 (add-to-list 'package-archives
18              '("melpa" . "http://melpa.milkbox.net/packages/") t)
19 (add-to-list 'package-archives
20              '("org" . "http://orgmode.org/elpa/") t)
21 ;(add-to-list 'package-archives
22 ;             '("marmalade" . "http://marmalade-repo.org/packages/") t)
23
24 (package-initialize)
25
26 ;; use-package
27 (unless (package-installed-p 'use-package)
28   (package-refresh-contents)
29   (package-install 'use-package))
30
31 (require 'use-package)
32
33 ;;;;; load path
34 (add-to-list 'load-path "~/.emacs.d/elisp")
35
36 ;;; load elisp config
37 (require 'init-base)
38 (require 'init-magit)
39 (require 'init-helm)
40 (require 'init-projectile)
41
42
43
44
45
46
47
48
49
50 (use-package ido-vertical-mode
51   :ensure t)
52
53
54 (use-package hydra
55   :ensure t
56   :config
57   (hydra-add-font-lock))
58
59
60 ;;;;;;;;;
61 (use-package ace-jump-mode
62   :commands ace-jump-mode
63   :init
64   (bind-key "C-." 'ace-jump-mode))
65
66
67
68
69
70
71
72
73
74
75
76
77
78 ;(add-to-list 'load-path "~/.emacs.d/config")
79
80 ;; remove custom setting out of init.el
81 ;; http://emacsblog.org/2008/12/06/quick-tip-detaching-the-custom-file/
82 ;(setq custom-file "~/.emacs.d/custom.el")
83 ;(load custom-file 'noerror)
84 ;(require 'my-packages)
85 ;(require 'init-base)
86 ;(require 'init-font)
87
88 ;(require 'init-helm)
89
90 ;(require 'init-color-theme)
91 ;(require 'init-color-theme-2)
92 ;(require 'init-ido)
93 ;(require 'init-magit)
94 ;(require 'init-evil)
95 ;(require 'init-project)
96 ;(require 'init-ggtags)
97
98 ;(require 'init-projectile)
99
100 ;;;; conflict with C-c . in org-mode, disable it temporarily
101 ;;;;(require 'init-c-cpp)
102 ;(require 'init-key-binding)
103 ;(require 'init-winner)
104 ;(require 'init-minibuffer)
105 ;(require 'init-eshell)
106
107 ;; http://stackoverflow.com/questions/11484225/fix-an-auto-complete-mode-and-linum-mode-annoyance
108 ;;;(ac-linum-workaround)
109
110
111 ;(require 'init-mode-line)
112 ;(require 'init-workgroup2)
113 ;(require 'init-perl)
114
115 ;(add-to-list 'load-path "~/.emacs.d/Emacs-PDE-0.2.16/lisp/")
116 ;(load "pde-load")                       ;
117
118 ;(require 'init-linum)
119
120 ;(require 'auto-complete)
121 ;(require 'auto-complete-config)
122 ;(ac-config-default)
123
124
125
126
127 ;; page break configuration
128 ;(require 'pp-c-l)
129 ;(pretty-control-l-mode 1)
130
131 ;; persist command history of helm
132 ;(require 'session)
133 ;(add-hook 'after-init-hook 'session-initialize)
134
135
136 ;(require 'use-package)
137
138 ;; persist command history of helm
139 ;(use-package savehist
140 ;  :init (savehist-mode)
141 ;  :config
142 ;  (setq history-length 1000
143 ;        history-delete-duplicates t
144 ;        savehist-additional-variables '(extended-command-history))) 
145
146 ;;(savehist-mode)
147 ;;  (setq history-length 1000
148 ;;        history-delete-duplicates t
149 ;;        savehist-additional-variables '(extended-command-history)) 
150
151 ;    (setq split-height-threshold 0)
152
153
154
155
156
157 ;;;(require 'helm-gtags)
158 ;;;;(require 'setup-helm-gtags)
159 ;;;;(helm-gtags-mode 1)
160 ;;;;;; Enable helm-gtags-mode
161 ;;;(add-hook 'c-mode-hook 'helm-gtags-mode)
162 ;;;(add-hook 'c++-mode-hook 'helm-gtags-mode)
163 ;;;(add-hook 'asm-mode-hook 'helm-gtags-mode)
164 ;;;
165 ;;;;; customize
166 ;;;(custom-set-variables
167 ;;; '(helm-gtags-path-style 'relative)
168 ;;; '(helm-gtags-ignore-case t)
169 ;;; '(helm-gtags-auto-update t))
170 ;;;
171 ;;;;; key bindings
172 ;;;(eval-after-load "helm-gtags"
173 ;;;  '(progn
174 ;;;     (define-key helm-gtags-mode-map (kbd "M-t") 'helm-gtags-find-tag)
175 ;;;     (define-key helm-gtags-mode-map (kbd "M-r") 'helm-gtags-find-rtag)
176 ;;;     (define-key helm-gtags-mode-map (kbd "M-s") 'helm-gtags-find-symbol)
177 ;;;     (define-key helm-gtags-mode-map (kbd "M-g M-p") 'helm-gtags-parse-file)
178 ;;;     (define-key helm-gtags-mode-map (kbd "C-c <") 'helm-gtags-previous-history)
179 ;;;     (define-key helm-gtags-mode-map (kbd "C-c >") 'helm-gtags-next-history)
180 ;;;     (define-key helm-gtags-mode-map (kbd "M-,") 'helm-gtags-pop-stack)))
181
182
183 ;(require 'icicles)
184 ;(icy-mode 1)
185
186
187 ;;(require 'init-org)
188 ;(setq help-window-select t)
189
190
191
192 ;(require 'init-keychord)
193
194 ;(setq hydra-examples-verbatim t)
195 ;(require 'init-hydra)
196
197
198 ;(require 'ace-window)
199 ;(global-set-key (kbd "M-p") 'ace-window)
200
201
202 ;(require 'init-multi-term)
203 ;(require 'init-projectile)
204
205 ;(require 'page-break-lines)
206 ;(turn-on-page-break-lines-mode)
207 ;(global-page-break-lines-mode 1)
208
209 ;(setq projectile-completion-system 'helm)
210 ;(helm-projectile-on)
211
212
213 ;; show projectile name in mode-line
214
215
216 ;(if (locate-library "ediff")
217 ;    (progn
218 ;      (autoload 'ediff-files "ediff")
219 ;      (autoload 'ediff-buffers "ediff")
220 ;
221 ;       (eval-after-load "ediff" '(progn
222 ;                         (message "doing ediff customisation")
223 ;                         (setq diff-switches               "-u"
224 ;                               ediff-custom-diff-options   "-U3"
225 ;                               ediff-split-window-function 'split-window-horizontally
226 ;                               ediff-window-setup-function 'ediff-setu;p-windows-plain)
227 ;
228 ;                         (add-hook 'ediff-startup-hook 'ediff-toggle-w;ide-display)
229 ;                         (add-hook 'ediff-cleanup-hook 'ediff-toggle-w;ide-display)
230 ;                         (add-hook 'ediff-suspend-hook 'ediff-toggle-wide-display)))))
231
232
233
234 ;(defun update-diff-colors ()
235 ;  "update the colors for diff faces"
236 ;  (set-face-attribute 'diff-added nil
237 ;                      :foreground "white" :background "blue")
238 ;  (set-face-attribute 'diff-removed nil
239 ;                      :foreground "white" :background "red3")
240 ;  (set-face-attribute 'diff-changed nil
241 ;                      :foreground "white" :background "purple"))
242 ;(eval-after-load "diff-mode"
243 ;  '(update-diff-colors))
244
245
246
247 ;(require 'helm-ag)
248 ;(require 'flx)
249 ;(flx-ido-mode t)
250
251
252
253 ;(fringe-mode (quote (0 . 0)))
254
255
256 (custom-set-variables
257  ;; custom-set-variables was added by Custom.
258  ;; If you edit it by hand, you could mess it up, so be careful.
259  ;; Your init file should contain only one such instance.
260  ;; If there is more than one, they won't work right.
261  '(package-selected-packages
262    (quote
263     (helm yasnippet workgroups2 w3m use-package tangotango-theme tabbar smex session rich-minority relative-line-numbers recentf-ext projectile-speedbar pp-c-l powerline persp-projectile paradox page-break-lines org-cliplink org-caldav org-bullets multi-term monokai-theme molokai-theme moe-theme minibuffer-line markdown-mode magit linum-relative key-chord jekyll-modes irony iedit ido-vertical-mode ido-ubiquitous icicles hydra highlight-tail highlight-escape-sequences highlight-current-line helm-projectile helm-ls-svn helm-ls-git helm-gtags helm-ag google-c-style ggtags flyspell-lazy flymake-google-cpplint flymake-cursor flx-ido fiplr eyebrowse evil-leader evil-escape ecb dired+ diff-hl cyberpunk-theme company color-theme-sanityinc-tomorrow color-theme color-identifiers-mode auto-complete-c-headers ace-window ace-jump-mode))))
264 (custom-set-faces
265  ;; custom-set-faces was added by Custom.
266  ;; If you edit it by hand, you could mess it up, so be careful.
267  ;; Your init file should contain only one such instance.
268  ;; If there is more than one, they won't work right.
269  )