Loading ...
Sorry, an error occurred while loading the content.

100982Re: echo shown nothing before a dialog

Expand Messages
  • Vincent Birebent
    Feb 2, 2009
      Hi Ben,

      No I did not compile myself. But on a second thought I think this is
      may be not even a bug:

      :help :echo-redraw >>

      "A later redraw may make the message disappear again.
      To avoid that a command from before the ":echo" causes
      a redraw afterwards (redraws are often postponed until
      you type something), force a redraw with the |:redraw|
      command. "

      And indeed: likewise "\n" :redraw does the trick! (reminds me somehow
      the need of flush in C... ;)

      Could have been also that lazyredraw option was set... but it
      wasn't... ;)

      Cheers,

      Vincent.

      Le Feb 2, 2009 à 2:49 PM, Ben Schmidt a écrit :

      >
      >> With gvim I get only the first "Because..." or "Not getting.." and
      >> afterward only blank lines inserted.
      >
      > I wonder if this is related to an earlier bug with input(). I don't
      > really think so, but maybe at least partly it is.
      >
      > Do you compile Vim yourself? Perhaps you could see if the appended
      > patch
      > fixes it, or even just changes it?
      >
      > Ben.
      >
      >
      >
      > diff -r d0671563949f src/ex_getln.c
      > --- a/src/ex_getln.c Thu Aug 14 11:28:45 2008 +1000
      > +++ b/src/ex_getln.c Tue Sep 02 21:55:23 2008 +1000
      > @@ -1951,8 +1951,11 @@
      > # endif
      > s = getcmdline(firstc, 1L, 0);
      > restore_cmdline(&save_ccline);
      > - /* Restore msg_col, the prompt from input() may have changed
      > it. */
      > - msg_col = msg_col_save;
      > + /* Restore msg_col, the prompt from input() may have changed it.
      > + But only do it if called recursively and the commandline is
      > + therefore being restored to an old one; if not, the input()
      > prompt
      > + stays on the screen, so we need its modified msg_col left
      > intact. */
      > + if (ccline.cmdbuff != NULL) msg_col = msg_col_save;
      >
      > return s;
      > }
      >
      >
      >
      >
      > >



      --~--~---------~--~----~------------~-------~--~----~
      You received this message from the "vim_use" maillist.
      For more information, visit http://www.vim.org/maillist.php
      -~----------~----~----~----~------~----~------~--~---
    • Show all 6 messages in this topic