]> code.delx.au - gnu-emacs/blobdiff - lisp/reveal.el
New icons for debugger.
[gnu-emacs] / lisp / reveal.el
index 08b841e6f2676fdf7e3e6c8fb2bb3537123b3d9b..11f8c11c936e33dfe650f6b6e7cf2d5fb7535b4e 100644 (file)
@@ -95,7 +95,7 @@
                     (let ((inv (overlay-get ol 'invisible)))
                       (and inv (symbolp inv)
                            (or (setq open (or (get inv 'reveal-toggle-invisible)
-                                              (get ol 'isearch-open-invisible-temporary)))
+                                              (overlay-get ol 'isearch-open-invisible-temporary)))
                                (overlay-get ol 'isearch-open-invisible)
                                (and (consp buffer-invisibility-spec)
                                     (assq inv buffer-invisibility-spec)))
               (setq repeat t)
               (condition-case err
                   (funcall open ol nil)
-                (error (message "!!Reveal-show: %s !!" err))))))))
+                (error (message "!!Reveal-show: %s !!" err)
+                       ;; Let's default to a meaningful behavior to avoid
+                       ;; getting stuck in an infinite loop.
+                       (setq repeat nil)
+                       (overlay-put ol 'invisible nil))))))))
      ;; Close old overlays.
      (dolist (ol old-ols)
        (when (and (eq (current-buffer) (overlay-buffer ol))
             (if (or open
                     (and (setq inv (overlay-get ol 'reveal-invisible))
                          (setq open (or (get inv 'reveal-toggle-invisible)
-                                        (get ol 'isearch-open-invisible-temporary)))))
+                                        (overlay-get ol 'isearch-open-invisible-temporary)))))
                 (condition-case err
                     (funcall open ol t)
                   (error (message "!!Reveal-hide: %s !!" err)))
@@ -156,7 +160,7 @@ Reveal mode renders invisible text around point visible again.
 Interactively, with no prefix argument, toggle the mode.
 With universal prefix ARG (or if ARG is nil) turn mode on.
 With zero or negative ARG turn mode off."
-  :global t
+  :global t :group 'reveal
   (setq-default reveal-mode global-reveal-mode)
   (if global-reveal-mode
       (progn
@@ -166,4 +170,5 @@ With zero or negative ARG turn mode off."
     (remove-hook 'post-command-hook 'reveal-post-command)))
 
 (provide 'reveal)
+
 ;;; reveal.el ends here