On Tue, Sep 03, 2013 at 03:09:11PM -0700, Ernie Rael wrote:
> 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 */
> }
Something like this would also address the problem where doing something
like ":call taglist('a')" with a large tags file (e.g., all of
/usr/include) takes multiple minutes to return. This happens because
Vim currently uses select() to monitor for the <C-c> keypress while the
tag processing is happening and those calls to select() dominate the
run time.
Cheers,
--
James
GPG Key: 4096R/331BA3DB 2011-12-05 James McCoy <[email protected]>
signature.asc
Description: Digital signature
