上QQ阅读APP看书,第一时间看更新
第5章 终端
在本章中,你将看到如何完善第2章中的基本应用程序。该程序最明显的不足就是其用户界面,虽然它实现了所需功能,但并不好用。在本章中,你将学习如何更好的控制用户终端,包括控制键盘输入及屏幕输出。不仅如此,你还将学习如何保证编写的程序能够从用户那里获取输入(即使用户对程序使用了输入重定向),以及确保程序的输出显示在屏幕的正确位置上。
虽然,重新实现CD数据库应用程序的构想只有到第7章的结束才能见到曙光,但你将在本章为第7章做大量的底层准备工作。第6章是基于curses的,但它并不是古老的咒语,而是一个函数库,它提供了控制终端屏幕显示的高级代码。同时,我们还将通过介绍一些Linux和UNIX的哲学思想以及终端输入和输出的概念来阐明早期UNIX社团成员的想法。也许,我们在这里给出的底层访问方式正是您正在寻找的。我们将在这里介绍的绝大部分内容同样适用于运行在终端窗口中的程序,如运行在KDE的Kconsole、GNOME的gnome-terminal或者是标准X11的xterm中的程序。
在本章中,你将学习以下内容:
❑ 对终端进行读写
❑ 终端驱动程序和通用终端接口
❑ termios
❑ 终端的输出和terminfo
❑ 检测键盘击键动作