Skip to content
A command-line client for the crowdin.net API
Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
crowdin
scripts
tests
.gitignore
.travis.yml
LICENSE
MANIFEST.in
Makefile
README.rst
requirements-dev.txt
requirements.txt
setup.py

README.rst

Crowdin-client

Build Status

A client for the Crowdin API which lets you push source translations to crowdin and pull translated content.

Installation

(sudo) pip install crowdin-client

If you don't have pip:

(sudo) easy_install pip
(sudo) pip install crowdin-client

If you don't even have easy_install on windows, get the .exe at http://pypi.python.org/pypi/setuptools, install it, add c:\Python2x\Scripts to the Windows path (replace Python2x with the correct directory).

Configuration

Create a .crodwin JSON file in your root project directory with the following structure:

{
    "project_name": "crowdin project name",
    "api_key": "project API key",
    "localizations": [
        {
            "source_path": "locale/en/LC_MESSAGES/django.po",
            "remote_path": "path/to/django.po",
            "target_langs": {
                "fr": "locale/en/LC_MESSAGES/django.po",
                "de": "locale/de/LC_MESSAGES/django.po",
                "it": "locale/it/LC_MESSAGES/django.po"
            }
        },
        {
            "source_path": "locale/en/LC_MESSAGES/*.po",
            "excluded" : "_*, ~*",
            "remote_path": "path/to/",
            "target_langs": {
                "fr": "locale/en/LC_MESSAGES/",
                "de": "locale/de/LC_MESSAGES/",
                "it": "locale/it/LC_MESSAGES/"
            }
        }
    ]
}

The second entry in the json is to use a complete directory as translation source / destination. Useful for documentation. DO NOT FORGET the trailing slash for directories.

Usage

Push source files:

crowdin push

Pull translations:

crowdin pull

If you're importing a project with existing translations to crowdin, run crowdin push -a to also upload the local target files to crowdin. The -a flag should only be used once, you must then use the push / review / pull workflow provided by Crowdin.

Changelog

  • 0.3: Added support for wildcard character to manage folders in translations
  • 0.2: Added -a flag to crowdin push.
  • 0.1: initial version.
Something went wrong with that request. Please try again.