Sempare Template EngineCopyright (C) 2019-2024 Sempare Limited
Kontakt: [email protected]
Lizenz: Apache v2.0 oder Sempare Limited Commercial Lizenz
Open Source: https://github.com/sempare/sempare-delphi-template-engine
FRAGEAIRE : https://docs.google.com/forms/d/e/1faipqlscioiidxvswk01fmfqyr9aj6khcgeiw4uau_esguztee7vywa/viewform
Vorlagenmotoren werden häufig in der Technologie verwendet, bei der Text durch Ersetzen von Variablen durch Werte einer Datenquelle angepasst werden muss. Beispiele, in denen dies stattfinden kann:
Die Sempare -Template -Engine ist eine kleine Templating (Scripting) -Motor für Delphi (Objektpascal), mit der Vorlagen einfach und effizient erstellt werden können, indem eine einfache und einfach zu verwendende API bereitgestellt wird.
Beispiel Verwendung:
program Example;
uses
Sempare.Template;
type
TInformation = record
name: string;
favourite_sport : string;
count : integer;
end;
begin
var tpl := Template.Parse(
'My name is <% name %>.'#13#10 +
'My favourite sport is <% favourite_sport %>.'#13#10 +
'Counting... <% for i := 1 to count %><% i %><% betweenitems %>, <% end %>' +
'Counting... <% for i := 1 to count ; print(i) ; betweenitems ; print(', '); onbegin; print('[ '); onend; print('] '); end %>'
);
var info : TInformation;
info.name := 'conrad';
info.favourite_sport := 'ultimate';
info.count := 3;
writeln(Template.Eval(tpl, info));
end.
Das Projekt ermöglicht es, dass fast jeder Typ im Vorlagenskript denferenzt wird.
Im obigen Beispiel sehen Sie, dass der "<%" Start und "%>" die Skriptanweisung beenden. In einer Skriptanweisung können Sie Variablen verweisen, Variablen zuweisen, Bedingungen für und während Schleifen verwenden und andere Vorlagen einbeziehen.
Hinweis In Beispielen in dieser Dokumentation kann ich die neueste Delphi -Syntax verwenden, z. B. Inline -Variablenerklärungen. Dies ist nicht rückwärtskompatibel, da sie in Delphi 10.2 eingeführt wurden und verwendet werden, um den in der Dokumentation dargestellten Code/Beispiele zu verkürzen. Die Codebasis versucht, so rückwärts kompatibel wie möglich zu sein.
Bitte "Star" das Projekt auf GitHub.

Es gibt ein paar Möglichkeiten, schnell loszulegen.
Probieren Sie die Demo aus, wenn Sie schnell eintauchen und mit der Template -Engine spielen möchten.
Die Sempare -Template -Engine ist nicht als vollständig vorgestellte Allzweck -Programmiersprache wie PHP gedacht, bei der das Skript selbst eine selbst enthaltene Programmiersprache sein könnte (aber die meisten Funktionen haben).
Sempare Template Engine zielt darauf ab, gerade genügend Funktionen bereitzustellen, damit Sie problemlos mit den Aspekten der Ansicht einer Vorlage arbeiten können. Jede erweiterte Funktionalität, die aus der Skriptumgebung erforderlich ist, sollte durch die benutzerdefinierten Funktionen in Objektpascal bereitgestellt werden.
Die Template Engine arbeitet mit modernen Versionen von Delphi.
Tests werden derzeit mit dem Dunitx Testframework ausgeführt.
Es wurde versucht, die neuesten Funktionen nicht zu verwenden, um die Abwärtskompatierbarkeit zu erleichtern. Die folgenden Versionen wurden getestet:
Es sollte keine plattformspezifischen Einschränkungen geben.
Schauen Sie sich sempare.template.compiler.inc an. Die folgenden Definition können gegebenenfalls definiert werden:
Die Sempare -Template -Engine für Delphi kann über den Embarcadero Getit -Manager installiert werden
Dadurch wird der SRC -Ordner zum Suchpfad hinzugefügt, damit Sie sofort arbeiten können.
Die Sempare -Template -Engine für Delphi kann über den Boss -Paket -Manager installiert werden.
Einfach rennen:
boss install sempare/sempare-delphi-template-engine
Die Sempare -Template -Engine für Delphi kann über den Delphinus -Paketmanager installiert werden.
Dadurch wird der SRC -Ordner zum Suchpfad hinzugefügt, damit Sie sofort arbeiten können.
Fügen Sie zunächst den SRC -Ordner zum Delphi -Suchpfad hinzu. Andernfalls gibt es einige Projekte, die Sie verwenden können:
Öffnen Sie Sempare.Template.engine.group.groupproj , die enthält:
Sempare.template.pkg.dproj
Das Kernvorlagenprojekt. (Laufzeit)
Sempare.template.tester.dproj
Mehr als 180 Unit -Tests
Demo SemparetemplatePlayground sempare.templateEngine.playground.dproj
Die Sempare Template Playground -Demo, die eine umfassende Erfahrung zum Testen der verschiedenen Vorlagensprachenfunktionen bietet.
Sie können Probleme auf Github aufwerfen und sie werden auf der Grundlage der Priorität behandelt.
Die meisten Funktionen haben einige grundlegende Tests. Wenn ein Fehler entdeckt wurde, fügen Sie bitte ein grundlegendes Test/Szenario hinzu, das das Problem nach Möglichkeit nachgibt, da dies den Untersuchungsprozess erleichtert.
Überprüfen Sie die Bedingungen und Bedingungen für die Kontibution, um zum Projekt beizutragen.
Bitte folgen Sie den folgenden Schritten, wenn Sie eine Funktion hinzufügen oder ein Update erstellen:
Der Bereitstellungsprozess basiert aus der Entwicklungszweig. Sobald wir uns für eine neue Version entscheiden, werden wir 'Dev' in 'Main' zusammenführen.
Die Sempare-Template-Engine ist zweilizenziert. Sie können es unter den Einschränkungen des Apache v2.0 kostenlos für Sie verwenden, oder Sie können es für die Verwendung unter der Sempare Limited Commercial Lizenz lizenzieren
Mit dem Dual-Licensing-Schema können Sie die Bibliothek unter der entsprechenden Lizenz verwenden und testen.
Eine kommerzielle Lizenz gewährt Ihnen das Recht, die Sempare -Vorlage -Engine in Ihren eigenen Anwendungen, Lizenzgebührenfreiheit und ohne Voraussetzung, Ihren Quellcode oder Änderungen an Sempare -Vorlage -Engine oder an eine andere Partei zu offenbaren, zu verwenden. Eine kommerzielle Lizenz hilft sicherzustellen, dass das Projekt mit kontinuierlicher Integration, Patches usw. aufrechterhalten wird.
Eine Supportgebühr von 70 USD pro Entwickler wird geschätzt.
Mit den folgenden Zahlungslinks können Sie sich schnell abonnieren. Bitte beachten Sie, dass die anfänglichen Lizenz- und Support -Links getrennt sind.
Die folgenden Zahlungslinks sind für Site -Lizenzen verfügbar. Bitte beachten Sie, dass die anfänglichen Lizenz- und Support -Links getrennt sind.
Bitte senden Sie eine E-Mail an [email protected], um eine Rechnung zu fordern, die alternative Zahlungsdetails enthält.
Support- und Verbesserungsanfragen, die von Benutzern eingereicht wurden, die für Support bezahlt werden, werden priorisiert. Neue Entwicklungen können je nach der für die Umsetzung erforderlichen Zeit zusätzliche Kosten verursachen.