linux vi 恢复终端 原理,linux – 退出后vi如何恢复终端内容?

像vi或man或任何其他程序这样的程序如何用程序自己的内容替换终端内容然后在退出这些程序后又带回旧的终端内容?

解决方法:

Vi翻转到备用屏幕缓冲区,由终端支持.这是使用转义序列实现的.有关详细信息,请参见this link.

这些的termcap条目是’ti’进入,’te’退出全屏模式.

正如@Celada在下面指出的那样,硬编码xterm转义序列不是一个好主意™,因为序列根据$TERM而变化,例如:

xterm-color

ti: 7 [ ? 47 h

te: [ 2 J [ ? 4 7 l 8

xterm-256color

ti: [ ? 1 0 4 9 h

te: [ ? 1 0 4 9 l

另一方面,xterm支持目前在非xterm终端中非常广泛.仅支持xterm不太可能导致问题,除了具有异国情调或过时的$TERM设置的用户.资料来源:我支持这样做的产品.

标签:linux,unix

来源: https://codeday.me/bug/20190927/1823172.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值