   :config
   ;; since C-j is shadowed by smartparens
   (bind-keys :map lisp-mode-shared-map
-	     ("<C-return>" . eval-last-sexp)
-	     ("<M-return>" . eval-print-last-sexp)
-	     ("<C-M-return>" . eval-defun)
-	     ("<C-S-return>" . eval-region)
-	     ("<M-S-return>" . eval-buffer)
-	     ("<C-M-S-return>" . load-file)))
+             ("<C-return>" . eval-last-sexp)
+             ("<M-return>" . eval-print-last-sexp)
+             ("<C-M-return>" . eval-defun)
+             ("<C-S-return>" . eval-region)
+             ("<M-S-return>" . eval-buffer)
+             ("<C-M-S-return>" . load-file)))
 
 (use-package clojure-mode
-  ;; defer until the mode is needed
+  ;; defer til the mode is needed
   ;; see mode info: C-h v auto-mode-alist
   :mode
   ("\\(?:build\\|profile\\)\\.boot\\'" . clojure-mode)

  :config (load-theme 'hc-zenburn t)
  
  (use-package hl-line
    :config (global-hl-line-mode 1)))

(use-package magit
  ;; defer loading until the mode is called
  :commands (magit-status))

(use-package rainbow-mode
  ;; can be handy sometimes but rarely needed
  ;; defer loading until the mode is called
  :commands (rainbow-mode))

;;;;;;;;;;;;;;;
;; languages ;;
;;;;;;;;;;;;;;;

(use-package eldoc
  ;; defer until the mode is needed
  :defer t
  :diminish eldoc-mode "Eld"
  :init
  (add-hook 'clojure-mode-hook 'eldoc-mode 1)
  (add-hook 'lisp-interaction-mode-hook 'eldoc-mode 1)

  (use-package clojure-mode-extra-font-locking)

  (use-package clojure-cheatsheet
    ;; defer til the mode is called
    :bind ("C-c C-h" . clojure-cheatsheet))

  (with-eval-after-load 'flycheck
    (use-package flycheck-clojure
      :config (flycheck-clojure-setup)))

  (use-package cider
    :diminish "cider"
    :config (setq cider-repl-history-file "~/.emacs.d/cider-history")
    (bind-keys :map cider-mode-map
               ("<C-return>" . cider-eval-last-sexp)
               ("<M-return>" . cider-eval-print-last-sexp)
               ("<S-return>" . cider-eval-last-sexp-and-replace)
               ("<C-M-return>" . cider-eval-defun-at-point)
               ("<C-S-return>" . cider-eval-region)
               ("<M-S-return>" . cider-eval-buffer)
               ("<C-M-S-return>" . cider-load-file))))

(use-package js2-mode
  ;; defer til the mode is needed
  :mode ("\\.js\\'" . js2-mode))

(use-package ess-site
  ;; defer til the main function is called
  :ensure ess
  :commands R)

(use-package tex
  ;; defer til the mode is needed
  :ensure auctex
  :mode
  ("\\.hva\\'" . latex-mode)
