gettext / twig-scanner
gettext 的 Twig 扫描器
v0.1.0
2022-07-18 17:33 UTC
Requires
- php: ^7.2 || ^8.0
- gettext/gettext: ^v5.5.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.15
- oscarotero/php-cs-fixer-config: ^1.0
- phpunit/phpunit: ^8.0
- squizlabs/php_codesniffer: ^3.0
- timber/timber: dev-master
This package is auto-updated.
Last update: 2024-09-18 22:51:18 UTC
README
由 Raphaël Droz 创建 raphael.droz@gmail.com (GPL-3 许可证)
用于与 gettext/gettext 一起使用的 Twig 代码扫描器
警告
为了能够使用,php-gettext/Gettext 中的上游 ParsedFunction 类需要进行轻微修改,以简化继承。
安装
composer require gettext/twig-scanner
关于依赖
我们不要求特定的 Twig 版本。
待办:支持 symfony/twig-bridge 的 trans
过滤器。
使用示例
use Gettext\Scanner\TwigScanner; use Gettext\Generator\PoGenerator; use Gettext\Translations; //Create a new scanner, adding a translation for each domain we want to get: $twigScanner = new TwigScanner( Translations::create('domain1'), Translations::create('domain2'), Translations::create('domain3') ); //Set a default domain, so any translations with no domain specified, will be added to that domain $twigScanner->setDefaultDomain('domain1'); //Extract all comments starting with 'notes:' $twigScanner->extractCommentsStartingWith('notes:'); //Scan files foreach (glob('*.twig') as $file) { $twigScanner->scanFile($file); } //Save the translations in .po files $generator = new PoGenerator(); foreach ($twigScanner->getTranslations() as $domain => $translations) { $generator->generateFile($translations, "locales/{$domain}.po"); }
有关最近更改的更多信息,请参阅 CHANGELOG。
GPL-3 许可证 (GPL-3)。有关更多信息,请参阅 LICENSE。