trivago / prettier-plugin-twig-melody

Code formatting plugin for Prettier which can handle Twig/Melody templates
Apache License 2.0
155 stars 35 forks source link

Does not work :( #46

Closed RomainFallet closed 4 years ago

RomainFallet commented 4 years ago

prettier 1.19.1 prettier-plugin-twig-melody 0.4.3 node 12.16.1

{% extends 'base.html.twig' %}

{% block title %}
  Cats list
{% endblock %}

{% block body %}
  <h1>
    Cats list
  </h1>
  {% if cats is empty %}
    <p>
      No cat around.
    </p>
  {% endif %}
  <p>
    Do you want to
    <a href="{{ path('add_cat') }}">add a new cat</a>?
  <p>
  <ul>
    {% for cat in cats %}
      <li>
      <img class="cat" width="300" height="200" src="{{ cat.url }}" alt="{{ cat.name }} the cat" />
      </li>
    {% endfor %}
  </ul>
{% endblock %}

And got this error:

[error] templates/cat/list.html.twig: Error: ERROR: Invalid Token
[error]   1 | {% extends 'base.html.twig' %}
[error]   2 | 
[error] 
[error] Expected tag end "%}" but found EOF instead.
[error]     at TokenStream.error (/home/romainfallet/projects/symfony-starter/node_modules/melody-parser/lib/index.js:1360:22)
[error]     at TokenStream.expect (/home/romainfallet/projects/symfony-starter/node_modules/melody-parser/lib/index.js:1338:14)
[error]     at Object.parse (/home/romainfallet/projects/symfony-starter/node_modules/melody-extension-core/lib/index.js:960:61)
[error]     at Parser.matchTag (/home/romainfallet/projects/symfony-starter/node_modules/melody-parser/lib/index.js:857:29)
[error]     at Parser.parse (/home/romainfallet/projects/symfony-starter/node_modules/melody-parser/lib/index.js:610:32)
[error]     at Object.parse (/home/romainfallet/projects/symfony-starter/node_modules/prettier-plugin-twig-melody/src/parser.js:84:24)
[error]     at Object.parse (/home/romainfallet/projects/symfony-starter/node_modules/prettier/bin-prettier.js:9743:19)
[error]     at coreFormat (/home/romainfallet/projects/symfony-starter/node_modules/prettier/bin-prettier.js:13258:23)
[error]     at format (/home/romainfallet/projects/symfony-starter/node_modules/prettier/bin-prettier.js:13516:73)
[error]     at formatWithCursor (/home/romainfallet/projects/symfony-starter/node_modules/prettier/bin-prettier.js:13532:12)
All matched files use Prettier code style!

Any thoughts ?

chasegiunta commented 4 years ago

@RomainFallet It's failing on invalid HTML. You have an opening <p> tag where it should be closing.

RomainFallet commented 4 years ago

Yeah, this is true !