При загрузке файла в проект все новые ресурсы извлекаются из этого файла и сохраняются в проекте. Формат загруженного файла не обязательно должен быть начальным форматом, настроенным для проекта. Если для группировки ресурсов предусмотрены tags, то к новым ключам эти tags будут применяться.
Некоторые форматы, такие как Gettext, предоставляют дополнительную ценную метаинформацию, такую как комментарии, описания или информация о формах множественного числа. Эта информация извлекается, когда и где это возможно, и сохраняется вместе с назначенными ресурсами, что позволяет сохранять всю ценную информацию, предоставленную в файлах локализации, для дальнейшего использовать.
Существует несколько методов загрузки файлов:
-
В приложении при создании нового проекта или выборе «Загрузить файл» на странице проекта
-
через API
-
через CLI
-
По умолчанию извлекается только новый контент и все существующие ключи в проекте локализации не удаляются и не обновляются; при загрузке файлов нельзя потерять данные. При необходимости замены существующих данных замените ресурсы проекта контентом из файла локализации, выбрав опцию «
». Существующие переводы будут перезаписаны контентом загруженного файла локализации.Такая опция также доступна в интерфейсе приложений API.
Примечание
Во избежание потери данных убедитесь, что вы скачали из Phrase последние изменения в файле локализации, после чего изменили его и снова загрузили с помощью опции
. -
Введите уникальный идентификатор (например, путь к файлу), чтобы предопределить имена загруженных ключей перевода. Используйте значимый префикс, связанный с проектом или файлом, чтобы имена ключей были организованы.
Например, импортированный ключ
hello_world
с префиксомпроекта_
выдаст ключпроект_hello_world
.Префикс ключа перевода обеспечивает сопоставление ключей с существующими во избежание конфликтов в разных проектах или файлах.
Такая опция также доступна в интерфейсе приложений API и CLI.
-
Выберите этот вариант, если требуется обновить все описания ключей из загруженного файла. empty descriptions будут переписаны существующие. Описания могут содержать любую дополнительную информацию для переводчиков и Справку для идентификации отдельных ключей в редакторе.
-
Чтобы переводы были организованы, добавить несколько tags к ключам со значимыми отметками. Выберите этот параметр, чтобы предотвратить автоматическую пометку новых ключей тегом загрузки.
-
выбрать этот параметр, чтобы тег новые ключи и ключи с обновленными переводами автоматически при загрузить. Это станет Справкой при разграничении новых, обновленных и старых Strings перевода. Это обеспечит дальнейшую обработку только соответствующих ключей.
Такая опция также доступна в интерфейсе приложений API.
-
Укажите кодировку (например, UTF-8) файла или выберите ее автоматически (автоматически выбранная кодировка может привести к неверной и может быть свернута отменой загруженного).
-
предотвращает необходимость повторно подтвердить переводы не на основной язык при обновлении переводов.
При пометке переводов как проверенных все загруженные переводы считаются проверенными. Такая опция доступна при активации рабочего процесса расширенного анализа. Она позволяет помечать ключи как готовые к запуску в производство.
Чтобы загрузить файлы в Strings, выполните следующие действия:
-
Прежде чем загрузить, убедитесь, что файл правильно форматирован в зависимости от типа.
-
В проекте выберите Загрузить файл в меню « ».
Открывается страница
. -
Нажмите «Выбрать файл» и выберите файл из каталога.
Выбранный файл добавлен в поле «
. -
Выберите
файла.Предлагаемые форматы сначала представлены в зависимости от типа файла.
-
Выберите язык для контента файла в раскрывающемся списке.
Если этой информации нет в самом файле, создайте новый язык для контента или используйте существующий.
-
При необходимости укажите tags для назначения новым ключам и любые другие параметры.
-
Нажмите «Сохранить».
Контент импортируется и конвертируется в ключи.
-
Не удалось загрузить
Если файл не может быть обработан должным образом, предоставляются сведения об Error, которые Справка исправить Error.
-
Успешно загружено
После успешной обработки файла перевода открывается страница с кратким обзором загрузить с кнопками привязки к След. этапам. Нажмите на тег загрузить, чтобы открыть файл в редакторе.
-
Удаление ключей
Во избежание случайного удаления ключей при удалении ключей из файла локализации и повторной загрузке эти ключи не удаляются автоматически.
Чтобы удалить эти ключи, выполните следующие действия:
Из проекта удаляются все ключи и связанные с ними переводы, которые не вошли в загруженный файл.
-
Отменить загруженное
Каждая загруженная запускает несколько действий и может изменять много данных внутри проектов, а втянуть загруженную невозможно.
Чтобы удалить ключи, которые были (ошибочно) введены загруженным файлом, выполните следующие действия:
Все ключи и связанные с ними переводы, созданные при этой загрузить, удалены. Переводы ключей, существовавших до загруженных, не будут удалены. Чтобы удалить отдельные переводы, используйте историю версий для каждого перевода.
На любой странице проекта выберите
в меню « », чтобы получить доступ к архиву загруженных файлов.Загруженный архив содержит список всех исторических uploads во всех возможных статусах. Нажмите раскрывающееся окно «
», чтобы отфильтровать uploads по статусу ( », « » и/или « »). Чтобы найти определенного загруженного, используйте search Box в верхней части для поиска по имени.Получите доступ к подробным загруженным сводкам затрагиваемых ресурсов, нажав на список загруженных. Все успешные uploads также представлены в потоке активности проекта.
Файлы языков могут быть загружены из проекта в любой момент и в любой поддерживаемый формат файла.
Файлы можно загрузить из приложения, используя интерфейс приложений API или CLI.
Файлы можно скачать с вкладки «Скачать» (несколько файлов) или кнопку «Дополнительных параметров /Скачать» языка.
Варианты скачать представлены при скачать файл в окне
с вкладками « », « и « ».Выбор разных конкретном формате файла.
предполагает разные варианты. Более подробная информация содержится в соответствующей статье о-
Если префикс ключа перевода был добавлен при загрузке файла, выберите этот параметр на вкладке
, чтобы удалить префикс из названий экспортируемых ключей перевода:-
Введите префикс, чтобы скачать все ключи, и по возможности удалите указанный префикс.
ВАЖНО:
Это может создать дублирующиеся имена ключей, если другие ключи будут иметь то же имя после удаления префикса.
-
При необходимости выберите
, чтобы скачать только ключи перевода, содержащие указанный префикс, и удалите префикс из загруженного файла.
Такая опция также доступна в интерфейсе приложений API и CLI.
-
По умолчанию переводимые ресурсы хранятся в виде ключей и значений вместо сохранения исходной структуры файла. Это позволяет использовать сменные форматы файлов без заблокированных в одном формате, а также гибкую группировку с использованием tags.
Некоторые рамки или настройки требуют нескольких оригинал файлов, также требующих дополнительной настройки.
Ведение отдельных файлов
В общем, все переводы для каждого языка держите в одном файле. Это делает загрузку ресурсов быстрее и надежнее. Переводы организованы в проектах, поэтому отдельные небольшие файлы не требуются.
Если файлы локализации необходимо вести в отдельных файлах, можно использовать файлообработанный рабочий процесс, пометив ключи, загруженные, и используя tags в качестве справочных файлов при загрузке переведенных ключей обратно в исходные файлы. Ключи могут нести несколько tags и быть включены в несколько файлов, обеспечивающих повторное использование и единообразие. Рабочий процесс на основе тегов является гибким и позволяет осуществлять повторную организацию ресурсов перевода без необходимости загрузки в проекты.
Дайте ключам уникальные имена во всех файлах, чтобы обеспечить бесперебойный рабочий процесс. При подходе, основанном на значении ключа, ключ должен иметь одинаковые значения, присваиваемые ему во всех контекстах. Некоторые рамки позволяют использовать неуникальные ключи над несколькими файлами. Некоторые форматы, такие как Symfony, поддерживают отрасли сообщений. Эти отрасли обнаруживаются именем файла. Ключи не объединяются автоматически отраслями, базирующимися на имени файла, но это можно решить, используя уникальный префикс отрасли для ключей в файле.
Пример конфигурации CLI
Если вы работаете с CLI или связываете проект с хранилищем (например, GitHub, GitLab или Bitbucket), настройте файл конфигурации для управления uploads и downloads.
Например, проект имеет несколько семантически названных файлов перевода для языкового стандарта оригинала. Например: counts.en.yml
, email.en.yml
и т. д. Управление этими семантическими именами осуществляется через tags.
Настройте .phrase.yml
таким образом, чтобы он отражал организацию файлов в проекте локализации и привязывал их к tags в проекте Strings, включая заполнитель тегов на пути файла:
phrase: access_token: "3d7e6598d955bfcab104c45c40af1b9459df5692ac4c28a17793" project_id: "23485c9c5dfb15d85b32d9c5f3d2hl54" file_format: yml push: sources: - файл: ./path/to/locales/<teg>.en.yml params: locale_id: "abcd1234cdef1234abcd1234cdef1234" pull: targets: # счета - файл: ./path/to/языковые стандарты/accounts.<locale_name>.yml params: tags: учетные записи # emails - файл: ./path/to/языковые стандарты/emails.<locale_name>.yml params: tags: электронная почта
ВАЖНО:
При поддержке из соображений безопасности не рекомендуется хранить в файле токены полученного доступа.
Установка переменной среды PHRASE_ACCESS_TOKEN
является более безопасной.
Parameter tags также можно использовать в разделе push вместо заполнителя <тега>
.
Конфигурация создает ключи с tags на основе файла, из которого они пришли при запуске push или запуске синхронизации из хранилища. При запуске pull или запуске экспортировать в хранилище оно группирует ключи в файлы на основе их tags
Продукт, веб-сайт или приложение переведены на ряд разных языков, но в некоторых случаях локализация является не просто выбранным языком, а различными версиями в рамках одного языка.
Необходимо провести дополнительное различие, если:
-
В регионах, где говорят на одном языке, у товара другой брендинг.
-
Продукт используетсяd разными клиентами, которые хотят использовать решение для белых меток.
-
Требуются такие варианты языка, как простой, формальный или неформальный.
Локализация статического продукта
Если продукт полностью разработан и редко обновляется, отдельная версия продукта может существовать в рамках проекта.
-
Если какой-либо отдельный результат или краткосрочный проект:
Создайте ветвь, работа исключительно над этой ветвью в течение всего проекта и удалите ветвь, когда она будет Завершена.
-
Если термин проект:
Ведение дублировать существующего проект. Это позволяет приглашать и работать с клиентами в одной организации, только получив доступ к их проектам, оставляя другие проекты скрытыми для них.
Локализация проекта с постоянными обновлениями
Если продукт постоянно пополняется новым контентом (ключами), применить эти обновления к нескольким проектам и поддерживать их синхронизацию достаточно сложно. Используйте выделенные языки в проекте для их обслуживания.
Языковые коды, соответствующие стандарту ISO (например, en-US), не обязательно должны быть уникальными, поэтому в рамках проекта можно создать множество версий одного языка. Различайте регионы, клиентов или аудиторию, используя уникальное название языка.
При настройке новый ключ в языковом стандарте по умолчанию отображается как не переведенный на остальные языки и локализуется соответствующим образом. Если вы работаете с клиентом и его собственным(-ыми) переводчиком(-ами), назначьте его(-и), чтобы иметь возможность редактировать свои версии на языке только путем обновления полученного доступа к языку в его профиле пользователя или управлении пользователями проекта.
Настроить параллельные процессы локализации с заданиями и проверить рабочие процессы в рамках одного проекта. Такая гибкость распространяется также на загрузку и скачивание файлов языков или автоматизированных процессов через интерфейс приложений API.