Поддерживаемые форматы файлов¶
Weblate поддерживает большинство форматов перевода, понимаемых translate-toolkit, однако понимание любого из них чем-нибудь да отличаются, поэтому могут возникнуть некоторые проблемы с форматами, которые были протестированы недостаточно тщательно.
Примечание
При выборе формата файла для вашего приложения лучше придерживаться какого-нибудь устоявшегося формата для используемого вами инструментария/платформы. Таким образом, ваши переводчики в дополнение смогут использовать любые инструменты, к которым они привыкли, и вероятность внесения ими своего вклада в ваш проект будет выше.
Двуязычные и одноязычные форматы¶
Поддерживаются как одноязычные, так и двуязычные форматы. Двуязычные форматы хранят в одном файле два языка — исходный язык и перевод (типичными примерами являются GNU gettext, XLIFF или Строки Apple iOS). С другой стороны, одноязычные форматы идентифицируют строку по идентификатору, и каждый языковой файл содержит только сопоставление этих форматов с любым заданным языком (обычно это Строковые ресурсы Android). Некоторые форматы файлов могут использоваться и так, и эдак, подробнее смотрите ниже.
Для правильного использования одноязычных файлов Weblate требует доступа к файлу, содержащему полный список строк для перевода и их «перевод» на исходный язык — этот файл внутри Weblate называется одноязычным базовым файлом, хотя в вашей парадигме наименование этой сущности может отличаться.
Кроме того, этот рабочий процесс может быть расширен с помощью файла промежуточного языка, позволяющего включить в перевод строки, предоставленные разработчиками, но не использованными «как есть» в окончательных строках.
Автоматическое обнаружение¶
Weblate умеет автоматически обнаруживать некоторые широко распространённые форматы файлов, но это обнаружение может навредить вашей производительности и ограничено возможностями, специфичными для данного формата файла (к примеру, автоматическим добавлением новых переводов).
Возможности типов переводов¶
Возможности всех поддерживаемых форматов:
Формат |
Языковость 1 |
Множественные формы 2 |
Комментарии 3 |
Контекст 4 |
Расположение 5 |
Флаги 8 |
Дополнительные состояния 6 |
---|---|---|---|---|---|---|---|
двуязычный |
да |
да |
да |
да |
да 9 |
требуется правка |
|
одноязычный |
да |
да |
да |
да |
да 9 |
требуется правка |
|
оба |
да |
да |
да |
да |
да 10 |
требуется правка, одобрено |
|
оба |
нет |
да |
нет |
нет |
нет |
||
одноязычный |
да |
да |
нет |
нет |
нет |
||
одноязычный |
нет |
да |
нет |
да |
нет |
||
оба |
да |
да |
нет |
да |
да 10 |
требуется правка |
|
одноязычный |
да |
да 7 |
нет |
нет |
да 10 |
||
двуязычный |
нет |
да |
нет |
нет |
нет |
||
одноязычный |
нет 11 |
да |
нет |
нет |
нет |
||
одноязычный |
нет |
нет |
нет |
нет |
нет |
||
одноязычный |
да |
нет |
нет |
нет |
нет |
||
одноязычный |
да |
нет |
нет |
нет |
нет |
||
одноязычный |
да |
да |
нет |
нет |
нет |
||
одноязычный |
да |
да |
нет |
нет |
нет |
||
одноязычный |
нет |
да |
нет |
нет |
да 10 |
||
оба |
нет |
да |
да |
да |
нет |
требуется правка |
|
одноязычный |
нет |
да |
нет |
нет |
нет |
||
одноязычный |
да |
да |
нет |
нет |
нет |
||
одноязычный |
нет |
нет |
нет |
нет |
нет |
||
одноязычный |
нет |
нет |
нет |
нет |
да 10 |
||
одноязычный |
нет |
да |
нет |
нет |
нет |
||
одноязычный |
нет |
да |
да |
да |
нет |
требуется правка |
|
одноязычный |
нет |
нет |
нет |
нет |
нет |
||
одноязычный |
нет |
нет |
нет |
да |
нет |
||
одноязычный |
нет |
нет |
нет |
нет |
нет |
||
одноязычный |
нет |
нет |
нет |
нет |
нет |
||
одноязычный |
нет |
нет |
нет |
нет |
нет |
||
одноязычный |
нет |
нет |
нет |
нет |
нет |
||
одноязычный |
нет |
нет |
нет |
нет |
нет |
- 1
Смотрите раздел Двуязычные и одноязычные форматы
- 2
Множественные формы необходимы для правильной локализации строк, содержащих переменную количества.
- 3
Комментарии могут быть использованы для указания дополнительной информации о строке для перевода.
- 4
Контекст используется для различения одинаковых строк, используемых в разных областях (например, Sun может означать как сокращённое название дня «воскресенье» — «Sunday» — так и название нашей ближайшей звезды).
- 5
Расположение строки в исходном коде может помочь опытным переводчикам понять предназначение этой строки.
- 6
Дополнительные состояния, поддерживаемые форматом файла в дополнение к состояниям «Не переведено» и «Переведено».
- 7
Комментарий XML, размещённый перед элементом
<string>
, трактуется как комментарий разработчика.- 8
Смотрите раздел Настройка поведения
- 9(1,2)
В качестве флагов используются комментарии типа gettext.
- 10(1,2,3,4,5)
Для всех форматов на основе XML флаги извлекаются из нестандартного атрибута
weblate-flags
. Кроме того, флагmax-length:N
поддерживается через атрибутmaxwidth
, как определено в стандарте XLIFF, смотрите раздел Указание флагов перевода.- 11
Множественные формы поддерживаются только для Laravel, который использует для их определения внутристрочный синтаксис, смотрите документ Локализация в Laravel.
GNU gettext¶
Most widely used format for translating libre software.
Контекстная информация, хранящаяся в файле, поддерживается настройкой его заголовков или его привязкой к соответствующим исходным файлам.
Двуязычный PO-файл gettext обычно выглядит следующим образом:
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "Monday"
msgstr "Pondělí"
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "Tuesday"
msgstr "Úterý"
#: weblate/accounts/avatar.py:163
msgctxt "No known user"
msgid "None"
msgstr "Žádný"
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
Пусто |
Шаблон для новых переводов |
|
Формат файла |
PO-файл gettext |
См.также
Перевод программ с помощью GNU Gettext, Перевод документации с помощью Sphinx, Gettext в Википедии, PO-файлы, Обновление переменной ALL_LINGUAS в файле «configure», Настройка вывода gettext, Обновление файла LINGUAS, Генерирование MO-файлов, Обновлять PO-файлы до соответствия POT (msgmerge)
Одноязычный gettext¶
Некоторые проекты решают использовать gettext в качестве одноязычного формата — в их исходном коде присутствуют только идентификаторы и строка должна быть переведена на все языки, в том числе и на английский. Такая конфигурация поддерживается, хотя для этого и надо явно выбирать этот формат файлов при импорте компонентов в Weblate.
Одноязычный PO-файл gettext обычно выглядит следующим образом:
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-monday"
msgstr "Pondělí"
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-tuesday"
msgstr "Úterý"
#: weblate/accounts/avatar.py:163
msgid "none-user"
msgstr "Žádný"
А базовый языковой файл — вот таким образом:
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-monday"
msgstr "Monday"
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-tuesday"
msgstr "Tuesday"
#: weblate/accounts/avatar.py:163
msgid "none-user"
msgstr "None"
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
|
Формат файла |
PO-файл gettext (одноязычный) |
XLIFF¶
Формат на основе XML, созданный для стандартизации файлов перевода, но в конечном итоге ставший просто ещё одним из многочисленных стандартов в этой области.
Формат файла XML для обмена локализациями (XLIFF) обычно используется как двуязычный, но Weblate поддерживает его использование и в качестве одноязычного.
См.также
Спецификация формата файла XML для обмена локализациями (XLIFF)
Состояния перевода¶
Изменено в версии 3.3: До выпуска 3.3 Weblate игнорировал атрибут состояния.
Атрибут состояния state
в файле частично обрабатывается и отображается в Weblate в состояние «На правку» (следующие состояния используются для пометки строки на правку, если присутствует цель: new
, needs-translation
, needs-adaptation
, needs-l10n
). Если атрибут state
отсутствует, то строка считается переведённой, если существует элемент <target>
.
Если строка перевода имеет атрибут approved="yes"
, она также будет импортирована в Weblate в состоянии «Одобрено», все остальные строки будут импортированы в состоянии «Ожидает рецензирования» (что соответствует спецификации XLIFF).
При сохранении Weblate добавляет эти атрибуты только если они действительно необходимы:
Атрибут
state
добавляется только в том случае, если строка помечена на правку.Атрибут
approved
добавляется только в том случае, если строка была отрецензирована.В остальных случаях эти атрибуты не добавляются, но если они присутствуют, они обновляются.
Это означает, что при использовании формата XLIFF настоятельно рекомендуется включить в Weblate процесс рецензирования, чтобы видеть и изменять состояние одобрения строк.
Смотрите раздел Выделенные рецензенты.
Аналогично, при импорте таких файлов (в форме загрузки) в выпадающем списке Обработка строк, отмеченных «На правку» необходимо выбрать пункт Импортировать как переведённое.
Пробелы и переводы строк в файлах XLIFF¶
Как правило, тип или количество пробельных символов в XML-форматах не различаются. Если вы хотите их сохранить, вы должны добавить к строке флаг xml:space="preserve"
.
Например:
<trans-unit id="10" approved="yes">
<source xml:space="preserve">hello</source>
<target xml:space="preserve">Hello, world!
</target>
</trans-unit>
Указание флагов перевода¶
С помощью атрибута weblate-flags
вы можете указать дополнительные флаги перевода (смотрите раздел Настройка поведения). Также Weblate понимает атрибуты maxwidth
и font
из спецификации XLIFF:
<trans-unit id="10" maxwidth="100" size-unit="pixel" font="ubuntu;22;bold">
<source>Hello %s</source>
</trans-unit>
<trans-unit id="20" maxwidth="100" size-unit="char" weblate-flags="c-format">
<source>Hello %s</source>
</trans-unit>
Атрибут font
разбирается в семейство шрифтов, размер и вес шрифта. Приведённый выше пример показывает использование всех трёх параметров, хотя к указанию обязательно только семейство шрифтов. Любые пробельные символы в наименовании семейства шрифтов преобразуются в подчёркивания, так что семейство Source Sans Pro
становится семейством Source_Sans_Pro
, поэтому при именовании группы шрифтов (смотрите раздел Управление шрифтами) имейте это в виду.
Unit keys or context¶
Weblate identifies the units in the XLIFF file by resname
attribute in case
it is present and falls back to id
(together with file
tag if present).
The resname
attribute is supposed to be human friendly identifier of the
unit making it more suitable for Weblate to display instead of id
. The
resname
has to be unique in the whole XLIFF file. This is required by
Weblate and is not covered by the XLIFF standard - it does not put any
uniqueness restrictions on this attribute.
Типичная настройка компонента в Weblate для двуязычного XLIFF |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
Пусто |
Шаблон для новых переводов |
|
Формат файла |
Файл перевода XLIFF |
Типичная настройка компонента в Weblate для одноязычного XLIFF |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
|
Формат файла |
Файл перевода XLIFF |
Файлы свойств Java¶
Родной формат Java для переводов.
Файлы свойств Java обычно используются в качестве одноязычных переводов.
Weblate поддерживает варианты этого формата в кодировках ISO-8859-1, UTF-8 и UTF-16. Все они поддерживают сохранение всех символов юникода, просто в разных кодировках. В формате ISO-8859-1 используются юникодные экранирующие последовательности (например, zkou\u0161ka
), остальные кодируют символы непосредственно в UTF-8 или UTF-16.
Примечание
Загрузка экранирующих последовательностей также работает в режиме UTF-8, поэтому, пожалуйста, будьте внимательны при выборе правильного набора кодировок в соответствии с потребностями вашего приложения.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Свойства Java (ISO 8859-1) |
Файлы свойств GWT¶
Родной формат GWT для переводов.
Файлы свойств GWT обычно используются в качестве одноязычных переводов.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Свойства GWT |
Переводы в INI-файлах¶
Добавлено в версии 4.1.
Формат INI-файла для переводов.
Переводы в INI-файлах обычно используются в качестве одноязычных переводов.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
INI-файл |
Переводы в INI-файлах Inno Setup¶
Добавлено в версии 4.1.
Формат INI-файлов Inno Setup для переводов.
Переводы в INI-файлах Inno Setup обычно используются в качестве одноязычных переводов.
Примечание
Единственным заметным отличием от обычных переводов в INI-файлах является поддержка заполнителей %n
и %t
для символов переноса строки и табуляции.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
INI-файл Inno Setup |
Примечание
На текущий момент поддерживаются только юникодные файлы (.islu
), файлы в кодировке ANSI (.isl
) в настоящее время не поддерживаются.
См.также
Переводы Joomla¶
Добавлено в версии 2.12.
Родной формат Joomla для переводов.
Переводы Joomla обычно используются в качестве одноязычных переводов.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Языковой файл Joomla |
Файлы .ts Qt Linguist¶
Формат перевода, используемый в приложениях на основе Qt.
Файлы Qt Linguist используются и как двуязычные, так и одноязычные переводы.
Типичная настройка компонента в Weblate при использовании формата как двуязычного |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
Пусто |
Шаблон для новых переводов |
|
Формат файла |
Файл перевода Qt Linguist |
Типичная настройка компонента в Weblate при использовании формата как одноязычного |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
|
Формат файла |
Файл перевода Qt Linguist |
Строковые ресурсы Android¶
Специфичный для Android формат файла для перевода приложений.
Android string resources are monolingual, the Одноязычный базовый файл file is
stored in a different location from the others res/values/strings.xml
.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Строковый ресурс Android |
Примечание
Структуры строкового массива Android, string-array, в настоящее время не поддерживаются. Чтобы это обойти, вы можете разбить свои строковые массивы на части:
<string-array name="several_strings">
<item>First string</item>
<item>Second string</item>
</string-array>
станет:
<string-array name="several_strings">
<item>@string/several_strings_0</item>
<item>@string/several_strings_1</item>
</string-array>
<string name="several_strings_0">First string</string>
<string name="several_strings_1">Second string</string>
Элемент string-array, указывающий на элементы string, должен храниться в другом файле и не должен быть доступен для перевода.
Помочь в подготовке существующих файлов strings.xml и переводов вам может вот этот скрипт: https://gist.github.com/paour/11291062
Строки Apple iOS¶
Специфичный для Apple формат файла для перевода приложений, используемый для переводов приложений как для iOS, так и для iPhone’а/iPad’а.
Строки Apple iOS обычно используются в качестве двуязычных переводов.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Строки iOS (UTF-8) |
Строки PHP¶
Переводы PHP обычно одноязычные, поэтому рекомендуется указывать базовый файл со строками на (как это чаще всего бывает) английском языке.
Пример файла:
<?php
$LANG['foo'] = 'bar';
$LANG['foo1'] = 'foo bar';
$LANG['foo2'] = 'foo bar baz';
$LANG['foo3'] = 'foo bar baz bag';
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
|
Формат файла |
Строки PHP |
Строки Laravel PHP¶
Изменено в версии 4.1.
Файлы локализации Laravel PHP также поддерживают множественные формы:
<?php
return [
'welcome' => 'Welcome to our application',
'apples' => 'There is one apple|There are many apples',
];
См.также
JSON-файлы¶
Добавлено в версии 2.0.
Изменено в версии 2.16: Начиная с Weblate версии 2.16 и translate-toolkit версии не ниже 2.2.4 также поддерживаются JSON-файлы с вложенной структурой.
Изменено в версии 4.3: The structure of JSON file is properly preserved even for complex situations which were broken in prior releases.
Формат JSON используется в основном для перевода приложений, реализованных на JavaScript.
В настоящее время Weblate поддерживает несколько вариантов переводов в JSON:
Simple key / value files, used for example by vue-i18n or react-intl.
Файлы с вложенными ключами.
Переводы JSON обычно одноязычные, поэтому рекомендуется указывать базовый файл со строками на (как это чаще всего бывает) английском языке.
Пример файла:
{
"Hello, world!\n": "Ahoj světe!\n",
"Orangutan has %d banana.\n": "",
"Try Weblate at https://demo.weblate.org/!\n": "",
"Thank you for using Weblate.": ""
}
Также поддерживается вложенная структура файлов (условия поддержки смотрите выше), такой файл может выглядеть следующим образом:
{
"weblate": {
"hello": "Ahoj světe!\n",
"orangutan": "",
"try": "",
"thanks": ""
}
}
Подсказка
The JSON file and JSON nested structure file can both handle same type of files. The only difference between them is when adding new strings. The nested variant tries to parse the key and insert the new string into the matching structure.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Файл вложенной структуры JSON |
См.также
JSON -файлы i18next¶
Изменено в версии 2.17: Начиная с Weblate версии 2.17 и translate-toolkit версии не ниже 2.2.5 также поддерживаются JSON-файлы i18next с множественными формами.
i18next — это фреймворк интернационализации, написанный на и для JavaScript. Weblate поддерживает его файлы локализации с такими возможностями, как формы множественного числа.
Переводы i18next обычно одноязычные, поэтому рекомендуется указывать базовый файл со строками на (как это чаще всего бывает) английском языке.
Примечание
Weblate поддерживает формат JSON-файла i18next версии v3. Версии v2 и v1 в основном совместимы, за исключением того, как они работают с формами множественного числа.
Пример файла:
{
"hello": "Hello",
"apple": "I have an apple",
"apple_plural": "I have {{count}} apples",
"apple_negative": "I have no apples"
}
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
JSON-файл i18next |
JSON-файлы go-i18n¶
Добавлено в версии 4.1.
Переводы go-i18n обычно одноязычные, поэтому рекомендуется указывать базовый файл со строками на (как это чаще всего бывает) английском языке.
Примечание
Weblate поддерживает формат JSON-файла go-i18n версии v1, для плоских JSON-файлов используйте формат JSON-файлы. Формат v2 с хэшами в настоящее время не поддерживается.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
JSON -файл go-i18n |
См.также
JSON, go-i18n, Настройка вывода в JSON, Очистка файлов перевода,
Файл ARB¶
Добавлено в версии 4.1.
Переводы ARB обычно одноязычные, поэтому рекомендуется указывать базовый файл со строками на (как это чаще всего бывает) английском языке.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Файл ARB |
JSON-файлы WebExtension¶
Добавлено в версии 2.16: Поддерживаются с версии Weblate 2.16 и translate-toolkit версии не ниже 2.2.4.
Формат файла, используемый при переводе расширений для Mozilla Firefox или Google Chromium.
Примечание
Хотя этот формат называется JSON, его спецификация позволяет включать комментарии, которые не являются частью спецификации JSON. В настоящее время Weblate не поддерживает файл с комментариями.
Пример файла:
{
"hello": {
"message": "Ahoj světe!\n",
"description": "Description",
"placeholders": {
"url": {
"content": "$1",
"example": "https://developer.mozilla.org"
}
}
},
"orangutan": {
"message": "",
"description": "Description"
},
"try": {
"message": "",
"description": "Description"
},
"thanks": {
"message": "",
"description": "Description"
}
}
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
JSON-файл WebExtension |
.XML-файлы ресурсов¶
Добавлено в версии 2.3.
В .XML-файле ресурса (.resx) применяется формат одноязычного XML-файла, используемый в приложениях Microsoft .NET. Он взаимозаменяем с форматом .resw, который использует синтаксис, идентичный синтаксису .resx.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Файл ресурсов .NET |
Файлы CSV¶
Добавлено в версии 2.4.
Файлы CSV могут содержать простой список исходных строк и переводов. Weblate поддерживает следующие файлы:
Файлы с заголовком, определяющим поля (источник, перевод, местоположение, …). Это рекомендуемый подход, так как он наименее подвержен ошибкам.
Файлы с двумя полями — источником и переводом (в этом порядке), для этого в качестве формата файла выберите Простой CSV файл
Файлы с полями, определёнными translate-toolkit: location, source, target, ID, fuzzy, context, translator_comments, developer_comments
Remember to define Одноязычный базовый файл when your files are monolingual (see Двуязычные и одноязычные форматы)
Предупреждение
Формат CSV в настоящее время автоматически определяет диалект файла CSV. В некоторых случаях автоматическое определение может не сработать, и вы получите смешанные результаты. Особенно это касается файлов CSV с символами новых строк внутри значений. В качестве обходного пути рекомендуется не использовать кавычки.
Пример файла:
Thank you for using Weblate.,Děkujeme za použití Weblate.
Typical Weblate Конфигурация компонента for bilingual CSV |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
Пусто |
Шаблон для новых переводов |
|
Формат файла |
Файл CSV |
Typical Weblate Конфигурация компонента for monolingual CSV |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
|
Формат файла |
Simple CSV file |
См.также
Файлы YAML¶
Добавлено в версии 2.9.
Простые файлы YAML со строковыми ключами и значениями. Также Weblate извлекает строки из списков и словарей.
Пример файла YAML:
weblate:
hello: ""
orangutan": ""
try": ""
thanks": ""
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Файл YAML |
См.также
Файлы Ruby YAML¶
Добавлено в версии 2.9.
Файлы YAML локализации Ruby с языком в качестве корневого узла.
Пример файла YAML локализации Ruby:
cs:
weblate:
hello: ""
orangutan: ""
try: ""
thanks: ""
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Файл Ruby YAML |
См.также
Файлы DTD¶
Добавлено в версии 2.18.
Пример DTD-файла:
<!ENTITY hello "">
<!ENTITY orangutan "">
<!ENTITY try "">
<!ENTITY thanks "">
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Файл DTD |
См.также
Плоские XML-файлы¶
Добавлено в версии 3.9.
Пример плоского XML-файла:
<?xml version='1.0' encoding='UTF-8'?>
<root>
<str key="hello_world">Hello World!</str>
<str key="resource_key">Translated value.</str>
</root>
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
Пусто |
Формат файла |
Плоский XML-файл |
См.также
Файлы ресурсов Windows¶
Изменено в версии 4.1: Поддержка файлов ресурсов Windows была переписана.
Примечание
Поддержка этого формата в настоящее время находится в бета-режиме, приветствуются обратная связь от тестирования.
Пример файла ресурсов Windows:
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
IDS_MSG1 "Hello, world!\n"
IDS_MSG2 "Orangutan has %d banana.\n"
IDS_MSG3 "Try Weblate at http://demo.weblate.org/!\n"
IDS_MSG4 "Thank you for using Weblate."
END
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
|
Формат файла |
Файл RC |
См.также
Файлы метаданных магазина приложений¶
Добавлено в версии 3.5.
Метаданные, используемые для публикации приложений в различных магазинах приложений, могут быть переведены. В настоящее время совместимы следующие инструменты:
Метаданные состоят из нескольких текстовых файлов, которые Weblate представляет для перевода в виде отдельных строк.
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
|
Формат файла |
Файлы метаданных магазина приложений |
Подсказка
In case you don’t want to translate certain strings (for example changelogs), mark them read-only (see Настройка поведения). This can be automated by the Массовая правка.
Файлы субтитров¶
Добавлено в версии 3.7.
Weblate может переводить различные файлы субтитров:
Файл субтитров SubRip (
*.srt
)Файл субтитров MicroDVD (
*.sub
)Файл субтитров Advanced SubStation Alpha (
*.ass
)Файл субтитров SubStation Alpha (
*.ssa
)
Типичная настройка компонента в Weblate |
|
---|---|
Маска файла |
|
Одноязычный базовый файл |
|
Шаблон для новых переводов |
|
Формат файла |
Файл субтитров SubRip |
См.также
Excel Open XML¶
Добавлено в версии 3.2.
Можно импортировать и экспортировать файлы Excel Open XML (.xlsx).
Загружая для перевода файлы XLSX, имейте в виду, что учитывается только активный рабочий лист, и должны быть хотя бы колонки с названием source
(содержащая исходную строку) и target
(содержащая перевод). Дополнительно может быть колонка с названием context
(содержащая путь к контексту строки перевода). Если вы используете скачанный XLSX для экспорта переводов в рабочую книгу Excel, вы уже получите файл в правильном формате.
Файлы HTML¶
Добавлено в версии 4.1.
Примечание
Поддержка этого формата в настоящее время находится в бета-режиме, приветствуются обратная связь от тестирования.
Переводимое содержимое извлекается из HTML-файлов и предлагается для перевода.
См.также
Формат OpenDocument¶
Добавлено в версии 4.1.
Примечание
Поддержка этого формата в настоящее время находится в бета-режиме, приветствуются обратная связь от тестирования.
Переводимое содержимое извлекается из файлов OpenDocument и предлагается для перевода.
См.также
Формат IDML¶
Добавлено в версии 4.1.
Примечание
Поддержка этого формата в настоящее время находится в бета-режиме, приветствуются обратная связь от тестирования.
Переводимое содержимое извлекается из файлов языка разметки Adobe InDesign и предлагается для перевода.
Другие¶
Большинство форматов, которые поддерживают сериализацию и которые поддерживает translate-toolkit, могут быть легко поддержаны, но они (пока) не прошли никакого тестирования. В большинстве случаев, чтобы скрыть различия в поведении различных хранилищ translate-toolkit, для Weblate требуется тонкая прослойка.
Строки только для чтения¶
Добавлено в версии 3.10.
Строки из файлов перевода, доступные только для чтения, будут включены, но не могут быть отредактированы в Weblate. Поддержка этой возможности уже встроена в некоторые форматы (XLIFF и Строковые ресурсы Android), а в других может быть сэмулирована добавлением к строке флага read-only
— смотрите раздел Настройка поведения.