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 yet powerful utility designed for your projects' translation files. It comes equipped with several validators to catch common mistakes in translations as well as base strings. It currently loads *.properties files, a format often used in Java projects. The trans-tool was conceived during work on Logisim-evolution.

An example *.properties file resembles a simplified version of the commonly used INI file:

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

Internally, trans-tool operates on an abstract format, thus adding support for other file formats can easily be incorporated, which will be done upon demand.

While loading your *.properties files, trans-tool checks if the files are in order, ensuring all of them are syntactically correct and all the translations are in sync with the main language. It also comes with a vast set of various linters and checkers to guard the 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 a 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-2024 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.4.tar.gz (46.9 kB view details)

Uploaded Source

Built Distribution

trans_tool-2.5.4-py3-none-any.whl (78.0 kB view details)

Uploaded Python 3

File details

Details for the file trans_tool-2.5.4.tar.gz.

File metadata

  • Download URL: trans_tool-2.5.4.tar.gz
  • Upload date:
  • Size: 46.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.3

File hashes

Hashes for trans_tool-2.5.4.tar.gz
Algorithm Hash digest
SHA256 ceeb67c4e346ff9da33532f69bf43918eda05e9876e26e3ab556c55d621ef10a
MD5 13e017a03b237c32c5f9d620aeb75a31
BLAKE2b-256 e0cd206ba8c6161aaa61b11b1f110711ec043fbafbd93619e7e0ba6a38d66830

See more details on using hashes here.

File details

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

File metadata

  • Download URL: trans_tool-2.5.4-py3-none-any.whl
  • Upload date:
  • Size: 78.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.3

File hashes

Hashes for trans_tool-2.5.4-py3-none-any.whl
Algorithm Hash digest
SHA256 3b021935b02217c6495111ae11be7f6a7ad6617725eea06fec18f114ae5ddbcf
MD5 8291345ef70bede842ebc6eee8584164
BLAKE2b-256 908ddf0fc619dc976326181260f4665ff0d60d03de0be7b18219061e3c5c4290

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