template-engine
Text templating engine for PascalAI. Render templates with variables, register helper functions, compile templates for reuse, and render from files.
Install
ppm install template-engine
Usage Example
uses template_engine;
// Simple variable substitution
var vars := Dictionary();
vars['name'] := 'Alice';
vars['role'] := 'admin';
var html := Render('Hello, {{name}}! Role: {{role}}', vars);
// Render from a template file
var page := RenderFile('templates/index.html', vars);
// Register custom helper functions
RegisterHelper('upper', function(s: String): String begin
Result := ToUpper(s);
end);
var result := Render('{{upper name}}', vars);
// Pre-compile for performance
var tmpl := Compile('Hello, {{name}}!');
var out := tmpl.Render(vars);
Features
Mustache-style {{variable}} substitution
RenderFile: load and render template files
SetVar: set global template variables
RegisterHelper: add custom transformation functions
Compile: pre-compile templates for repeated use
Conditional blocks: {{#if cond}}...{{/if}}
Loop blocks: {{#each items}}...{{/each}}