Kevin Ballard [off-list ref] 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.
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
On Oct 13, 2010, at 3:40 PM, Andreas Schwab wrote:
Kevin Ballard [off-list ref] writes:
quoted
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