bash – vim上的GNU屏幕清除,更少等.出口
发布时间:2020-12-15 18:37:53 所属栏目:安全 来源:网络整理
导读:我对屏幕很新,但根据我在互联网上找到的各种建议配置了我的?/ .screenrc文件.我有一个问题虽然我很确定可以很容易地解决;我认为这是一个termcap设置..? 在独立bash中使用less,vim,top或其他程序(在Mac OSX 10.6上)后,退出这些程序后,终端的缓冲区将清除,当
我对屏幕很新,但根据我在互联网上找到的各种建议配置了我的?/ .screenrc文件.我有一个问题虽然我很确定可以很容易地解决;我认为这是一个termcap设置..?
在独立bash中使用less,vim,top或其他程序(在Mac OSX 10.6上)后,退出这些程序后,终端的缓冲区将清除,当前命令行上方的行将是我输入的上一个命令. 例如在独立的bash(没有屏幕): – hostname:~ auser$vim afile [do stuff in file,then :q to exit] 退出后我会看到: – hostname:~ auser$vim afile hostname:~ auser$ 但在屏幕上: – bash-3.2$vim afile [do stuff in file,then :q to exit] 退出后,我会看到整个屏幕: – ~ # [Empty lines in vim are represented by these tilda characters. ] ... ~ # [ Every line on the screen is one of these tildas ] bash-3.2$ # [ This is the bottom line in the terminal ] 我希望这有点道理.
答案在于您正在使用的“真实”终端和通过屏幕呈现给应用程序的终端的终端功能.通过屏幕执行终端I / O的应用程序可以看到屏幕类型的终端.你的“真实”终端可能是从xterm到vt100的任何东西. (使用printenv TERM或同等版本查找.)
像vim这样的TUI应用程序可以根据他们发现自己正在与之交谈的终端来定制他们的行为.这个答案对于终止机制的机制的详细阐述来说太短了,甚至对于像vim和less这样的程序如何利用它的机制也是如此.关于这些东西有完整的书籍.一个非常简短的说法是,您的“真实”终端正在宣传屏幕终端不具备的功能. 另外,当然,这已经在SuperUser上得到了详细的回答,here和here以及here. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |