<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Curses</id>
	<title>Curses - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Curses"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Curses&amp;action=history"/>
	<updated>2026-05-25T03:43:01Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Curses&amp;diff=605185&amp;oldid=prev</id>
		<title>imported&gt;Y2kbug: Überarbeitung mit Quelle (aus den englischen Wikipedia &quot;entwendet&quot;), und mit der Primärquelle BSD-Archiv gegengeprüft</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Curses&amp;diff=605185&amp;oldid=prev"/>
		<updated>2026-01-27T15:07:14Z</updated>

		<summary type="html">&lt;p&gt;Überarbeitung mit Quelle (aus den englischen Wikipedia &amp;quot;entwendet&amp;quot;), und mit der Primärquelle BSD-Archiv gegengeprüft&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{SEITENTITEL:curses}}&lt;br /&gt;
[[Datei:Termapi.svg|mini|rechts|Beziehungen und Abhängigkeiten]]&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;curses&amp;#039;&amp;#039;&amp;#039; ist der Name verschiedener [[Programmbibliothek]]en zur Darstellung [[Zeichenorientierte Benutzerschnittstelle|zeichenorientierter Benutzerschnittstellen]] (Text User Interface, TUI) unabhängig vom darstellenden [[Terminal (Computer)|Textterminal]] bzw. [[Terminalemulation|Terminalemulator]]. Die Bibliothek wurde von [[Ken Arnold]] entwickelt und vermutlich von [[Bill Joy]], dem Entwickler von [[ex (Texteditor)|ex]] und [[vi]], in der [[Berkeley Software Distribution|BSD]]-[[UNIX]]-Version 2.79BSD von 1980 inkludiert.&amp;lt;!-- siehe https://www.tuhs.org/Archive/Distributions/UCB/ -- in 2bsd.tar.gz wie auch 3bsd.tar.gz fehlt curses, in 2.79bsd.tar.gz ist es jedoch enthalten! --&amp;gt; U.&amp;amp;nbsp;a. das sich ab 1980 an Universitäten verbreitende [[Computerspiel]] [[Rogue (Computerspiel)|Rogue]] nutzt die &amp;#039;&amp;#039;curses&amp;#039;&amp;#039;-Bibliothek.&amp;lt;ref&amp;gt;{{Internetquelle |autor=David L. Craddock |url=https://episodiccontentmag.com/2016/06/17/rogue_chapter3/ |titel=Procedural Dungeons of Doom: The Making of Rogue&amp;amp;nbsp;– Chapter&amp;amp;nbsp;3 |datum=2016-06-17 |format=[[Blog]] |sprache=en |abruf=2026-01-27 |zitat=Cursor-addressable terminals presented one downside. Each terminal stored characters differently, so programmers had to rewrite cursor-addressable code on every type of cursor-addressable terminal they used. Tired of revising code every time a new terminal appeared in the lab, [Ken C. R. C.] Arnold wrote a platform-agnostic library of cursor functions that worked on any cursor-addressable terminal. He called his library curses. … When Bill Joy corralled worthy programs and packaged them in BSD UNIX in 1978, curses received a place of honor. By 1980, Rogue had spread from its home on UC Santa Cruz’s computers to other UC campuses, including UC Berkeley. Arnold took to the game right away. ‘People often believe that curses was written for Rogue because most people saw them at the same time. …’}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Auch in 4.2BSD&amp;lt;!-- siehe https://www.tuhs.org/Archive/Distributions/UCB/ -- in 4.2BSD/usr.tar.gz findet sich include/curses.h in Version 1.14 vom 4. Juli 1983 --&amp;gt; und späteren Versionen ist die Implementierung enthalten, der 1989 eine Weiterentwicklung für Veröffentlichung&amp;amp;nbsp;4 von [[System&amp;amp;nbsp;V]] folgte.&lt;br /&gt;
&lt;br /&gt;
Andere Weiterentwicklungen sind pcurses (1982) von Pavel Curtis und (1987) Public Domain Curses (PDCurses)&amp;lt;ref&amp;gt;[https://pdcurses.sourceforge.net/ pdcurses.sf.net]&amp;lt;/ref&amp;gt; von Mark Hessling.&lt;br /&gt;
&lt;br /&gt;
In den frühen 1990er Jahren setzten Zeyd Ben Halim und Eric Raymond die Entwicklung von pcurses fort und nannten es &amp;#039;&amp;#039;[[ncurses]]&amp;#039;&amp;#039;, die heute überwiegend in Gebrauch ist. Thomas Dickey trat 1995 in das Projekt ein und ist seit 1996 der Hauptentwickler.&lt;br /&gt;
&lt;br /&gt;
Es gibt einen Standard von [[X/Open]], der sich ausgesprochen nahe an die System-V-Implementierung hält.&lt;br /&gt;
&lt;br /&gt;
== Programmbeispiel ==&lt;br /&gt;
Einfaches [[Hallo-Welt-Programm]] mit curses:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;curses.h&amp;gt;&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  initscr();&lt;br /&gt;
&lt;br /&gt;
  printw(&amp;quot;Hallo Welt!&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
  refresh();&lt;br /&gt;
  getch();&lt;br /&gt;
  endwin();&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* {{Literatur&lt;br /&gt;
 |Autor=John Strang|Titel=Programming with curses|Verlag=O’Reilly &amp;amp; Associates |Ort=Sebastopol CA|Jahr=1986|ISBN=978-0-937175-02-6|Kommentar=UNIX C library for screen manipulation. A Nutshell handbook}}&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* X/Open-Standard: [https://www.opengroup.org/onlinepubs/007908799/cursesix.html Referenz der Funktionen], [https://www.opengroup.org/onlinepubs/7990989775/xcurses/intovix.html Überblick über die Schnittstelle]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Benutzerschnittstelle]]&lt;br /&gt;
[[Kategorie:C-Bibliothek]]&lt;br /&gt;
[[Kategorie:Unix-Software]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Y2kbug</name></author>
	</entry>
</feed>