notcurses v1.4.1 geus dileupaskeun - perpustakaan pikeun panganteur téks modern


notcurses v1.4.1 geus dileupaskeun - perpustakaan pikeun panganteur téks modern

Versi anyar perpustakaan notcurses v1.4.x parantos dileupaskeun "saga terus! wu-tang! wu-tang!”

Notcurses mangrupikeun perpustakaan TUI pikeun émulator terminal modern. Sacara harfiah ditarjamahkeun - henteu kutukan. Ieu ditulis dina C, ngagunakeun C ++ -headers aman. Wrappers sadia pikeun karahaan, C ++ и Python.

Naon eta: perpustakaan nu simplifies TUIs kompléks on emulators terminal modern, maximally ngarojong kelir caang jeung Unicode. Seueur pancén anu ditugaskeun ka kutukan tiasa dilaksanakeun nganggo notcurses (sabalikna).

Naon teu: A palaksanaan cocog X / Open curses atawa ngagantian ncurses on sistem aya.

Notcurses nolak X / Open Curses API anu disayogikeun salaku bagian tina Spésifikasi UNIX Tunggal. spésifikasi ieu geus lila tinggaleun jaman jeung, contona, teu ngarojong pungsi terminal kayaning non-indéks warna 24-bit. Sapertos kitu, notcurses sanes gaganti kutukan. Éta kirang portabel, sareng pasti diuji dina kirang hardware.
Sabisana, notcurses ngagunakeun perpustakaan terminfo disadiakeun kalawan ncurses, benefiting greatly tina portability na.
Notcurses muka konci fungsionalitas canggih pikeun berinteraksi sareng pangguna dina stasiun kerja, telepon, laptop sareng tablet.

Naha ngagunakeun perpustakaan non-standar ieu?

  • Kaamanan thread sareng panggunaan efisien dina program multi-threaded parantos janten pertimbangan desain ti mimiti.

  • API anu langkung saé formatna dibandingkeun sareng X/Open:

    • Identifier anu diékspor diawalan pikeun nyegah tabrakan namespace.

    • File obyék perpustakaan ngékspor sakumpulan karakter minimal. Dimana praktis, kode statik dipaké pikeun header garis wungkul. Ieu ngagampangkeun pikeun ngaoptimalkeun kompiler sareng ngirangan waktos beban.

  • Sadaya API asli ngadukung set karakter universal (Unicode). API sél dumasar kana konsép Kluster Grapheme Extended Unicode.

  • Fitur visual kalebet gambar, fon, pidéo, téks kontras tinggi, sprite, sareng daérah transparan. Sadaya API asli ngadukung warna 24-bit, dikuantisasi sakumaha diperyogikeun ku terminal.

  • Lisensi Apache2, teu sapertos drama dina sababaraha kalakuan, nu lisénsi ncurses (anu dimungkinkeun ieu diringkeskeun salaku "reformulasi MIT-X11").

Kusabab release signifikan saméméhna 1.1.0, sajumlah badag fitur geus ditambahkeun. Parobahan utama:

  • Widget maca pikeun nuliskeun senar wangun bébas numbu ka senar bacaan

  • Widget subprosés pikeun ngahasilkeun subprosés, ngatur éta, sareng ngalirkeun hasil deui.

  • Linux 5.3+ ngagunakeun mékanisme clone3+pidfd anyar pikeun ngatur prosés tanpa kaayaan balapan.

  • widget Fdplane pikeun ngalirkeun data deskriptor file sawenang ka pesawat (dina subprocess nu diwangun). Duanana ngidinan callbacks kana gaya atawa lamun heunteu ngamanipulasi téks.

  • Rotasi pesawat sareng épék visual. Ngamuat visualisasi tina mémori. RGBA acak / BGRx blitting.

  • menu nu bisa disimpen dina boh (atawa duanana) tina planes luhur jeung handap.

  • Perbaikan ageung dina modeu Langsung.

  • Polyfills, gradién sareng téks kontras anu luhur.

  • Ditambahkeun Tetris salaku conto.

  • C ++ wrappers ti Marek Habersack kiwari mibanda kamampuhan pikeun maledog iwal (lamun diperlukeun).

  • Python jeung Rust FFI diropéa sarta diuji.

Video demo sareng koméntar pangarang
Buku "Hacking The Planét! kalawan Notcourses" ti pangarang

sumber: linux.org.ru

Tambahkeun komentar