我想写一个Linux命令行聊天室客户端。
我想将命令窗口拆分为不同的部分:输入,聊天,房间,状态如this one。
如何在保留窗口的其他部分的同时将新消息从服务器打印到窗口的聊天部分?
现在,我写的客户端非常简单,它会将所有邮件打印到stdout
,因此会破坏您输入的字词。
答案 0 :(得分:2)
使用ncurses。它几乎是所有Linux发行版中的标准组件,并且有很好的文档记录(它甚至附带了所有例程的完整手册页;例如,man 3 printw
命令显示了printw()
函数的文档。它也很容易使用。您可以在屏幕上创建多个“窗口”,并可以使用x / y坐标在任意位置书写文本。当然,它们不是真正的窗户,因为这是一个文本终端; ncurses窗口只是终端的一个区域。
有关详细介绍,请参阅NCURSES Programming HOWTO。