Nova versio de la biblioteko notcurses v1.4.x estis publikigita "la sagao daŭras! wu-tang! wu-tang!"
Notcurses estas TUI-biblioteko por modernaj finaj emuliloj. Laŭvorte tradukite - ne malbenoj. Ĝi estas skribita en C, uzante C++-sekurajn titolojn. Envolvaĵoj haveblaj por rustiĝi, C ++ и python.
Kio ĝi estas: biblioteko kiu simpligas kompleksajn TUI-ojn sur modernaj finaj emuliloj, maksimume subtenante brilajn kolorojn kaj Unikodon. Multaj taskoj delegitaj al malbenoj povas esti faritaj uzante notcurses (kaj inverse).
Kio ĝi ne estas: Kongrua efektivigo de X/Open malbenoj aŭ anstataŭaĵo por ncurses sur ekzistantaj sistemoj.
Notcurses malrekomendas la X/Open Curses API provizitan kiel parto de la Ununura UNIX Specifo. Tiu specifo estas longe malmoderna kaj, ekzemple, ne apogas terminalfunkciecon kiel ekzemple ne-indeksita 24-bita koloro. Kiel tia, notcurses ne estas anstataŭaĵo por malbenoj. Ĝi estas malpli portebla, kaj certe provita sur malpli da aparataro.
Kiam ajn eblas, notcurses uzas la terminfo-bibliotekon provizitan per ncurses, profitante multe el ĝia porteblo.
Notcurses malfermas altnivelan funkciecon por interagi kun uzantoj sur laborstacioj, telefonoj, tekkomputiloj kaj tablojdoj.
Kial uzi ĉi tiun ne-norman bibliotekon?
-
Fadensekureco kaj efika uzo en plurfadenaj programoj estis desegna konsidero de la komenco mem.
-
Pli bone formatita API kompare kun X/Open:
-
Eksportitaj identigiloj estas prefiksitaj por eviti nomspackoliziojn.
-
La biblioteka objektodosiero eksportas minimuman aron da signoj. Kie praktike, senmova kodo estas uzata nur por liniokapoj. Ĉi tio faciligas optimumigi la kompililon kaj reduktas ŝarĝtempojn.
-
-
Ĉiuj API-oj denaske subtenas la universalan signaron (Unikodo). La ĉela API baziĝas sur la koncepto La Etendita Grafema Areto de Unikodo.
-
Vidaj funkcioj inkluzive de bildoj, tiparoj, filmetoj, altkontrasta teksto, spritoj kaj travideblaj areoj. Ĉiuj API-oj denaske subtenas 24-bitan koloron, kvantigitan laŭbezone de la terminalo.
-
Apache2-licenco, male al dramo en pluraj aktoj, kiu estas la licenco ncurses (ĉi-lasta estas resumita kiel "reformulo de MIT-X11").
Ekde la antaŭa signifa eldono 1.1.0, granda nombro da funkcioj estis aldonitaj. Ĉefaj ŝanĝoj:
-
Leganta fenestraĵo por enigi liberformajn ŝnurojn ligitajn al legado de ŝnuroj
-
Subproceza fenestraĵo por generi subprocezon, administri ĝin kaj reflui ĝiajn rezultojn.
-
Linukso 5.3+ uzas la novan mekanismon clone3+pidfd por administri procezojn sen raskondiĉo.
-
Fdplane-fenestraĵo por fluado de arbitra dosierpriskribilo al la aviadilo (sur kiu la subprocezo estas konstruita). Ambaŭ permesas revokojn stiligi aŭ alie manipuli tekston.
-
Rotacio de aviadiloj kaj vidaj efikoj. Ŝargante bildigojn el memoro. Hazarda RGBA/BGRx bliting.
-
La menuo povas esti metita sur aŭ (aŭ ambaŭ) el la supraj kaj malsupraj ebenoj.
-
Grandaj plibonigoj en Rekta reĝimo.
-
Poliplenigaĵoj, gradientoj kaj alta kontrasta teksto.
-
Aldonita Tetriso kiel ekzemplo.
-
C++-envolvaĵoj de Marek Habersack nun havas la kapablon ĵeti esceptojn (se necese).
-
Python kaj Rust FFI ĝisdatigitaj kaj provitaj.
Videodemo kun komentoj de aŭtoro
La libro "Haki La Planedon! kun Notcourses" de la aŭtoro
fonto: linux.org.ru