Yakov Lerner wrote:

> On 10/11/07, Bram Moolenaar <[EMAIL PROTECTED]> wrote:
> >
> >
> > Yakov Lerner wrote:
> >
> > > :help :! says:
> > >                     :silent !{cmd}
> > >     The screen is not redrawn then, thus you have to use
> > >     CTRL-L or ":redraw!" if the command did display something.
> > >
> > > The last part ("if the command did display something") is not true.
> > > In console vim, screen is always grabled after ':silent !CMD"
> > > even if CMD did not print anything. (try ':silent !true' after ':help
> > > help').
> > > The correct wording would be:
> > >
> > >                     :silent !{cmd}
> > >     The screen is not redrawn then, thus you have to use
> > >     CTRL-L or ":redraw!" even if the command did not display anything.
> >
> > The docs are correct, ":silent !true" doesn't mess up the display for
> > me.
> >
> > Check your shell init scripts for something that produces output.
> 
> 
> To make sure that shell init script are not even invoked, I set
>       :set shell=/bin/true
> Still, screen is cleared after :silent !/bin/true.
> In gdb, I caught the place and the string that clears the screen.
> The string is "\033[?1049h\033[?1h\033=" (length=15).
> It is printed after fork+execve("/bin/true"), at this place:
> 
> mch_write ( s=0x820b040 "\033[?1049h\033[?1h\033="..., len=15) at
> os_unix.c:307
> 307         write(1, (char *)s, len);
> (gdb) n
> 
> [Yakov] the vim screen is cleared at after the write() above
> 
> 308         if (p_wd)           /* Unix is too fast, slow down a bit more */
> (gdb) where
> #0  mch_write (
>     s=0x820b040 "\033[?1049h\033[?1h\033="..., len=15) at os_unix.c:308
> #1  0x081a2b74 in ui_write (
>     s=0x820b040 "\033[?1049h\033[?1h\033="..., len=15) at ui.c:51
> #2  0x0819ed96 in out_flush () at term.c:2545
> #3  0x0819fa6a in starttermcap () at term.c:3233
> #4  0x08090393 in do_shell (cmd=0x82155d8 "/bin/true", flags=0) at
> ex_cmds.c:1471

Apparently your termcap settings are causing this.  Try this:
        :set t_ti= t_ks=

But then something else might break...

It might have something to do with the colorscheme you are using, esp.
if you are using a non-default background color.

-- 
Q: What is the difference betwee open-source and commercial software?
A: If you have a problem with commercial software you can call a phone
   number and they will tell you it might be solved in a future version.
   For open-source software there isn't a phone number to call, but you
   get the solution within a day.

 /// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\        download, build and distribute -- http://www.A-A-P.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

--~--~---------~--~----~------------~-------~--~----~
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
-~----------~----~----~----~------~----~------~--~---

Raspunde prin e-mail lui