2 (setenv "PATH" (concat (getenv "PATH") ":/usr/local/bin"))
3 (setq exec-path (append exec-path '("/usr/local/bin")))
5 (setq debug-on-error t)
8 (add-to-list 'load-path "~/.emacs.d/config")
10 ;; remove custom setting out of init.el
11 ;; http://emacsblog.org/2008/12/06/quick-tip-detaching-the-custom-file/
12 (setq custom-file "~/.emacs.d/custom.el")
13 (load custom-file 'noerror)
16 (require 'my-packages)
20 (require 'init-color-theme)
24 (require 'init-project)
25 (require 'init-ggtags)
28 ;;;; conflict with C-c . in org-mode, disable it temporarily
29 ;;;;(require 'init-c-cpp)
30 (require 'init-key-binding)
31 (require 'init-winner)
32 (require 'init-minibuffer)
33 (require 'init-eshell)
35 ;; http://stackoverflow.com/questions/11484225/fix-an-auto-complete-mode-and-linum-mode-annoyance
36 ;;;(ac-linum-workaround)
39 (require 'init-mode-line)
40 ;(require 'init-workgroup2)
43 ;(add-to-list 'load-path "~/.emacs.d/Emacs-PDE-0.2.16/lisp/")
48 (require 'auto-complete)
49 (require 'auto-complete-config)
55 ;; page break configuration
57 ;(pretty-control-l-mode 1)
59 ;; persist command history of helm
61 ;(add-hook 'after-init-hook 'session-initialize)
64 (require 'use-package)
66 ;; persist command history of helm
70 (setq history-length 1000
71 history-delete-duplicates t
72 savehist-additional-variables '(extended-command-history)))
75 ;; (setq history-length 1000
76 ;; history-delete-duplicates t
77 ;; savehist-additional-variables '(extended-command-history))
79 ; (setq split-height-threshold 0)
85 ;;;(require 'helm-gtags)
86 ;;;;(require 'setup-helm-gtags)
87 ;;;;(helm-gtags-mode 1)
88 ;;;;;; Enable helm-gtags-mode
89 ;;;(add-hook 'c-mode-hook 'helm-gtags-mode)
90 ;;;(add-hook 'c++-mode-hook 'helm-gtags-mode)
91 ;;;(add-hook 'asm-mode-hook 'helm-gtags-mode)
94 ;;;(custom-set-variables
95 ;;; '(helm-gtags-path-style 'relative)
96 ;;; '(helm-gtags-ignore-case t)
97 ;;; '(helm-gtags-auto-update t))
100 ;;;(eval-after-load "helm-gtags"
102 ;;; (define-key helm-gtags-mode-map (kbd "M-t") 'helm-gtags-find-tag)
103 ;;; (define-key helm-gtags-mode-map (kbd "M-r") 'helm-gtags-find-rtag)
104 ;;; (define-key helm-gtags-mode-map (kbd "M-s") 'helm-gtags-find-symbol)
105 ;;; (define-key helm-gtags-mode-map (kbd "M-g M-p") 'helm-gtags-parse-file)
106 ;;; (define-key helm-gtags-mode-map (kbd "C-c <") 'helm-gtags-previous-history)
107 ;;; (define-key helm-gtags-mode-map (kbd "C-c >") 'helm-gtags-next-history)
108 ;;; (define-key helm-gtags-mode-map (kbd "M-,") 'helm-gtags-pop-stack)))
116 (setq help-window-select t)
119 ;; (add-to-list 'load-path "~/.emacs.d/site-lisp/eim")
120 ;; (autoload 'eim-use-package "eim" "Another emacs input method")
122 ;; (register-input-method
123 ;; "eim-wb" "euc-cn" 'eim-use-package
124 ;; "五笔" "汉字五笔输入法" "~/.emacs.d/site-lisp/eim/wb.txt")
125 ;; (register-input-method
126 ;; "eim-py" "euc-cn" 'eim-use-package
127 ;; "拼音" "汉字拼音输入法" "~/.emacs.d/site-lisp/eim/py.txt")
129 ;(require 'init-keychord)
131 ;(setq hydra-examples-verbatim t)
132 (require 'init-hydra)
135 ;(require 'ace-window)
136 ;(global-set-key (kbd "M-p") 'ace-window)
139 (require 'init-multi-term)
140 (require 'init-projectile)
142 (require 'page-break-lines)
143 ;(turn-on-page-break-lines-mode)
144 (global-page-break-lines-mode 1)
146 ;(setq projectile-completion-system 'helm)
147 ;(helm-projectile-on)
150 ;; show projectile name in mode-line
153 (if (locate-library "ediff")
155 (autoload 'ediff-files "ediff")
156 (autoload 'ediff-buffers "ediff")
158 (eval-after-load "ediff" '(progn
159 (message "doing ediff customisation")
160 (setq diff-switches "-u"
161 ediff-custom-diff-options "-U3"
162 ediff-split-window-function 'split-window-horizontally
163 ediff-window-setup-function 'ediff-setup-windows-plain)
165 (add-hook 'ediff-startup-hook 'ediff-toggle-wide-display)
166 (add-hook 'ediff-cleanup-hook 'ediff-toggle-wide-display)
167 (add-hook 'ediff-suspend-hook 'ediff-toggle-wide-display)))))
171 (defun update-diff-colors ()
172 "update the colors for diff faces"
173 (set-face-attribute 'diff-added nil
174 :foreground "white" :background "blue")
175 (set-face-attribute 'diff-removed nil
176 :foreground "white" :background "red3")
177 (set-face-attribute 'diff-changed nil
178 :foreground "white" :background "purple"))
179 (eval-after-load "diff-mode"
180 '(update-diff-colors))