The discussion "Asynchronous functions (settimeout, setinterval, and
cancelinterval)" reminded me of some past discussion on interrupting a
looping python. I don't remember the details; my recollection is that
vim checks the input character (rather than catching the signal) and if
it is the interrupt character then the running vim operation is stopped.
If there is a looping python, then vim's main loop can not process the
input character queue and there is no way to notify python to stop.
There may also be a vim versus gvim issue.
It seems that if the SIGINT is always caught/handled and only used to
set a flag such as: interrupt_pending = TRUE, then vim's main loop could
do something like
if(interrupt_pending == TRUE) {
interrupt_pending = FALSE;
/* do vim's process interrupt stuff */
}
which should preserve existing behavior by doing the interrupt handling
in the main loop.
Then for handling the python situation, vim's interrupt processing would
have to invoke something in the python interface that in turn invokes
PyErr_SetInterrupt() if python is running.
I'm not familiar with any of this code (vim or python interface) but I
wanted to put this out so I could drop it from my mental list.
-ernie
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.