[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
debugger-make-xrefs patch.
From: |
Lute Kamstra |
Subject: |
debugger-make-xrefs patch. |
Date: |
Sun, 13 Mar 2005 22:09:05 +0100 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) |
debugger-make-xrefs in lisp/emacs-lisp/debug.el adds a cross reference
to the first symbol name of each line in the debugger's *Backtrace*
buffer (if that symbol name is the name of a function and the lisp
source file in which it was defined can be located). Lines of frames
that are set to debug on exit are marked with a `*'.
debugger-make-xrefs considers this `*' the first symbol name on the
line and consequently does not add any cross reference. What about
the following patch to fix this?
Lute.
Index: lisp/ChangeLog
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.7091
diff -c -r1.7091 ChangeLog
*** lisp/ChangeLog 13 Mar 2005 20:54:14 -0000 1.7091
--- lisp/ChangeLog 13 Mar 2005 20:56:17 -0000
***************
*** 5,10 ****
--- 5,12 ----
debug-on-exit and we don't have to do it manually. Set an extra
debug-on-exit for macro's.
(debugger-setup-buffer): Don't mark the top frame manually.
+ (debugger-make-xrefs): Docstring fix. Ignore a `*' at the
+ beginning of a line.
2005-03-12 Lute Kamstra <address@hidden>
Index: lisp/emacs-lisp/debug.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/emacs-lisp/debug.el,v
retrieving revision 1.76
diff -c -r1.76 debug.el
*** lisp/emacs-lisp/debug.el 13 Mar 2005 20:53:14 -0000 1.76
--- lisp/emacs-lisp/debug.el 13 Mar 2005 20:56:18 -0000
***************
*** 302,308 ****
(debugger-make-xrefs))
(defun debugger-make-xrefs (&optional buffer)
! "Attach cross-references to symbol names in the `*Backtrace*' buffer."
(interactive "b")
(save-excursion
(set-buffer (or buffer (current-buffer)))
--- 302,308 ----
(debugger-make-xrefs))
(defun debugger-make-xrefs (&optional buffer)
! "Attach cross-references to function names in the `*Backtrace*' buffer."
(interactive "b")
(save-excursion
(set-buffer (or buffer (current-buffer)))
***************
*** 353,358 ****
--- 353,359 ----
;; Scan the new part of the backtrace, inserting xrefs.
(goto-char (point-min))
(while (progn
+ (goto-char (+ (point) 2))
(skip-syntax-forward "^w_")
(not (eobp)))
(let* ((beg (point))
***************
*** 364,371 ****
(goto-char beg)
;; help-xref-button needs to operate on something matched
;; by a regexp, so set that up for it.
! (re-search-forward "\\(\\(\\sw\\|\\s_\\)+\\)")
! (help-xref-button 1 'help-function-def sym file)))
(forward-line 1))
(widen))
(setq debugger-previous-backtrace (buffer-string))))
--- 365,372 ----
(goto-char beg)
;; help-xref-button needs to operate on something matched
;; by a regexp, so set that up for it.
! (re-search-forward "\\(\\sw\\|\\s_\\)+")
! (help-xref-button 0 'help-function-def sym file)))
(forward-line 1))
(widen))
(setq debugger-previous-backtrace (buffer-string))))
- debugger-make-xrefs patch.,
Lute Kamstra <=