Hi Bram,

2020/2/8 Sat 7:03:24 UTC+9 Bram Moolenaar wrote:
>
>
> Ken Takata wrote: 
>
> > `:help :!` says: 
> > 
> >             Vim redraws the screen after the command is finished, 
> >             because it may have printed any text.  This requires a 
> >             hit-enter prompt, so that you can read any messages. 
> >             To avoid this use: > 
> >                 :silent !{cmd} 
> > <            The screen is not redrawn then, thus you have to use 
> >             CTRL-L or ":redraw!" if the command did display 
> >             something. 
> > 
> > However, I think this is not accurate. 
> > 
> > If 't_ti' and 't_te' are set to empty, then `:silent !{cmd}` keeps 
> showing 
> > the 
> > output of the command. User needs to use CTRL-L to show the Vim screen 
> > again. 
> > (This behavior matches the help.) 
> > 
> > On the other hand, if 't_ti' and 't_te' are set to default, Vim uses 
> > alternate 
> > screen, then `:silent !{cmd}` shows a blank screen after the execution 
> of 
> > the 
> > command (even the command didn't display anything). User still needs to 
> use 
> > CTRL-L to show the Vim screen again. 
> > This behavior differs from the help, and I don't think it is useful at 
> all. 
> > How about restoring the Vim screen automatically when alternate screen 
> is 
> > enabled? E.g.: 
> > 
> > --- a/src/ex_cmds.c 
> > +++ b/src/ex_cmds.c 
> > @@ -1469,6 +1469,8 @@ do_shell( 
> >          wait_return(term_console ? -1 : msg_silent == 0); // see below 
> >  # else 
> >          wait_return(msg_silent == 0); 
> > +        if (swapping_screen() && msg_silent > 0) 
> > +            redraw_later_clear(); 
> >  # endif 
> >          no_wait_return = save_nwr; 
> >          } 
> > 
> > 
> > The help should be also updated. 
>
> The problem appears to be that t_te includes ESC [J, which clears the 
> screen.  When I remove the ":silent !ls" command is OK. 
>
> I wonder why it's in the default t_te entry.  Can we just remove it? 
>

In my environment, t_te is "^[[?1049l^[[23;0;0t".
"^[[J" is not included.

Regards,
Ken Takata

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/2d18e58e-645a-47b1-8162-a034337fd59f%40googlegroups.com.

Raspunde prin e-mail lui