LocalizationTable

Mostrar obsoleto

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Una tabla de localización es una base de datos de traducciones. Contiene cadenas de fuente y traducciones para varios idiomas. Se utiliza con el Translator y LocalizationService sistema de traducción automática para controlar las traducciones del texto en el juego. Las tablas de localización se diseñan para ser tratadas como recursos, como una

Entradas de la tabla de localización

Cada entrada de la Tabla de localización contiene un conjunto de entradas. Cada entrada contiene las traducciones del texto, junto con algunos campos especiales:

  • La clave es una clave única opcional para obtener rápidas búsquedas de hacha en el código. Si no está vacía, debe ser única en la tabla.
  • La fuente es el texto original en el idioma de la fuente que se utilizará por el sistema de reemplazo de texto automático para coincidir con el texto del GUI y renderizar una traducción en su lugar. El campo de la fuente se puede llenar con las herramientas de captura de texto, o se puede configurar manualmente.
  • El contexto es el nombre de la instancia completa para el objeto en el que el texto apareció. El contexto se usa para la desambulación por el sistema de reemplazo de texto automático. Cuando se encuentran múltiples partidos para la fuente, el sistema elegirá el mejor partido al igualar al revés desde el final de la cadena de texto. Hay otras maneras más robustas de manejar la desambulación disponibles también, como usar múlt
  • Ejemplo es lo que quieras que sea. Si la herramienta de captura de texto adivina algunos parámetros para una cadena, el campo Ejemplo contendrá un ejemplo de ellos usados en contexto.

Todos estos campos son opcionales, pero al menos uno de Key o Source debe ser no vacío. No dos entradas pueden tener el mismo Key, Source y Contexto.

Vea Traduciendo Contenido Dinámico para obtener más información.

Muestras de código

LocalizationTable

local LocalizationService = game:GetService("LocalizationService")
local function createLocalizationTable(entries)
local localTable = Instance.new("LocalizationTable")
localTable.DevelopmentLanguage = LocalizationService.SystemLocaleId
localTable:SetEntries(entries)
return localTable
end
local entries = {
{
Key = "Hello_World", -- The 'expressionKey' to be used with GetString
Values = { -- A dictionary of keys corresponding to IETF language tags, and their translations.
["ru"] = " !", -- Russian
["fr"] = "Bonjour le monde!", -- French
["de"] = "Hallo Welt!", -- German
["en-US"] = "Hello world!", -- English
["it"] = "Ciao mondo!", -- Italian
["pt-BR"] = "Ol Mundo!", -- Portuguese
["ja"] = "", -- Japanese
["es"] = "Hola Mundo!", -- Spanish
}
}
}
local helloWorldTable = createLocalizationTable(entries)
print(helloWorldTable:GetString("en-US", "Hello_World"))

Resumen

Propiedades

Métodos

  • Regresa un arreglo de diccionarios, donde cada diccionario representa una entrada de datos de localización.

  • Retorna un Translator por las entradas en esta mesa de localización, en el idioma especificado.

  • RemoveEntry(key : string,source : string,context : string):void

    Elimina una entrada de la tabla de localización, usando el key, source y context para restringir la entrada específica para eliminar.

  • RemoveEntryValue(key : string,source : string,context : string,localeId : string):void

    Elimina una sola traducción de lenguaje de la tabla de localización, utilizando el proporcionado key , source , context y 2> localId2> para restringir la entrada específica para eliminar.

  • RemoveTargetLocale(localeId : string):void

    Elimina todas las traducciones de la Tabla de localización con el ID de idioma especificado.

  • SetEntries(entries : Variant):void

    Establece el contenido de la mesa de localización.

  • SetEntryContext(key : string,source : string,context : string,newContext : string):void

    Establece el campo de contexto de una entrada de LocalizationTable a newContext , usando el key , 1> de origen1> y 4> context4> para restringir la entrada que tendrá este cambio aplicado.

  • SetEntryExample(key : string,source : string,context : string,example : string):void

    Establece el campo Ejemplo de una entrada de example a key, utilizando el 1> clave1>, 4> de origen4> y 7> context7> para reducir la entrada que tendrá este cambio aplicado.

  • SetEntryKey(key : string,source : string,context : string,newKey : string):void

    Establece el campo Clave de una entrada de la tabla de localización a newKey , usando el key especificado, 1> de origen1> y 4> context4> para restringir la entrada que tendrá este cambio aplicado.

  • SetEntrySource(key : string,source : string,context : string,newSource : string):void

    Establece el campo Base de una entrada de Tabla de localización a newSource , usando el key , 1> de origen1> y 4> context4> para restringir la entrada que tendrá este cambio aplicado.

  • SetEntryValue(key : string,source : string,context : string,localeId : string,text : string):void

    Establece el texto del especificado localId en una entrada de la tabla de localización, utilizando el key , source y context para restringir la entrada que tendrá este cambio aplicado.

Propiedades

SourceLocaleId

Leer paralelo

El idioma de la entrada de las cadenas de claves para esta tabla, por ejemplo "en-us" o "es-es". Esto es típicamente el "idioma de desarrollo" del juego. Para un traductor que agrega múltiples objetos de la tabla de localización predeterminada, es el ID de la tabla de localización predeterminada. Por defecto, "en-us".

Métodos

GetEntries

La función GetCommands devuelve un arreglo de diccionarios contenidos en un LocalizationTable , donde cada diccionario representa una entrada de datos de localización.

Para establecer las entradas de una tabla de localización, puede usar LocalizationTable:SetEntries() .

Cada diccionario en el array contiene los siguientes campos:


<tbody>
<tr>
<td>
<b>Clave</b>
</td>
<td><code>Biblioteca.string</code></td>
<td>Una llave de búsqueda para este registro específico en la Tabla de localización.</td>
</tr>
<tr>
<td>
<b>Fuente</b>
</td>
<td><code>Biblioteca.string</code></td>
<td>La cadena que se usa para formatear la cadena localizada. Se usa como una búsqueda si no se proporciona una llave.</td>
</tr>
<tr>
<td>
<b>Contexto</b>
</td>
<td><code>Biblioteca.string</code></td>
<td>Un camino <code>Class.Instance:GetFullName()</code> a el objeto que se usó para generar el LocalizationTable. Usado como una búsqueda si no se proporciona una llave.</td>
</tr>
<tr>
<td>
<b>Ejemplo</b>
</td>
<td><code>Biblioteca.string</code></td>
<td>La cadena se usa para formatar la localización. Opcional.</td>
</tr>
<tr>
<td>
<b>Valores</b>
</td>
<td><code>Diccionario</code></td>
<td>Un diccionario de traducciones de lenguaje para esta entrada de localización. Las llaves de este diccionario son los ID de la ubicación, y los valores son cadenas que se usan para aplicar la localización para el idioma que coincida con el ID de la ubicación.</td>
</tr>
</tbody>
ÍndiceTipoDescripción

Devuelve

Un arreglo de diccionarios, donde cada diccionario representa una entrada de datos de localización.

Muestras de código

Using a LocalizationTable

local LocalizationService = game:GetService("LocalizationService")
local localizationTable = LocalizationService:FindFirstChild("LocalizationTable")
local entries = {
{
["Key"] = "0001",
["Source"] = "en-us",
["Values"] = {
["0001"] = "Hello Muddah, hello Fadduh.",
["0002"] = "Here I am at Camp Granada.",
["0003"] = "Camp is very entertaining.",
["0004"] = "And they say we'll have some fun if it stops raining.",
},
},
}
localizationTable:SetEntries(entries)
local get_results = localizationTable:GetEntries()
for _index, dict in pairs(get_results) do
for _key, value in pairs(dict["Values"]) do -- Loop through every key, value pair in the dictionary to print our strings
print(value)
end
end

GetTranslator

Devuelve un Translator por las entradas en esta tabla de localización, en el idioma especificado. El traductor buscará primero en esta tabla y luego en las tablas de ancestrales.

Parámetros

localeId: string

Devuelve

RemoveEntry

void

Elimina una entrada de la tabla de localización, usando el key, source y context para restringir la entrada específica para eliminar.

Parámetros

key: string
source: string
context: string

Devuelve

void

RemoveEntryValue

void

Elimina una sola traducción de lenguaje de la tabla de localización, utilizando el proporcionado key , source , context y 2> localId2> para restringir la entrada específica para eliminar.

Parámetros

key: string
source: string
context: string
localeId: string

Devuelve

void

RemoveTargetLocale

void

Elimina todas las traducciones de la Tabla de localización con el ID de idioma especificado.

Parámetros

localeId: string

Devuelve

void

SetEntries

void

Establece el contenido de la mesa de localización.

El parámetro de entradas debe ser un array de diccionarios en el mismo formato que el que se devolvió de la función LocalizationTable:GetEntries() .

Parámetros

entries: Variant

Devuelve

void

SetEntryContext

void

Establece el campo de contexto de una entrada de LocalizationTable a newContext , usando el key , 1> de origen1> y 4> context4> para restringir la entrada que tendrá este cambio aplicado.

Parámetros

key: string
source: string
context: string
newContext: string

Devuelve

void

SetEntryExample

void

Establece el campo Ejemplo de una entrada de example a key, utilizando el 1> clave1>, 4> de origen4> y 7> context7> para reducir la entrada que tendrá este cambio aplicado.

Parámetros

key: string
source: string
context: string
example: string

Devuelve

void

SetEntryKey

void

Establece el campo Clave de una entrada de la tabla de localización a newKey , usando el key especificado, 1> de origen1> y 4> context4> para restringir la entrada que tendrá este cambio aplicado.

Parámetros

key: string
source: string
context: string
newKey: string

Devuelve

void

SetEntrySource

void

Establece el campo Base de una entrada de Tabla de localización a newSource , usando el key , 1> de origen1> y 4> context4> para restringir la entrada que tendrá este cambio aplicado.

Parámetros

key: string
source: string
context: string
newSource: string

Devuelve

void

SetEntryValue

void

Establece el texto del especificado localId en una entrada de la tabla de localización, utilizando el key , source y context para restringir la entrada que tendrá este cambio aplicado.

Parámetros

key: string
source: string
context: string
localeId: string
text: string

Devuelve

void

Eventos