如何阻止 VI 重叠并隐藏命令行输出的最后一页?

发布于 2024-11-08 07:16:08 字数 328 浏览 5 评论 0原文

目前,当我在屏幕内的终端窗口中启动 vi 时,vi 程序会占据全屏并覆盖那里的任何输出历史记录,然后在退出时保留在那里。因此,当稍后向后滚动终端输出时,vi 窗口下的输出被屏蔽。

我目前正在 bashrc 中使用以下别名来解决这个问题...

alias vi='for i in $( seq 1 $LINES );做回声;完毕 ; vi'

到目前为止,这工作得很好,但它让我觉得有点笨拙,我担心我会遇到不可预见的情况,在某些时候它会让我失败。我想知道是否有 vi 或 screen 的命令选项或其他一些更简单、更有效的方法来实现相同的目的。

谢谢。

Currently, when I start vi in a terminal window within screen, the vi program takes up the full screen and covers up any of the output history that was there, and then remains there upon exiting. Thus, when scrolling back through my terminal output at a later time, the output under the vi window is masked.

I'm currently working around this with the following alias in my bashrc...

alias vi='for i in $( seq 1 $LINES ); do echo ; done ; vi'

This has worked just fine so far, but it strikes me as kind of kludgy and I fear I'm going to hit an unforeseen situation where it fails me at some point. I was wondering if there's a command option for either vi or screen or some other simpler, more efficient way of achieving the same.

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

春夜浅 2024-11-15 07:16:08

如果您使用 GNU Screen,.screenrc 中的以下行应该可以解决问题:

altscreen on

这将确保退出 Vi 后恢复旧内容,并且不会再扰乱您的回滚历史记录。

If you use GNU Screen, the following line in your .screenrc should solve the problem:

altscreen on

This will ensure that the old contents is restored after you exit Vi, and it won't clutter your scrollback history anymore.

懒的傷心 2024-11-15 07:16:08

尝试将 set t_ti= t_te= 添加到您的 .vimrc 文件中。

要修复也出现此行为的 less,请在 .bashrc 文件中设置 export LESS=-X

注意:某些终端(例如 urxvt)能够通过如下设置为所有 ncurses 程序全局修复此问题:urxvt*secondaryScreen: false

Try adding set t_ti= t_te= to your .vimrc file.

To fix less which also exhibits this behavior, set export LESS=-X in your .bashrc file.

Note: Some terminals such as urxvt are able to fix this globally for all ncurses program with a settings like this: urxvt*secondaryScreen: false

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文