   (let ((map (make-sparse-keymap)))
     (prog1 map
       (define-key map (kbd "C-x C-e") 'skewer-eval-last-expression)
+      (define-key map (kbd "C-c C-p") 'skewer-eval-and-print-last-expression)
       (define-key map (kbd "C-M-x") 'skewer-eval-defun)
       (define-key map (kbd "C-c C-k") 'skewer-load-buffer)))
   "Keymap for skewer-mode.")

;; `skewer-mode'.

;;  * C-x C-e -- `skewer-eval-last-expression'
;;  * C-M-x   -- `skewer-eval-defun'
;;  * C-c C-k -- `skewer-load-buffer'


         (skewer--save-point #'skewer-eval-last-expression))
      (cl-destructuring-bind (string start end) (skewer-get-last-expression)
        (skewer-flash-region start end)
        (skewer-eval (if pprint
                         (concat "skewer.log("
                                 ;; remove tailing semicolon
                                 (let ((trimmed (trim-string string)))
                                   (if (equal (substring trimmed -1 nil) ";")
                                       (substring trimmed 0 -1)
                                     trimmed)) ");")
                       string)
                     #'skewer-post-minibuffer)))))

(defun skewer-get-defun ()
  "Return the toplevel JavaScript expression around the point as
