notcurses v1.4.1 gouf verëffentlecht - eng Bibliothéik fir modern Textschnëttplazen


notcurses v1.4.1 gouf verëffentlecht - eng Bibliothéik fir modern Textschnëttplazen

Eng nei Versioun vun der notcurses v1.4.x Bibliothéik gouf verëffentlecht "d'Saga geet weider! wu tanz! wu-tang!"

Notcurses ass eng TUI Bibliothéik fir modern Terminal Emulatoren. Wuertwiertlech iwwersat - net Fluchen. Et ass an C geschriwwen, mat C ++-sécher Header. Wrapper verfügbar fir Rust, C ++ и Python.

Wat ass et: eng Bibliothéik déi komplex TUIs op modernen Terminalemulatoren vereinfacht, maximal hell Faarwen an Unicode ënnerstëtzen. Vill Aufgaben, déi op Fluchen delegéiert ginn, kënne mat Notcurses ausgefouert ginn (a vice versa).

Wat et net ass: Eng kompatibel Ëmsetzung vun X / Open Fluchen oder Ersatz fir ncurses op bestehend Systemer.

Notcurses deprecéiert d'X/Open Curses API, déi als Deel vun der Single UNIX Spezifizéierung zur Verfügung gestallt gëtt. Dës Spezifizéierung ass laang veroudert an, zum Beispill, ënnerstëtzt keng Terminalfunktionalitéit wéi net-indexéiert 24-Bit Faarf. Als esou ass Notcurses keen Ersatz fir Fluchen. Et ass manner portabel, an definitiv op manner Hardware getest.
Wann ëmmer méiglech, notcurses benotzt d'Terminfo-Bibliothéik, déi mat ncurses geliwwert gëtt, a profitéiert immens vu senger Portabilitéit.
Notcurses mécht fortgeschratt Funktionalitéit op fir mat Benotzer op Aarbechtsstatiounen, Telefonen, Laptops a Pëllen ze interagéieren.

Firwat benotzen dës Net-Standard Bibliothéik?

  • Thread Sécherheet an effizient Notzung a Multi-threaded Programmer war vun Ufank un eng Design Iwwerleeung.

  • Méi gutt formatéiert API am Verglach zum X / Open:

    • Exportéiert Identifizéierer gi Präfix fir Nummraumkollisiounen ze vermeiden.

    • D'Bibliothéiksobjektdatei exportéiert e minimale Set vu Charaktere. Wou praktesch, statesche Code gëtt nëmme fir Linn Header benotzt. Dëst mécht et méi einfach de Compiler ze optimiséieren an d'Laaschtzäit ze reduzéieren.

  • All APIen ënnerstëtzen natiirlech den universelle Charakterset (Unicode). D'Zell API baséiert op dem Konzept Unicode's Extended Grapheme Cluster.

  • Visuell Fonctiounen dorënner Biller, Schrëften, Videoen, héich-Kontrast Text, sprites, an transparent Beräicher. All APIen ënnerstëtzen natiirlech 24-Bit Faarf, quantiséiert wéi néideg vum Terminal.

  • Apache2 Lizenz, Géigesaz drama a verschiddenen Akten, wat d'ncurses Lizenz ass (déi lescht gëtt als "Reformuléierung vum MIT-X11" zesummegefaasst).

Zënter der viregter bedeitender Verëffentlechung 1.1.0 sinn eng riesech Unzuel u Features bäigefüügt. Main Ännerungen:

  • Liesen Widget fir gratis-Form Saiten anzeginn verbonne mat Liesen Saiten

  • En Ënnerprozess Widget fir en Ënnerprozess ze spawnen, et ze managen a seng Resultater zréck ze streamen.

  • Linux 5.3+ benotzt den neie clone3+pidfd Mechanismus fir Prozesser ouni Rennenbedingung ze managen.

  • Fdplane Widget fir en arbiträren Dateideskriptor op de Fliger ze streamen (op deem den Ënnerprozess gebaut ass). Béid erlaben Callbacks fir Text ze styléieren oder soss ze manipuléieren.

  • Rotatioun vu Fligeren a visuell Effekter. Lueden Visualiséierungen aus Erënnerung. Zoufälleg RGBA / BGRx Blitting.

  • De Menü kann op entweder (oder souwuel) vun der ieweschter an ënnen Fliger gesat ginn.

  • Grouss Verbesserungen am Direct Modus.

  • Polyfills, Gradienten an héije Kontrast Text.

  • Zousätzlech Tetris als Beispill.

  • C ++ wrappers vum Marek Habersack hunn elo d'Fäegkeet Ausnahmen ze werfen (wann néideg).

  • Python a Rust FFI aktualiséiert a getest.

Video Demo mat Kommentaren vum Auteur
D'Buch "Hacking The Planet! mat Notcourses" vum Auteur

Source: linux.org.ru

Setzt e Commentaire