如何在Symfony2中添加Twig标签


How to add a Twig Tag in Symfony2?

我已经学会了如何创建Twig扩展。

但现在我需要创建一个标签,因为我想做这样的事情:

{% singleline %}
<div>
    <script>
        function bla() {
            alert('bla');
        }
    </script>
</div>
{% endsingleline %}

结果:

<div><script>function bla() { alert('bla'); }</script></div>

有什么想法吗?

您可以通过覆盖Twig Extension类中的getTokenParsers()方法来实现,如下所述。

要获得一个关于如何完成的好例子,请查看Twig Extensions存储库。具体来说,以Debug为例(这里是传递给该方法的Twig_Extension_TokenParser_Debug类)。

p.S.也就是说,你应该看看添加到Spaceless文档页面的注释,也许可以看看Tidy这样的第三方库。