GNU bug report logs - #79288
[PATCH] Add edebug-bounce-to-previous-value

Previous Next

Package: emacs;

Reported by: Jens Schmidt <jschmidt4gnu <at> vodafonemail.de>

Date: Thu, 21 Aug 2025 19:42:01 UTC

Severity: normal

Tags: patch

Done: Eli Zaretskii <eliz <at> gnu.org>

Full log


View this message in rfc822 format

From: Jens Schmidt <jschmidt4gnu <at> vodafonemail.de>
To: Eli Zaretskii <eliz <at> gnu.org>, Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 79288 <at> debbugs.gnu.org
Subject: bug#79288: [PATCH] Add edebug-bounce-to-previous-value
Date: Fri, 22 Aug 2025 21:24:30 +0200
[Message part 1 (text/plain, inline)]
On 2025-08-22  08:39, Eli Zaretskii wrote:

> Thanks, but I think this command should have a key binding.

My personal favorite would be "P", but that is taken already.  From
there I'd use either "j" (for jump), "M-p" (because it has a "p"), or
"."  (because it is a point).  If you have any better ideas, please let
me know, I'm completely open here.  I attached the list of used and free
current edebug bindings, sorted by keys.


On 2025-08-22  09:51, Stefan Monnier wrote:

> For my own use, I get the impression that I'd find it more useful to ask
> the user to type in the form whose value we want to "bounce to".

When we extend the notion of "previous value" to "what has been
single-stepped through OR what has been evaluated with `e' or `C-x C-e'"
we can have that as well.  So you press "C-x C-e", get some buffer
position back, and then press "j" (or whatever) to bounce to that
value.

Only the user interface is potentially slightly more confusing, then.
I attached a revised patch implementing that.


Please let me know your choice of key and patch (v1 from
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=79288#5 or v2 from this
message), and I will continue on that route.

Thanks!


------------------------- edebug key bindings -------------------------
   A                                          "a"  #'abort-recursive-edit
  "B"  #'edebug-next-breakpoint               "b"  #'edebug-set-breakpoint
  "C"  #'edebug-Continue-fast-mode            "c"  #'edebug-continue-mode
  "D"  #'edebug-toggle-disable-breakpoint     "d"  #'edebug-pop-to-backtrace
  "E"  #'edebug-visit-eval-list               "e"  #'edebug-eval-expression
   F                                          "f"  #'edebug-forward-sexp
  "G"  #'edebug-Go-nonstop-mode               "g"  #'edebug-go-mode
   H                                          "h"  #'edebug-goto-here
  "I"  #'edebug-instrument-callee             "i"  #'edebug-step-in
   J                                           j
   K                                           k
   L                                           l
   M                                           m
   N                                          "n"  #'edebug-next-mode
   O                                          "o"  #'edebug-step-out
  "P"  #'edebug-view-outside                  "p"  #'edebug-bounce-point
  "Q"  #'edebug-top-level-nonstop             "q"  #'top-level
   R                                          "r"  #'edebug-previous-result
  "S"  #'edebug-stop                           s
  "T"  #'edebug-Trace-fast-mode               "t"  #'edebug-trace-mode
  "U"  #'edebug-unset-breakpoints             "u"  #'edebug-unset-breakpoint
   V                                          "v"  #'edebug-view-outside
  "W"  #'edebug-toggle-save-windows           "w"  #'edebug-where
  "X"  #'edebug-set-global-break-condition    "x"  #'edebug-set-conditional-breakpoint
   Y                                           y
   Z                                           z

  "SPC"     #'edebug-step-mode
  "-"       #'negative-argument
  "="       #'edebug-temp-display-freq-count
  "?"       #'edebug-help

  "C-c C-c" #'edebug-go-mode
  "C-c C-d" #'edebug-unset-breakpoint
  "C-c C-l" #'edebug-where)
  "C-c C-n" #'edebug-next-mode
  "C-c C-s" #'edebug-step-mode
  "C-c C-t" (lambda () (interactive) (edebug-set-breakpoint t))
  "C-x C-e" #'edebug-eval-last-sexp
  "C-x SPC" #'edebug-set-breakpoint
------------------------- edebug key bindings -------------------------

[v2-0001-Add-edebug-bounce-to-previous-value.patch (text/x-patch, attachment)]

This bug report was last modified 21 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.