Metadata-Version: 2.1
Name: poeditor-sync
Version: 0.6
Summary: Command line client for POEditor service
Home-page: https://github.com/mick88/poeditor-sync
Author: Michal Dabski
Author-email: contact@michaldabski.com
License: MIT
Project-URL: Source, https://github.com/mick88/poeditor-sync
Project-URL: Tracker, https://github.com/mick88/poeditor-sync/issues
Project-URL: Changelog, https://github.com/mick88/poeditor-sync/blob/master/HISTORY.txt
Project-URL: Example configuration, https://github.com/mick88/poeditor-sync/blob/master/example/poeditor.yml
Project-URL: POEditor, https://poeditor.com/
Description: # POEditor sync
        [![Tests](https://github.com/mick88/poeditor-sync/actions/workflows/python-test.yml/badge.svg?branch=master)](https://github.com/mick88/poeditor-sync/actions)
        [![poeditor-sync](https://badge.fury.io/py/poeditor-sync.svg)](https://badge.fury.io/py/poeditor-sync)
        
        A commandline tool for synchronizing your project's translation with [POEditor](https://poeditor.com/).
        
        The script uses [Click](https://pypi.org/project/click/) library to wrap [POEditor API client](https://pypi.org/project/poeditor/) into a commandline tool that can be used manually or inside shell scripts.
        
        ## Installation
        ```shell
        pip install poeditor-sync
        ```
        
        ## Usage
        
        ### Configuration
        Create a config file `poeditor.yml` to link your project with a POEditor project and define paths to translation files. Multiple projects are supported.
        ```yml
        api_token: ABC123...
        projects:
          - id: 12345
            format: po
            # set it to terms to order results by 'terms' alphabetically.
            order: terms
            # generic path to translation file
            terms_path: locale/{language_code}/LC_MESSAGES/django.po
            # alternatively, specify per-language path
            terms:
              en: locale/en/LC_MESSAGES/django.po
              pl: locale/pl/LC_MESSAGES/django.po
          - id: 54321
            format: po
            terms_path: locale/{language_code}/LC_MESSAGES/djangojs.po
            terms:
              en: locale/en/LC_MESSAGES/djangojs.po
              pl: locale/pl/LC_MESSAGES/djangojs.po
        
        ```
        If you're planning to commit the config file into your repository or share it with someone, it is recommend that the API token in your config file be a read-only token.
        You can use a separate token for uploads and pass it using `--token` option or `POEDITOR_TOKEN` environment variable.
        
        ### Commands:
        ```shell
        # View usage instructions
        poeditor --help
        # generate config file
        poeditor init {project-id}
        # List projects and their translation languages
        poeditor project-details
        # download translations
        poeditor pull
        # Upload local translations to poeditor
        poeditur push
        # Upload only one language and user a different API token:
        poeditur --language pl --token=123ABCD push
        # Upload only terms (after adding new strings to the project)
        poeditor push-terms --sync-terms --overwrite
        ```
        
        ### Options
        | Option          | environment variable   | default value                | description                                                          |
        |-----------------|------------------------|------------------------------|----------------------------------------------------------------------|
        | `--token`       | `POEDITOR_TOKEN`       | _api_token from config file_ | Authentication token for POEditor. Overrides value from config file. 
        | `--config-file` | `POEDITOR_CONFIG_FILE` | poeditor.yml                 | Path to the project config file in yaml format                       
        | `--language`    | `POEDITOR_LANGUAGE`    |                              | Operate only on this language                    
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development :: Internationalization
Classifier: Topic :: Utilities
Description-Content-Type: text/markdown
