[05/12] incubator-freemarker git commit: Added new ParserConfiguration setting, interpolation_syntax. It has 3 possible values:

2018-03-19 Thread ddekany
Added new ParserConfiguration setting, interpolation_syntax. It has 3 possible 
values:

- legacy (the default): Interpolations look like ${...} or #{...}. Note that 
#{...} is deprecated for a long time now.
- dollar: Interpolations look like ${...}. With this syntax, #{...} will be 
just static text.
- square_bracket: Interpolations look like [=...]. With this syntax ${...} and 
#{...} will be just static text. So it's useful if you generate output in a 
format where those (typically ${...}) are already used, such as to generate JSP 
pages, or to generate FreeMarker templates that use the default syntax.


Project: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-freemarker/commit/ca1ecf78
Tree: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/tree/ca1ecf78
Diff: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/diff/ca1ecf78

Branch: refs/heads/2.3
Commit: ca1ecf78e7eebdb83c2b147d5fb9aadb1c25f93a
Parents: c630a41
Author: ddekany 
Authored: Fri Mar 16 00:36:31 2018 +0100
Committer: ddekany 
Committed: Fri Mar 16 00:36:31 2018 +0100

--
 src/main/java/freemarker/core/Configurable.java |   7 +-
 .../LegacyConstructorParserConfiguration.java   |   9 +-
 .../freemarker/core/ParserConfiguration.java|   7 +
 .../java/freemarker/core/StringLiteral.java |  14 +-
 .../freemarker/core/TemplateConfiguration.java  |  27 ++
 ..._ParserConfigurationWithInheritedFormat.java |   4 +
 .../java/freemarker/template/Configuration.java |  59 +++-
 .../java/freemarker/template/_TemplateAPI.java  |  10 +
 src/main/javacc/FTL.jj  | 116 +---
 src/manual/en_US/book.xml   | 276 ++-
 .../core/InterpolationSyntaxTest.java   |  88 ++
 .../core/TemplateConfigurationTest.java |   9 +
 .../freemarker/template/ConfigurationTest.java  |  28 ++
 13 files changed, 542 insertions(+), 112 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/ca1ecf78/src/main/java/freemarker/core/Configurable.java
--
diff --git a/src/main/java/freemarker/core/Configurable.java 
b/src/main/java/freemarker/core/Configurable.java
index f1a905b..a2b5d29 100644
--- a/src/main/java/freemarker/core/Configurable.java
+++ b/src/main/java/freemarker/core/Configurable.java
@@ -2365,7 +2365,12 @@ public class Configurable {
  *   {@code "tag_syntax"}:
  *   See {@link Configuration#setTagSyntax(int)}.
  *   String value: Must be one of
- *   {@code "auto_detect"}, {@code "angle_bracket"}, and {@code 
"square_bracket"}. 
+ *   {@code "auto_detect"}, {@code "angle_bracket"}, and {@code 
"square_bracket"}.
+ *
+ *   {@code "interpolation_syntax"} (since 2.3.28):
+ *   See {@link Configuration#setInterpolationSyntax(int)}.
+ *   String value: Must be one of
+ *   {@code "legacy"}, {@code "dollar"}, and {@code "square_bracket"}. 
  *   
  *   {@code "naming_convention"}:
  *   See {@link Configuration#setNamingConvention(int)}.

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/ca1ecf78/src/main/java/freemarker/core/LegacyConstructorParserConfiguration.java
--
diff --git 
a/src/main/java/freemarker/core/LegacyConstructorParserConfiguration.java 
b/src/main/java/freemarker/core/LegacyConstructorParserConfiguration.java
index 479af9a..a9a1e8e 100644
--- a/src/main/java/freemarker/core/LegacyConstructorParserConfiguration.java
+++ b/src/main/java/freemarker/core/LegacyConstructorParserConfiguration.java
@@ -28,6 +28,7 @@ import freemarker.template.Version;
 class LegacyConstructorParserConfiguration implements ParserConfiguration {
 
 private final int tagSyntax;
+private final int interpolationSyntax;
 private final int namingConvention;
 private final boolean whitespaceStripping;
 private final boolean strictSyntaxMode;
@@ -38,11 +39,13 @@ class LegacyConstructorParserConfiguration implements 
ParserConfiguration {
 private Integer tabSize;
 private final Version incompatibleImprovements;
 
-public LegacyConstructorParserConfiguration(boolean strictSyntaxMode, 
boolean whitespaceStripping, int tagSyntax,
+LegacyConstructorParserConfiguration(boolean strictSyntaxMode, boolean 
whitespaceStripping,
+int tagSyntax, int interpolationSyntax,
 int namingConvention, Integer autoEscaping, OutputFormat 
outputFormat,
 Boolean recognizeStandardFileExtensions, Integer tabSize,
 Version incompatibleImprovements, ArithmeticEngine 
arithmeticEngine) {
 this.tagSyntax = tagSyntax;
+this.interpolationSyntax

incubator-freemarker git commit: Added new ParserConfiguration setting, interpolation_syntax. It has 3 possible values:

2018-03-15 Thread ddekany
Repository: incubator-freemarker
Updated Branches:
  refs/heads/2.3-gae c630a41ab -> ca1ecf78e


Added new ParserConfiguration setting, interpolation_syntax. It has 3 possible 
values:

- legacy (the default): Interpolations look like ${...} or #{...}. Note that 
#{...} is deprecated for a long time now.
- dollar: Interpolations look like ${...}. With this syntax, #{...} will be 
just static text.
- square_bracket: Interpolations look like [=...]. With this syntax ${...} and 
#{...} will be just static text. So it's useful if you generate output in a 
format where those (typically ${...}) are already used, such as to generate JSP 
pages, or to generate FreeMarker templates that use the default syntax.


Project: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-freemarker/commit/ca1ecf78
Tree: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/tree/ca1ecf78
Diff: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/diff/ca1ecf78

Branch: refs/heads/2.3-gae
Commit: ca1ecf78e7eebdb83c2b147d5fb9aadb1c25f93a
Parents: c630a41
Author: ddekany 
Authored: Fri Mar 16 00:36:31 2018 +0100
Committer: ddekany 
Committed: Fri Mar 16 00:36:31 2018 +0100

--
 src/main/java/freemarker/core/Configurable.java |   7 +-
 .../LegacyConstructorParserConfiguration.java   |   9 +-
 .../freemarker/core/ParserConfiguration.java|   7 +
 .../java/freemarker/core/StringLiteral.java |  14 +-
 .../freemarker/core/TemplateConfiguration.java  |  27 ++
 ..._ParserConfigurationWithInheritedFormat.java |   4 +
 .../java/freemarker/template/Configuration.java |  59 +++-
 .../java/freemarker/template/_TemplateAPI.java  |  10 +
 src/main/javacc/FTL.jj  | 116 +---
 src/manual/en_US/book.xml   | 276 ++-
 .../core/InterpolationSyntaxTest.java   |  88 ++
 .../core/TemplateConfigurationTest.java |   9 +
 .../freemarker/template/ConfigurationTest.java  |  28 ++
 13 files changed, 542 insertions(+), 112 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/ca1ecf78/src/main/java/freemarker/core/Configurable.java
--
diff --git a/src/main/java/freemarker/core/Configurable.java 
b/src/main/java/freemarker/core/Configurable.java
index f1a905b..a2b5d29 100644
--- a/src/main/java/freemarker/core/Configurable.java
+++ b/src/main/java/freemarker/core/Configurable.java
@@ -2365,7 +2365,12 @@ public class Configurable {
  *   {@code "tag_syntax"}:
  *   See {@link Configuration#setTagSyntax(int)}.
  *   String value: Must be one of
- *   {@code "auto_detect"}, {@code "angle_bracket"}, and {@code 
"square_bracket"}. 
+ *   {@code "auto_detect"}, {@code "angle_bracket"}, and {@code 
"square_bracket"}.
+ *
+ *   {@code "interpolation_syntax"} (since 2.3.28):
+ *   See {@link Configuration#setInterpolationSyntax(int)}.
+ *   String value: Must be one of
+ *   {@code "legacy"}, {@code "dollar"}, and {@code "square_bracket"}. 
  *   
  *   {@code "naming_convention"}:
  *   See {@link Configuration#setNamingConvention(int)}.

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/ca1ecf78/src/main/java/freemarker/core/LegacyConstructorParserConfiguration.java
--
diff --git 
a/src/main/java/freemarker/core/LegacyConstructorParserConfiguration.java 
b/src/main/java/freemarker/core/LegacyConstructorParserConfiguration.java
index 479af9a..a9a1e8e 100644
--- a/src/main/java/freemarker/core/LegacyConstructorParserConfiguration.java
+++ b/src/main/java/freemarker/core/LegacyConstructorParserConfiguration.java
@@ -28,6 +28,7 @@ import freemarker.template.Version;
 class LegacyConstructorParserConfiguration implements ParserConfiguration {
 
 private final int tagSyntax;
+private final int interpolationSyntax;
 private final int namingConvention;
 private final boolean whitespaceStripping;
 private final boolean strictSyntaxMode;
@@ -38,11 +39,13 @@ class LegacyConstructorParserConfiguration implements 
ParserConfiguration {
 private Integer tabSize;
 private final Version incompatibleImprovements;
 
-public LegacyConstructorParserConfiguration(boolean strictSyntaxMode, 
boolean whitespaceStripping, int tagSyntax,
+LegacyConstructorParserConfiguration(boolean strictSyntaxMode, boolean 
whitespaceStripping,
+int tagSyntax, int interpolationSyntax,
 int namingConvention, Integer autoEscaping, OutputFormat 
outputFormat,
 Boolean recognizeStandardFileExtensions, Integer tabSize,
 Version incompatibleImprovements, Arithme