Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

ResourceImporterCSVTranslation

Наследует: ResourceImporter < RefCounted < Object

Импортирует значения, разделённые запятыми, в виде Translation.

Описание

Значения, разделённые запятыми, — это формат хранения таблиц в обычном тексте. Простота формата позволяет легко отредактировать его в любом текстовом редакторе или программном обеспечении для работы с электронными таблицами. Это делает его распространенным выбором для локализации игр.

В CSV, который используется для перевода, первый столбец содержит идентификаторы строк, а первая строка служит заголовком. Заголовок первого столбца может иметь любое значение. Остальные заголовки указывают на локализацию для этого столбца. Столбцы, заголовки которых начинаются с символа подчёркивания (_), будут игнорироваться..

Пример CSV-файла:

ключи,en,es,ja
GREET,"Привет, друг!","Hola, amigo!",こんにちは
СПРОСИТЕ,Как дела?,Cómo está?,元気ですか
BYE,Goodbye,Adiós,さようなら
ЦИТАТА,"""Привет"" сказал человек.","""Hola"" dijo el hombre.",「こんにちは」男は言いました

Хотя в первом столбце в качестве ключей обычно используются строковые идентификаторы, написанные заглавными буквами, нередко в качестве ключей используются непосредственно строки, встречающиеся в игре. Чтобы избежать неоднозначности строк, можно использовать специальный столбец ?context, чтобы указать контекст для использования с Object.tr().

en,?context,fr,ja,zh
Letter,Alphabet,Lettre,字母,字母
Letter,Message,Courrier,手紙,信件

Чтобы установить форму множества строк для использования с Object.tr_n(), добавьте специальный столбец ?plural. После установки формы множества исходной строки в этом столбце можно добавить дополнительные строки, чтобы предоставить переводы для большего количества форм множества. Первый столбец и все специальные столбцы в этих строках формы множества должны быть пустыми.

Godot содержит встроенные правила множества для некоторых языков. Вы также можете настроить их с помощью специальной строки ?pluralrule. Для примеров и дополнительной информации посетите GNU gettext.

en,?plural,fr,ru,zh,Комментарий
?pluralrule,,nplurals=2; plural=(n >= 2);,,,Настройте правило множества для французского языка
Есть %d яблоко,Есть %d яблок,Il y a %d pomme,那里有%d个苹果,
,,Il y a %d pommes,Есть %d яблока,,
,,,Есть %d яблок,,

Обучающие материалы

Свойства

int

compress

1

int

delimiter

0

bool

unescape_keys

false

bool

unescape_translations

true


Описания свойств

int compress = 1 🔗

  • Disabled: Создает Translation.

  • Auto: Создает OptimizedTranslation, если это возможно. Это уменьшает размер результирующего файла за счет небольшого увеличения нагрузки на процессор. В случае переводов с контекстом или во множественном числе используется Translation.


int delimiter = 0 🔗

Разделитель для использования в файле CSV. Значение по умолчанию соответствует общепринятому соглашению CSV. Значения, разделенные табуляцией, иногда называются файлами TSV.


bool unescape_keys = false 🔗

Если true, ключи сообщений в CSV-файле деэкранируются с помощью String.c_unescape() в процессе импорта.


bool unescape_translations = true 🔗

Если true, перевод сообщений в CSV-файле деэкранируется с помощью String.c_unescape() в процессе импорта.