curses (tietotekniikka)
curses on päätteen syöttöön ja tulostukseen kehitetty ohjelmakirjasto.
Tarve kirjastolle syntyi koska erilaiset päätteet käyttivät erilaisia ohjauskomentoja kursorin liikkeelle.[1] Ennen ANSI-standardia ANSI X3.64 valmistettiin lukuisia keskenään kilpailevia päätteitä.[2]
Kirjaston kehitti Ken Arnold Berkeleyn kampuksella BSD:lle.[3] Kirjastoa käytettiin Rogue-pelin toteuteuksessa.[3] Kirjastoa edelsi vi-ohjelman käyttämä termcap (terminal capabilities) -kirjasto.[2] curses-kirjasto toteutti päätteen ohjauksen C-kielisenä rajapintana, jolloin ohjelmoijan ei tarvinnut tuntea päätteen ohjaukseen käytettäviä koodeja.[2][1] Kirjaston menestys johti Bell Labsin kehittämään vastaavan, joka korvasi termcapin terminfolla.[2]
curses-kirjaston sanotaan olevan de facto -standardi siirrettävälle päätekäsittelylle.[4]
X/Openin X/Open Curses määrittelee standardina tekstin syötön ja näytön päätteille.[5][6]
ncurses on Unix System V -toteutukseen perustuva vaihtoehtoinen toteutus.[2][7]
Lähteet
[muokkaa | muokkaa wikitekstiä]- ↑ a b Norman Matloff: Introduction to the Unix Curses Library (PDF) heather.cs.ucdavis.edu. 8.4.2011. Viitattu 2.9.2019. (englanniksi)
- ↑ a b c d e Eric S. Raymond: ncurses: Portable Screen-Handling for Linux 1.9.1995. Linux Journal. Viitattu 2.9.2019. (englanniksi)
- ↑ a b Matt Barton & Bill Loguidice: The History of Rogue: Have @ You, You Deadly Zs 5.5.2009. Gamasutra. Viitattu 1.9.2019. (englanniksi)
- ↑ 15.11. curses — Terminal handling for character-cell displays docs.python.org. Viitattu 2.9.2019. (englanniksi)
- ↑ man pages section 3: Curses Library Functions Oracle. Viitattu 1.9.2019. (englanniksi)
- ↑ ncurses 6.0 released 12.8.2015. Lwn.net. Viitattu 1.9.2019. (englanniksi)
- ↑ NCURSES Programming HOWTO tldp.org. Viitattu 2.9.2019. (englanniksi)
Aiheesta muualla
[muokkaa | muokkaa wikitekstiä]- X/Open-standardi:
- Reference Pages (Arkistoitu – Internet Archive) (englanniksi)
- Interface Overview (Arkistoitu – Internet Archive) (englanniksi)
- Writing Programs with NCURSES (englanniksi)