Skip to main content

The translation files checker and syncing tool.

Project description

trans-tool logo

The translation files checker and syncing tool


master branch: Unit tests codecov Code lint MD Lint

development branch: Unit tests codecov Code lint MD Lint


Table of contents


Introduction

trans-tool is a small but powerful utility aimed at your projects' translation files. It is armed with several validators to watch for common mistakes in translations as well as base strings. It currently loads *.properties files, which is file format often used in Java projects as the trans-tool was born while working on Logisim-evolution.

Example *.properties file looks like simplified version of commonly used INI file:

# Example of *.properties file
programTitle = trans-tool v2.0.0
okButton = "OK"

Internally, trans-tool works on abstract format, thus adding support for other file formats can easy be added which will happen upon demand.

While loading your *.properties files trans-tool checks if files are in order, ensuring all of them are syntactically correct and all of the translations are in sync with main language. It also comes with huge set of various linters and checkers to guard quality of the files' contents. It can check for missing or dangling keys, improper punctuation, open brackets, quotation marks and more. It can also automatically sync translation files quickly providing fresh template for your translators to work on.

$ trans-tool -b soc -l pl

Base: src/main/resources/resources/logisim/strings/soc/soc.properties
  Errors: 1
    Brackets
      E: Line 163:90: "AssemblerRunSuccess": No opening character matching ")".
  PL: src/main/resources/resources/logisim/strings/soc/soc_pl.properties
    Errors: 3, warnings: 4
      Brackets
        E: Line 175:83: "AssemblerRunSuccess": No opening character matching ")".
      Formatting values
        E: Line 383:167: "PioMenuOutClearRemark": Expected "%s", found "%s.".
        E: Line 387:167: "PioMenuOutSetRemark": Expected "%s", found "%s.".
      Missing translations
        W: "ElfHeaderEIDataError": Missing translation.
        W: "AsmPanErrorCreateFile": Missing translation.
      Punctuation mismatch
        W: Line 12: "SocInsertTransWindowTitle": Ends with "y". Expected ":".
      First words case mismatch.
        W: Line 332: "Rv32imProgramCounter": Starts UPPER-cased, expected lower-case.

License

  • Written and copyrighted ©2021 by Marcin Orlowski <mail (#) marcinorlowski (.) com>
  • trans-tool is open-sourced software licensed under the MIT license.
  • Project logo contains elements from Flaticon.com.
  • trans-tool project PyPi page.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

trans-tool-2.5.1.tar.gz (47.2 kB view details)

Uploaded Source

Built Distribution

trans_tool-2.5.1-py3-none-any.whl (81.1 kB view details)

Uploaded Python 3

File details

Details for the file trans-tool-2.5.1.tar.gz.

File metadata

  • Download URL: trans-tool-2.5.1.tar.gz
  • Upload date:
  • Size: 47.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.25.1 setuptools/39.1.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.15

File hashes

Hashes for trans-tool-2.5.1.tar.gz
Algorithm Hash digest
SHA256 840e94f501b6be7090e2bbd110641bb42d67d3f045c137d958adaa16a08cc003
MD5 8023625ec76e63b746538d6339e3aedb
BLAKE2b-256 06a0f02ecb7e11a3ba10ecfc48afe5cbf58440aee3279afe1e889786f755a195

See more details on using hashes here.

File details

Details for the file trans_tool-2.5.1-py3-none-any.whl.

File metadata

  • Download URL: trans_tool-2.5.1-py3-none-any.whl
  • Upload date:
  • Size: 81.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.25.1 setuptools/39.1.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.15

File hashes

Hashes for trans_tool-2.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9aacb227cab0ad60a95e433420c9ce0a8f6a133dea4b4ffd8a4a56506d6916d9
MD5 132a4d3ffab42216fb032f7e00afc46b
BLAKE2b-256 21f5a37af022f8461bbb39534432e90f1d5a5c3bcc7247b85eabf89b8923ea58

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page