Whitespace control
Yarte provides the possibility to erase the unneeded blanks when templating using the character ~
in any block. Only first white characters and last whitespaces of a block will be ignored. Characters interpreted as whitespaces will as specified in rust.
Let's say we have a struct define as follows:
and we create a new CardTemplate
Now we will use ~
in an if
statement and ignore unnecessary whitespaces.
{{~# each users ~}}
{{~# if valid ~}}
<h1>Hello, {{ name }}</h1>
{{~/if }}
{{~/each}}
This will output
<h1>Hello, Tom</h1>
In the other hand if we don't ignore whitespaces:
{{~# each users ~}}
{{# if valid }}
<h1>Hello, {{ name }}</h1>
{{/if }}
{{~/each}}
then this will be the output
<h1>Hello, Tom</h1>
Special cases
The are some especial cases where Yarte will ignore whitespaces before and after in some special cases by
default. These cases are when writing comments
, locals
(such as let
expressions), and whitespaces at
the end of the file