TranslationDomain

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

Автономная коллекция ресурсов Translation.

Описание

TranslationDomain — это самостоятельная коллекция ресурсов Translation. Переводы можно добавлять или удалять из нее.

Если вы работаете с основным доменом перевода, удобнее использовать методы обертывания на TranslationServer.

Свойства

bool

enabled

true

bool

pseudolocalization_accents_enabled

true

bool

pseudolocalization_double_vowels_enabled

false

bool

pseudolocalization_enabled

false

float

pseudolocalization_expansion_ratio

0.0

bool

pseudolocalization_fake_bidi_enabled

false

bool

pseudolocalization_override_enabled

false

String

pseudolocalization_prefix

"["

bool

pseudolocalization_skip_placeholders_enabled

true

String

pseudolocalization_suffix

"]"

Методы

void

add_translation(translation: Translation)

void

clear()

Array[Translation]

find_translations(locale: String, exact: bool) const

String

get_locale_override() const

Translation

get_translation_object(locale: String) const

Array[Translation]

get_translations() const

bool

has_translation(translation: Translation) const

bool

has_translation_for_locale(locale: String, exact: bool) const

StringName

pseudolocalize(message: StringName) const

void

remove_translation(translation: Translation)

void

set_locale_override(locale: String)

StringName

translate(message: StringName, context: StringName = &"") const

StringName

translate_plural(message: StringName, message_plural: StringName, n: int, context: StringName = &"") const


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

bool enabled = true 🔗

  • void set_enabled(value: bool)

  • bool is_enabled()

Если true, перевод включен. В противном случае translate() и translate_plural() вернут входящее сообщение без изменений независимо от текущей локали.


bool pseudolocalization_accents_enabled = true 🔗

  • void set_pseudolocalization_accents_enabled(value: bool)

  • bool is_pseudolocalization_accents_enabled()

Замените все символы на их акцентированные варианты во время псевдолокализации.

Примечание: Обновление этого свойства не приводит к автоматическому обновлению текстов в дереве сцены. Пожалуйста, вручную распространите уведомление MainLoop.NOTIFICATION_TRANSLATION_CHANGED после того, как закончите изменять параметры, связанные с псевдолокализацией.


bool pseudolocalization_double_vowels_enabled = false 🔗

  • void set_pseudolocalization_double_vowels_enabled(value: bool)

  • bool is_pseudolocalization_double_vowels_enabled()

Двойные гласные в строках во время псевдолокализации для имитации удлинения текста из-за локализации.

Примечание: Обновление этого свойства не приводит к автоматическому обновлению текстов в дереве сцены. Пожалуйста, вручную распространите уведомление MainLoop.NOTIFICATION_TRANSLATION_CHANGED после того, как закончите изменять параметры, связанные с псевдолокализацией.


bool pseudolocalization_enabled = false 🔗

  • void set_pseudolocalization_enabled(value: bool)

  • bool is_pseudolocalization_enabled()

Если true, включает псевдолокализацию для проекта. Это можно использовать для обнаружения непереводимых строк или проблем с макетом, которые могут возникнуть после локализации проекта на языки, имеющие более длинные строки, чем исходный язык.

Примечание: Обновление этого свойства не приводит к автоматическому обновлению текстов в дереве сцены. Пожалуйста, вручную распространите уведомление MainLoop.NOTIFICATION_TRANSLATION_CHANGED после того, как вы закончите изменять параметры, связанные с псевдолокализацией.


float pseudolocalization_expansion_ratio = 0.0 🔗

  • void set_pseudolocalization_expansion_ratio(value: float)

  • float get_pseudolocalization_expansion_ratio()

Коэффициент расширения для использования во время псевдолокализации. Значение 0.3 достаточно для большинства практических целей и увеличит длину каждой строки на 30%.

Примечание: Обновление этого свойства не приводит к автоматическому обновлению текстов в дереве сцены. Пожалуйста, вручную распространите уведомление MainLoop.NOTIFICATION_TRANSLATION_CHANGED после того, как закончите изменять параметры, связанные с псевдолокализацией.


bool pseudolocalization_fake_bidi_enabled = false 🔗

  • void set_pseudolocalization_fake_bidi_enabled(value: bool)

  • bool is_pseudolocalization_fake_bidi_enabled()

Если true, эмулировать двунаправленный (справа налево) текст при включенной псевдолокализации. Это можно использовать для выявления проблем с макетом RTL и зеркалированием пользовательского интерфейса, которые возникнут, если проект локализован на языки RTL, такие как арабский или иврит.

Примечание: Обновление этого свойства не приводит к автоматическому обновлению текстов в дереве сцены. Пожалуйста, вручную распространите уведомление MainLoop.NOTIFICATION_TRANSLATION_CHANGED после того, как закончите изменять параметры, связанные с псевдолокализацией.


bool pseudolocalization_override_enabled = false 🔗

  • void set_pseudolocalization_override_enabled(value: bool)

  • bool is_pseudolocalization_override_enabled()

Замените все символы в строке на *. Полезно для поиска нелокализуемых строк.

Примечание: Обновление этого свойства не приводит к автоматическому обновлению текстов в дереве сцены. Пожалуйста, вручную распространите уведомление MainLoop.NOTIFICATION_TRANSLATION_CHANGED после того, как закончите изменять параметры, связанные с псевдолокализацией.


String pseudolocalization_prefix = "[" 🔗

  • void set_pseudolocalization_prefix(value: String)

  • String get_pseudolocalization_prefix()

Префикс, который будет добавлен к псевдолокализованной строке.

Примечание: Обновление этого свойства не приводит к автоматическому обновлению текстов в дереве сцены. Пожалуйста, вручную распространите уведомление MainLoop.NOTIFICATION_TRANSLATION_CHANGED после того, как вы закончите изменять параметры, связанные с псевдолокализацией.


bool pseudolocalization_skip_placeholders_enabled = true 🔗

  • void set_pseudolocalization_skip_placeholders_enabled(value: bool)

  • bool is_pseudolocalization_skip_placeholders_enabled()

Пропустить заполнители для форматирования строк, например %s или %f во время псевдолокализации. Полезно для определения строк, которым требуются дополнительные управляющие символы для правильного отображения.

Примечание: Обновление этого свойства не приводит к автоматическому обновлению текстов в дереве сцены. Пожалуйста, вручную распространите уведомление MainLoop.NOTIFICATION_TRANSLATION_CHANGED после того, как закончите изменять параметры, связанные с псевдолокализацией.


String pseudolocalization_suffix = "]" 🔗

  • void set_pseudolocalization_suffix(value: String)

  • String get_pseudolocalization_suffix()

Суффикс, который будет добавлен к псевдолокализованной строке.

Примечание: Обновление этого свойства не приводит к автоматическому обновлению текстов в дереве сцены. Пожалуйста, вручную распространите уведомление MainLoop.NOTIFICATION_TRANSLATION_CHANGED после того, как вы закончите изменять параметры, связанные с псевдолокализацией.


Описания метода

void add_translation(translation: Translation) 🔗

Добавляет перевод.


void clear() 🔗

Удаляет все переводы.


Array[Translation] find_translations(locale: String, exact: bool) const 🔗

Возвращает экземпляры Translation, соответствующие locale (см. TranslationServer.compare_locales()). Если exact равно true, будут возвращены только экземпляры, локаль которых точно совпадает с locale.


String get_locale_override() const 🔗

Возвращает переопределение локали домена. Возвращает пустую строку, если переопределение локали отключено.


Translation get_translation_object(locale: String) const 🔗

Устарело: Use find_translations() instead.

Возвращает экземпляр Translation, который лучше всего соответствует locale. Возвращает null, если совпадений нет.


Array[Translation] get_translations() const 🔗

Возвращает все доступные экземпляры Translation, добавленные методом add_translation().


bool has_translation(translation: Translation) const 🔗

Возвращает true, если этот домен перевода содержит заданный translation.


bool has_translation_for_locale(locale: String, exact: bool) const 🔗

Возвращает true, если есть экземпляры Translation, соответствующие locale (см. TranslationServer.compare_locales()). Если exact равно true, рассматриваются только экземпляры, локаль которых точно совпадает с locale.


StringName pseudolocalize(message: StringName) const 🔗

Возвращает псевдолокализованную строку на основе переданного message.


void remove_translation(translation: Translation) 🔗

Удаляет указанный перевод.


void set_locale_override(locale: String) 🔗

Устанавливает переопределение локали домена.

Если locale — пустая строка, переопределение локали отключено. В противном случае locale будет стандартизирован для соответствия известным локалям (например, en-US будет соответствовать en_US).

Примечание: Вызов этого метода не обновляет автоматически тексты в дереве сцены. Пожалуйста, вручную распространите сигнал MainLoop.NOTIFICATION_TRANSLATION_CHANGED.


StringName translate(message: StringName, context: StringName = &"") const 🔗

Возвращает перевод текущего языка для указанного сообщения и контекста.


StringName translate_plural(message: StringName, message_plural: StringName, n: int, context: StringName = &"") const 🔗

Возвращает перевод текущей локали для указанного сообщения, сообщения во множественном числе и контекста.

Число n — это число или количество объекта во множественном числе. Оно будет использоваться для того, чтобы направлять систему перевода для извлечения правильной формы множественного числа для выбранного языка.