   (add-hook 'ielm-mode-hook 'eldoc-mode 1)
   :config
   ;; since C-j is shadowed by smartparens
-  (bind-key "RET" 'eval-print-last-sexp lisp-interaction-mode-map))
+  (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)))
 
 (use-package clojure-mode
   ;; defer until the mode is needed

	     ("C-}" . sp-dedent-adjust-sexp) ;; cp. sp-forward-barf-sexp
	     ("C-(" . sp-backward-slurp-sexp)
	     ("C-{" . sp-backward-barf-sexp)
	     ("M-s" . sp-splice-sexp)
	     ("M-S" . sp-split-sexp)
	     ("M-J" . sp-join-sexp)
	     ("M-C" . sp-convolute-sexp) ;; formerly M-?

	     ("M-I" . sp-indent-defun)
	     ("M-R" . sp-rewrap-sexp)
	     ("M-W" . sp-swap-enclosing-sexp)
	     ("M-(" . sp-extract-before-sexp)
	     ("M-)" . sp-extract-after-sexp)
	     ("C-<" . sp-indent-adjust-sexp) ;; cp. sp-add-to-previous-sexp
	     ("C->" . sp-add-to-next-sexp)
	     ;; they are kinda hard to remember ???--->
	     ("M-[" . sp-select-previous-thing-exchange)
	     ("M-]" . sp-select-next-thing)
	     ("C-M-w" . sp-copy-sexp)
	     ("C-M-S-w" . sp-backward-copy-sexp)
	     ("C-M-u" . sp-unwrap-sexp) ;; overrides backward-up-list
	     ("C-M-S-u" . sp-backward-unwrap-sexp)
	     ;; navigation via parentheses
	     ("M-n" . sp-down-sexp)
	     ("M-P" . sp-backward-down-sexp)
	     ("M-p" . sp-backward-up-sexp)
	     ("M-N" . sp-up-sexp)
	     ;; emacs stuff ;; overrides
	     ("C-M-f" . sp-forward-sexp)  ;; forward-sexp
	     ("C-M-b" . sp-backward-sexp) ;; backward-sexp
	     ("C-M-a" . sp-beginning-of-sexp) ;; beginning-of-defun
	     ("C-M-e" . sp-end-of-sexp)       ;; end-of-defun
	     ("C-M-n" . sp-next-sexp)     ;; forward-list
	     ("C-M-p" . sp-previous-sexp) ;; backward-list
	     ("C-j" . sp-newline) ;; electric-newline-and-maybe-indent
	     ("C-M-t"   . sp-transpose-sexp)	    ;; transpose-sexp
	     ("C-x C-t" . sp-transpose-hybrid-sexp) ;; transpose-lines
	     ("C-M-k"           . sp-kill-sexp)	         ;; kill-sexp
	     ("<C-M-backspace>" . sp-backward-kill-sexp) ;; backward-kill-sexp
	     ;; strict mode stuff
	     ("C-d"   . sp-delete-char)          ;; delete-char
	     ("DEL"   . sp-backward-delete-char) ;; backward-delete-char
	     ("M-d"   . sp-kill-word)          ;; kill-word
	     ("M-DEL" . sp-backward-kill-word) ;; backward-kill-word
	     ("C-k"   . sp-kill-hybrid-sexp) ;; kill-line
	     ;; https://ebzzry.github.io/emacs-pairs.html
	     ("C-c ("  . wrap-with-parens)
	     ("C-c ["  . wrap-with-brackets)
