SEMPARE模板引擎版权(C)2019-2024 Sempare Limited
许可证:Apache v2.0或Sempare有限的商业许可证
开源:https://github.com/sempare/sempare-delphi-template-engine
问题:https://docs.google.com/forms/d/e/1faipqlscioiidxvswk01fmfqyr9aj6khcgeiw4uau_esguztee7vywa/viewwa/viewform
模板发动机经常用于技术中,其中需要通过将变量替换为来自数据源的值来自定义文本。可能发生的示例:
SEMPARE模板引擎是Delphi(Object Pascal)的小型模板(脚本)引擎,可通过提供易于使用易于使用的API来轻松有效地创建模板。
示例用法:
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.
该项目允许在模板脚本中删除几乎任何类型。
在上面的示例中,您可以看到“ <%”开始和'%>'分别结束脚本语句。在脚本语句中,您可以参考变量,分配变量,使用条件,循环和循环,并包括其他模板。
注意在本文档中的示例中,我可以使用最新的Delphi语法,例如内联变量声明。这不是向后兼容,因为它们是在Delphi 10.2中引入的,用于缩短文档中所示的代码/示例。代码库将尝试尽可能向后兼容。
请在Github上“明星”该项目。

有几种方法可以快速入门。
如果您想快速潜水并使用模板引擎播放,请尝试演示。
SEMPARE模板引擎并非打算是一种完整的通用编程语言,例如PHP,脚本本身可能是一种自包含的编程语言(但确实具有大多数功能)。
SEMPARE模板引擎旨在提供足够的功能,以使您可以轻松地处理模板的“视图”方面。脚本环境所需的任何增强功能都应由对象Pascal编写的自定义功能提供。
模板引擎可与现代版本的Delphi一起使用。
当前使用Dunitx TestFramework进行测试。
已经尝试不使用最新功能来简化向后兼容性。已经测试了以下版本:
不应有特定限制的平台。
看看sempare.template.compiler.inc。以下定义可以在适当的情况下定义:
可以通过Embarcadero Getit Manager安装Delphi的SEMPARE模板引擎
这将将SRC文件夹添加到搜索路径中,以便您可以立即开始工作。
Delphi的SEMPARE模板引擎可以通过Boss Package Manager安装。
只需运行:
boss install sempare/sempare-delphi-template-engine
Delphi的SEMPARE模板引擎可以通过Delphinus软件包管理器安装。
这将将SRC文件夹添加到搜索路径中,以便您可以立即开始工作。
首先将SRC文件夹添加到Delphi搜索路径。否则,您可以使用一些项目:
打开sempare.template.engine.group.groupproj ,其中包括:
sempare.template.pkg.dproj
核心模板项目。 (运行时)
sempare.template.tester.dproj
180多个单位测试
demo semparetemplateplayground sempare.templateengine.playground.dproj
SEMPARE模板游乐场演示为测试各种模板语言功能提供丰富的体验。
您可以在Github上提出问题,将根据优先级解决问题。
大多数功能都有一些基本测试。如果发现错误,请在可能的情况下包括一个基本的测试/方案,复制问题,因为这将减轻调查过程。
审查对项目贡献的连续性条款和条件。
添加功能或进行更新时,请遵循以下步骤:
部署过程基于开发分支。一旦我们决定推出新版本,我们将“开发”合并为“主要”。
SEMPARE模板引擎是双许可的。您可以选择在Apache v2.0的限制下免费使用它,或者您可以在Sempare Limited商业许可证下使用它许可使用它
双许可方案允许您根据适当的许可使用和测试库。
商业许可证授予您在您自己的应用程序中使用Sempare模板引擎的权利,无特许权使用费,并且无需披露您的源代码或对Sempare模板引擎或任何其他方的任何修改。商业许可有助于确保通过连续集成,补丁等维护项目。
值得赞赏的是,每个开发人员的支持费为70美元。
以下付款链接允许您快速订阅。请注意,初始许可证和支持链接是单独的。
以下付款链接可用于网站许可。请注意,初始许可证和支持链接是单独的。
请发送电子邮件至[email protected],要求发票,其中包含替代付款详细信息。
用户提交的支持和增强请求将优先考虑支付支持。根据实施所需的时间,新的发展可能会产生额外的成本。