From: Yuri Khan <yuri.v.khan@gmail.com>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: "help-gnu-emacs@gnu.org" <help-gnu-emacs@gnu.org>
Subject: Re: Gud keybindings
Date: Tue, 19 Aug 2014 12:03:36 +0700 [thread overview]
Message-ID: <CAP_d_8UFN30mBuqy4aU=yef7m0arniGsqs9KAgX4ar6q-Lh9dQ@mail.gmail.com> (raw)
In-Reply-To: <jwvtx59gslm.fsf-monnier+gmane.emacs.help@gnu.org>
On Tue, Aug 19, 2014 at 8:49 AM, Stefan Monnier
<monnier@iro.umontreal.ca> wrote:
>> I was unable to solve all issues using only documented APIs and had to
>> advise a couple of functions.
>
> We generally consider this as a bug. So please M-x report-emacs-bug,
> explaining the functionality/hook that you failed to find.
18294.
> Note that the issue you're trying to solve with Gud key-bindings is an
> issue that we also want to solve in Emacs (especially since in
> Emacs-24.4, C-x SPC is not bound to gud-break any more). It's just not
> easy to solve in general:
> - if you use M-x gud-gdb instead of M-x gdb, then gdb-source-file-list
> doesn't exist).
This turns out unimportant, for two reasons:
* Advising “gdb-init-buffer” is sufficient to turn on the mode in both
existing source buffers and source buffers created during debugging; I
don’t even have to hook “find-file-hook”.
* Using “gud-gdb”, “gdb-init-buffer” is never called at all, and
clicking in the fringe does not set breakpoints. This is
understandable because gud-gdb supports concurrent debugging sessions
and it’s kind of hard to decide which debugger instance the breakpoint
goes to. In the same way, pressing a debugger control key while in a
source buffer should effect an action in one of the debuggers, but
which one?
Due to the latter issue being hard, I am inclined to leave gud-gdb
unsupported by now.
> - I pretty much always have a Gud buffer open (when I'm done debugging,
> I generally don't kill the buffer, because I know I'll get back to it
> soon for something else).
Killing the Gud interaction buffer is not necessary. “gdb-reset” runs
when the “quit” command is executed in gdb. (Not when the program
under debugger finishes: Gud assumes you’re still debugging.)
With the default keybindings, it is possible to leave a debugging
session open, edit some files, recompile, re-run and continue
debugging. In my model, though, an active debugging session prevents
source files from being edited (because it hijacks single-letter
keystrokes to control the debugger). Anyway, one could manually toggle
the mode off if needed.
next prev parent reply other threads:[~2014-08-19 5:03 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-13 5:30 Gud keybindings Yuri Khan
2014-08-18 9:27 ` Yuri Khan
2014-08-19 1:49 ` Stefan Monnier
2014-08-19 5:03 ` Yuri Khan [this message]
[not found] ` <mailman.7183.1408354083.1147.help-gnu-emacs@gnu.org>
2014-08-18 22:56 ` Emanuel Berg
[not found] <mailman.7049.1407907858.1147.help-gnu-emacs@gnu.org>
2014-08-13 19:14 ` Emanuel Berg
2014-08-14 3:48 ` Yuri Khan
[not found] ` <mailman.7092.1407988122.1147.help-gnu-emacs@gnu.org>
2014-08-14 21:13 ` Emanuel Berg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAP_d_8UFN30mBuqy4aU=yef7m0arniGsqs9KAgX4ar6q-Lh9dQ@mail.gmail.com' \
--to=yuri.v.khan@gmail.com \
--cc=help-gnu-emacs@gnu.org \
--cc=monnier@iro.umontreal.ca \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.