gpt4 book ai didi

javascript - Symfony2 从 javascript 中提取文本进行翻译

转载 作者:行者123 更新时间:2023-11-29 15:38:57 25 4
gpt4 key购买 nike

我已经安装了BazingaJsTranslationBundle在我的 Symfony2 项目中。

它工作正常,但有没有办法像 translation:extract symfony2 命令那样从 javascript 文件中提取文本?

javascript 文件中的文本如下所示:

Translator.trans("This is the text that I want to extract")

我不想通过在 twig 或 php 文件中添加键来翻译 javascript 文件中的文本。

这是我用来从 php 和 twig 文件中提取文本的命令:

php app/console translation:extract en
--enable-extractor=jms_i18n_routing --dir=./src/ --output-dir=./app/Resources/translations

最佳答案

您可以为 JS 翻译创建自定义提取器。这是通过实现 Symfony\Component\Translation\Extractor\ExtractorInterface 来完成的:

/**
* Extracts translation messages from a template directory to the catalogue.
* New found messages are injected to the catalogue using the prefix.
*
* @author Michel Salib <michelsalib@hotmail.com>
*/
interface ExtractorInterface
{
/**
* Extracts translation messages from a template directory to the catalogue.
*
* @param string $directory The path to look into
* @param MessageCatalogue $catalogue The catalogue
*/
public function extract($directory, MessageCatalogue $catalogue);

/**
* Sets the prefix that should be used for new found messages.
*
* @param string $prefix The prefix
*/
public function setPrefix($prefix);
}

To make it usefull to others, it'll be even more awesome if you submitted your extractor to the BazingaJsTranslationBundles.

关于javascript - Symfony2 从 javascript 中提取文本进行翻译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23181234/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com