notcurses v1.4.1 ကို ထုတ်လွှတ်လိုက်သည် - ခေတ်မီသော စာသားအင်တာဖေ့စ်များအတွက် စာကြည့်တိုက်တစ်ခု


notcurses v1.4.1 ကို ထုတ်လွှတ်လိုက်သည် - ခေတ်မီသော စာသားအင်တာဖေ့စ်များအတွက် စာကြည့်တိုက်တစ်ခု

notcurses v1.4.x စာကြည့်တိုက်၏ ဗားရှင်းအသစ် ထွက်ရှိလာပါပြီ “the saga continue! ဝူတန်! ဝူတန်!"

Notcurses သည် ခေတ်မီ terminal emulator များအတွက် TUI စာကြည့်တိုက်တစ်ခုဖြစ်သည်။ ကျိန်ဆဲခြင်းမဟုတ်ပါ။ C++-safe ခေါင်းစီးများကို အသုံးပြု၍ C ဖြင့် ရေးသားထားသည်။ ထုပ်ပိုးခြင်းများ ပြုလုပ်နိုင်ပါသည်။ သံခြေး, C ++ и Python ကို.

အဲဒါဘာလဲ- ခေတ်မီ terminal emulators များတွင် ရှုပ်ထွေးသော TUI များကို ရိုးရှင်းစေပြီး တောက်ပသောအရောင်များနှင့် ယူနီကုဒ်ကို အများဆုံးပံ့ပိုးပေးသည့် စာကြည့်တိုက်တစ်ခု။ ကျိန်စာများထံ လွှဲအပ်ထားသော အလုပ်များစွာကို notcurses (နှင့် အပြန်အလှန်အားဖြင့်) အသုံးပြုနိုင်သည်။

၎င်းမဟုတ်သောအရာ- X/Open ကျိန်စာများ သို့မဟုတ် ရှိပြီးသားစနစ်များပေါ်တွင် ncurses များအတွက် အစားထိုးမှုတစ်ခု။

Notcurses သည် Single UNIX Specification ၏ တစ်စိတ်တစ်ပိုင်းအဖြစ် ပေးထားသည့် X/Open Curses API ကို ဆန့်ကျင်သည်။ ဤသတ်မှတ်ချက်သည် ကြာမြင့်နေပြီဖြစ်ပြီး၊ ဥပမာ၊ အညွှန်းမဟုတ်သော 24-ဘစ်အရောင်ကဲ့သို့သော terminal လုပ်ဆောင်နိုင်စွမ်းကို ပံ့ပိုးမထားပါ။ ထို့ကြောင့်၊ notcurses သည် ကျိန်စာများအတွက် အစားထိုးမဟုတ်ပါ။ ၎င်းသည် သယ်ဆောင်ရလွယ်ကူပြီး နည်းပါးသော ဟာ့ဒ်ဝဲတွင် သေချာပေါက် စမ်းသပ်ထားသည်။
ဖြစ်နိုင်သည့်အခါတိုင်း၊ notcurses သည် ncurses ပါသော terminfo စာကြည့်တိုက်ကို အသုံးပြုပြီး ၎င်း၏သယ်ဆောင်ရလွယ်ကူခြင်းမှ များစွာအကျိုးရှိသည်။
Notcurses သည် အလုပ်ရုံများ၊ ဖုန်းများ၊ လက်ပ်တော့များနှင့် တက်ဘလက်များတွင် အသုံးပြုသူများနှင့် အပြန်အလှန် ဆက်သွယ်ရန်အတွက် အဆင့်မြင့် လုပ်ဆောင်နိုင်စွမ်းကို ဖွင့်ပေးပါသည်။

အဘယ်ကြောင့် ဤစံမဟုတ်သော စာကြည့်တိုက်ကို အသုံးပြုသနည်း။

  • ကြိုးမျိုးစုံပရိုဂရမ်များတွင် ကြိုးဘေးကင်းရေးနှင့် ထိရောက်စွာအသုံးပြုမှုသည် အစကတည်းက ဒီဇိုင်းထည့်သွင်းစဉ်းစားထားခြင်းဖြစ်သည်။

  • X/Open နှင့် နှိုင်းယှဉ်ပါက ဖော်မက်ပိုကောင်းသော API

    • Namespace နှင့် တိုက်မိခြင်းကို ရှောင်ရှားရန် ထုတ်ယူထားသော ခွဲခြားသတ်မှတ်မှုများအား ရှေ့ဆက်ထားသည်။

    • စာကြည့်တိုက်အရာဝတ္ထုဖိုင်သည် အနည်းငယ်မျှသာသော ဇာတ်ကောင်များကို ထုတ်ပေးသည်။ လက်တွေ့ကျသောနေရာတွင်၊ static code ကို လိုင်းခေါင်းစီးများအတွက်သာ အသုံးပြုပါသည်။ ၎င်းသည် compiler ကို ပိုကောင်းအောင်ပြုလုပ်ရန် ပိုမိုလွယ်ကူစေပြီး load time ကိုလျှော့ချစေသည်။

  • API များအားလုံးသည် မူလအားဖြင့် universal character set (Unicode) ကို ပံ့ပိုးပေးပါသည်။ ဆဲလ် API သည် အယူအဆအပေါ် အခြေခံသည်။ Unicode ၏ Extended Grapheme Cluster.

  • ရုပ်ပုံများ၊ ဖောင့်များ၊ ဗီဒီယိုများ၊ ဆန့်ကျင်ဘက်မြင့်မားသော စာသားများ၊ sprites နှင့် ဖောက်ထွင်းမြင်ရသည့် ဧရိယာများ အပါအဝင် အမြင်အာရုံအင်္ဂါရပ်များ။ APIs များအားလုံးသည် မူရင်းအားဖြင့် 24-bit အရောင်ကို ပံ့ပိုးပေးသည်၊ terminal မှ လိုအပ်သလို quanted လုပ်ပါသည်။

  • Apache2 လိုင်စင်နှင့် မတူပါ။ ဒရာမာ များစွာသောလုပ်ရပ်များတွင် ncurses လိုင်စင်ဖြစ်သည့် (၎င်းကို "MIT-X11 ၏ပြုပြင်ပြောင်းလဲမှု" အဖြစ် အကျဉ်းချုပ်ဖော်ပြထားသည်)။

ယခင်သိသာထင်ရှားသောထွက်ရှိမှု 1.1.0 မှစတင်၍ လုပ်ဆောင်ချက်အများအပြားကို ထည့်သွင်းထားသည်။ အဓိကပြောင်းလဲမှုများ-

  • Reading strings များနှင့် ချိတ်ဆက်ထားသော free-form strings များကို ထည့်သွင်းရန်အတွက် Reading widget

  • လုပ်ငန်းစဉ်ခွဲတစ်ခုကို မွေးထုတ်ခြင်း၊ စီမံခန့်ခွဲခြင်းနှင့် ၎င်း၏ရလဒ်များကို ပြန်လည်ထုတ်လွှင့်ခြင်းအတွက် လုပ်ငန်းစဉ်ခွဲဝစ်ဂျက်တစ်ခု။

  • Linux 5.3+ သည် ပြိုင်ဆိုင်မှုအခြေအနေမရှိဘဲ လုပ်ငန်းစဉ်များကို စီမံခန့်ခွဲရန် clone3+pidfd ယန္တရားအသစ်ကို အသုံးပြုသည်။

  • Fdplane widget သည် လေယာဉ်သို့ မထင်သလို ဖိုင်ဖော်ပြချက်တစ်ခုအား တိုက်ရိုက်ထုတ်လွှင့်ခြင်း (လုပ်ငန်းစဉ်ခွဲတည်ဆောက်ထားသည့်)။ နှစ်ခုလုံးသည် ပြန်ခေါ်ခြင်းကို ပုံစံပြုရန် သို့မဟုတ် အခြားနည်းဖြင့် စာသားကို စီမံရန် ခွင့်ပြုသည်။

  • လေယာဉ်လှည့်ခြင်းနှင့် အမြင်အာရုံသက်ရောက်မှု။ မှတ်ဉာဏ်မှ ပုံရိပ်ယောင်များကို တင်နေသည်။ ကျပန်း RGBA/BGRx မှုန်ဝါးဝါး။

  • မီနူးကို အပေါ်နှင့်အောက် လေယာဉ်များ၏ နှစ်ခုလုံး (သို့မဟုတ်) နှစ်ခုလုံးတွင် ထားရှိနိုင်ပါသည်။

  • တိုက်ရိုက်မုဒ်တွင် ကြီးမားသောတိုးတက်မှုများ။

  • Polyfills၊ gradients နှင့် high contrast စာသား။

  • ဥပမာအနေနဲ့ Tetris ကိုထည့်ထားတယ်။

  • Marek Habersack မှ C++ wrappers များသည် ယခုခြွင်းချက် (လိုအပ်ပါက) ကို ချွင်းချက်ချနိုင်စွမ်းရှိသည်။

  • Python နှင့် Rust FFI ကို မွမ်းမံပြီး စမ်းသပ်ထားသည်။

စာရေးသူ၏မှတ်ချက်များနှင့်အတူဗီဒီယိုသရုပ်ပြ
“Hacking The Planet! Notcourses နှင့်အတူ" စာရေးသူထံမှ

source: linux.org.ru

မှတ်ချက် Add