generate_tags is set to 1, although I'm not entirely sure why that
function call is guarded by that check, given that SetTagDisplay doesn't
do any tag generation! If I remove that au, the timeout does in fact
stop happening. If I set generate_tags to 0, the timeout still happens.

If I remove the ctags au for CursorHold and just add the au ":let
foo=1", then the timeout still happens. Basically when the updatetime
happens, it will time out any pending keystrokes. I am sure there is a
reason for this, but it is annoying as anything :)

That mapping for <C-W> you suggested (while genius) isn't really a valid
solution, and anyway the timeout happens for all multi-character
mappings like q, g, etc.

Thanks!

Max

> -----Original Message-----
> From: A.J.Mechelynck [mailto:[EMAIL PROTECTED]
> Sent: Friday, August 25, 2006 1:25 PM
> To: Max Dyckhoff
> Cc: vim mailing list
> Subject: Re: (t)timeout
> 
> Max Dyckhoff wrote:
> > I'm sorry, perhaps I wasn't being clear enough. I don't want a
timeout
> > to ever occur for a mapping. timeout and ttimeout are both set to
"no"
> > (or whatever the correct syntax for describing such options is).
> >
> > Here are two use cases. Again, I apologise for the clumsy syntax.
> >
> > 1)
> > * Move cursor
> > * Type ^w
> > * Wait updatetime from cursor movement
> > * Observe mapping timeout
> >
> > 2)
> > * Move cursor
> > * Wait updatetime
> > * Type ^w
> > * Observe no mapping timeout
> >
> > If I set updatetime=1 then the timeout never occurs, because the
second
> > use case is followed, but I want updatetime to be around 1000.
:verbose
> > au CursorHold shows that the only CursorHold au is one set from
> > ctags.vim:
> >
> > autocmd CursorHold *
> > \   if generate_tags != 0
> > \ |     call s:SetTagDisplay()
> > \ | endif
> >
> > Is this au timing out my mapping? Can I make it stop doing so
without
> > removing the au or altering the updatetime?
> >
> > Thanks!
> >
> > Max
> 
> Aha! Could be. What is generate_tags set to?
> 
> In any case, we might try to work around it; maybe the following would
> work (but you would have to hit the Enter key after the ^W
subcommand):
> 
>       :map    <C-W>   :wincmd<Space>
> 
> 
> 
> Best regards,
> Tony.

Reply via email to