问题标签 [stringtemplate-4]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
stringtemplate - StringTemplate4 :: 模板调用内的模板调用
我试图调用一个模板,将调用另一个模板的结果作为参数传递,但我似乎无法让它工作。这是一个缩小范围的示例:
文件中的以下模板组:
使用以下 Java 代码调用时:
按预期生产动物园。
但是,当我尝试用返回相同的模板替换“动物园”文字时, ST在解析期间抱怨:
不起作用:
emacs - StringTemplate 的 Emacs 模式
StringTemplate Java 模板引擎是否有可用的 Emacs 模式?
stringtemplate-4 - 是否可以组合组文件和组目录?
我正在使用 StringTemplate 来生成 HTML,我希望能够合并STGroupFile
,STGroupDir
这样我就有一个组文件目录。这样,我可以在一个文件中包含多个模板,也可以组合来自多个文件的模板。似乎没有对此的支持,但我想我会看看是否可能忽略了某些东西。
如果您想知道我为什么要这样做,让我们看一下 StringTemplate 文档中的一个示例:
假设以上都在一个文件(test.st)中并且我们正在使用STGroupDir
,它将无法解析“bracket(x)”模板,除非它在一个单独的文件(bracket.st)中。在这种特殊情况下,括号就像一个本地助手,可用于清理主模板。在这种情况下,您可能不希望括号在 test.st 之外可见。
但是,如果您想创建一个简单的帮助模板库,您可能希望将它们全部放在一个文件中,并让其他文件中的模板可以访问它们中的每一个。
java - 生成非常大的 Java 代码
我需要将 ~20k 内置函数和常量从 CHM 文件填充到列表中。首先,我尝试序列化它们的列表,但反序列化需要 1500 毫秒(对于快速完成代码来说太长了,即使是第一次命中也是如此)。
尝试使用 StringTemplate 生成代码,生成有效代码。但它不会编译,因为“initEnums() 方法超出了 65536 的大小限制”。(我的 Eclipse 很快就死了)
生成的方法如下所示:
如果这个限制仅限于源代码,我可以使用另一个库直接生成类文件(可能是 CodeModel)。如果可能的话,我想保留我的代码,而无需再次从头开始重写输出生成器。有什么建议么?
stringtemplate - StringTemplate4 如果有条件的长度
我需要使用 StringTemplate4 生成以下类型的代码:
“连接连接”部分始终存在,因此我只将方法名称和其余参数传递给我的 ST 模板。我的模板如下所示:
这可行,但当根本没有参数时会产生一个额外的逗号(conn 除外):
为了消除额外的逗号,我尝试使用if条件和长度ST4 函数,但我无法让它工作,尽管我尝试了如下各种组合:
...以及其他都因一些与解析相关的错误而失败(输入不匹配)。
最后,我放弃了,而是根据预渲染逻辑将逗号参数传递给模板,它要么是“,”,要么是空字符串“”。
java - '{' 让我大吃一惊
我想org.stringtemplate.v4.*
用作渲染 html 页面的模板引擎。但是我找不到如何在我的文件中转义左括号。Templator 认为它是某种表达式,而它只是 javascript 代码。
我试过\{
了,但这无济于事 - 我仍然得到
如何逃避这个?或者存在哪些 stringtemplate 的类似物,可以正确处理 html 页面作为输入?
java - StringTemplate 不替换不匹配的模式
假设我有一个模板
我创建引擎
do
模型中设置为sports
和否的结果man
是:
但我希望它保持未解决,即
这可以在 StringTemplate 4 中完成吗?
antlr - ANTLR 字符串模板 - 如何指定具有两个多值属性的模板?
我有一个场景,我需要使用两个多值属性来实例化一个匿名模板。
这是我通过阅读文档所尝试的:
为了说明问题,假设我为这两个属性提供了以下两个数组:
然后我使用以下两个函数调用应用了该属性:
结果让我吃惊。我想我会得到四行,因为我希望为四对中的每一对实例化模板。但是,我得到的只是实例化两对的两行:
我用错了吗?有没有更好的替代方法来做到这一点?
antlr4 - using ST-4 in antlr v4
Until now I use antlr 3.4 to create language-specific grammar, and make a translator for the language with ST-3, but after appearing antlr v4 and ST-4, I can not use the code that I wrote earlier. Are there examples of the use of ST-4 in antlr v4. Thank you,
java - 连接 stringtemplate4 - antlr4 - java tesrig
我是antlr的新手。
通过antlr v3使用ST翻译代码很有品味。我还在 parr 书中看到 Jason2xml 翻译,但仍然感到困惑。我如何在 antlr 或 java-test rig 中使用或连接 ST-4。任何教程或示例,如 antlr-ST v3 ?