====================
Variables
====================

<div>
  <h1>Hello world!</h1>
  {{ hello }}
  {{ messsage }}
  {{ if a }}
    {{ a }}
  {{ /if }}
</div>

---

(template
  (content)
  (tag
    (code))
  (tag
    (code))
  (tag
    (keyword)
    (code))
  (tag
    (code))
  (tag
    (keyword))
  (content))

====================
Comments
====================

<div>
  <h1>Hello world!</h1>
  {{# This is a comment #}}
  {{# a comment #}}
  {{# comment #}}
  
  <h1>Hello world!</h1>

  {{# life is pain comment #}}
  {{ This is not a comment }}
  {{# I'm a multi-line comment #}}
</div>

---

(template
  (content)
  (tag
    (comment))
  (tag
    (comment))
  (tag
    (comment))
  (content)
  (tag
    (comment))
  (tag
    (code))
  (tag
    (comment))
  (content))


====================
Filters
====================

{{ test |> hello }}
{{ test |> hello |> world }}
{{ layout "hello" |> worldFilter }}
{{ layout "hello" { title: "Yes"}}}
{{ layout "hello" { title: "Yes"} }}
{{ layout "hello" { title: "Yes"} |> worldFilter }}
{{ layout "hello" { title: "Yes" } |> worldFilter |> happy }}

---

(template
  (tag
    (keyword)
    (code)
    (filter
      (code)))
  (tag
    (keyword)
    (code)
    (filter
      (code)
      (code)))
  (tag
    (keyword)
    (code)
    (filter
      (code)))
  (tag
    (keyword)
    (code))
  (tag
    (keyword)
    (code))
  (tag
    (keyword)
    (code)
    (filter
      (code)))
  (tag
    (keyword)
    (code)
    (filter
      (code)
      (code)))
  (content))


====================
Expressions
====================

{{ keyword skdjgskdgl }}
{{ solo }}
{{    b123.happy.hour()   }}
{{ if test }}
{{ if test |> hello }}
{{ if test |> hello |> world }}
{{ if test |> hello |> world |> happy }}
{{ /if }}

---

(template
  (tag
    (keyword)
    (code))
  (tag
    (code))
  (tag
    (code))
  (tag
    (keyword)
    (code))
  (tag
    (keyword)
    (code)
    (filter
      (code)))
  (tag
    (keyword)
    (code)
    (filter
      (code)
      (code)))
  (tag
    (keyword)
    (code)
    (filter
      (code)
      (code)
      (code)))
  (tag
    (keyword))
  (content))

====================
Expressions 2
====================

{{ if test }}
{{}}
{{ }}
{{> javascriptCode() }}
{{-> javascriptCode() }}
{{> javascriptCode() -}}

{{ JSON.parse({ hello: "world" }) }}

---

(template
  (tag
    (keyword)
    (code))
  (tag)
  (tag)
  (tag
    (keyword)
    (code))
  (tag
    (keyword)
    (code))
  (tag
    (keyword)
    (code))
  (tag
    (code))
  (content))

====================
Stress Keywords
====================

{{ if test }}
{{ code }}
{{ keyword code }}
{{ keyword() code }}
<h1>Hello!</h1>
{{ Deno }}
{{ Deno thing }}

---

(template
  (tag
    (keyword)
    (code))
  (tag
    (code))
  (tag
    (keyword)
    (code))
  (tag
    (code))
  (content)
  (tag
    (code))
  (tag
    (code))
  (content))

====================
Test parens
====================

<h1 style="color: rgba(color)">Hello!</h1>
{{ hello }}
{{ code().doStuff!() }}

---

(template
  (content)
  (tag
    (code))
  (tag
    (code))
  (content))
