Files
liquid/_basics/whitespace.md
2021-04-28 13:43:02 -04:00

2.3 KiB

title, description
title description
Whitespace control An overview of controlling whitespace between code in the Liquid template language.

In Liquid, you can include a hyphen in your tag syntax {% raw %}{{-{% endraw %}, {% raw %}-}}{% endraw %}, {% raw %}{%-{% endraw %}, and {% raw %}-%}{% endraw %} to strip whitespace from the left or right side of a rendered tag.

Normally, even if it doesn't print text, any line of Liquid in your template will still print a blank line in your rendered HTML:

Input

```liquid {%- raw -%} {% assign my_variable = "tomato" %} {{ my_variable }} {% endraw %} ```

Notice the blank line before "tomato" in the rendered template:

Output

```text {% assign my_variable = "tomato" %} {{ my_variable }} ```

By including a hyphen in your assign closing delimiter, you can strip the whitespace following it from the rendered template:

Input

```liquid {%- raw -%} {% assign my_variable = "tomato" -%} {{ my_variable }} {% endraw %} ```

Output

```text {% assign my_variable = "tomato" -%} {{ my_variable }} ```

If you don't want any of your tags to print whitespace, as a general rule you can add hyphens to both sides of all your tags ({% raw %}{%-{% endraw %} and {% raw %}-%}{% endraw %}):

Input

```liquid {%- raw -%} {% assign username = "John G. Chalmers-Smith" %} {% if username and username.size > 10 %} Wow, {{ username }} , you have a long name! {% else %} Hello there! {% endif %} {% endraw %} ```

Output without whitespace control

```text {% assign username = "John G. Chalmers-Smith" %} {% if username and username.size > 10 %} Wow, {{ username }} , you have a long name! {% else %} Hello there! {% endif %} ```

Input

```liquid {%- raw -%} {% assign username = "John G. Chalmers-Smith" -%} {%- if username and username.size > 10 -%} Wow, {{ username -}} , you have a long name! {%- else -%} Hello there! {%- endif %} {% endraw %} ```

Output with whitespace control

```text {% assign username = "John G. Chalmers-Smith" -%} {%- if username and username.size > 10 -%} Wow, {{ username -}} , you have a long name! {%- else -%} Hello there! {%- endif %} ```