notcurses v1.4.1 නිකුත් කර ඇත - නවීන පෙළ අතුරුමුහුණත් සඳහා පුස්තකාලයකි


notcurses v1.4.1 නිකුත් කර ඇත - නවීන පෙළ අතුරුමුහුණත් සඳහා පුස්තකාලයකි

notcurses v1.4.x පුස්තකාලයේ නව අනුවාදයක් නිකුත් කර ඇත “The saga continues! wu-tang! wu-tang!"

Notcurses යනු නවීන පර්යන්ත ඉමුලේටර් සඳහා TUI පුස්තකාලයකි. වචනාර්ථයෙන් පරිවර්තනය - ශාප නොවේ. එය C++-ආරක්ෂිත ශීර්ෂ භාවිතා කරමින් C වලින් ලියා ඇත. සඳහා දවටන තිබේ මලකඩ, සී ++ и Python මීට උදාහරණ.

එය කුමක්ද: නවීන පර්යන්ත ඉමුලේටර් මත සංකීර්ණ TUI සරල කරන පුස්තකාලයක්, දීප්තිමත් වර්ණ සහ යුනිකෝඩ් උපරිම ලෙස සහාය දක්වයි. ශාප සඳහා පවරා ඇති බොහෝ කාර්යයන් නොට්කර්ස් භාවිතයෙන් සිදු කළ හැකිය (සහ අනෙක් අතට).

එය එසේ නොවේ: X/Open ශාපවල ගැළපෙන ක්‍රියාත්මක කිරීම හෝ පවතින පද්ධති මත ncurses වෙනුවට ආදේශ කිරීම.

Notcurses තනි UNIX පිරිවිතරයේ කොටසක් ලෙස ලබා දී ඇති X/Open Curses API අවලංගු කරයි. මෙම පිරිවිතර බොහෝ කල් යල්පැන ඇති අතර, උදාහරණයක් ලෙස, සුචිගත නොවන 24-bit වර්ණය වැනි පර්යන්ත ක්‍රියාකාරීත්වයට සහය නොදක්වයි. එනිසා, notcurses යනු ශාප සඳහා ආදේශකයක් නොවේ. එය අඩු අතේ ගෙන යා හැකි අතර, නියත වශයෙන්ම අඩු දෘඪාංග මත පරීක්ෂා කර ඇත.
හැකි සෑම විටම, notcurses ncurses සමඟ සපයා ඇති terminfo පුස්තකාලය භාවිතා කරයි, එහි අතේ ගෙන යා හැකි හැකියාවෙන් විශාල ප්‍රතිලාභ ලබයි.
Notcurses වැඩපොළවල්, දුරකථන, ලැප්ටොප් සහ ටැබ්ලට් පරිගණකවල පරිශීලකයන් සමඟ අන්තර් ක්‍රියා කිරීම සඳහා උසස් ක්‍රියාකාරීත්වයක් විවෘත කරයි.

මෙම සම්මත නොවන පුස්තකාලය භාවිතා කරන්නේ ඇයි?

  • බහු-නූල් වැඩසටහන් වල නූල් ආරක්ෂාව සහ කාර්යක්ෂම භාවිතය ආරම්භයේ සිටම සැලසුම් සලකා බැලීමකි.

  • X/Open හා සසඳන විට වඩාත් හොඳින් හැඩගැස්වූ API:

    • නිර්යාත හැඳුනුම්කාරක නාම අවකාශයේ ගැටීම් වළක්වා ගැනීම සඳහා උපසර්ග කර ඇත.

    • පුස්තකාල වස්තුව ගොනුව අවම අක්ෂර කට්ටලයක් අපනයනය කරයි. ප්‍රායෝගික, ස්ථිතික කේතය රේඛා ශීර්ෂ සඳහා පමණක් භාවිතා වන විට. මෙය සම්පාදකය ප්‍රශස්ත කිරීම පහසු කරවන අතර බර පැටවීමේ කාලය අඩු කරයි.

  • සියලුම API විශ්වීය අක්ෂර කට්ටලයට (යුනිකෝඩ්) දේශීයව සහය දක්වයි. සෛල API සංකල්පය මත පදනම් වේ යුනිකෝඩ් හි විස්තීරණ ග්‍රැෆිම් පොකුර.

  • රූප, අකුරු, වීඩියෝ, ඉහළ ප්‍රතිවිරුද්ධ පෙළ, ස්ප්‍රයිට් සහ විනිවිද පෙනෙන ප්‍රදේශ ඇතුළු දෘශ්‍ය විශේෂාංග. සියලුම APIs ස්වදේශිකව 24-bit වර්ණයට සහය දක්වයි, ටර්මිනලයට අවශ්‍ය පරිදි ප්‍රමාණ කර ඇත.

  • Apache2 බලපත්‍රය, මෙන් නොව නාට්ය ක්‍රියා කිහිපයක, එනම් ncurses බලපත්‍රය (දෙවැන්න "MIT-X11 හි ප්‍රතිසංස්කරණයක්" ලෙස සාරාංශ කර ඇත).

පෙර සැලකිය යුතු නිකුතුව 1.1.0 සිට, විශේෂාංග විශාල සංඛ්යාවක් එකතු කර ඇත. ප්රධාන වෙනස්කම්:

  • කියවීමේ තන්තුවලට සම්බන්ධ නිදහස් ආකෘති තන්තු ඇතුළත් කිරීම සඳහා කියවීමේ විජට්

  • උපක්‍රියාවලියක් බිහි කිරීම, එය කළමනාකරණය කිරීම සහ එහි ප්‍රතිඵල ආපසු ප්‍රවාහය කිරීම සඳහා උප ක්‍රියාවලි විජට් එකක්.

  • Linux 5.3+ ධාවන තත්ත්වයකින් තොරව ක්‍රියාවලි කළමනාකරණය කිරීමට නව clone3+pidfd යාන්ත්‍රණය භාවිතා කරයි.

  • තලයට අත්තනෝමතික ගොනු විස්තරයක් ප්‍රවාහ කිරීම සඳහා Fdplane විජට් (උප ක්‍රියාවලිය ගොඩනගා ඇත). දෙකම විලාසය කිරීමට හෝ වෙනත් ආකාරයකින් පෙළ හැසිරවීමට ආපසු කැඳවීමට ඉඩ දෙයි.

  • ගුවන් යානා භ්රමණය සහ දෘශ්ය ප්රයෝග. මතකයෙන් දෘශ්‍යකරණයන් පූරණය කරමින්. අහඹු RGBA/BGRx blitting.

  • මෙනුව ඉහළ සහ පහළ ගුවන් යානා (හෝ දෙකම) මත තැබිය හැකිය.

  • සෘජු මාදිලියේ විශාල වැඩිදියුණු කිරීම්.

  • Polyfills, Gradients සහ ඉහළ ප්‍රතිවිරුද්ධ පෙළ.

  • උදාහරණයක් ලෙස Tetris එකතු කරන ලදී.

  • Marek Habersack's C++ wrappers වලට දැන් ව්‍යතිරේක (අවශ්‍ය නම්) විසි කිරීමේ හැකියාව ඇත.

  • Python සහ Rust FFI යාවත්කාලීන කර පරීක්ෂා කර ඇත.

කර්තෘගේ අදහස් සහිත වීඩියෝ demo
පොත "ග්රහලෝකය හැක් කිරීම! Notcourses සමඟ" කතුවරයාගෙන්

මූලාශ්රය: linux.org.ru

අදහස් එක් කරන්න