   (let ((hints (if hints (split-string hints "[^a-zA-Z0-9']") " "))
         (what (idris-thing-at-point)))
     (call-idris-client (format ":ps! %s %s %s" (number-to-string (cdr what)) (car what) hints)))
-  (revert-buffer t t))
+  (revert-buffer t t)
+  (idris-load))
 
 (defun idris-add-missing ()
   "Add missing cases"


(defun idris-thing-at-point ()
  "Return the line number and name at point"
  (let ((name (string-no-properties (symbol-name (symbol-at-point))))
        (line (idris-get-line-num)))
    (cons name line)))

(defun idris-load ()
  "Load the current buffer using Idris client mode"

  (idris-load)
  (let ((what (idris-thing-at-point)))
   (call-idris-client (concat ":am! " (number-to-string (cdr what)) " " (car what))))
  (revert-buffer t t)
  (idris-load))

;;;; Bindings to imitate Agda somewhat
(define-key idris-mode-map (kbd "C-c C-c") 'idris-case-split)
