0

我知道如何通过清除该行的\r回车来使终端应用程序的最后一行刷新自己。

我怎样才能用比最后一行更多的行来做到这一点?(像 vi 这样的程序是如何做到的?)

编辑没有外部,如ncursestput

4

2 回答 2

3

我怎样才能用比最后一行更多的行来做到这一点?(像 vi 这样的程序是如何做到的?)

他们正在使用ncurses, termcap, terminfo, 很多。

于 2012-05-13T06:11:10.657 回答
1

如果您想在不使用curses等的情况下执行此操作,那么您必须知道为您计划支持的每种不同终端类型发送哪些终端控制代码。

您还需要了解每个终端所支持的操作如何达到所需的效果。一些终端可能有一个“清除屏幕结束”命令;其他人可能需要写很多字符。

总体而言,使用设计用于处理工作的东西和terminfo终端数据库可能更容易。

于 2012-05-13T06:58:50.087 回答