Ключи используются для идентификации переводимых строк текста в программном коде. Это позволяет использовать ключ (как кодовое имя для переводимой строки) только один раз в Phrase вместо каждого необходимого перевода строки.
С ключом может быть связано несколько переводов, каждый из которых соответствует разному языковому стандарту проекта. Эта функция аналогична функции первичного ключа в реляционных базах данных, где переводы являются атрибуты ключа. Ключи хранятся в файлах ресурсов и используются для идентификации оригинала и перевода.
Использование ключей позволяет платформам управления локализацией представлять переводимый текст переводчикам без необходимости показывать код.
Ключи обычно не нужно добавлять в проект, так как в идеале они создаются при загрузке файла ресурсов через вкладку на странице проекта.
Чтобы предотвратить загрузку или создание ключей, используйте функциональность блокировки ключа. Если заблокированный ключ уже существует, его нельзя перевести в редакторе.
Чтобы Исключить ключи из экспорта, используйте функциональность Исключить ключи. Исключенные ключи также нельзя перевести в редакторе.
Ключи в проекте можно дублировать, выбрав More/Duplicate key в разделе на странице проекта или в верхней части Strings Editor pane.
Различные ключи перевода с одинаковыми значениями в одном или нескольких проектах можно связать, чтобы автоматизировать обновление контента. Связанные ключи используются для обеспечения согласованности между проектами и устранения повторяющейся работы над идентичным контентом.
Изменения ключей можно отменить в окне активности боковой панели в Strings Editor.
Примечание
При работе с хранилищами (GitHub, GitLab и т. д.) и удалении ключей, ключи должны быть удалены как из Phrase, так и из хранилища, чтобы они были удалены навсегда. Это сделано для предотвращения случайного удаления ключей из-за ошибок или инцидентов в Phrase или хранилище.
В Strings ключи могут быть разных типов в зависимости от формата загруженного файла:
-
Строка (по умолчанию)
Примечание
Переводчики могут редактировать только ключи строк, если в расширенных настройках проекта не включена опция .
-
Множество
-
Булевский тип данных
-
Markdown
-
Число
Тип ключа отображается в разделе на боковой панели редактора.
Имена ключей должны быть уникальными в рамках одного проекта.
Существует несколько стратегий именования ключей:
-
Описательная
Оригинал текста определяется по функции. Это может затруднить идентификацию текста при чтении кода, но останется неизменным.
Пример:
-
Оригинал Strings (не рекомендуется)
Сам оригинал текста используется в качестве ключа, что позволяет легко определить использование текста. Это проблематично, так как если оригинал текста изменится, связь с переводами будет нарушена.
Пример:
Если ключи не загружены, их можно создать вручную.
Чтобы создать ключ, выполните следующие действия:
-
На вкладке нажмите Add key.
Откроется окно добавления ключа.
-
На вкладке укажите , , любые доступные и .
-
При необходимости включите plural forms на вкладке и выберите тип формы множественного числа.
-
При необходимости выберите исключенные языки на вкладке .
-
При необходимости укажите технические детали на вкладке .
Например, можно установить ограничение на количество символов для переводов в поле . Если ограничение установлено, оно отображается индикатором в Strings Editor при редактировании переводов соответствующего ключа.
-
Нажмите «Сохранить».
Ключ добавлен в проект, его можно просмотреть на вкладке .
Удаление ключа из редактора или с вкладки приведет к удалению всех связанных с ним переводов, и это действие нельзя отменить.
В проектах с количеством ключей более 10 000 неупомянутые ключи не будут рассчитываться при дальнейших загрузках. Неупомянутые ключи — это ключи, которые не были включены в текущую загрузку, но все еще существуют в проекте.
Блокировка предотвращает добавление целых ключей в проект; если имя заблокированного ключа появляется в загружаемом файле, этот ключ пропускается и не добавляется в проект.
Блокировка используется для исключения ключей из проекта, чтобы они вообще не управлялись.
Обычно заблокированные ключи:
-
Строки формата даты и времени.
-
Ключи, включающие конфигурации.
-
Ключи, вызывающие проблемы при управлении с помощью Phrase gem.
Управляйте заблокированными ключами в отдельном файле языка, который не обрабатывается и не поддерживается.
Эти ключи могут вызывать проблемы, и если они используются, их следует заблокировать при создании проекта.
-
activemodel.errors* -
number.format* -
number.currency* -
number.percentage* -
datetime.prompts*
Чтобы заблокировать ключ, выполните следующие действия:
-
На странице проекта выберите вкладку .
-
Нажмите Add key to the blocked keys list.
Откроется окно .
-
Укажите имя ключа или регулярное выражение (regex) и нажмите Save.
Ключ будет добавлен в список.
Рекомендации
Чат-боты искусственного интеллекта (ИИ) могут быть очень эффективными в генерации и подтверждении регулярных выражений.
Используйте Инструменты, такие как Regex101, для тестирования регулярных выражений с различными входными данными.
Ключи можно позже изменить, нажав , или удалить
.
Некоторые ключи, возможно, потребуется исключить из определенных языков, и их можно пометить как исключенные. Эти ключи загружены и существуют в рамках проекта, но игнорируются.
Исключенные переводы:
-
Исключено из экспорта соответствующего языка.
-
Исключено из отчетов по соответствующему языку.
Если контент пустой, он не считается не переведенным.
-
Видимый, но не редактируемый в редакторе переводов.
Параметры исключения:
-
Исключить отдельный перевод на языке в редакторе переводов.
-
Исключить несколько переводов на языке в редакторе переводов.
-
Исключить несколько переводов, выбрав языки при создании или редактировании ключа.
Чтобы исключить ключ, выполните следующие действия:
-
На странице ключей нажмите
для ключа, требующего исключения.
Откроется окно .
-
Выберите вкладку .
-
Выберите языки для исключения.
-
Нажмите «Сохранить».
Выбор исключен в указанном ключе.
Ключи также можно исключить по отдельности или массово из списка ключей редактора, выбрав ключ(и) и используя меню .