Assume
owner=owner
name=name
I expect StringTemplate
<pre>$owner$ touch \\$name$</pre><br>
to generate
<pre>owner touch \name</pre><br>
But it's giving out an error
Can't parse chunk: </pre><br>
line 1:1: unexpected char: '<'
at org.antlr.stringtemplate.language.ActionLexer.nextToken(ActionLexer.java:220)
at antlr.TokenBuffer.fill(TokenBuffer.java:69)
at antlr.TokenBuffer.LA(TokenBuffer.java:80)
at antlr.LLkParser.LA(LLkParser.java:52)
at org.antlr.stringtemplate.language.ActionParser.action(ActionParser.java:111)
at org.antlr.stringtemplate.StringTemplate.parseAction(StringTemplate.java:876)
at org.antlr.stringtemplate.language.TemplateParser.action(TemplateParser.java:162)
at org.antlr.stringtemplate.language.TemplateParser.template(TemplateParser.java:127)
at org.antlr.stringtemplate.StringTemplate.breakTemplateIntoChunks(StringTemplate.java:850)
at org.antlr.stringtemplate.StringTemplate.setTemplate(StringTemplate.java:441)
at org.antlr.stringtemplate.StringTemplate.<init>(StringTemplate.java:308)
at org.antlr.stringtemplate.StringTemplate.<init>(StringTemplate.java:293)
If I add a space between \\ and $, it works as expected.
<pre>$owner touch \\ $name</pre><br>
will generate
<pre>owner touch \ name</pre><br>
It appears that it interprets \\$ as escaping \$ instead of \\
StringTemplate java 3.2.1
Any idea how to write the correct StringTemplate? Is this a bug?