On 26 Apr 2007, at 07:36, Nick Roberts wrote on emacs-devel:
Yes, I've seen this too. I couold make the "stop" button invisible
for pdb but
the underlying is with comint-stop-subjob which is on the menubar
of the GUD
buffer and C-c C-z.
I see you've done that.
We still need a way to interrupt a running python program...
All comint-stop-subjob does is send SIGINT to the process. When a
program runs
under GDB, SIGINT is intercepted by GDB and not normally passed on
to the
program, but pdb doesn't seem to do this. If you run a pythons
script under pdb
from the command line and type ^C then you should get the same
result that you
see in Emacs.
There is a project called "pydb" which seems to improve upon PDB:
http://bashdb.sourceforge.net/pydb/
They claim to have "gdb-style signal handling".
It comes with an Emacs mode:
http://wiki.showmedo.com/index.php/PythonBernsteinPydbIntro
Unfortunately, comint-stop-subjob doesn't do much - pydb just prints
"program received SIGINT", but doesn't interrupt the program.
It seems like it is set up to handle the signal:
(Pydb) handle SIGINT
Signal Stop Print Stack Pass Description
SIGINT Yes Yes No No Interrupt
... but it doesn't do this. I don't understand why. I'm cc'ing the
appropriate mailing list - maybe they can shed some light on this.
_______________________________________________
emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug