TranslationServer
Наследует: Object
Сервер, отвечающий за языковые переводы.
Описание
Сервер переводов — это API-бэкэнд, который управляет всеми языковыми переводами.
Переводы хранятся в TranslationDomain, к которым можно получить доступ по имени. Наиболее часто используемый домен перевода — это основной домен перевода. Он всегда существует и к нему можно получить доступ с помощью пустого StringName. Сервер переводов предоставляет методы-обертки для прямого доступа к основному домену перевода без необходимости предварительного извлечения домена перевода. Пользовательские домены перевода в основном предназначены для расширенных применений, таких как плагины редактора. Имена, начинающиеся с godot., зарезервированы для внутренних компонентов движка.
Обучающие материалы
Свойства
|
Методы
Описания свойств
bool pseudolocalization_enabled = false 🔗
Если true, включает использование псевдолокализации на основном домене перевода. Подробности см. в ProjectSettings.internationalization/pseudolocalization/use_pseudolocalization.
Описания метода
void add_translation(translation: Translation) 🔗
Добавляет перевод в основной домен перевода.
void clear() 🔗
Удаляет все переводы из основного домена перевода.
int compare_locales(locale_a: String, locale_b: String) const 🔗
Сравнивает две локализации и возвращает оценку сходства между 0 (нет совпадения) и 10 (полное совпадение).
Array[Translation] find_translations(locale: String, exact: bool) const 🔗
Возвращает экземпляры Translation в основной области перевода, которые соответствуют locale (см. compare_locales()). Если exact равно true, будут возвращены только экземпляры, локаль которых точно совпадает с locale.
String format_number(number: String, locale: String) const 🔗
Преобразует число из западного арабского (0..9) в систему счисления, используемую в заданной locale.
PackedStringArray get_all_countries() const 🔗
Возвращает массив известных кодов стран.
PackedStringArray get_all_languages() const 🔗
Возвращает массив известных кодов языков.
PackedStringArray get_all_scripts() const 🔗
Возвращает массив известных кодов скриптов.
String get_country_name(country: String) const 🔗
Возвращает читаемое название страны для кода country.
String get_language_name(language: String) const 🔗
Возвращает читаемое название языка для кода language.
PackedStringArray get_loaded_locales() const 🔗
Возвращает массив всех загруженных локалей проекта.
Возвращает текущую локаль проекта.
См. также OS.get_locale() и OF.get_locale language() для запроса локали пользовательской системы.
String get_locale_name(locale: String) const 🔗
Возвращает язык локали и его вариант (например, "en_US" вернет "Английский (США)").
TranslationDomain get_or_add_domain(domain: StringName) 🔗
Возвращает домен перевода с указанным именем. Пустой домен перевода будет создан и добавлен, если он не существует.
String get_percent_sign(locale: String) const 🔗
Возвращает знак процента, используемый в заданной локали locale.
String get_plural_rules(locale: String) const 🔗
Возвращает правила множественного числа по умолчанию для locale.
String get_script_name(script: String) const 🔗
Возвращает читаемое имя скрипта для кода script.
Возвращает текущую локаль редактора.
Примечание: При вызове из экспортированного проекта возвращает то же значение, что и get_locale().
Translation get_translation_object(locale: String) 🔗
Устарело: Use find_translations() instead.
Возвращает экземпляр Translation, который лучше всего соответствует locale в основном домене перевода. Возвращает null, если совпадений нет.
Array[Translation] get_translations() const 🔗
Возвращает все доступные экземпляры Translation в основной области перевода, добавленные методом add_translation().
bool has_domain(domain: StringName) const 🔗
Возвращает true, если домен перевода с указанным именем существует.
bool has_translation(translation: Translation) const 🔗
Возвращает true, если основной домен перевода содержит заданный translation.
bool has_translation_for_locale(locale: String, exact: bool) const 🔗
Возвращает true, если в основной области перевода есть экземпляры Translation, соответствующие locale (см. compare_locales()). Если exact равно true, рассматриваются только экземпляры, локаль которых точно равна locale.
String parse_number(number: String, locale: String) const 🔗
Преобразует number из системы счисления, используемой в заданной locale, в западный арабский язык (0..9).
StringName pseudolocalize(message: StringName) const 🔗
Возвращает псевдолокализованную строку на основе переданного message.
Примечание: Этот метод всегда использует основной домен перевода.
void reload_pseudolocalization() 🔗
Повторно анализирует параметры псевдолокализации и перезагружает перевод для основного домена перевода.
void remove_domain(domain: StringName) 🔗
Удаляет домен перевода с указанным именем.
Примечание: Попытка удалить основной домен перевода является ошибкой.
void remove_translation(translation: Translation) 🔗
Удаляет указанный перевод из основного домена перевода.
void set_locale(locale: String) 🔗
Устанавливает локаль проекта. Строка locale будет стандартизирована для соответствия известным локалям (например, en-US будет соответствовать en_US).
Если переводы были загружены заранее для новой локали, они будут применены.
String standardize_locale(locale: String, add_defaults: bool = false) const 🔗
Возвращает строку locale, стандартизированную для соответствия известным локалям (например, en-US будет соответствовать en_US). Если add_defaults равно true, локаль может иметь добавленный сценарий или страну по умолчанию.
StringName translate(message: StringName, context: StringName = &"") const 🔗
Возвращает перевод текущего языка для указанного сообщения и контекста.
Примечание: Этот метод всегда использует основной домен перевода.
StringName translate_plural(message: StringName, plural_message: StringName, n: int, context: StringName = &"") const 🔗
Возвращает перевод текущего языка для указанного сообщения, сообщения во множественном числе и контекста.
Число n — это число или количество объектов во множественном числе. Оно будет использоваться для того, чтобы система перевода выбрала правильную форму множественного числа для выбранного языка.
Примечание: Этот метод всегда использует основной домен перевода.