GTK အတွက် အသုံးပြုသူ အင်တာဖေ့စ်ဘာသာစကားအသစ် Blueprint ကို မိတ်ဆက်ခဲ့သည်။

GNOME Maps အပလီကေးရှင်း၏ developer James Westman သည် GTK စာကြည့်တိုက်ကို အသုံးပြု၍ အင်တာဖေ့စ်များတည်ဆောက်ရန်အတွက် ဒီဇိုင်းထုတ်ထားသော markup language အသစ်ဖြစ်သော Blueprint ကိုမိတ်ဆက်ပေးခဲ့သည်။ Blueprint markup ကို GTK UI ဖိုင်များအဖြစ်သို့ပြောင်းလဲခြင်းအတွက် compiler ကုဒ်ကို Python ဖြင့်ရေးသားထားပြီး LGPLv3 လိုင်စင်အောက်တွင် ဖြန့်ဝေထားသည်။

ပရောဂျက်ကို ဖန်တီးရခြင်းအကြောင်းရင်းမှာ GTK တွင်အသုံးပြုသည့် UI မျက်နှာပြင်ဖော်ပြချက်ဖိုင်များကို XML ဖော်မတ်သို့ ပေါင်းစပ်ထားခြင်းဖြစ်ပြီး၊ များလွန်းနေပြီး markup ကို ကိုယ်တိုင်ရေးသားခြင်း သို့မဟုတ် တည်းဖြတ်ခြင်းအတွက် အဆင်မပြေပါ။ Blueprint ဖော်မတ်ကို ၎င်း၏ ရှင်းလင်းပြတ်သားသော သတင်းအချက်အလက် တင်ပြမှုဖြင့် ပိုင်းခြားထားပြီး ၎င်း၏ ဖတ်ရှုနိုင်သော အထားအသိုကြောင့်၊ အင်တာဖေ့စ်ဒြပ်စင်များကို ဖန်တီးခြင်း၊ တည်းဖြတ်ခြင်းနှင့် အကဲဖြတ်ခြင်းများ ပြုလုပ်သည့်အခါ အထူးပြု အမြင်အာရုံ တည်းဖြတ်သူများ အသုံးမပြုဘဲ လုပ်ဆောင်နိုင်စေသည်။

တစ်ချိန်တည်းမှာပင်၊ Blueprint သည် GTK တွင် အပြောင်းအလဲများမလိုအပ်ပါ၊ GTK ဝစ်ဂျက်မော်ဒယ်ကို လုံးလုံးအတုယူကာ GtkBuilder အတွက် စံ XML ဖော်မတ်သို့ markup ပြုစုသည့် add-on အဖြစ် နေရာချထားပါသည်။ Blueprint ၏လုပ်ဆောင်နိုင်စွမ်းသည် GtkBuilder နှင့် အပြည့်အဝကိုက်ညီသည်၊ သတင်းအချက်အလက်တင်ပြသည့်နည်းလမ်းကသာကွဲပြားသည်။ ပရောဂျက်တစ်ခုကို Blueprint သို့ပြောင်းရွှေ့ရန်၊ ကုဒ်ကိုမပြောင်းဘဲ build script သို့ blueprint-compiler ခေါ်ဆိုမှုတစ်ခုကို ထည့်လိုက်ရုံပါပဲ။ Gtk 4.0 ကိုအသုံးပြု; နမူနာပုံစံ MyAppWindow : Gtk.ApplicationWindow { title: _("My App Title"); [titlebar] HeaderBar header_bar {} အညွှန်း { styles ["heading"] label: _("Hello, world!"); } }

Blueprint မိတ်ဆက်ခဲ့သည် - GTK အတွက် အသုံးပြုသူ အင်တာဖေ့စ်များ တည်ဆောက်ရန်အတွက် ဘာသာစကားအသစ်

စံ GTK XML ဖော်မတ်သို့ compiler အပြင်၊ GNOME Builder ပေါင်းစပ်ဖွံ့ဖြိုးတိုးတက်မှုပတ်ဝန်းကျင်အတွက် Blueprint ပံ့ပိုးမှုပါရှိသော ပလပ်အင်တစ်ခုလည်း ဖွံ့ဖြိုးတိုးတက်လျက်ရှိသည်။ Visual Studio Code အပါအဝင် LSP ကိုပံ့ပိုးပေးသော ကုဒ်တည်းဖြတ်သူများတွင် မီးမောင်းထိုးပြခြင်း၊ အမှားအယွင်းခွဲခြမ်းစိတ်ဖြာခြင်း၊ အရိပ်အမြွက်ပြသခြင်းနှင့် ကုဒ်ဖြည့်စွက်ခြင်းတို့အတွက် အသုံးပြုနိုင်သည့် Blueprint အတွက် သီးခြား LSP ဆာဗာ (Language Server Protocol) ကို တီထွင်လျက်ရှိသည်။

Blueprint ဖွံ့ဖြိုးတိုးတက်မှုအစီအစဥ်တွင် GTK4 တွင်ပေးထားသည့် Gtk.Expression အတန်းအစားကို အသုံးပြု၍ မှတ်သားထားသော ဓာတ်ပြုမှုပရိုဂရမ်းမင်းဒြပ်စင်များ ထပ်တိုးခြင်းပါဝင်သည်။ အဆိုပြုထားသောနည်းလမ်းသည် JavaScript ဝဘ်အင်တာဖေ့စ်ဆော့ဖ်ဝဲရေးသားသူများနှင့် ပိုမိုရင်းနှီးပြီး ဒေတာတစ်ခုစီတိုင်းပြီးနောက် အသုံးပြုသူအင်တာဖေ့စ်ကို အတင်းအကျပ်မွမ်းမံရန်မလိုအပ်ဘဲ၊ ဆက်စပ်ဒေတာမော်ဒယ်နှင့်အတူ အင်တာဖေ့စ်တင်ဆက်မှုကို အလိုအလျောက်ထပ်တူပြုနိုင်စေပါသည်။

source: opennet.ru

မှတ်ချက် Add