Uusi versio notcurses v1.4.x -kirjastosta on julkaistu "saaga jatkuu! wu-tang! wu-tang!”
Notcurses on TUI-kirjasto nykyaikaisille pääteemulaattoreille. Kirjaimellisesti käännettynä – ei kirouksia. Se on kirjoitettu C-kielellä käyttäen C++-turvallisia otsikoita. Kääreet saatavilla Ruoste, C + + и Python.
Mikä se on: kirjasto, joka yksinkertaistaa monimutkaisia TUI:ita nykyaikaisissa pääteemulaattoreissa ja tukee maksimaalisesti kirkkaita värejä ja Unicodea. Monet kirouksille delegoidut tehtävät voidaan suorittaa käyttämällä notcurses (ja päinvastoin).
Mitä se ei ole: Yhteensopiva X/Open curses -toteutus tai korvaa ncurses olemassa olevissa järjestelmissä.
Notcurses poistaa käytöstä yhden UNIX-määrityksen osana toimitetun X/Open Curses API:n. Tämä määritys on vanhentunut pitkään, eikä se esimerkiksi tue päätetoimintoja, kuten indeksoimatonta 24-bittistä väriä. Sellaisenaan notcurses ei korvaa kirouksia. Se on vähemmän kannettava ja ehdottomasti testattu pienemmällä laitteistolla.
Aina kun mahdollista, notcurses käyttää ncursesin mukana toimitettua terminfo-kirjastoa, mikä hyötyy suuresti sen siirrettävyydestä.
Notcurses avaa edistyneitä toimintoja vuorovaikutukseen käyttäjien kanssa työasemilla, puhelimissa, kannettavissa tietokoneissa ja tableteissa.
Miksi käyttää tätä epätyypillistä kirjastoa?
-
Lankojen turvallisuus ja tehokas käyttö monisäikeisissä ohjelmissa on ollut suunnittelussa alusta alkaen.
-
Paremmin muotoiltu API verrattuna X/Open:
-
Viedyt tunnisteet on liitetty etuliitteenä nimitilan törmäysten välttämiseksi.
-
Kirjastoobjektitiedosto vie minimijoukon merkkejä. Mahdollisuuksien mukaan staattista koodia käytetään vain riviotsikoissa. Tämä helpottaa kääntäjän optimointia ja lyhentää latausaikoja.
-
-
Kaikki API:t tukevat natiivisti yleistä merkistöä (Unicode). Solun API perustuu konseptiin Unicoden laajennettu graafinen klusteri.
-
Visuaalisia ominaisuuksia, kuten kuvia, fontteja, videoita, korkeakontrastista tekstiä, spritejä ja läpinäkyviä alueita. Kaikki API:t tukevat natiivisti 24-bittisiä värejä, jotka kvantisoidaan päätelaitteen tarpeen mukaan.
-
Apache2-lisenssi, toisin kuin draama useissa säädöksissä, joka on ncurses-lisenssi (jälkimmäinen on tiivistetty "MIT-X11:n uudistukseksi").
Edellisen merkittävän julkaisun 1.1.0 jälkeen on lisätty valtava määrä ominaisuuksia. Tärkeimmät muutokset:
-
Lukuwidget vapaamuotoisten merkkijonojen syöttämiseen, jotka on linkitetty lukumerkkijonoihin
-
Aliprosessi-widget aliprosessin synnyttämiseen, hallintaan ja tulosten suoratoistoon.
-
Linux 5.3+ käyttää uutta clone3+pidfd-mekanismia prosessien hallintaan ilman kilpailuehtoja.
-
Fdplane-widget mielivaltaisen tiedostokuvaajan suoratoistoon tasolle (jolle aliprosessi on rakennettu). Molemmat mahdollistavat tekstin tyylin muokkaamisen tai muutoin muokkaamisen takaisinkutsuilla.
-
Tasojen kierto ja visuaaliset tehosteet. Ladataan visualisointeja muistista. Satunnainen RGBA/BGRx-vilkku.
-
Valikko voidaan sijoittaa jommallekummalle (tai molemmille) ylä- ja alatasosta.
-
Suuria parannuksia suorassa tilassa.
-
Monitäytteitä, liukuvärejä ja korkeakontrastista tekstiä.
-
Lisätty Tetris esimerkkinä.
-
Marek Habersackin C++-kääreillä on nyt mahdollisuus heittää poikkeuksia (tarvittaessa).
-
Python ja Rust FFI päivitetty ja testattu.
Videodemo tekijän kommenteilla
Kirja "Hacking The Planet! kanssa Notcourses" kirjoittajalta
Lähde: linux.org.ru