Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

poeditor-cli

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

poeditor-cli

  • 0.5.0
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

poeditor-cli

Gem Build Status Codecov

Command line application for POEditor.

poeditor-cli

Features

  • 📚 Exporting translation files directly from POEditor to your project directory
  • 🎲 Mapping translation directory dynamically
  • 🍎 Replacing %s with %@ for Apple strings
  • 📦 We use it in our products

Installation

$ [sudo] gem install poeditor-cli

Usage

A single command will do almost everything for you.

$ poeditor pull

Before you do this, you have to create a poeditor.yml file. This is a configuration file for poeditor-cli. Here is an example poeditor.yml:

api_key: YOUR_API_KEY
project_id: PROJECT_ID
type: apple_strings
tags: [ios]

languages: [en, ko, ja, zh-Hans, zh-Hant, fr, es]
language_alias:
  zh: zh-Hans

path: Resources/{LANGUAGE}.lproj/Localizable.strings
path_replace:
  en: Resources/Base.lproj/Localizable.strings

See Example poeditor.yml files section for more examples.

  • api_key

    Your POEditor API key. You can check it on POEditor API Access. Use such like $MY_API_KEY to use environment variable.

  • project_id

    POEditor project ID. You can check this value on the web browser's address bar. (For example: https://poeditor.com/projects/view?id=XXXXX) Use such like $MY_PROJECT_ID to use environment variable.

  • languages

    Language codes to export. Use the language codes that your project uses. For example, use zh-Hans for Xcode project and zh-rCN for Android project even though POEditor uses zh-CN for simplified chinese.

  • language_alias (Optional)

    Specify this value to copy the translation file to another language. For example, zh is same with the translation of zh-Hans or zh-rCN. In this case, you can specify the language_alias value as follows:

    languages: [ko, ja, zh-Hans, zh-Hant]
    language_alias:
      zh: zh-Hans
    
  • path

    The path for translation files to be downloaded. Each values of languages will be used for filling {LANGUAGE} placeholder.

  • path_replace (Optional)

    Specify this value to enforce the translation file path. For example, Android uses values/strings.xml for default language and values-ko/strings.xml or values-ja/strings.xml for others. In this case, you can specify the path_replace as follows:

    path: myapp/src/main/res/values-{LANGUAGE}/strings.xml
    path_replace:
      en: myapp/src/main/res/values/strings.xml
    
  • type

    Translation file format. (po, pot, mo, xls, csv, resw, resx, android_strings, apple_strings, xliff, properties, key_value_json, json, xmb, xtb)

  • tags (Optional)

    Terms which contain whole tags will be exported. (&&)

Example poeditor.yml files

  • Xcode project

    api_key: $POEDITOR_API_KEY        # from envvar
    project_id: $POEDITOR_PROJECT_ID  # from envvar
    type: apple_strings
    tags: [ios]
    
    languages: [en, ko, ja, zh-Hans, zh-Hant]
    path: Resources/{LANGUAGE}.lproj/Localizable.strings
    
  • Android project

    api_key: $POEDITOR_API_KEY        # from envvar
    project_id: $POEDITOR_PROJECT_ID  # from envvar
    type: android_strings
    tags: [android]
    
    languages: [en, ko, ja, zh-rCN, zh-rTW]
    
    path: myapp/src/main/res/values-{LANGUAGE}/strings.xml
    path_replace:
      en: myapp/src/main/res/values/strings.xml
    
  • Projects using gettext

    api_key: $POEDITOR_API_KEY        # from envvar
    project_id: $POEDITOR_PROJECT_ID  # from envvar
    type: po
    
    languages: [en, ko, ja, zh_Hans, zh_Hant]
    language_alias:
      zh: zh_Hans
    
    path: myservice/translations/{LANGUAGE}/LC_MESSAGES/messages.po
    

License

poeditor-cli is written by Suyeol Jeon and available under MIT license.

FAQs

Package last updated on 08 Jan 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc