By Coffreo
Extract translations from Javascript source files.
- Recommended
willdurand/js-translation-bundle
Same bundle exists for PHP Translation: see Coffreo/php-translation-js-extractor-bundle
composer require coffreo/jms-translation-js-extractor-bundle
-
Install bundle:
composer require coffreo/jms-translation-js-extractor-bundle -
Enable bundle:
-
symfony 3.*
// config/AppKernel.php public function registerBundles() { return array( // ... new Coffreo\JMSTranslationJsExtractorBundle\CoffreoJMSTranslationJsExtractorBundle(), // ... ); }
-
symfony 4.* (if not already added by
symfony/flex)// config/bundles.php return [ // ... Coffreo\JMSTranslationJsExtractorBundle\CoffreoJMSTranslationJsExtractorBundle::class => ['all' => true], ];
-
This bundle allow extraction of translated strings in javascript files using Coffreo/js-translation-extractor.
No specific command line to use, just use originals jms/translation-bundle commands:
$ bin/console translation:extract --config=app enTranslations found are automatically added to current translations files as PHP, twig ones.
This bundle doesn't need configuration.
However, to extract strings from JS files, you must indicate where are stored your JS files in jms/translation-bundle configuration.
# paths below are symfony 3.X paths, make sure to change them for symfony 4.X
# app/config.yml
jms_translation:
configs:
app:
dirs: [
"%kernel.root_dir%",
"%kernel.root_dir%/../src",
"%kernel.root_dir%/../path/to/assets" # add assets path here
]
output_dir: "%kernel.root_dir%/Resources/translations"
ignored_domains: [routes]
excluded_names: ["*TestCase.php", "*Test.php"]
excluded_dirs: [cache, data, logs]
- Run tests:
composer test- Apply coding standard
composer csCoding standard must be applied before commit, TravisCI will fail otherwise
This project is licensed under the MIT License - see the LICENSE file for details
