11 个不稳定版本 (3 个破坏性更新)
0.5.3 | 2024年3月1日 |
---|---|
0.5.2 | 2024年2月10日 |
0.5.0 | 2023年9月13日 |
0.4.0 | 2023年7月21日 |
0.2.1 | 2021年1月31日 |
#2054 在 解析器实现 中
每月56次 下载
在 ludtwig 中使用
605KB
14K SLoC
卢迪格-解析器
Rust 库,用于将 Twig / HTML 模板语法解析为无损语法树。它不符合官方 HTML 规范,并且输入需要尽可能符合规范(但解析器仍然尝试从错误中恢复/尽可能多地解析)。例如,HTML 中缺少关闭标签会导致解析错误(即使浏览器可以解释 HTML 并重建关闭标签)。这使得模板可以在分层无类型树中表示,易于导航且包含 Twig 和 HTML 语法。
接受语法示例
{% block my_component %}
{% set isActive = true %}
<div id="my-component"
class="my-component {% if isLarge %}large{% endif %}"
{{ dataAttribute }}="data"
{# Single word attributes don't strictly require quotes #}
data-active={{ isActive }}
>
{% block my_component_inner %}
<span id="my-span"
{% if isActive %}
style="color: red"
{% endif %}
>
hello {{ name }}
</span>
{% endblock %}
</div>
{% endblock %}
免责声明
它与 ludtwig CLI 应用程序一起开发,用于格式化和分析 Twig 模板文件。
许可证
MIT - 查看 LICENSE 文件。
许可证声明
出于测试目的,此存储库也可能包含以下来源的代码
依赖项
~5.5MB
~67K SLoC