;;; debug.el --- debuggers and related commands for Emacs
-;; Copyright (C) 1985, 1986, 1994, 2001, 2002, 2003, 2004,
-;; 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+;; Copyright (C) 1985-1986, 1994, 2001-2011 Free Software Foundation, Inc.
;; Maintainer: FSF
;; Keywords: lisp, tools, maint
:group 'debug)
(defcustom debugger-mode-hook nil
- "*Hooks run when `debugger-mode' is turned on."
+ "Hooks run when `debugger-mode' is turned on."
:type 'hook
:group 'debugger
:version "20.3")
(defcustom debugger-batch-max-lines 40
- "*Maximum lines to show in debugger buffer in a noninteractive Emacs.
+ "Maximum lines to show in debugger buffer in a noninteractive Emacs.
When the debugger is entered and Emacs is running in batch mode,
if the backtrace text has more than this many lines,
the middle is discarded, and just the beginning and end are displayed."
(let (debugger-value
(debug-on-error nil)
(debug-on-quit nil)
- (debugger-buffer (let ((default-major-mode 'fundamental-mode))
- (get-buffer-create "*Backtrace*")))
+ (debugger-buffer (get-buffer-create "*Backtrace*"))
(debugger-old-buffer (current-buffer))
(debugger-step-after-exit nil)
(debugger-will-be-back nil)
(insert "...\n"))
(goto-char (point-min))
(message "%s" (buffer-string))
- (kill-emacs))
+ (kill-emacs -1))
(message "")
(let ((standard-output nil)
(buffer-read-only t))
That buffer should be current already."
(setq buffer-read-only nil)
(erase-buffer)
- (set-buffer-multibyte nil)
+ (set-buffer-multibyte t) ;Why was it nil ? -stef
(setq buffer-undo-list t)
(let ((standard-output (current-buffer))
(print-escape-newlines t)
(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)))
+ (with-current-buffer (or buffer (current-buffer))
(setq buffer (current-buffer))
(let ((inhibit-read-only t)
(old-end (point-min)) (new-end (point-min)))
(insert ? )))
(beginning-of-line))
-(put 'debugger-env-macro 'lisp-indent-function 0)
(defmacro debugger-env-macro (&rest body)
"Run BODY in original environment."
+ (declare (indent 0))
`(save-excursion
(if (null (buffer-name debugger-old-buffer))
;; old buffer deleted
(run-mode-hooks 'debugger-mode-hook))
\f
(defcustom debugger-record-buffer "*Debugger-record*"
- "*Buffer name for expression values, for \\[debugger-record-expression]."
+ "Buffer name for expression values, for \\[debugger-record-expression]."
:type 'string
:group 'debugger
:version "20.3")
"Display a list of all the functions now set to debug on entry."
(interactive)
(require 'help-mode)
- (help-setup-xref '(debugger-list-functions) (interactive-p))
+ (help-setup-xref '(debugger-list-functions)
+ (called-interactively-p 'interactive))
(with-output-to-temp-buffer (help-buffer)
(with-current-buffer standard-output
(if (null debug-function-list)
(provide 'debug)
-;; arch-tag: b6ec7047-f801-4103-9c63-d69322db9d3b
;;; debug.el ends here