From 22f5d492084be45add196d8ecc3a1280b43260cd Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 10 Feb 2003 21:52:30 +0000 Subject: [PATCH] (help-xref-on-pp): Only add xref if the text is less than 5K. --- lisp/help-mode.el | 48 +++++++++++++++++++++++------------------------ 1 file changed, 23 insertions(+), 25 deletions(-) diff --git a/lisp/help-mode.el b/lisp/help-mode.el index 904d08f7519..03a711115db 100644 --- a/lisp/help-mode.el +++ b/lisp/help-mode.el @@ -443,31 +443,29 @@ See `help-make-xrefs'." ;;;###autoload (defun help-xref-on-pp (from to) "Add xrefs for symbols in `pp's output between FROM and TO." - (let ((ost (syntax-table))) - (unwind-protect - (save-excursion - (save-restriction - (set-syntax-table emacs-lisp-mode-syntax-table) - (narrow-to-region from to) - (goto-char (point-min)) - (condition-case nil - (while (not (eobp)) - (cond - ((looking-at "\"") (forward-sexp 1)) - ((looking-at "#<") (search-forward ">" nil 'move)) - ((looking-at "\\(\\(\\sw\\|\\s_\\)+\\)") - (let* ((sym (intern-soft (match-string 1))) - (type (cond ((fboundp sym) 'help-function) - ((or (memq sym '(t nil)) - (keywordp sym)) - nil) - ((and sym (boundp sym)) - 'help-variable)))) - (when type (help-xref-button 1 type sym))) - (goto-char (match-end 1))) - (t (forward-char 1)))) - (error nil)))) - (set-syntax-table ost)))) + (if (> (- to from) 5000) nil + (with-syntax-table emacs-lisp-mode-syntax-table + (save-excursion + (save-restriction + (narrow-to-region from to) + (goto-char (point-min)) + (condition-case nil + (while (not (eobp)) + (cond + ((looking-at "\"") (forward-sexp 1)) + ((looking-at "#<") (search-forward ">" nil 'move)) + ((looking-at "\\(\\(\\sw\\|\\s_\\)+\\)") + (let* ((sym (intern-soft (match-string 1))) + (type (cond ((fboundp sym) 'help-function) + ((or (memq sym '(t nil)) + (keywordp sym)) + nil) + ((and sym (boundp sym)) + 'help-variable)))) + (when type (help-xref-button 1 type sym))) + (goto-char (match-end 1))) + (t (forward-char 1)))) + (error nil))))))) ;; Additional functions for (re-)creating types of help buffers. -- 2.39.5