LocalizationTable

Veraltete anzeigen

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Ein LocalizationTable ist eine Datenbank von Übersetzungen. Er enthält Quellzeilen und Übersetzungen für verschiedene Sprachen. Er wird mit dem Translator und LocalizationService Auto-Übersetter-System verwendet, um Text-Übersetzungen im Spiel zu steuern. LocalizationTables werden so konzipiert, dass sie bei der Laufzeit nicht optimiert werden

LocalizationTable Einträge

Jeder LocalizationTable enthält eine Reihe von Einträgen. Jeder Eintrag enthält die Übersetzungen des Textes, zusammen mit einigen speziellen Feldern:

  • Key ist ein optionale einzigartige Schlüssel für schnelle Hashes in Codes. Wenn er nicht leer ist, muss er einzigartig in der Tabelle sein.
  • Quelle ist der ursprüngliche Text in der Quell Sprache, der dann automatisch durch das LocalizationService Text-Ersetzungssystem aus dem GUI-Text übereinstimmt. Das Feld Quelle kann durch die Text-Kapitalkapitalkapitalkapitalkapitalkapitalkapitalkapit
  • Kontext ist der vollständige Instanzname für das Objekt, auf dem der Text angezeigt wird. Kontext wird vom automatischen Text-Ersetzungssystem verwendet, um die Diskonformität zu verdeutlichen. Wenn mehrere Matches für die Quelle gefunden werden, wählt das System den besten Match aus, indem es rückwärts vom Ende der Kontext-String an beginnt. Es gibt noch andere, robustere Möglichkeiten zur Verhandlung der Diskonformität verfüg
  • Beispiel ist alles, was du willst. Wenn das Text-Kapierwerkzeug einige Parameter für eine Zeichenfolge errät, enthält das Beispiel-Feld ein Beispiel davon, das in Kontext verwendet wird.

Alle dieser Felder sind optional, aber mindestens ein Key oder eine Quelle muss nicht leer sein. Keine zwei Einreichungen können dieselben Schlüssel, Quelle und Kontext haben.

Siehe Übersetzen von dynamischem Inhalt für weitere Informationen.

Code-Beispiele

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"))

Zusammenfassung

Eigenschaften

Methoden

  • Kehrt eine Reihe von Diktionaren zurück, in denen jedes Diktionar ein Eintrag in die Lokalisierungsdaten darstellt.

  • Gibt eine Translator für Einreichungen in diesem LocalizationTable, in der angegebenen Sprache, zurück.

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

    Entfernt einen Eintrag aus der LocalizationTable, using the specified key , source and context to narrow down the specific entry to be removed.

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

    Entfernt eine einzige Sprachübersetzung aus der LocalizationTable, verwendendo die angegebene key , source , context und 1> localId1> , um den spezifischen Eintrag zu reduzieren, der entfernt werden soll.

  • RemoveTargetLocale(localeId : string):void

    Entfernt alle Übersetzungen aus der LocalizationTable mit der angegebenen lokalenId.

  • SetEntries(entries : Variant):void

    Setzt den Inhalt des LocalizationTables.

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

    Setzt das Kontextfeld eines Lokalisierungstab-Eintrags auf newContext , using the specified Schlüssel, 2> Ausgangstext2> and 5> context5> , to narrow down the entry that will have this change applied.

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

    Setzt das example , verwendendo den angegebenen key , 1> Ausgangstext1> und 4> context4>, um die Änderung, die angewendet wird, einzugrenzen.

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

    Setzt die Schlüssel-Feld einer LokalisierungsTab-Eintrag auf newKey, mit dem angegebenen key, 2>Ausgangstext2> und 5> context5>, um die Änderung, die auf diesen Eintrag angewendet wird, einzugrenzen.

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

    Setzt das Quelle-Feld eines LocalizationTable-Eintrags auf newSource , using the specified Schlüssel, 2> Ausgangstext2> and 5> context5> to narrow down the entry that will have this change applied.

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

    Setzt den Text der angegebenen lokalen ID in einem LocalizationTable-Eintrag, indem der angegebene key , source und context verwendet werden, um diejenige Änderung anzuwenden, die angewendet werden soll.

Eigenschaften

SourceLocaleId

Parallel lesen

Die Roblox-Lokalisierung der Eingabe-Schlüsselstränge für diese Tabelle, zum Beispiel "en-us" oder "es-es." Dies ist in der Regel die "Entwicklungs Sprache" des Spiels. Für einen Translator, der mehrere Lokalisierungstabellen-Objekte zusammenführt, ist es die Standort-ID der Standard-Lokalisierungstabelle. Standards auf "en-us".

Methoden

GetEntries

Die Funktion GetCommands gibt ein Array von Diktionaren zurück, die in einem bestimmten LocalizationTable enthalten sind, in denen jedes Diktionar ein Eintrag der Lokalisierungsdaten darstellt.

Um die Einreichungen eines LocalizationTables einzurichten, kannst du LocalizationTable:SetEntries() verwenden.

Jeder Wörterbuch in der Matrix enthält die folgenden Felder:


<tbody>
<tr>
<td>
<b>Schlüssel</b>
</td>
<td><code>Library.string</code></td>
<td>Ein Schlüssel für diesen bestimmten Eintrag in der LocalizationTable.</td>
</tr>
<tr>
<td>
<b>Quelle</b>
</td>
<td><code>Library.string</code></td>
<td>Die Strings, die für die lokalisierte Strings verwendet werden. Wurden als Up- und Run-Suchbegriffe verwendet, wenn kein Schlüssel angegeben wird.</td>
</tr>
<tr>
<td>
<b>Kontext</b>
</td>
<td><code>Library.string</code></td>
<td>Ein <code>Class.Instance:GetFullName()</code>-Pfad zum Objekt, das verwendet wurde, um den Lokalisierungstisch zu generieren. Wird als Suchbegriff verwendet, wenn kein Schlüssel angegeben wird.</td>
</tr>
<tr>
<td>
<b>Beispiel</b>
</td>
<td><code>Library.string</code></td>
<td>Die Strings werden verwendet, um die Lokalisierung zu formatieren.Optional.</td>
</tr>
<tr>
<td>
<b>Werte</b>
</td>
<td><code>Wörterbuch</code></td>
<td>Ein Wörterbuch von Sprachübersetzungen für diesen Lokalisierungseintrag. Die Schlüssel dieses Wörterbuches sind Lokalisierungs-IDs, und die Werte sind Strings, die verwendet werden, um die Lokalisierung für die Sprache zu verwenden, die der Sprach-ID entspricht.</td>
</tr>
</tbody>
IndiceTypBeschreibung

Rückgaben

Ein Array von Diktionen, in dem jede Diktion ein Eintrag in die Lokalisierungsdaten darstellt.

Code-Beispiele

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

Gibt eine Translator für Einreichungen in diesem LocalizationTable, in der angegebenen Sprache, zurück. Der Übersetzer sucht zuerst in dieser Tabelle und dann in den Vorfahren-Tabellen.

Parameter

localeId: string

Rückgaben

RemoveEntry

void

Entfernt einen Eintrag aus der LocalizationTable, using the specified key , source and context to narrow down the specific entry to be removed.

Parameter

key: string
source: string
context: string

Rückgaben

void

RemoveEntryValue

void

Entfernt eine einzige Sprachübersetzung aus der LocalizationTable, verwendendo die angegebene key , source , context und 1> localId1> , um den spezifischen Eintrag zu reduzieren, der entfernt werden soll.

Parameter

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

Rückgaben

void

RemoveTargetLocale

void

Entfernt alle Übersetzungen aus der LocalizationTable mit der angegebenen lokalenId.

Parameter

localeId: string

Rückgaben

void

SetEntries

void

Setzt den Inhalt des LocalizationTables.

Der Einträge-Parameter sollte ein Array von Diktionaren im selben Format sein wie die, die von der LocalizationTable:GetEntries() Funktion zurückgegeben wurden.

Parameter

entries: Variant

Rückgaben

void

SetEntryContext

void

Setzt das Kontextfeld eines Lokalisierungstab-Eintrags auf newContext , using the specified Schlüssel, 2> Ausgangstext2> and 5> context5> , to narrow down the entry that will have this change applied.

Parameter

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

Rückgaben

void

SetEntryExample

void

Setzt das example , verwendendo den angegebenen key , 1> Ausgangstext1> und 4> context4>, um die Änderung, die angewendet wird, einzugrenzen.

Parameter

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

Rückgaben

void

SetEntryKey

void

Setzt die Schlüssel-Feld einer LokalisierungsTab-Eintrag auf newKey, mit dem angegebenen key, 2>Ausgangstext2> und 5> context5>, um die Änderung, die auf diesen Eintrag angewendet wird, einzugrenzen.

Parameter

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

Rückgaben

void

SetEntrySource

void

Setzt das Quelle-Feld eines LocalizationTable-Eintrags auf newSource , using the specified Schlüssel, 2> Ausgangstext2> and 5> context5> to narrow down the entry that will have this change applied.

Parameter

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

Rückgaben

void

SetEntryValue

void

Setzt den Text der angegebenen lokalen ID in einem LocalizationTable-Eintrag, indem der angegebene key , source und context verwendet werden, um diejenige Änderung anzuwenden, die angewendet werden soll.

Parameter

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

Rückgaben

void

Ereignisse