gecko-dev/third_party/python/compare-locales
Stas Malolepszy 9061bd6128 Bug 1666232 - Vendor fluent.syntax 0.18.1, fluent.migrate 0.10, compare-locales 8.1.0. r=flod
Differential Revision: https://phabricator.services.mozilla.com/D90851
2020-09-21 12:26:42 +00:00
..
compare_locales Bug 1666232 - Vendor fluent.syntax 0.18.1, fluent.migrate 0.10, compare-locales 8.1.0. r=flod 2020-09-21 12:26:42 +00:00
PKG-INFO Bug 1666232 - Vendor fluent.syntax 0.18.1, fluent.migrate 0.10, compare-locales 8.1.0. r=flod 2020-09-21 12:26:42 +00:00
README.md
setup.cfg
setup.py Bug 1666232 - Vendor fluent.syntax 0.18.1, fluent.migrate 0.10, compare-locales 8.1.0. r=flod 2020-09-21 12:26:42 +00:00

README.md

Build Status

compare-locales

Lint Mozilla localizations

Finds

  • missing strings
  • obsolete strings
  • errors on runtime errors without false positives
  • warns on possible runtime errors

It also includes l10n-merge functionality, which pads localizations with missing English strings, and replaces entities with errors with English.

If you want to check your original code for errors like duplicated messages, use moz-l10n-lint, which is also part of this package. You can also use this to check for conflicts between your strings and those already exposed to l10n.

Configuration

You configure compare-locales (and moz-l10n-lint) through a project configuration file, l10n.toml.

Examples

To check all locales in a project use

compare-locales l10n.toml .

To check Firefox against a local check-out of l10n-central, use

compare-locales browser/locales/l10n.toml ../l10n-central

If you just want to check particular locales, specify them as additional commandline parameters.

To lint your local work, use

moz-l10n-lint l10n.toml

To check for conflicts against already existing strings:

moz-l10n-lint --reference-project ../android-l10n/mozilla-mobile/fenix l10n.toml
moz-l10n-lint --l10n-reference ../gecko-strings browser/locales/l10n.toml

to check for a monolithic project like Fenix or a gecko project like Firefox, resp.