Пакет дієтичної версії 1
Компілятор шаблонів дієт наступного покоління.

Щоб використовувати цей пакет, запустіть таку команду в кореневому каталозі проекту:
Ручне використання
Додайте таку залежність до розділу залежностей вашого проекту:
Дієта-НГ
Дієта - це загальна система шаблонів часу компіляції, заснована на XML-подібній структурі. Синтаксис знаходиться під сильним впливом мопса (раніше "Джейд") і Haml, і вихід динамічного HTML є основною метою. Він підтримує модулі трансформації, що підключаються, а також вихідні модулі, завдяки чому можливо багато інших застосувань.
Див. Попередню специфікацію для огляду синтаксису.
Це сховище містить призначеного наступника реалізації модуля vibe.templ.diet vibe.d. Поточний стан майже стабільний, функціональний і готовий до передвиробничого тестування.
Приклад
Вихідні дані HTML:
Цілі реалізації
- Будь як можна швидше. Це означає переміщення якомога більшої кількості операцій із часу виконання на час компіляції.
- Уникайте будь-якого динамічного розподілу пам'яті (якщо це не відбувається в коді користувача)
- Нехай згенерований код буде повністю @safe (якщо вбудований код користувача не є)
- Будьте настроюваними (фільтри, переклад, перетворення DOM, генератори виводу), не вдаючись до загального стану бібліотеки
- Дійте на діапазонах. Вихід HTML записується у вихідний діапазон, вхідні діапазони підтримуються в межах інтерполяції рядків, а підтримка фільтрів/перекладу повинна бути реалізована за допомогою діапазонів (остання частина ще не реалізована).
Експериментальне кешування шаблонів HTML
Оскільки компіляція складних шаблонів Diet може уповільнити загальний процес компіляції, бібліотека надає можливість кешування та повторного використання результатів. Це вмикається шляхом визначення константи версії DietUseCache ("версії": ["DietUseCache"] у dub.json або версії "DietUseCache" у dub.sdl). Не рекомендується використовувати цю функцію за межами звичайного циклу розробки під час редагування-компіляції, особливо не для збірок випусків.
Після увімкнення компілятор шаблонів шукатиме файли * _cached _ #####. D у папці "views /", де * складається з повного шляху шаблону Diet, а ##### представляє унікальне хеш-значення що визначає вміст шаблону, а також включений/розширений. Якщо буде знайдено, він просто використовуватиме вміст цього файлу, замість того, щоб проходити весь процес компіляції.
Під час виконання, під час ініціалізації, програма виводить вміст усіх щойно скомпільованих шаблонів у папку "views /". З цієї причини це зараз важливо, щоб програма запускалася з поточним робочим каталогом, встановленим на каталог пакунків! Недоліком цього методу є те, що застарілі кешовані шаблони не видаляються автоматично. Час від часу необхідно вручну очищати всі файли * _cached _ *. D.