diff options
| author | Stefan Monnier | 2005-02-26 05:28:24 +0000 |
|---|---|---|
| committer | Stefan Monnier | 2005-02-26 05:28:24 +0000 |
| commit | 78d54deee70eb5c220561427a465a90edea82b6b (patch) | |
| tree | 1a49f7a2686b4cf3047224c26e96acb07df549c2 | |
| parent | c6f4488cfd5bdbdda68710ed93b0c9d5c88b65dc (diff) | |
| download | emacs-78d54deee70eb5c220561427a465a90edea82b6b.tar.gz emacs-78d54deee70eb5c220561427a465a90edea82b6b.zip | |
(debug): Hide the buffer if it's not killed.
Remove unused and inexistent var `inhibit-trace'.
(debugger-mode): Use run-mode-hooks.
(debugger-list-functions): Add buttons; setup xref stack.
| -rw-r--r-- | lisp/ChangeLog | 41 | ||||
| -rw-r--r-- | lisp/emacs-lisp/debug.el | 93 |
2 files changed, 70 insertions, 64 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 26d615c239e..51e13988a81 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -13,8 +13,8 @@ | |||
| 13 | 13 | ||
| 14 | 2005-02-24 Ulf Jasper <ulf.jasper@web.de> | 14 | 2005-02-24 Ulf Jasper <ulf.jasper@web.de> |
| 15 | 15 | ||
| 16 | * calendar/icalendar.el (icalendar--decode-isodatetime): New | 16 | * calendar/icalendar.el (icalendar--decode-isodatetime): |
| 17 | optional argument DAY-SHIFT. | 17 | New optional argument DAY-SHIFT. |
| 18 | (icalendar-export-region): Fix coding-system-for-write. | 18 | (icalendar-export-region): Fix coding-system-for-write. |
| 19 | (icalendar--convert-ical-to-diary): Shift end-day of all-day | 19 | (icalendar--convert-ical-to-diary): Shift end-day of all-day |
| 20 | events by one. | 20 | events by one. |
| @@ -29,6 +29,13 @@ | |||
| 29 | during redisplay. Call force-window-update after read-event | 29 | during redisplay. Call force-window-update after read-event |
| 30 | and delete-region to signal that window is not accurate. | 30 | and delete-region to signal that window is not accurate. |
| 31 | 31 | ||
| 32 | 2005-02-23 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 33 | |||
| 34 | * emacs-lisp/debug.el (debug): Hide the buffer if it's not killed. | ||
| 35 | Remove unused and inexistent var `inhibit-trace'. | ||
| 36 | (debugger-mode): Use run-mode-hooks. | ||
| 37 | (debugger-list-functions): Add buttons; setup xref stack. | ||
| 38 | |||
| 32 | 2005-02-23 Richard M. Stallman <rms@gnu.org> | 39 | 2005-02-23 Richard M. Stallman <rms@gnu.org> |
| 33 | 40 | ||
| 34 | * calendar/appt.el (appt-time-msg-list): 3rd elt of each | 41 | * calendar/appt.el (appt-time-msg-list): 3rd elt of each |
| @@ -161,8 +168,8 @@ | |||
| 161 | * viper-util.el (viper-glob-unix-files): Fix shell status check. | 168 | * viper-util.el (viper-glob-unix-files): Fix shell status check. |
| 162 | (viper-file-remote-p): Make equivalent to file-remote-p. | 169 | (viper-file-remote-p): Make equivalent to file-remote-p. |
| 163 | 170 | ||
| 164 | * viper.el (viper-major-mode-modifier-list): Use | 171 | * viper.el (viper-major-mode-modifier-list): |
| 165 | viper-gnus-modifier-map. | 172 | Use viper-gnus-modifier-map. |
| 166 | 173 | ||
| 167 | 2005-02-19 David Kastrup <dak@gnu.org> | 174 | 2005-02-19 David Kastrup <dak@gnu.org> |
| 168 | 175 | ||
| @@ -172,7 +179,7 @@ | |||
| 172 | 2005-02-19 Jay Belanger <belanger@truman.edu> | 179 | 2005-02-19 Jay Belanger <belanger@truman.edu> |
| 173 | 180 | ||
| 174 | * calc/calc-math.el (calc-arctan, calc-tanh, calc-arctanh): | 181 | * calc/calc-math.el (calc-arctan, calc-tanh, calc-arctanh): |
| 175 | Removed extra definitions. | 182 | Remove extra definitions. |
| 176 | (calc-coth): New function. | 183 | (calc-coth): New function. |
| 177 | (calcFunc-cot): Fix `let'. | 184 | (calcFunc-cot): Fix `let'. |
| 178 | 185 | ||
| @@ -189,8 +196,8 @@ | |||
| 189 | query-replace-from-history-variable to handle the case of an empty | 196 | query-replace-from-history-variable to handle the case of an empty |
| 190 | string entered to accept the suggested default. | 197 | string entered to accept the suggested default. |
| 191 | 198 | ||
| 192 | * net/tramp.el (tramp-file-name-for-operation): Use | 199 | * net/tramp.el (tramp-file-name-for-operation): |
| 193 | dired-call-process instead of dired-call-process-command. | 200 | Use dired-call-process instead of dired-call-process-command. |
| 194 | 201 | ||
| 195 | 2005-02-19 Jay Belanger <belanger@truman.edu> | 202 | 2005-02-19 Jay Belanger <belanger@truman.edu> |
| 196 | 203 | ||
| @@ -211,22 +218,22 @@ | |||
| 211 | 218 | ||
| 212 | 2005-02-19 Michael Kifer <kifer@cs.stonybrook.edu> | 219 | 2005-02-19 Michael Kifer <kifer@cs.stonybrook.edu> |
| 213 | 220 | ||
| 214 | * ediff.el (ediff-set-diff-overlays-in-one-buffer, | 221 | * ediff.el (ediff-set-diff-overlays-in-one-buffer) |
| 215 | ediff-set-fine-overlays-in-one-buffer,ediff-goto-word) make sure | 222 | (ediff-set-fine-overlays-in-one-buffer,ediff-goto-word): Make sure |
| 216 | we use the syntax table of the correct buffer. | 223 | we use the syntax table of the correct buffer. |
| 217 | (ediff-same-file-contents,ediff-same-contents): enhancements thanks to | 224 | (ediff-same-file-contents,ediff-same-contents): Enhancements thanks to |
| 218 | Felix Gatzemeier. | 225 | Felix Gatzemeier. |
| 219 | 226 | ||
| 220 | * ediff-init.el (ediff-hide-face): checks for definedness of functions. | 227 | * ediff-init.el (ediff-hide-face): Check for definedness of functions. |
| 221 | (ediff-file-remote-p): make synonymous with file-remote-p. | 228 | (ediff-file-remote-p): Make synonymous with file-remote-p. |
| 222 | In all deffaces ediff-*-face-*, use min-colors. | 229 | In all deffaces ediff-*-face-*, use min-colors. |
| 223 | 230 | ||
| 224 | * ediff-mult.el (ediff-meta-mark-equal-files): make use of | 231 | * ediff-mult.el (ediff-meta-mark-equal-files): Make use of |
| 225 | ediff-recurse-to-subdirectories. | 232 | ediff-recurse-to-subdirectories. |
| 226 | (ediff-mark-if-equal): check that the arguments are strings, use | 233 | (ediff-mark-if-equal): Check that the arguments are strings, use |
| 227 | ediff-same-contents (after to Felix Gatzemeier). | 234 | ediff-same-contents (after to Felix Gatzemeier). |
| 228 | 235 | ||
| 229 | * ediff.el (ediff-merge-on-startup): don't set buffer-modified-p to | 236 | * ediff.el (ediff-merge-on-startup): Don't set buffer-modified-p to |
| 230 | nil. | 237 | nil. |
| 231 | 238 | ||
| 232 | 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca> | 239 | 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca> |
| @@ -296,7 +303,7 @@ | |||
| 296 | 2005-02-15 Jay Belanger <belanger@truman.edu> | 303 | 2005-02-15 Jay Belanger <belanger@truman.edu> |
| 297 | 304 | ||
| 298 | * calc/calc-alg.el: Add simplification rules for calcFunc-sec, | 305 | * calc/calc-alg.el: Add simplification rules for calcFunc-sec, |
| 299 | calcFunc-csc, calcFunc-cot, calcFunc-sech, calcFunc-csch and | 306 | calcFunc-csc, calcFunc-cot, calcFunc-sech, calcFunc-csch, and |
| 300 | calcFunc-coth. | 307 | calcFunc-coth. |
| 301 | (math-simplify-sqrt): Add simplifications. | 308 | (math-simplify-sqrt): Add simplifications. |
| 302 | 309 | ||
diff --git a/lisp/emacs-lisp/debug.el b/lisp/emacs-lisp/debug.el index a84a7aca52c..58616ff3076 100644 --- a/lisp/emacs-lisp/debug.el +++ b/lisp/emacs-lisp/debug.el | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | ;;; debug.el --- debuggers and related commands for Emacs | 1 | ;;; debug.el --- debuggers and related commands for Emacs |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1985, 1986, 1994, 2001, 2003 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 1985, 1986, 1994, 2001, 2003, 2005 |
| 4 | ;; Free Software Foundation, Inc. | ||
| 4 | 5 | ||
| 5 | ;; Maintainer: FSF | 6 | ;; Maintainer: FSF |
| 6 | ;; Keywords: lisp, tools, maint | 7 | ;; Keywords: lisp, tools, maint |
| @@ -188,8 +189,7 @@ first will be printed into the backtrace buffer." | |||
| 188 | (backtrace-debug 3 t)) | 189 | (backtrace-debug 3 t)) |
| 189 | (debugger-reenable) | 190 | (debugger-reenable) |
| 190 | (message "") | 191 | (message "") |
| 191 | (let ((inhibit-trace t) | 192 | (let ((standard-output nil) |
| 192 | (standard-output nil) | ||
| 193 | (buffer-read-only t)) | 193 | (buffer-read-only t)) |
| 194 | (message "") | 194 | (message "") |
| 195 | ;; Make sure we unbind buffer-read-only in the right buffer. | 195 | ;; Make sure we unbind buffer-read-only in the right buffer. |
| @@ -197,15 +197,16 @@ first will be printed into the backtrace buffer." | |||
| 197 | (recursive-edit))))) | 197 | (recursive-edit))))) |
| 198 | ;; Kill or at least neuter the backtrace buffer, so that users | 198 | ;; Kill or at least neuter the backtrace buffer, so that users |
| 199 | ;; don't try to execute debugger commands in an invalid context. | 199 | ;; don't try to execute debugger commands in an invalid context. |
| 200 | (if (get-buffer-window debugger-buffer 'visible) | 200 | (if (get-buffer-window debugger-buffer 0) |
| 201 | ;; Still visible despite the save-window-excursion? Maybe it | 201 | ;; Still visible despite the save-window-excursion? Maybe it |
| 202 | ;; it's in a pop-up frame. It would be annoying to delete and | 202 | ;; it's in a pop-up frame. It would be annoying to delete and |
| 203 | ;; recreate it every time the debugger stops, so instead we'll | 203 | ;; recreate it every time the debugger stops, so instead we'll |
| 204 | ;; erase it but leave it visible. | 204 | ;; erase it and hide it but keep it alive. |
| 205 | (save-excursion | 205 | (with-current-buffer debugger-buffer |
| 206 | (set-buffer debugger-buffer) | ||
| 207 | (erase-buffer) | 206 | (erase-buffer) |
| 208 | (fundamental-mode)) | 207 | (fundamental-mode) |
| 208 | (with-selected-window (get-buffer-window debugger-buffer 0) | ||
| 209 | (bury-buffer))) | ||
| 209 | (kill-buffer debugger-buffer)) | 210 | (kill-buffer debugger-buffer)) |
| 210 | (set-match-data debugger-outer-match-data))) | 211 | (set-match-data debugger-outer-match-data))) |
| 211 | ;; Put into effect the modified values of these variables | 212 | ;; Put into effect the modified values of these variables |
| @@ -543,29 +544,26 @@ Applies to the frame whose line point is on in the backtrace." | |||
| 543 | 'read-expression-history))) | 544 | 'read-expression-history))) |
| 544 | (debugger-env-macro (eval-expression exp))) | 545 | (debugger-env-macro (eval-expression exp))) |
| 545 | 546 | ||
| 546 | (defvar debugger-mode-map nil) | 547 | (defvar debugger-mode-map |
| 547 | (unless debugger-mode-map | 548 | (let ((map (make-keymap))) |
| 548 | (let ((loop ? )) | 549 | (set-keymap-parent map button-buffer-map) |
| 549 | (setq debugger-mode-map (make-keymap)) | 550 | (suppress-keymap map) |
| 550 | (set-keymap-parent debugger-mode-map button-buffer-map) | 551 | (define-key map "-" 'negative-argument) |
| 551 | (suppress-keymap debugger-mode-map) | 552 | (define-key map "b" 'debugger-frame) |
| 552 | (define-key debugger-mode-map "-" 'negative-argument) | 553 | (define-key map "c" 'debugger-continue) |
| 553 | (define-key debugger-mode-map "b" 'debugger-frame) | 554 | (define-key map "j" 'debugger-jump) |
| 554 | (define-key debugger-mode-map "c" 'debugger-continue) | 555 | (define-key map "r" 'debugger-return-value) |
| 555 | (define-key debugger-mode-map "j" 'debugger-jump) | 556 | (define-key map "u" 'debugger-frame-clear) |
| 556 | (define-key debugger-mode-map "r" 'debugger-return-value) | 557 | (define-key map "d" 'debugger-step-through) |
| 557 | (define-key debugger-mode-map "u" 'debugger-frame-clear) | 558 | (define-key map "l" 'debugger-list-functions) |
| 558 | (define-key debugger-mode-map "d" 'debugger-step-through) | 559 | (define-key map "h" 'describe-mode) |
| 559 | (define-key debugger-mode-map "l" 'debugger-list-functions) | 560 | (define-key map "q" 'top-level) |
| 560 | (define-key debugger-mode-map "h" 'describe-mode) | 561 | (define-key map "e" 'debugger-eval-expression) |
| 561 | (define-key debugger-mode-map "q" 'top-level) | 562 | (define-key map " " 'next-line) |
| 562 | (define-key debugger-mode-map "e" 'debugger-eval-expression) | 563 | (define-key map "R" 'debugger-record-expression) |
| 563 | (define-key debugger-mode-map " " 'next-line) | 564 | (define-key map "\C-m" 'help-follow) |
| 564 | (define-key debugger-mode-map "R" 'debugger-record-expression) | 565 | (define-key map [mouse-2] 'push-button) |
| 565 | (define-key debugger-mode-map "\C-m" 'help-follow) | 566 | map)) |
| 566 | (define-key debugger-mode-map [mouse-2] 'push-button) | ||
| 567 | )) | ||
| 568 | |||
| 569 | 567 | ||
| 570 | (defcustom debugger-record-buffer "*Debugger-record*" | 568 | (defcustom debugger-record-buffer "*Debugger-record*" |
| 571 | "*Buffer name for expression values, for \\[debugger-record-expression]." | 569 | "*Buffer name for expression values, for \\[debugger-record-expression]." |
| @@ -616,7 +614,7 @@ Complete list of commands: | |||
| 616 | (setq truncate-lines t) | 614 | (setq truncate-lines t) |
| 617 | (set-syntax-table emacs-lisp-mode-syntax-table) | 615 | (set-syntax-table emacs-lisp-mode-syntax-table) |
| 618 | (use-local-map debugger-mode-map) | 616 | (use-local-map debugger-mode-map) |
| 619 | (run-hooks 'debugger-mode-hook)) | 617 | (run-mode-hooks 'debugger-mode-hook)) |
| 620 | 618 | ||
| 621 | ;;;###autoload | 619 | ;;;###autoload |
| 622 | (defun debug-on-entry (function) | 620 | (defun debug-on-entry (function) |
| @@ -716,22 +714,23 @@ If argument is nil or an empty string, cancel for all functions." | |||
| 716 | (defun debugger-list-functions () | 714 | (defun debugger-list-functions () |
| 717 | "Display a list of all the functions now set to debug on entry." | 715 | "Display a list of all the functions now set to debug on entry." |
| 718 | (interactive) | 716 | (interactive) |
| 719 | (with-output-to-temp-buffer "*Help*" | 717 | (require 'help-mode) |
| 720 | (if (null debug-function-list) | 718 | (help-setup-xref '(debugger-list-functions) (interactive-p)) |
| 721 | (princ "No debug-on-entry functions now\n") | 719 | (with-output-to-temp-buffer (help-buffer) |
| 722 | (princ "Functions set to debug on entry:\n\n") | 720 | (with-current-buffer standard-output |
| 723 | (let ((list debug-function-list)) | 721 | (if (null debug-function-list) |
| 724 | (while list | 722 | (princ "No debug-on-entry functions now\n") |
| 725 | (prin1 (car list)) | 723 | (princ "Functions set to debug on entry:\n\n") |
| 726 | (terpri) | 724 | (dolist (fun debug-function-list) |
| 727 | (setq list (cdr list)))) | 725 | (make-text-button (point) (progn (prin1 fun) (point)) |
| 728 | (princ "Note: if you have redefined a function, then it may no longer\n") | 726 | 'type 'help-function |
| 729 | (princ "be set to debug on entry, even if it is in the list.")) | 727 | 'help-args (list fun)) |
| 730 | (save-excursion | 728 | (terpri)) |
| 731 | (set-buffer standard-output) | 729 | (terpri) |
| 732 | (help-mode)))) | 730 | (princ "Note: if you have redefined a function, then it may no longer\n") |
| 731 | (princ "be set to debug on entry, even if it is in the list."))))) | ||
| 733 | 732 | ||
| 734 | (provide 'debug) | 733 | (provide 'debug) |
| 735 | 734 | ||
| 736 | ;;; arch-tag: b6ec7047-f801-4103-9c63-d69322db9d3b | 735 | ;; arch-tag: b6ec7047-f801-4103-9c63-d69322db9d3b |
| 737 | ;;; debug.el ends here | 736 | ;;; debug.el ends here |