aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman2001-12-25 22:02:33 +0000
committerRichard M. Stallman2001-12-25 22:02:33 +0000
commit5a97a3c2dbb289bb4a97cc68e5713b370f32f6af (patch)
tree91364da57216e59b31dbea3c1dfb1231360f2e6c
parent2a7c85e3f8eb46c11c27fb5ebc659b156f716ea2 (diff)
downloademacs-5a97a3c2dbb289bb4a97cc68e5713b370f32f6af.tar.gz
emacs-5a97a3c2dbb289bb4a97cc68e5713b370f32f6af.zip
(help-xref-on-pp): Catch and ignore errors in scanning the buffer.
-rw-r--r--lisp/ChangeLog3
-rw-r--r--lisp/help-mode.el32
2 files changed, 20 insertions, 15 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 13edc1723be..84e414ec738 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,8 @@
12001-12-25 Richard M. Stallman <rms@gnu.org> 12001-12-25 Richard M. Stallman <rms@gnu.org>
2 2
3 * help-mode.el (help-xref-on-pp): Catch and ignore errors in scanning
4 the buffer.
5
3 * startup.el (command-line): Convert command line args 6 * startup.el (command-line): Convert command line args
4 to Emacs internal representation using locale-coding-system. 7 to Emacs internal representation using locale-coding-system.
5 8
diff --git a/lisp/help-mode.el b/lisp/help-mode.el
index 78210284602..e40cb600d82 100644
--- a/lisp/help-mode.el
+++ b/lisp/help-mode.el
@@ -463,21 +463,23 @@ See `help-make-xrefs'."
463 (set-syntax-table emacs-lisp-mode-syntax-table) 463 (set-syntax-table emacs-lisp-mode-syntax-table)
464 (narrow-to-region from to) 464 (narrow-to-region from to)
465 (goto-char (point-min)) 465 (goto-char (point-min))
466 (while (not (eobp)) 466 (condition-case nil
467 (cond 467 (while (not (eobp))
468 ((looking-at "\"") (forward-sexp 1)) 468 (cond
469 ((looking-at "#<") (search-forward ">" nil 'move)) 469 ((looking-at "\"") (forward-sexp 1))
470 ((looking-at "\\(\\(\\sw\\|\\s_\\)+\\)") 470 ((looking-at "#<") (search-forward ">" nil 'move))
471 (let* ((sym (intern-soft (match-string 1))) 471 ((looking-at "\\(\\(\\sw\\|\\s_\\)+\\)")
472 (type (cond ((fboundp sym) 'help-function) 472 (let* ((sym (intern-soft (match-string 1)))
473 ((or (memq sym '(t nil)) 473 (type (cond ((fboundp sym) 'help-function)
474 (keywordp sym)) 474 ((or (memq sym '(t nil))
475 nil) 475 (keywordp sym))
476 ((and sym (boundp sym)) 476 nil)
477 'help-variable)))) 477 ((and sym (boundp sym))
478 (when type (help-xref-button 1 type sym))) 478 'help-variable))))
479 (goto-char (match-end 1))) 479 (when type (help-xref-button 1 type sym)))
480 (t (forward-char 1)))))) 480 (goto-char (match-end 1)))
481 (t (forward-char 1))))
482 (error nil))))
481 (set-syntax-table ost)))) 483 (set-syntax-table ost))))
482 484
483 485