     (delete-overlay caml-types-expr-ovl))
     ))
 
-
-
-;; bindings
-
-;; now in caml.el
-; (and
-;  (boundp 'caml-mode-map)
-;  (keymapp caml-mode-map)
-;  (progn 
-;    (define-key caml-mode-map [?\C-c?\C-t] 'caml-types-show-type)
-;    (define-key caml-mode-map [down-mouse-2] 'caml-types-explore)
-;    (let ((map (lookup-key caml-mode-map [menu-bar caml])))
-;      (and
-;       (keymapp map)
-;       (progn
-;         (define-key map [separator-types] '("---"))
-;         (define-key map [show-type]
-;           '("Show type at point" . caml-types-show-type )))))))
-
 (provide 'caml-types)

          (if (null loc)
              (progn
                (delete-overlay caml-types-expr-ovl)
                (delete-overlay caml-types-type-ovl)
                (message
                 "Point is not within a typechecked expression or pattern.")
                (narrow-to-region 1 1)
                )
            (let ((left (caml-types-get-pos target-buf (nth 0 loc) (nth 1 loc)))
                  (right (caml-types-get-pos target-buf
                                             (nth 2 loc) (nth 3 loc))))

            ;; not strictly correct
            (re-search-forward
             "^type(\n  \\(\\([^\n)]\\|.)\\|\n[^)]\\)*\\)\n)")
            (message (format "type: %s" (match-string 1)))
            (narrow-to-region (match-beginning 1) (match-end 1)))))
      (if (and (= arg 4)
               (not (window-live-p (get-buffer-window type-buf))))
          (display-buffer type-buf))
      (unwind-protect
          (sit-for 60)
        (delete-overlay caml-types-expr-ovl)))))
