nepada / texy-nette
Nette 的 Texy 集成。
v5.1.0
2023-09-28 07:48 UTC
Requires
- php: >=8.1.0 <8.4
- nette/utils: ^3.2@dev || ^4.0@dev
- texy/texy: ^3.1.6@dev
Requires (Dev)
- latte/latte: ^3.0@dev
- nepada/coding-standard: 7.12.0
- nepada/phpstan-nette-tester: 1.1.0
- nette/application: >=3.1.10
- nette/bootstrap: >=3.1@dev
- nette/di: ^3.0.6@dev
- nette/schema: ^1.0.3@dev
- nette/tester: 2.5.1
- php-parallel-lint/php-parallel-lint: 1.3.2
- phpstan/phpstan: 1.10.32
- phpstan/phpstan-nette: 1.2.9
- phpstan/phpstan-strict-rules: 1.5.1
- shipmonk/phpstan-rules: 2.7.0
- spaze/phpstan-disallowed-calls: 2.16.0
Suggests
- latte/latte: to use Latte with custom Texy! macros in templates
- nette/di: for integration with Nette DI container
Conflicts
- latte/latte: <3.0.0
This package is auto-updated.
Last update: 2024-09-01 17:12:37 UTC
README
安装
通过 Composer
$ composer require nepada/texy-nette
在 config.neon
中注册扩展
extensions: texy: Nepada\Bridges\TexyDI\TexyExtension
使用方法
配置
此扩展包含一个简单的 Texy 工厂,它只创建 Texy\Texy
的新实例。
通常,您会希望通过实现 Nepada\Texy\TexyFactory
定义自己的工厂,可能不止一个。
texy: factories: foo: @fooTexyFactory bar: @barTexyFactory defaultMode: foo
此示例添加了两个自定义工厂。注意名称 foo
和 bar
- 我们称这些为 Texy 的“模式”。在应用程序的不同部分,您可能需要使用不同的模式(即不同配置的 Texy 实例)。
在模板中
有 2 个新的标签用于处理块和单行,两者都可以指定自定义模式
{texy fooMode}
- one
- two
{/texy}
<p>
{texyLine barMode}Whatever...{/texyLine}
</p>
或者,您可以使用 3 个过滤器中的任何一个来达到类似的效果
|texy:customMode
调用$texyMultiplier->processBlock()
|texyLine:customMode
调用$texyMultiplier->processLine()
|texyTypo:customMode
调用$texyMultiplier->processTypo()
在演示者和其他控件中
首选的方法是在需要的地方注入 Nepada\Texy\TexyMultiplier
实例,然后直接使用它或提取所需的 Texy 实例,例如
$multiplier->processBlock($text, 'myMode'); $texy = $multiplier->getTexy('myMode');