namelesscoder / fluid-schema-generator
此包已被弃用且不再维护。作者建议使用 typo3fluid/schema-generator 包代替。
为包含 Fluid ViewHelpers 的包生成 XSD 架构
2.1.2
2018-10-01 12:01 UTC
Requires
- typo3fluid/fluid: ^1.0|^2.0
Requires (Dev)
- php-coveralls/php-coveralls: ^2.1
- phpunit/phpunit: ^5.7
README
它做什么?
这是一个 Fluid 的附加组件。它可以在编写 fluid 模板时通过自动完成视图辅助函数参数来提供帮助。
通常,此包作为 composer 'require-dev' 依赖项的附加项添加到现有项目中。
其主要目的是为 (X)HTML 文件生成 XSD 架构,这些架构可用于编辑器以启用 Fluid 模板代码的自动完成。可以为官方包以及任何提供 ViewHelpers 的自定义包生成架构。
安装
composer require --dev typo3/fluid-schema-generator
示例
假设您的扩展中有一个 Fluid 模板文件 - Resource/Private/Templates/MyTemplate.html
,它使用具有两个不同名称空间的视图辅助函数
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" xmlns:be="http://typo3.org/ns/TYPO3/CMS/Backend/ViewHelpers" data-namespace-typo3-fluid="true"> <f:render partial="My/Partial" arguments="{_all}" /> ... more HTML and view helper usages </html>
IDE 通常无法理解“f:render”标签,会将其标记为无效。但是,为该名称空间生成 xsd 架构后,它们将理解该标签及其可能的属性。此示例将这些两个名称空间中的架构生成到项目的根目录
./bin/generateschema TYPO3\\CMS\\Fluid TYPO3\\CMS\\Backend > mySchema.xsd
此调用将在给定的名称空间中搜索所有视图辅助函数类,并创建一个包含“f”和“be”目标名称空间的相应 xsd 文件。然后,像 PhpStorm 这样的 IDE 通常会自动检测此文件(如果未检测到,则在模板上的 xmlns url 上按 ALT+Enter 并导入文件)“理解”这些标签并允许属性自动完成。
使用方法
./vendor/bin/generateschema VendorName\\PackageName VendorName\\OptionalSecondPackage > schema.xsd
提供所需的包名称空间,所有这些名称空间中的 ViewHelper 类都将包含在架构中。当确定 XSD 名称空间 URL 时,使用提供的 第一个 名称空间。