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.
