On Mon, Nov 06, 2006 at 10:55:34AM +0100, Zdenek Sekera wrote: > > I had many cases of "disappearing echo" in the past, > > I was mostly able to solve with some or other tricks. This > > one is difficult, I cannot solve it whatever I try (echo in > > the rhs of 'nmap *'): > > > > 1. :nnoremap * :exe "norm! *" <bar> echomsg "bla bla"<cr> > > 2. :help help > > 3. /for<cr> > > 4. press * * * * * * * > > Message "bla bla" mostly does not appear (very rarely, > > it does; :mess shows that mapping was triggered) Why ? > > I don't know why but I have that problem since a long > time (from vim 5 already!). Yes, sometimes tricks (like > introducing dummy 'echo ""' before the real echo help, > but sometimes they don't. I think Bram knows about it.
Searching for "echo" in todo.txt, I did not find any mention of this. Maybe this item? 9 Check handling of overwriting of messages and delays: Very wrong: errors while redrawing cause endless loop. When switching to another file and screen scrolls because of the long message and return must be typed, don't scroll the screen back before redrawing. It seems to me that the message is wiped out when the screen scrolls. If the cursor move on the same screen, or if the screen redraws, then I see the "bla bla". Aha: this seems to help: :nnoremap * :execute "norm! *" <Bar> redraw <Bar> echomsg "bla bla"<CR> HTH --Benji Fisher