npm install -g locize-cliAt the moment only i18next translation files (json) are supported
cd my-awesome-project/localesIf you have a directory structure like this:
locales
├── en
│ ├── namespace1
│ ├── namespace2
│ ├── ...
├── de
│ ├── ...
the cli by default will try to use the directory name as language.
If you have a directory structure like this:
locales
├── namespace1
├── namespace2
├── ...
you can use the --language option to define the language.
Add your api-key and your project-id and let's go...
locize migrate --api-key my-api-key-d9de-4f55-9855-a9ef0ed44672 --project-id my-project-id-93e1-442a-ab35-24331fa294ba --path ./en --language enPassing the argument --replace will empty the optionally existing namespace before saving the new translations. (default: false)
Navigate to your locize project and check the results => www.locize.io
Add your api-key and your project-id and let's go...
locize add --api-key my-api-key-d9de-4f55-9855-a9ef0ed44672 --project-id my-project-id-93e1-442a-ab35-24331fa294ba --language en namespace1 myNewKey "My new value"Add your api-key and your project-id and let's go...
locize remove --api-key my-api-key-d9de-4f55-9855-a9ef0ed44672 --project-id my-project-id-93e1-442a-ab35-24331fa294ba --language en namespace1 myNewKeyor
locize remove common titleAdd your project-id and let's go...
locize get --project-id my-project-id-93e1-442a-ab35-24331fa294ba --language en namespace1 myNewKeyor
locize get common titleAdd your project-id and let's go...
locize download --project-id my-project-id-93e1-442a-ab35-24331fa294ba --ver latest --language en --namespace namespace1 --target ./backupor
locize downloador add a format like (flat, android, xliff2, xliff12, android, yaml, csv, xlsx, po, strings, resx)
locize download --project-id my-project-id-93e1-442a-ab35-24331fa294ba --ver latest --language en --namespace namespace1 --target ./backup --format androidcd my-awesome-project/localesMake sure you have this type of tree structure: Each language should be a directory and each namespace should be a file
locales
├── en
│ ├── namespace1.extension
│ ├── namespace2.extension
│ ├── ...
├── de
│ ├── ...
the cli by will use the directory name as language and the filename (without extension as namespace name).
Add your api-key and your project-id and let's go...
locize sync --api-key my-api-key-d9de-4f55-9855-a9ef0ed44672 --project-id my-project-id-93e1-442a-ab35-24331fa294ba- if you have new keys in your local namespace it will add the missing one to locize
- if you have new namespaces in your local language directory it will add the missing one to locize
- if you have less keys (you have deleted some keys) in your local namespace it will remove them in locize too
- all non reference languages will always be just locally replaced by what is published on locize
- if you change the values of existing keys in the reference language, it will not change them in locize (to change the existing values you have to change it directly in locize)
Navigate to your locize project and check the results => www.locize.io
Add your api-key (of target version) and your project-id and let's go...
# this will copy version latest to production
locize copy-version latest --api-key my-api-key-d9de-4f55-9855-a9ef0ed44672 --project-id my-project-id-93e1-442a-ab35-24331fa294ba --ver productionAdd your api-key and your project-id and let's go...
locize publish-version --api-key my-api-key-d9de-4f55-9855-a9ef0ed44672 --project-id my-project-id-93e1-442a-ab35-24331fa294ba --ver productionAdd your api-key and your project-id and let's go...
locize delete-namespace common --api-key my-api-key-d9de-4f55-9855-a9ef0ed44672 --project-id my-project-id-93e1-442a-ab35-24331fa294ba --ver latestYou can define a config file in your home directory (or wherever you want (by specifying it in the command)) that contains defaults for your commands. i.e.
cat /Users/user/.locize
apiKey = my-api-key-d9de-4f55-9855-a9ef0ed44672
projectId = my-project-id-93e1-442a-ab35-24331fa294ba
language = en
version = latestlike this you can just work like this:
locize migrateor
locize add common title "the title of my cool app"