Doli notcurses v1.4.1 — njĂ« bibliotekĂ« pĂ«r ndĂ«rfaqe tekstuale moderne


Doli notcurses v1.4.1 — njĂ« bibliotekĂ« pĂ«r ndĂ«rfaqe tekstuale moderne

Doli një version i ri i bibliotekës notcurses v1.4.x «saga vazhdon! wu-tang! wu-tang!»

Notcurses Ă«shtĂ« njĂ« bibliotekĂ« TUI pĂ«r emulatorĂ«t modernĂ« tĂ« terminaleve. Dosido qĂ« ndodh, pĂ«rkthehet – nuk janĂ« mallkime (not curses). Ajo Ă«shtĂ« shkruar nĂ« C, duke pĂ«rdorur headers tĂ« sigurt pĂ«r C++. JanĂ« tĂ« disponueshme mbĂ«shtetje pĂ«r Rust, C++ dhe Python.

ÇfarĂ« Ă«shtĂ«: njĂ« bibliotekĂ« qĂ« thjeshton TUI tĂ« ndĂ«rlikuar nĂ« emulatorĂ«t modernĂ« tĂ« terminaleve, duke mbĂ«shtetur maksimumin e ngjyrave tĂ« ndritshme dhe Unicode. ShumĂ« detyra qĂ« zakonisht i delegohen curses, mund tĂ« realizohen me notcurses (dhe anasjelltas).

ÇfarĂ« nuk Ă«shtĂ«: njĂ« implementim i pĂ«rputhshĂ«m i X/Open curses ose njĂ« zĂ«vendĂ«sues i ncurses nĂ« sistemet ekzistuese.

Notcurses heq dorë nga API X/Open Curses, i ofruar si pjesë e Specifikimit të Vetëm UNIX. Kjo specifikim është shumë i vjetruar dhe, për shembull, nuk mbështet funksionalitete të tilla si ngjyra 24-bitësh pa indeks. Si e tillë, notcurses nuk është një zëvendësim i curses. Ajo është më pak portative dhe sigurisht është testuar në më pak pajisje.
Kur është e mundur, notcurses përdor bibliotekën terminfo, e ofruar së bashku me ncurses, duke nxjerrë shumë përfitime nga portabiliteti i saj.
Notcurses ofron mundësi të avancuara për ndërveprimin me përdoruesit në stacione pune, telefona, laptopë dhe tableta.

Pse të përdorim këtë bibliotekë jo standarde?

  • Siguria e rrjedhave dhe pĂ«rdorimi efikas nĂ« programet me shumĂ« rrjedha ka qenĂ« njĂ« konsideratĂ« qĂ« nga fillimi i projektit.

  • NjĂ« API mĂ« e strukturuar krahasuar me X/Open:

    • Identifikuesit e eksportuar kanĂ« njĂ« prefiks pĂ«r tĂ« shmangur kolizionet nĂ« hapĂ«sirat e emrave.

    • Skedari objekt i bibliotekĂ«s ekspozon njĂ« grup minimal simbolesh. Atje ku Ă«shtĂ« e arsyeshme, pĂ«rdoret kod statik vetĂ«m pĂ«r titujt e vegjĂ«l. Kjo lehtĂ«son optimizimin e kompilatorit dhe shkurtin e kohĂ«s sĂ« ngarkimit.

  • TĂ« gjitha API-tĂ« e mbĂ«shtesin fillimisht njĂ« grup tĂ« pĂ«rgjithshĂ«m simbolesh (Unicode). API pĂ«r qelizat bazohet nĂ« konceptin Klusteri i Zgjeruar tĂ« Grapheme tĂ« Unicode.

  • Kapacitetet vizuale, duke pĂ«rfshirĂ« imazhe, fonte, video, tekst me kontrast tĂ« lartĂ«, sprite dhe zona transparente. TĂ« gjitha API-tĂ« mbĂ«shtesin natyrshĂ«m ngjyrĂ«n 24-bit, duke u kuptuar sipas nevojĂ«s pĂ«r terminalin.

  • Licenca Apache2, nĂ« krahasim me dramat nĂ« disa akte, e cila Ă«shtĂ« licenca e ncurses (e fundit pĂ«rmbledhjet si «ri-formulimi MIT-X11»).

Që nga versioni i mëparshëm i rëndësishëm 1.1.0, janë shtuar një numër të madh funksionesh. Ndryshimet kryesore:

  • Widget pĂ«r lexim pĂ«r hyrje tĂ« vargjeve tĂ« çdo forme me lidhje nĂ« vargjet pĂ«r lexim

  • Widget subprocess pĂ«r tĂ« gjeneruar njĂ« nĂ«nproces, pĂ«r ta menaxhuar atĂ« dhe pĂ«r tĂ« transmetuar rezultatet pĂ«rsĂ«ri.

  • NĂ« Linux 5.3+ pĂ«rdoret njĂ« mekanizĂ«m i ri clone3+pidfd pĂ«r tĂ« menaxhuar proceset pa kushte garuese.

  • Widget Fdplane pĂ«r transmetimin e çdo deshifruese skedari nĂ« njĂ« plan (ku Ă«shtĂ« ndĂ«rtuar nĂ«nprocesi). TĂ« dy lejojnĂ« qĂ« kthimet tĂ« stilizojnĂ« ose ndryshe tĂ« pĂ«rpunojnĂ« tekstin.

  • Rrotullimi i planeve dhe efekteve vizuale. Ngarkimi i vizualizimeve nga memorie. Blitimi i çdo formati RGBA/BGRx.

  • Menuja mund tĂ« vendoset nĂ« çdo (ose nĂ« tĂ« dy) nga planet e sipĂ«rme dhe tĂ« poshtme.

  • PĂ«rmirĂ«sime tĂ« mĂ«dha nĂ« modin Direct.

  • Polyfills, gradientĂ« dhe tekst me kontrast tĂ« lartĂ«.

  • Tetris Ă«shtĂ« shtuar si njĂ« shembull.

  • MbĂ«shtetjet C++ nga Marek Habersack tani kanĂ« mundĂ«sinĂ« tĂ« hedhin pĂ«rjashtime (nĂ«se Ă«shtĂ« e nevojshme).

  • Python dhe Rust FFI janĂ« azhurnuar dhe testuar.

Video demo me komentet e autorit
Libri «Hacking The Planet! with Notcurses» nga autori

Burimi: linux.org.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster