1 (setq debug-on-error t)
6 (add-to-list 'default-frame-alist '(width . 120))
7 (add-to-list 'default-frame-alist '(height . 40))
8 ;(add-to-list 'default-frame-alist '(font . "Source Code Pro for Powerline-12:weight:light" ))
9 (add-to-list 'default-frame-alist '(font . "Source Code Pro for Powerline-12" ))
10 (load-theme 'tango-dark)
13 (put 'set-goal-column 'disabled nil)
14 (setq vc-follow-symlinks t)
16 (setq ring-bell-function 'ignore)
17 (setq resize-mini-windows t)
19 (setq ns-use-srgb-colorspace nil)
20 (add-to-list 'auto-mode-alist '("emacs\\'" . emacs-lisp-mode))
21 ;(set-fringe-mode nil)
25 ;(set-face-inverse-video-p 'vertical-border nil)
26 ;(set-face-background 'vertical-border (face-background 'default))
28 ;;; Set symbol for the border
29 ;(set-display-table-slot standard-display-table
31 ; (make-glyph-code ?┃))
33 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
34 ;http://y.tsutsumi.io/emacs-from-scratch-part-2-package-management.html
36 (add-to-list 'package-archives
37 '("melpa" . "http://melpa.milkbox.net/packages/") t)
40 (defvar required-packages
50 color-theme-sanityinc-tomorrow
62 color-identifiers-mode
64 ) "a list of packages to ensure are installed at launch.")
67 (defun packages-installed-p ()
68 (loop for p in required-packages
69 when (not (package-installed-p p)) do (return nil)
72 (unless (packages-installed-p)
73 (message "%s" "Emacs is now refreshing its package database...")
74 (package-refresh-contents)
75 (message "%s" " done.")
76 (dolist (p required-packages)
77 (when (not (package-installed-p p))
78 (package-install p))))
79 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
83 ;;---------------------------------------------------------------------------------------
86 (require 'color-theme)
87 (load-theme 'sanityinc-tomorrow-bright t)
89 ;;---------------------------------------------------------------------------------------
92 (require 'ido-vertical-mode)
98 (setq ido-use-faces nil)
99 ;(setq ido-enable-flex-matching t)
100 ;(setq ido-use-faces t)
101 ;(setq ido-use-faces nil)
102 ;(set-face-attribute 'ido-vertical-first-match-face nil
103 ; :background "#e5b7c0")
104 ;(set-face-attribute 'ido-vertical-only-match-face nil
105 ; :background "#e52b50"
106 ; :foreground "white")
107 ;(set-face-attribute 'ido-vertical-match-face nil
108 ; :foreground "#b00000")
110 (setq org-completion-use-ido t)
111 (setq magit-completing-read-function 'magit-ido-completing-read)
113 (require 'ido-ubiquitous)
114 (ido-ubiquitous-mode 1)
118 (global-set-key (kbd "M-x") 'smex)
119 (global-set-key (kbd "M-X") 'smex-major-mode-commands)
121 ;;---------------------------------------------------------------------------------------
125 ;(setq magit-auto-revert-mode nil)
126 (setq magit-last-seen-setup-instructions "1.4.0")
128 ;;---------------------------------------------------------------------------------------
132 ;(powerline-evil-vim-color-theme)
133 (powerline-evil-center-color-theme)
134 (display-time-mode t)
136 ;;---------------------------------------------------------------------------------------
139 (global-evil-leader-mode)
140 (evil-leader/set-leader ";")
141 (evil-leader/set-key "e" 'find-file)
142 (evil-leader/set-key "b" 'switch-to-buffer)
143 (evil-leader/set-key "w" 'evil-write)
145 ;(setq key-chord-two-keys-delay 0.5)
146 ;(key-chord-define evil-normal-state-map "jj" 'evil-force-normal-state)
147 ;(key-chord-define evil-visual-state-map "jj" 'evil-change-to-previous-state)
148 (key-chord-define evil-insert-state-map "jj" 'evil-normal-state)
149 ;(key-chord-define evil-replace-state-map "jj" 'evil-normal-state)
152 ;; change mode-line color by evil state
153 ;(lexical-let ((default-color (cons (face-background 'mode-line)
154 ; (face-foreground 'mode-line))))
155 ; (add-hook 'post-command-hook
157 ; (let ((color (cond ((minibufferp) default-color)
158 ; ((evil-insert-state-p) '("#e80000" . "#ffffff"))
159 ; ((evil-emacs-state-p) '("#444488" . "#ffffff"))
160 ; ((buffer-modified-p) '("#006fa0" . "#ffffff"))
161 ; (t default-color))))
162 ; (set-face-background 'mode-line (car color))
163 ; (set-face-foreground 'mode-line (cdr color))))))
165 (setq evil-emacs-state-cursor '("red" box))
166 (setq evil-normal-state-cursor '("green" box))
167 (setq evil-visual-state-cursor '("orange" box))
168 (setq evil-insert-state-cursor '("red" bar))
169 (setq evil-replace-state-cursor '("red" bar))
170 (setq evil-operator-state-cursor '("red" hollow))
171 ;;Enter an emacs mode in a given state http://wikemacs.org/wiki/Evil
172 (loop for (mode . state) in '(
173 ; (inferior-emacs-lisp-mode . emacs)
174 ; (nrepl-mode . insert)
175 ; (pylookup-mode . emacs)
176 ; (comint-mode . normal)
177 ; (shell-mode . emacs)
178 ; (git-commit-mode . insert)
179 ; (git-rebase-mode . emacs)
180 ; (term-mode . emacs)
181 ; (help-mode . emacs)
182 ; (helm-grep-mode . emacs)
183 ; (grep-mode . emacs)
184 ; (bc-menu-mode . emacs)
185 ; (magit-branch-manager-mode . emacs)
186 ; (rdictcc-buffer-mode . emacs)
187 ; (dired-mode . emacs)
188 ; (wdired-mode . normal)
189 (eshell-mode . emacs))
190 do (evil-set-initial-state mode state))
193 ;(require 'powerline-evil)
194 ;; TODO: enter emacs mode in eshll rather then evil mode
196 ;;---------------------------------------------------------------------------------------
199 (setq fiplr-root-markers '(".git" ".svn" "*.DS_Store"))
200 (setq fiplr-ignored-globs '((directories (".git" ".svn"))
201 (files ("*.jpg" "*.png" "*.zip" "*~" "*.o" ".obj" "*.swp" "*.hg" ".pyc" ".*" ))))
203 (global-set-key (kbd "C-x f") 'fiplr-find-file)
204 ;;---------------------------------------------------------------------------------------
206 ;(setq mac-right-option-modifier 'control)
210 ;;---------------------------------------------------------------------------------------
213 ;;;;;;;;;;; helm configuration https://github.com/emacs-helm/helm http://tuhdo.github.io/helm-intro.html
214 ;;(require 'helm-config)
215 ;;(global-set-key (kbd "M-x") 'helm-M-x)
217 ;;(setq helm-M-x-fuzzy-match t)
218 ;;(global-set-key (kbd "C-x b") 'helm-mini)
219 ;;(setq helm-buffers-fuzzy-matching t
220 ;; helm-recentf-fuzzy-match t)
221 ;;(global-set-key (kbd "C-x C-f") 'helm-find-files)
222 ;;(when (executable-find "ack-grep")
223 ;; (setq helm-grep-default-command "ack-grep -Hn --no-group --no-color %e %p %f"
224 ;; helm-grep-default-recurse-command "ack-grep -H --no-group --no-color %e %p %f"))
225 ;;(setq helm-ff-skip-boring-files t)
226 ;;;(require 'helm-config)
227 ;;;(require 'helm-themes)
228 ;;;(set-face-attribute 'helm-selection nil :background "#441100")
230 ;;---------------------------------------------------------------------------------------
233 (require 'auto-complete)
234 (auto-complete-mode 1)
237 ;;; ---------------------------------------- el-get -----------------------------------------
239 ;(add-to-list 'el-get-recipe-path "~/.emacs.d/el-get-user/recipes")
241 ;(el-get-bundle packages/sm-package-powerline
242 ; :url "https://github.com/laynor/emacs-conf.git"
248 (global-set-key (kbd "C-x C-l") 'windmove-right)
249 (global-set-key (kbd "C-x C-h") 'windmove-left)
250 (global-set-key (kbd "C-x C-k") 'windmove-up)
251 (global-set-key (kbd "C-x C-j") 'windmove-down)
253 ;(global-set-key (kbd "C-x C-s") 'split-window-right)
256 (set-face-attribute 'vertical-border