 (add-hook 'after-revert-hook 'linum-update-current)
 
 ;; lisp keybindings
+(global-set-key (kbd "C-c e f") 'byte-compile-file)
 (define-key emacs-lisp-mode-map (kbd "C-c e e") 'eval-last-sexp)
 (define-key emacs-lisp-mode-map (kbd "C-c e r") 'eval-region)
 (define-key emacs-lisp-mode-map (kbd "C-c e b") 'eval-buffer)

;; Stop asking me if a theme is safe. The entirety of Emacs is built around
;; evaling arbituary code...
(advice-add 'load-theme :around #'(lambda (old-load-theme &rest r)
                                    (apply old-load-theme (append r '(t)))))


(define-key emacs-lisp-mode-map (kbd "C-c e v") 'find-variable-at-point)
(add-hook 'emacs-lisp-mode-hook 'eldoc-mode)

;; Rebind windmove keys
(global-set-key (kbd "C-c <left>")  'windmove-left)
(global-set-key (kbd "C-c <right>") 'windmove-right)
(global-set-key (kbd "C-c <up>")    'windmove-up)
(global-set-key (kbd "C-c <down>")  'windmove-down)

;; Unmap undo-tree mode
(assq-delete-all 'undo-tree-mode minor-mode-map-alist)
(global-set-key (kbd "C-x u") 'undo-tree-visualize)

