PO gettext — это система интернационализации и локализации (i18n), обычно используемая для написания многоязычных программ в компьютерных операционных системах Unix-подобного типа.
При идентификации одного и того же оригинала контроль качества (QA) учитывает только контекстный ключ.
Корректные файлы .PO являются двуязычными, где msgid содержит оригинал текста, а msgstr содержит перевод.
Например:
#: src/name.c:36 msgid \"My name is %s.\\n\" msgstr \"Je m'appelle %s.\\n\"
Типы файлов
-
.PO
Поддерживаемые форматы заполнителей
-
c-формат
-
objc-формат
-
sh-формат
-
python-формат
-
python-brace-формат
-
elisp-формат
-
librep-формат
-
scheme-формат
-
smalltalk-формат
-
java-format
-
csharp-формат
-
awk-формат,
-
object-pascal-format
-
ycp-формат
-
tcl-формат
-
perl-формат
-
perl-brace-формат
-
php-формат,
-
gcc-internal-формат
-
gfc-internal-формат
-
qt-формат
-
qt-plural-формат
-
kde-формат
-
boost-формат
-
lua-формат
-
javascript-format
Параметры импорта
-
Сообщения ICU автоматически конвертируются в теги. Когда сегмент содержит встроенные элементы, синтаксический анализ ICU для этого сегмента пропускается. Сегменты без встроенных элементов анализируются обычным образом.
Важно
Проблемы с тегами являются распространенной причиной ошибок при экспортировать. Всегда проверяйте правильность тегов и форматирования перед экспортировать файлов, запуская проверки контроль качества.
-
Выбрано по умолчанию и улучшает обработку файлов .PO с тегами
\\nпутем добавления фактических разрывов строк в экспортируемый файл .PO. -
Правила сегментация будут использоваться для сегмент текста в элементах оригинал и перевод.
-
Импортируются HTML теги, содержащиеся в файле. Далее теги можно использовать с настройками импорта файлов .HTML.
-
Применить регулярные выражения, чтобы преобразовать указанный текст в теги.
-
Если включено, записи
языкиPlural-Formsв заголовке файла заказ на покупку (PO) перезаписываются значениями язык перевод задания. Еслиформы множественного числаотсутствуют в исходном файле заказ на покупку (PO), они создаются для перевода в готовом файле. -
Выбрать дополнительную информацию контекстного ключа, которая будет добавлена к msgstr и сохранена как контекст для память переводов (TM).
-
Установить подтверждение на основе неточного или точного соответствия.
-
Установить атрибуты экспорта на основе статуса неточного или точного соответствия.
Формы множественного числа
PO Gettext позволяет выполнять локализацию форм множественного числа.
PO GNU Gettext поддерживает формы множественного числа только с целыми числами. Десятичная форма числа, такая как 1.5 points, не поддерживается.
-
Исходный файл должен содержать строку msgid_plural, а также единственное число msgid.
-
Спецификация правил множественного числа (формула), определенная в заголовке файла, используется для создания форм множественного числа. Если такая спецификация отсутствует, для импорта задания будут использоваться стандартные правила множественного числа Unicode CLDR, основанные на языковых стандартах перевода.
-
Файл должен быть импортирован с контекстным ключом сегмента, чтобы правильно использовать функциональность множественного числа.
-
Языковой стандарт перевода и форма множественного числа сегмента будут использоваться в качестве контекстного ключа сегмента и сохранены в память переводов (TM),
-
Строка msgctxt, если она присутствует в исходном файле, добавляется к контекстному ключу сегмента и сохраняется в память переводов (TM). Она также отображается в окне контекстного примечания. В случае если msgctxt пустой, используется и сохраняется только ключевое слово msgstr.
При импорте в немецкий и арабский языки немецкий файл перевода будет иметь только две формы множественного числа, в то время как арабский файл перевода будет иметь шесть. Для каждого целевого языка будет автоматически использоваться правильное правило образования множественного числа, а задание будет импортировано с количеством форм множественного числа, специфичным для данного языка.
msgid "" msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #:ui/gui/409 msgctxt "GUI|Installation" msgid "%d _накопитель выбран" msgid_plural "%d _накопителей выбрано"
Этот файл всегда будет иметь 3 формы множественного числа, даже при импорте в немецкий или арабский язык.
msgid "" msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n>=2 && n<=4 ? 1 : 2);\\n""Language: cs\\n"" #:ui/gui/409 msgctxt "GUI|Installation" msgid "%d _накопитель выбран" msgid_plural "%d _накопителей выбрано" msgstr[0] ""msgstr[1] ""msgstr[2] ""