From 8214092427d6e95978346ceb5a689cb2320a0ff2 Mon Sep 17 00:00:00 2001 From: Josh Taylor Date: Thu, 1 Sep 2022 17:13:33 +0800 Subject: [PATCH] Fix multiline sets and strings --- minijinja/src/lexer.rs | 2 +- minijinja/tests/inputs/escape.txt | 6 +++++- minijinja/tests/inputs/set.txt | 13 ++++++++++++- .../snapshots/test_templates__vm@escape.txt.snap | 4 ++++ .../tests/snapshots/test_templates__vm@set.txt.snap | 11 +++++++++++ 5 files changed, 33 insertions(+), 3 deletions(-) diff --git a/minijinja/src/lexer.rs b/minijinja/src/lexer.rs index 393fb662..c8d1921b 100644 --- a/minijinja/src/lexer.rs +++ b/minijinja/src/lexer.rs @@ -124,7 +124,7 @@ fn tokenize_raw( has_escapes = true; true } - (_, $delim) | (_, b'\r') | (_, b'\n') => false, + (_, $delim) => false, _ => true, }) .count(); diff --git a/minijinja/tests/inputs/escape.txt b/minijinja/tests/inputs/escape.txt index c151a0ae..453d2c51 100644 --- a/minijinja/tests/inputs/escape.txt +++ b/minijinja/tests/inputs/escape.txt @@ -5,4 +5,8 @@ {{'\'' ~ 'foo'}} {{'\'' ~ x ~ '\''}} {{"\'" ~ x ~ '\''}} -{{"\'" ~ x ~ '\''}} \ No newline at end of file +{{"\'" ~ x ~ '\''}} +{{" +hello world"}} +{{"hello +world"}} \ No newline at end of file diff --git a/minijinja/tests/inputs/set.txt b/minijinja/tests/inputs/set.txt index de9f91bb..dde4e7ab 100644 --- a/minijinja/tests/inputs/set.txt +++ b/minijinja/tests/inputs/set.txt @@ -21,4 +21,15 @@ Into Loop: Conditional: {% if true %}{% set foo = "was true" %}{% endif %} -{{ foo }} \ No newline at end of file +{{ foo }} + +Multiline: +{% set multiline = " +hello +world" %} +{{ multiline }} + +Multiline: +{% set multiline = "hello +world" %} +{{ multiline }} \ No newline at end of file diff --git a/minijinja/tests/snapshots/test_templates__vm@escape.txt.snap b/minijinja/tests/snapshots/test_templates__vm@escape.txt.snap index f937a97f..9c39f6b3 100644 --- a/minijinja/tests/snapshots/test_templates__vm@escape.txt.snap +++ b/minijinja/tests/snapshots/test_templates__vm@escape.txt.snap @@ -8,3 +8,7 @@ input_file: minijinja/tests/inputs/escape.txt 'hello' 'hello' +hello world +hello +world + diff --git a/minijinja/tests/snapshots/test_templates__vm@set.txt.snap b/minijinja/tests/snapshots/test_templates__vm@set.txt.snap index 89a4cb46..b1f842b2 100644 --- a/minijinja/tests/snapshots/test_templates__vm@set.txt.snap +++ b/minijinja/tests/snapshots/test_templates__vm@set.txt.snap @@ -32,3 +32,14 @@ Conditional: was true +Multiline: + + +hello +world + +Multiline: + +hello +world +