Pachetul diet-ng versiunea 1
Compilație de șabloane de dietă de generația următoare.

Pentru a utiliza acest pachet, rulați următoarea comandă în directorul rădăcină al proiectului:
Utilizare manuală
Introduceți următoarea dependență în secțiunea de dependențe a proiectului:
Dieta-NG
Dieta este un sistem generic de șabloane de compilare bazat pe o structură asemănătoare XML. Sintaxa este puternic influențată de pug (fostul "Jade") și de Haml și scoaterea HTML dinamică este obiectivul principal. Suportă module de transformare conectabile, precum și module de ieșire, astfel încât sunt posibile multe alte utilizări.
Consultați Specificația preliminară pentru o prezentare generală a sintaxei.
Acest depozit conține implementarea succesivă desemnată a modulului vibe.templ.diet din vibe.d. Starea actuală este aproape stabilă și este completă și gata pentru testarea pre-producție.
Exemplu
Ieșire HTML generată:
Obiective de implementare
- Fii cât mai rapid posibil. Aceasta înseamnă mutarea cât mai multor operații din timpul de rulare pentru a compila timpul posibil.
- Evitați orice alocare de memorie dinamică (cu excepția cazului în care se întâmplă în codul de utilizator)
- Lăsați codul generat să fie complet @safe (cu excepția cazului în care codul de utilizator încorporat nu este)
- Fiți personalizabili (filtre, traducere, transformări DOM, generatoare de ieșiri), fără a recurge la starea bibliotecii globale
- Operați pe intervale. Ieșirea HTML este scrisă într-un interval de ieșire, intervalele de intrare sunt acceptate în cadrul interpolărilor de șiruri și filtrele/suportul de traducere se presupune că pot fi implementate folosind intervale (ultima parte nu este încă implementată).
Memorarea în cache a șabloanelor HTML experimentale
Deoarece compilarea șabloanelor complexe de dietă poate încetini procesul general de compilare, biblioteca oferă o opțiune de memorare în cache și reutilizare a rezultatelor. Este activat prin definirea constantei de versiune DietUseCache ("versiuni": ["DietUseCache"] în dub.json sau versiunile "DietUseCache" în dub.sdl). Nu este recomandat să utilizați această caracteristică în afara ciclului obișnuit de dezvoltare editare-compilație, mai ales nu pentru versiunile de versiuni.
Odată activat, compilatorul de șabloane va căuta fișiere * _cached _ #####. D în folderul „vizualizări /”, unde * constă din calea completă a șablonului Dieta și ##### reprezintă un hash unic valoare care identifică conținutul șablonului, precum și cele incluse/extinse. Dacă este găsit, va folosi pur și simplu conținutul acelui fișier în loc să parcurgă întregul proces de compilare.
La runtime, în timpul inițializării, programul va afișa apoi conținutul tuturor șabloanelor recent compilate în folderul „vizualizări /”. Din acest motiv este în prezent important ca programul să fie rulat cu directorul de lucru curent setat în directorul de pachete! Un dezavantaj al acestei metode este că șabloanele învechite din memoria cache nu vor fi șterse automat. Este necesar să ștergeți manual din când în când toate fișierele * _cached _ *. D.