我正在使用 StringTemplate 来生成 HTML,我希望能够合并STGroupFile
,STGroupDir
这样我就有一个组文件目录。这样,我可以在一个文件中包含多个模板,也可以组合来自多个文件的模板。似乎没有对此的支持,但我想我会看看是否可能忽略了某些东西。
如果您想知道我为什么要这样做,让我们看一下 StringTemplate 文档中的一个示例:
test(name) ::= "$name:bracket()$" // apply bracket template to each name
bracket(x) ::= "[$x$]" // surround parameter with square brackets
假设以上都在一个文件(test.st)中并且我们正在使用STGroupDir
,它将无法解析“bracket(x)”模板,除非它在一个单独的文件(bracket.st)中。在这种特殊情况下,括号就像一个本地助手,可用于清理主模板。在这种情况下,您可能不希望括号在 test.st 之外可见。
但是,如果您想创建一个简单的帮助模板库,您可能希望将它们全部放在一个文件中,并让其他文件中的模板可以访问它们中的每一个。