是否可以组合组文件和组目录?

时间:2013-03-26 18:55:39

标签: stringtemplate-4

我正在使用StringTemplate生成HTML,我希望能够将STGroupFileSTGroupDir组合在一起,这样我就有了一个组文件目录。这样我可以在一个文件中包含多个模板,但也可以组合多个文件中的模板。似乎并没有对此有所支持,但我想我会看到是否可能忽略了某些东西。

如果您想知道我为什么要这样做,让我们看一下StringTemplate文档中的示例:

test(name) ::= "$name:bracket()$" // apply bracket template to each name
bracket(x) ::= "[$x$]"            // surround parameter with square brackets

假设上面全部在一个文件(test.st)中并且我们使用STGroupDir,它将无法解析“bracket(x)”模板,除非它在一个单独的文件中(括号)。 ST)。在这个特定的例子中,括号就像一个本地助手,可用于清理主模板。在这种情况下,您可能不希望在test.st。

之外显示括号

但是,如果要创建一个简单帮助程序模板库,您可能希望将它们全部放在一个文件中,并让每个文件都可以访问其他文件中的模板。

1 个答案:

答案 0 :(得分:0)

免责声明:我在C#中使用StringTemplate

您需要将.stg个文件与模板组一起使用。 StringTemplate个组可以导入其他模板或模板组,您可以从文件或目录创建这些组。