         (require 'smartparens-config))
 
 (bundle evil
-        (evil-mode t)
-
-        ;; change mode-line color by evil state
-        (lexical-let ((default-color (cons (face-background 'mode-line)
-                                           (face-foreground 'mode-line))))
-          (add-hook 'post-command-hook
-                    (lambda ()
-                      (let ((color (cond ((minibufferp) default-color)
-                                         ((evil-insert-state-p) '("#e80000" . "#ffffff"))
-                                         ((evil-emacs-state-p)  '("#444488" . "#ffffff"))
-                                         ((buffer-modified-p)   '("#006fa0" . "#ffffff"))
-                                         (t default-color))))
-                        (set-face-background 'mode-line (car color))
-                        (set-face-foreground 'mode-line (cdr color)))))))
+        (evil-mode t))
 
 (bundle evil-leader
-        (global-evil-leader-mode))
+        (global-evil-leader-mode)
+        (evil-leader/set-key
+          "g" 'magit-status
+          "h" 'helm-M-x))
 
 (bundle evil-matchit
         (global-evil-matchit-mode t))

(defmacro bundle (name &rest content)
  "Passthrough for el-get-bundle that records the package name in dotfiles-packages."
  `(progn
    (add-to-list 'dotfiles-packages ',name)
    (el-get-bundle ,name ,@content)))

(defun dotfiles-sync ()
  "Removes all packages not specified with the bundle macro and updates what's left."

(bundle flycheck
        (add-hook 'after-init-hook #'global-flycheck-mode))

(bundle magit)

(bundle projectile
        (projectile-global-mode))

(bundle helm)

(bundle ace-jump-mode)

