s## translation-tools
Manipulate i18n po|pot files, synchronize a base
folder updated through
weblate and a webapp src
.
commands
extract
Extract all angular gettext references in html|ts files into a <src>/i18n/template.pot
file
translation-tools extract webapp
This command will read all files in webapp/app
with extension .html
or .ts
to find gettext references. Then it will save them into a webapp/i18n/template.pot
file.
convert
For all langs defined in config.json, convert lang files in <src>/i18n/*.po
into `/i18n/*.json
translation-tools convert webapp/
This command will take all langs
defined in webapp/config.json
, look for webapp/i18n/{lang}.po
files,
then convert them to json in order to be mount them, with sources, into a Docker image.
filter
For all langs defined in config.json, filter lang files in <base>/srcName/*.po
with strings only present in <src>/i18n/template.pot
.
translation-tools filter webapp/ weblate-global-git-repo/
This command will take all langs
defined in webapp/config.json
, look for weblate-global-git-repo/webapp-name-in-package-json/{lang}.po
files,
and copy them to webapp/i18n/{lang}.po
but filtered with the webapp/i18n/template.pot
strings.
merge
Add new string into <src>/i18n/template.pot
to each files present in <base>/srcName/*
.
Add auto-discovery.po if none existing translation is found.
translation-tools merge webapp/ weblate-global-git-repo/
This command will gather all new strings inside webapp/i18n/template.pot
compared to weblate-global-git-repo/webapp-name-in-package-json/template.pot
.
And add those new strings to all files in weblate-global-git-repo/webapp-name-in-package-json/*
.
merge-dep
Add new string into <srcFile>
from each template present in <basePath>
.
translation-tools merge-dep webapp/i18n/template.pot webapp/i18n/
This command will gather all new strings inside webapp/i18n/template.pot
from webapp/i18n/template-*.pot
.
mover
Move all langs defined in config.json, from <src>/i18n
to <src>/dist/i18n
translation-tools mover webapp/
This command will take all langs
defined in webapp/config.json
, look for webapp/i18n/{lang}.json
files,
and copy them to webapp/i18n7/dist/{lang}.json
.