Blueprint har presenterats - ett nytt sprÄk för att bygga anvÀndargrÀnssnitt för GTK

James Westman, utvecklare av GNOME Maps, har presenterat ett nytt mÀrkningssprÄk som kallas Blueprint, avsett för att bygga grÀnssnitt med hjÀlp av GTK-biblioteket. Koden för kompileraren som omvandlar Blueprint-mÀrkningen till GTK UI-filer Àr skriven i Python och distribueras under LGPLv3-licensen.

Som anledning till skapandet av projektet anges kopplingen mellan de GTK UI-filer som beskriver grÀnssnittet och XML-formatet, som Àr överbelastat och inte sÀrskilt anvÀndarvÀnligt för att skriva eller redigera mÀrkning manuellt. Blueprint-formatet kÀnnetecknas av tydlig information och har en lÀsbar syntax som gör att man kan undvika att anvÀnda specialiserade visuella grÀnssnittredigerare vid skapande, redigering och bedömning av förÀndringar i grÀnssnittselement.

Blueprint krÀver inga Àndringar i GTK, replicerar helt GTK:s widgetmodell och positioneras som ett lager som kompilerar mÀrkningen till det standard XML-formatet för GtkBuilder. Funktionaliteterna i Blueprint motsvarar helt och hÄllet GtkBuilder, det skiljer sig bara i informationspresentation. För att översÀtta projektet till Blueprint rÀcker det med att lÀgga till anropet blueprint-compiler i byggscenariot utan att Àndra koden. using Gtk 4.0; template MyAppWindow : Gtk.ApplicationWindow { title: _(«My App Title»); [titlebar] HeaderBar header_bar {} Label { styles [«heading»] label: _(«Hello, world!»); } }

Blueprint har presenterats - ett nytt sprÄk för att bygga anvÀndargrÀnssnitt för GTK

Förutom kompileraren till det standard XML-formatet GTK utvecklas Àven en plugin med stöd för Blueprint för den integrerade utvecklingsmiljön GNOME Builder. En separat LSP-server (Language Server Protocol) för Blueprint utvecklas ocksÄ, vilket kommer att kunna anvÀndas för syntaxmarkering, felanalys, verktygstips och automatisk komplettering av kod i LSP-stödjande kodredigerare, inklusive Visual Studio Code.

Bland planerna för utvecklingen av Blueprint nÀmns tillÀgg av reaktiva programmeringselement i mÀrkningen, implementerat med hjÀlp av klassen Gtk.Expression, som tillhandahÄlls i GTK4. Den föreslagna metoden Àr mer bekant för utvecklare av webbgrÀnssnitt i JavaScript och möjliggör automatisk synkronisering av grÀnssnittets presentation med den relaterade datamodellen, utan att det krÀvs att anvÀndargrÀnssnittet uppdateras manuellt efter varje databasÀndring.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster