Follow TV Tropes

Following

History UsefulNotes / CursesAPI

Go To



* ''Alpine'' (email client) (ncurses)


Added DiffLines:

** ''GNU Alpine'' (GPL fork of ''Pine'') (ncurses)
* ''Pico'' (text editor)
** ''GNU Nano'' (GPL fork of ''Pico'')


* Various variations on '''conio''' for MS-DOS (and sometimes Windows).

to:

* Various variations on '''conio''' for MS-DOS (and sometimes Windows).the Windows Console).


* '''conio''' for MS-DOS.

to:

* Various variations on '''conio''' for MS-DOS.MS-DOS (and sometimes Windows).

Added DiffLines:

[[quoteright:350:http://static.tvtropes.org/pmwiki/pub/images/161c70de06a8e78ad44c14a89d5cecda.gif]]


'''Curses''' ({{Pun}} on ''cursor optimization'') is an UsefulNotes/ApplicationProgrammingInterface for UsefulNotes/{{Unix}} operating systems, conceived by Ken Arnold for the creation of text user-interfaces (TUI) for applications on terminals.

Consequently, this library is much used by {{Roguelike}}s, games wiching to retain a [[{{Retraux}} classical feel]] and programming system utilities on space-sensitive devices.

to:

'''Curses''' ({{Pun}} ({{pun}} on ''cursor optimization'') is an UsefulNotes/ApplicationProgrammingInterface for UsefulNotes/{{Unix}} operating systems, conceived by Ken Arnold for the creation of text user-interfaces user interfaces (TUI) for applications on terminals.

Consequently, this library is much used by {{Roguelike}}s, games wiching wishing to retain a [[{{Retraux}} classical feel]] and programming system utilities on space-sensitive devices.



This library allows the programmer to code for terminals without having to concern for [[UsefulNotes/SoftwarePorting Porting]] on the different terminals, by mapping the screen as a matrix of characters.

This enable the programmer to make the [=I/O=] not limited to either the user inputing only ASCII characters or the program only outputing line by line.

to:

This library allows the programmer to code for terminals without having to concern account for [[UsefulNotes/SoftwarePorting Porting]] porting]] on the different terminals, by mapping the screen as a matrix of characters.

This enable enables the programmer to make the [=I/O=] not limited to either the user inputing entering only ASCII characters or the program only outputing outputting line by line.



In the beginning programs only inputed or outputed brut text, but commands existed to go beyond it.

The ''termcap'' file was then invented, listing all the ''"'''term'''inal '''cap'''acities"'', that is, commands helping to go beyond brut text, such as by adding colour ,format which was later replaced by ''terminfo'', standing for ''"'''term'''inal '''in'''fo"''.

Unfortunately there were much variety among the terminals, which made the work of the programmers who wanted to manipulate the contents of the terminal screen very difficult, by forcing them either to restrict themselves to a set of terminals or risking code bloat by coding for ''all'' the terminals on the market.

to:

In the beginning beginning, programs could only inputed input or outputed brut output plain text, but commands existed to go beyond it.

The ''termcap'' file was then invented, listing all the ''"'''term'''inal '''cap'''acities"'', '''cap'''acities"''; that is, commands helping to go beyond brut plain text, such as by adding colour ,format which colour. This format was later replaced by ''terminfo'', standing for ''"'''term'''inal '''in'''fo"''.

Unfortunately Unfortunately, there were was much variety among the terminals, which made the work of the programmers who wanted to manipulate the contents of the terminal screen very difficult, by forcing them either to restrict themselves to a set of terminals or risking to risk code bloat by coding for ''all'' the terminals on the market.



Ken Arnold studied in Berkeley, where he received his Bachelor in computer science in 1985, and was aquintitaned with the BSD project, as the president of the Berkeley Computer Club and the Computer Science Undergraduates Association.

One of his contributions for 2BSD and 4BSD was the creation of a library for controlling cursor movement, screen editing, and window creation on ASCII display terminals, inspiring himself from the ''vi'' editor code source.
He then participed to the creation of ''VideoGame/{{Rogue}}'', with tho other coders.

to:

Ken Arnold studied in at Berkeley, where he received his Bachelor bachelor's degree in computer science in 1985, and was aquintitaned acquainted with the BSD project, as the president of the Berkeley Computer Club and the Computer Science Undergraduates Association.

One of his contributions for 2BSD and 4BSD was the creation of a library for controlling cursor movement, screen editing, and window creation on ASCII display terminals, inspiring himself from the ''vi'' editor code source.
source. He then participed to participated in the creation of ''VideoGame/{{Rogue}}'', with tho several other coders.



Althouth the development of curses ended mid-nineties, other derivated versions were developped:
* '''ncurses''' ('''''n'''ex '''curses''''') was created by Zeyd Ben-Halim in 1993 from '''pcurses''', freeware clone of the Bell version created by Pavel Curtis and maintained from 1982 to 1986.
* '''[=PDCurses=]''', created in 1987 for the DOS and Windows systems.

to:

Althouth Although the development of curses ended mid-nineties, circa 1995, other derivated derived versions were developped:
developed:
* '''ncurses''' ('''''n'''ex ('''''n'''ext '''curses''''') was created by Zeyd Ben-Halim in 1993 from '''pcurses''', freeware clone of the Bell version created by Pavel Curtis and maintained from 1982 to 1986.
* '''[=PDCurses=]''', created in 1987 for the DOS MS-DOS and Windows systems.



* '''conio''' for DOS systems.

to:

* '''conio''' for DOS systems.MS-DOS.




Added DiffLines:

'''Curses''' ({{Pun}} on ''cursor optimization'') is an UsefulNotes/ApplicationProgrammingInterface for UsefulNotes/{{Unix}} operating systems, conceived by Ken Arnold for the creation of text user-interfaces (TUI) for applications on terminals.

Consequently, this library is much used by {{Roguelike}}s, games wiching to retain a [[{{Retraux}} classical feel]] and programming system utilities on space-sensitive devices.

A complete guide for [=NCurses=] is available [[http://www.tldp.org/HOWTO/NCURSES-Programming-HOWTO/ here]].

! Description

This library allows the programmer to code for terminals without having to concern for [[UsefulNotes/SoftwarePorting Porting]] on the different terminals, by mapping the screen as a matrix of characters.

This enable the programmer to make the [=I/O=] not limited to either the user inputing only ASCII characters or the program only outputing line by line.

! History

!! Background

In the beginning programs only inputed or outputed brut text, but commands existed to go beyond it.

The ''termcap'' file was then invented, listing all the ''"'''term'''inal '''cap'''acities"'', that is, commands helping to go beyond brut text, such as by adding colour ,format which was later replaced by ''terminfo'', standing for ''"'''term'''inal '''in'''fo"''.

Unfortunately there were much variety among the terminals, which made the work of the programmers who wanted to manipulate the contents of the terminal screen very difficult, by forcing them either to restrict themselves to a set of terminals or risking code bloat by coding for ''all'' the terminals on the market.

!! Development

Ken Arnold studied in Berkeley, where he received his Bachelor in computer science in 1985, and was aquintitaned with the BSD project, as the president of the Berkeley Computer Club and the Computer Science Undergraduates Association.

One of his contributions for 2BSD and 4BSD was the creation of a library for controlling cursor movement, screen editing, and window creation on ASCII display terminals, inspiring himself from the ''vi'' editor code source.
He then participed to the creation of ''VideoGame/{{Rogue}}'', with tho other coders.

This library was then included in the System V Release 4.0.

!! Forking

Althouth the development of curses ended mid-nineties, other derivated versions were developped:
* '''ncurses''' ('''''n'''ex '''curses''''') was created by Zeyd Ben-Halim in 1993 from '''pcurses''', freeware clone of the Bell version created by Pavel Curtis and maintained from 1982 to 1986.
* '''[=PDCurses=]''', created in 1987 for the DOS and Windows systems.

In addition, other libraries, though unrelated, exist for other platforms:
* '''conio''' for DOS systems.
* '''SMG$''' for [=OpenVMS=].

! Software using curses

!! Games

* ''VideoGame/AncientDomainsOfMystery''
* ''VideoGame/{{Angband}}'' (ncurses)
* ''VideoGame/{{Cataclysm}}''
* ''VideoGame/LiberalCrimeSquad''
* ''VideoGame/{{Rogue}}''

!! Others

* ''Alpine'' (email client) (ncurses)
* ''Lynx'' (web browser)
* ''Pine'' (email client)

----
%% Article started on 6th Feb '15 9:58:11

Showing 6 edit(s) of 6

Top

Example of:

/
/

Feedback