kilik/translation-bundle

Symfony 工具,用于导入/导出(缺失的)翻译

安装量: 37,046

依赖者: 0

建议者: 0

安全性: 0

星标: 4

关注者: 3

分支: 8

公开问题: 5

类型:symfony-bundle


README

KTB(Kilik 翻译包)是与 Symfony 翻译器一起使用的工具。它旨在简化与(人类)翻译人员的交流。

关于 Symfony 3.4+ / Symfony 4+ 项目的说明

由于 symfony 应用程序不是一个包,我们使用特殊的包名 'app' 来处理位于包之外的程序翻译的导入和导出

从命令行,您可以导出翻译(通过包名、域和区域设置进行筛选)到 CSV(制表符分隔)。

您的翻译者(同事、服务提供商等)可以使用特定的翻译工具(或办公软件)打开 CSV 文件。

然后,您可以将更新的翻译导入到项目中。

也支持在供应商处制作的翻译(当您需要处理具有许多包的大型应用程序时非常有用)。

概念

  • 您的项目在一个区域(区域参考,回退)中完全翻译
  • 旨在简化与非团队人员翻译缺失翻译的过程

将此包添加到您的应用程序

composer require kilik/translation-bundle

然后,将此行添加到您的 AppKernel.php 中

    $bundles = [
        // ...
        new Kilik\TranslationBundle\KilikTranslationBundle(),
        // ...
    ];

导出翻译

导出翻译到 CSV

导出翻译,以 EN 区域作为参考,并将缺失的翻译匹配到 FR 或 ES 文件中

./bin/console kilik:translation:export en fr,es AcmeBundle ~/translations.csv

同时处理一些包

./bin/console kilik:translation:export en fr,es AcmeBundle,MyOtherBundle ~/translations.csv

仅导出包含缺失翻译的行

./bin/console kilik:translation:export en fr,es AcmeBundle --only-missing ~/translations.csv

仅导出某些域

./bin/console kilik:translation:export en fr,es AcmeBundle --domains messages,validators ~/translations.csv

仅导出应用程序的翻译(Symfony 3.4+ / Symfony 4+1)

./bin/console kilik:translation:export en fr app ~/translations.csv

导入翻译

从 CSV 导入翻译(翻译与您当前项目的翻译合并)。

为给定区域导入 CSV 文件中的所有翻译

./bin/console kilik:translation:import fr ~/translations.csv

覆盖现有翻译键,导入 CSV 文件中的所有翻译

./bin/console kilik:translation:import fr ~/translations.csv -o

为特定包和给定区域从 CSV 文件中导入翻译

./bin/console kilik:translation:import fr --bundles AcmeBundle ~/translations.csv

为特定域和给定区域从 CSV 文件中导入翻译

./bin/console kilik:translation:import fr --domains messages,validators AcmeBundle ~/translations.csv

您还可以导入具有多个区域的翻译

./bin/console kilik:translation:import fr,es,nl ~/translations.csv

仅导入应用程序的翻译(Symfony 3.4+ / Symfony 4+1)

./bin/console kilik:translation:import fr --bundles app ~/translations.csv

对于包开发者

# prepare tests
./prepare-tests.sh

# run tests
./run-tests.sh

# launch composer
./scripts/composer.sh