CLI

Использование CLI (Strings)

Контент автоматически переведен с английского языка с помощью Phrase Language AI.

Инструмент Phrase Strings CLI помогает навигации по интерфейсу приложений API для быстрого управления проектами и переводами из командной строки вместо curl- запросов.

Если вы используете американский центр хранения и обработки данных, пройдите мимо хоста с помощью Phrase init -- host https://api.us.app. phrase.com/v2. Если конфигурация уже создана, Добавьте следующий код:

Phrase:
  host: https://api.us.app.phrase.com/v2

Базовое употребление

Контролируйте, как клиент отправляет и извлекает файлы, используя файл конфигурации .phrase.yml.

  1. Инициализировать проект.

    Инициализировать проект, выполнив Phrase init. Определяет предпочтительный формат файлов языковых стандартов, исходные файлы и т. д.

    $ Phrase init
  2. Загрузить файлы языковых стандартов.

    Используйте подкоманду push, чтобы загрузить файлы языковых стандартов:

    Phrase push за $
  3. Скачать файлы языковых стандартов.

    Используйте команду pull, чтобы скачать последние файлы языковых стандартов обратно в проект:

    Вытягивание Phrase за $
  4. Все новые команды.

    Чтобы увидеть список всех доступных подкоманд, выполните Phrase без указания подкоманды. Чтобы увидеть все поддерживаемые параметры для конкретной подкоманды, используйте пометить --Справка:

    Список языковых стандартов Phrase за $ --Справка

Пример конфигурационного файла.

Избегание правил и кавычек

При передаче объектов JSON в командной строке правила экранирования и использование кавычек могут варьироваться в зависимости от используемой оболочки.

Если используется оболочка Windows, заключите всю строку JSON в двойные кавычки """ и избегайте двойных кавычек внутри JSON, используя символ обратной косой черты \. Например:

Phrase locales создайте -- project_id PROJECT123 --данные "{\"имя\":\"французский\", \"код\":\"fr\"}" --получите доступ_токен TOKEN123123

Получить доступ и аутентификацию

Доступ к конечным точкам API

Клиент может быть использован, чтобы получить доступ ко всем конечным точкам интерфейса приложений API. Например, для списка всех проектов:

Список проектов Phrase за $ --получить доступ_токен ACCESS_TOKEN

Аутентификация с использованием учетных данных Phrase

Укажите имя пользователя с пометкой --имя пользователя, и будет запрошен пароль:

Список проектов Phrase стоимостью $ --имя пользователя@example.com
Пароль: *******

Если двухфакторная аутентификация активирована для пользователя или организации, необходимо предоставить действительный многофакторный токен через пометить --tfa:

Список проектов Phrase стоимостью $ --имя пользователя@example.com --tfa
Пароль: *******
TFA: ********

Аутентификация с использованием токена полученного доступа

Задание переменных среды по-разному работает на разных платформах. Рекомендуется хранить токен полученного доступа в файле конфигурации .phrase.yml.

Используйте пометить ---получить доступ_токен, чтобы указать токен полученного доступа:

Список проектов Phrase за $ --получить доступ_токен ACCESS_TOKEN

или используйте переменную среды PHRASE_ACCESS_ТОКЕН для хранения токена:

экспортировать PHRASE_ПОЛУЧИТЬ ДОСТУП_TOKEN="ПОЛУЧИТЬ ДОСТУП_TOKEN"

Если активирована двухфакторная аутентификация, необходимо предоставить действительный многофакторный токен через пометить ---x_phrase_app_otp:

Список проектов Phrase за $ --получить доступ_токен ACCESS_TOKEN --x_phrase_app_otp PASSWORD

Токен также может быть предоставлен в интерактивном режиме с пометим --tfa:

Список проектов Phrase за $ --получить доступ_токен ACCESS_TOKEN --tfa
TFA: ********

Токен полученного доступа считывается из файла конфигурации . phrase.yml по умолчанию, однако поведение пользователя можно переопределить, используя упомянутые флаги или переменные env, и вместо этого будет использован токен, предоставленный через пометить или переменную среды. Токены, предоставляемые через флаги, переопределяют токены, предоставляемые через переменную среды.

Tush and pull

Используйте команды push и pull, чтобы загрузить и скачать файлы языковых стандартов. Вместо аргументов командной строки push и pull используйте конфигурацию, хранящуюся в файле конфигурации .phrase.yml в корневой папке проекта.

Если для push установлен параметр update_translations true, push перезаписывает переводы. Pull всегда перезаписывает переводы в локальном файле.

Пример конфигурации для загрузки и скачивания файлов языковых стандартов типичного приложения Rails:

Phrase:
  access_token: "ACCESS_TOKEN"
  project_id: "PROJECT_ID"
  file_format: "yml"
  push:
    источники:
      - файл: "./config/locales/<языковой стандарт_name>.yml"
  pull:
    целевые показатели:
      - файл: "./config/locales/<языковой стандарт_name>.yml"

Используйте push- команду, чтобы загрузить файлы языковых стандартов в проект, обозначенный идентификатором проекта, совпадающим с файлом de.yml и en.yml в папке настроек/языков. Если появятся новые ключи, они будут добавлены в файл локализации:

Phrase push за $
Загрузка конфигурации/языков/de.yml
Config/locales/de.yml успешно загружен.
Загрузка конфигурации/языков/en.yml
Конфигурация/язык/en.yml успешно загружена.

Используйте команду pull, чтобы скачать файлы языковых стандартов из проекта, идентифицированного проектом_ id, в соответствующие пути файлов. Если появятся новые ключи, они будут добавлены в проект:

Вытягивание Phrase за $
Загружено de в config/locales/de.yml
Скачано en в config/locales/en.yml

Поддержка лимита ставок

Клиент поддерживает ограничение тарифа для скачивания языковых стандартов. По достижении лимита ставки клиент ждет окончания лимита ставки и продолжает скачивать языковые стандарты впоследствии. Клиент показывает, что превышен лимит скорости, загрузка будет возобновлена через х секунд.

Загрузить очистку

Команда очистки загрузок предназначена для того, чтобы удалить ключи, найденные в проекте, но не содержащиеся в загруженном файле. После отправки файлов языковых стандартов может потребоваться удаление всех ключей, которые не включены в языковой стандарт по умолчанию или какой-либо другой языковой стандарт:

Phrase загружает cleanup --Идентификатор <YOUR_UPLOAD_Идентификатор>

Варианты формата

Несколько форматов, таких как CSV, поддерживают дополнительные опции формата во время загрузить. Получите доступ к этим параметрам, задав --format_options:

загрузок Phrase создать \
--project_id PROJECT_ID \
-- file ./en.csv \
--file_format csv \
--locale_mapping '{"en":3, "de":2}' \
--format_options ‘{“key_index”:1}’ \
-- токен доступа YOUR_ACCESS_TOKEN

Прокси

Если вы стоите за прокси, задайте настройки прокси, используя переменную среды HTTPS_PROXY:

export HTTPS_PROXY=https://user:password@host:port

Сложное использование

Несколько файлов локализации для одного проекта

Используйте в проекте один файл на каждый языковой стандарт. Если Инструменты или рамки вынуждают использовать несколько файлов, см. сохраняющиеся структуры файлов.

Несколько проектов для одного проекта локализации

При работе над крупным проектом локализации распределите переводы по нескольким проектам. Настройка CLI для работы с несколькими файлами локализации для одного проекта локализации.

Варианты формата

Некоторые форматы файлов позволяют задавать параметры формата для усиления контроля над синтаксисом файлов. Укажите параметры формата в файле конфигурации .phrase.yml::

Phrase:
  pull:
    целевые показатели:
    - файл: file.xml
      парамы:
        format_options:
          convert_placeholder: true

  push:
    источники:
    - файл: file.csv
      парамы:
        format_options:
          column_separator: ";"

Конфигурация для проектов на базе Android

Android не использует стандартные коды языка ISO в качестве шаблона файла. Укажите требуемый шаблон в . phrase.yml.

Укажите каждый языковой стандарт в файле . phrase.yml. Этот пример показывает конфигурацию .phrase.yml с английским языком по умолчанию, немецким языковым стандартом и немецким региональным языковым стандартом для австрийского немецкого языка:

Phrase:
  access_token: ACCESS_TOKEN
  project_id: PROJECT_ID
  file_format: xml
  pull:
    целевые показатели:
    - файл: ./app/src/main/res/values/strings.xml
      парамы:
        file_format: xml
        # Уникальный Идентификатор языкового стандарта для английского языка
        locale_id: LOCALE_ID
    - файл: ./app/src/main/res/values-de/strings.xml
      парамы:
        file_format: xml
        # Уникальный Идентификатор языкового стандарта для немецкого языка
        locale_id: LOCALE_ID
    - файл: ./app/src/main/res/values-de-rAU/strings.xml
      парамы:
        file_format: xml
        # Уникальный Идентификатор языкового стандарта для австрийского языка
        locale_id: LOCALE_ID
  push:
    источники:
    - файл: ./app/src/main/res/values/strings.xml
      парамы:
        file_format: xml
        locale_id: LOCALE_ID
    - файл: ./app/src/main/res/values-de/strings.xml
      парамы:
        file_format: xml
        locale_id: LOCALE_ID
    - файл: ./app/src/main/res/values-de-rAU/strings.xml
      парамы:
        file_format: xml
        locale_id: LOCALE_ID
Была ли эта статья полезной?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.