Blueprint aurkeztu du, GTK-ren erabiltzaile-interfaze hizkuntza berria

James Westman-ek, GNOME Maps aplikazioaren garatzaileak, markatze-lengoaia berri bat aurkeztu zuen, Blueprint, GTK liburutegia erabiliz interfazeak eraikitzeko diseinatua. Blueprint marka GTK UI fitxategietan bihurtzeko konpiladore-kodea Python-en idatzita dago eta LGPLv3 lizentziapean banatzen da.

Proiektua sortzeko arrazoia GTKn erabiltzen diren UI interfazearen deskribapen-fitxategiak XML formatura lotzea da, eta hori gainkargatuta dago eta ez da komenigarria marka eskuz idazteko edo editatzeko. Blueprint formatua informazioaren aurkezpen argiagatik bereizten da eta, bere sintaxi irakurgarriari esker, interfaze-elementuetan aldaketak sortu, editatu eta ebaluatzerakoan ikus-interfaze-editore espezializatuen erabilerarik gabe egitea ahalbidetzen du.

Aldi berean, Blueprint-ek ez du GTK-n aldaketarik behar, GTK widget-eredua guztiz errepikatzen du eta GtkBuilder-en XML formatu estandarrean markaketa konpilatzen duen gehigarri gisa kokatzen da. Blueprint-en funtzionaltasuna guztiz koherentea da GtkBuilder-ekin, informazioa aurkezteko metodoa bakarrik desberdina da. Proiektu bat Blueprint-era migratzeko, gehitu blueprint-konpiladore dei bat eraikitze-scriptean kodea aldatu gabe. Gtk 4.0 erabiliz; txantiloia MyAppWindow : Gtk.ApplicationWindow { title: _("Nire aplikazioaren izenburua"); [titlebar] HeaderBar header_bar {} Etiketa { estiloak ["heading"] label: _("Kaixo, mundua!"); }}

Blueprint aurkeztu da - GTK-rako erabiltzaile-interfazeak eraikitzeko hizkuntza berria

GTK XML formatu estandarrerako konpilatzaileaz gain, GNOME Builder garapen-ingurune integratuko Blueprint euskarria duen plugin bat ere garatzen ari da. Blueprint-erako LSP zerbitzari bereizi bat (Language Server Protocol) garatzen ari da, eta LSP onartzen duten kode-editoreetan, Visual Studio Code barne, nabarmentzeko, erroreen azterketa, aholkuak bistaratzeko eta kodea osatzeko erabil daiteke.

Planak garatzeko planek programazio-elementu erreaktiboak gehitzea dakar markaketari, GTK4-n emandako Gtk.Expression klasea erabiliz inplementatuta. Proposatutako metodoa JavaScript web interfazeen garatzaileentzat ezagunagoa da eta interfazearen aurkezpena erlazionatutako datu-ereduarekin automatikoki sinkronizatzeko aukera ematen du, datu-aldaketa bakoitzaren ondoren erabiltzaile-interfazea indarrez eguneratu beharrik gabe.

Iturria: opennet.ru

Gehitu iruzkin berria