curses库为基于文本的终端提供独立于终端的屏幕绘制和键盘处理设施;这些终端包括VT100s、Linux控制台和各种程序提供的模拟终端。显示终端支持各种控制代码来执行常见的操作,如移动光标、滚动屏幕和擦除区域。curses库提供了相当基本的功能,为程序员提供了一个包含多个非重叠文本窗口的显示抽象。窗口的内容可以通过各种方式进行更改——添加文本、擦除文本、更改外观——curses库将计算出需要将哪些控制代码发送到终端才能生成正确的输出。curses没有提供许多用户界面概念,比如按钮、复选框或对话框;如果需要这些特性,可以考虑使用用户界面库,比如Urwid。 curses库最初是为BSD Unix编写的;AT&T后来的System V版本Unix增加了许多增强功能和新功能。不再维护BSD curses,取而代之的是ncurses,它是AT&T接口的一个开源实现。如果您使用的是开源Unix,比如Linux或FreeBSD,那么您的系统几乎肯定使用了ncurses。由于目前大多数商业Unix版本都基于System V代码,所以这里描述的所有函数可能都是可用的。不过,一些专有的Unixes携带的旧版本的咒语可能并不支持所有的功能。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。