Do you want to turn your Latte templates to Twig?
Before
{foreach $values as $key => $value}
{$value->getName()}
{if isset($value['position'])}
{$value['position']|noescape}
{else}
{var $noPosition = true}
{/if}
{/foreach}
After
{% for key, value in values %}
{{ value.getName() }}
{% if value.position is defined %}
{{ value.position|raw }}
{% else %}
{% set noPosition = true %}
{% endif %}
{% endfor %}
And much more!
This package won't do it all for you, but it will help you with 80 % of the boring work.
composer require symplify/latte-to-twig-converter --dev
It scan all the *.twig
/*.latte
files and converts to Twig with *.twig
.
vendor/bin/latte-to-twig convert file.twig
vendor/bin/latte-to-twig convert /directory
Some code doesn't have a clear path - you have more options in Twig, so better to migrate it manually.
-{continueIf $cond}
+{% if cond %}
-{$value}
+ {{ value }}
+{% endif %}
-{breakIf $cond}
+{% if cond === false %}
-{$value}
+ {{ value }}
+{% endif %}
That's it :)
In case you are experiencing a bug or want to request a new feature head over to the Symplify monorepo issue tracker
The sources of this package are contained in the Symplify monorepo. We welcome contributions for this package on symplify/symplify.