Re: Manual hunk edit mode + emacs + ^G == garbage
- From
Kevin Ballard <kevin@sb.org>
- Date
- Oct 13, 2010, 22:49 UTC
- Message-ID
- <54F2B62F-E768-49D8-96CB-780DA3ECBF0E@sb.org>
- In-Reply-To
- <m27hhld8d9.fsf@igel.home>
On Oct 13, 2010, at 3:40 PM, Andreas Schwab wrote:
Show 8 quoted lines
> Kevin Ballard <kevin@sb.org> writes: > >> I've been investigating this on the emacs side as well. At the moment, my suspicion is that ^G causes emacs to trigger (keyboard-quit), but at the same time the surrounding environment (e.g. git) is sending a SIGINT to emacs, which normally acts like ^G but in this case may be triggering the emergency exit mode of emacs. Is there some reason that the interactive add would be sending SIGINT to emacs when I type ^G? > > If you are using text mode (-nw) then Emacs redefines the INTR character > of the terminal to ^G. On the other hand it should also put itself into > its own process group, so the parent should not receive the terminal > signals. And this is what happens here when I try it.
I am indeed using text mode. And when I test, invoking `emacs` directly gives it its on process group, but invoking emacs from `git add -p`+e doesn't.
kevin@Brandybuck:~> ps -jp 34581 34540 USER PID PPID PGID SESS JOBC STAT TT TIME COMMAND kevin 34540 34539 34538 7d29d68 1 S+ s001 0:00.08 /usr/bin/perl /usr/local/libexec/git-core/git-add--interactive -- kevin 34581 34540 34538 7d29d68 1 S+ s001 0:00.61 /usr/bin/emacs /Users/kevin/Dev/Work/Standard9/inkling-ipad/.git/
Any idea why this would be?
-Kevin Ballard