Matsushita Shougo wrote:

> Hi, I found complete_check() doesn't check called from script behavior.
> 
> In complete_check() source code,
> 
> >int     saved = RedrawingDisabled;
> 
> >RedrawingDisabled = 0;
> >ins_compl_check_keys(0);
> >rettv->vval.v_number = compl_interrupted;
> >RedrawingDisabled = saved;
> 
> complete_check() doesn't clear compl_interrupted when called from
> other script(not from completefunc or omnifunc).
> So I fixed this below patch.

What happens is that complete_check() checks if a key was typed, and if
so completion is interrupted.  That works fine.  Skipping this when a
script is busy doesn't seem like the right thing to do.

If some script preloads completions and a key is typed it's correct that
fetching completions stops.  Apparently the user is impatient and wants
to do something else.

-- 
It is hard to understand how a cemetery raised its burial
cost and blamed it on the cost of living.

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
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

Raspunde prin e-mail lui