LocalizationTable

Pokaż przestarzałe

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Tabela lokalizacji jest bazą danych tłumaczeń. Zawiera źródłowe wiersze i tłumaczenia na różne języki. Używana jest z systemem Translator i LocalizationService do kontroli tłumaczeń w gra. Lokalizacja Tabel jest zaprojektowana tak

Wejścia w tabeli lokalizacji

Każdy lokalizacja stołów zawiera zestaw wpisów. Każdy wpis zawiera tłumaczenia tekstu, wraz z kilku polami specjalnymi:

  • Klucz jest opcjonalnym unikalnym kluczem do szybkiego szukania hachów w kodzie. Jeśli nie jest pusty, musi być unikalny w tabeli.
  • Źródło jest oryginalnym tekstem w języku źródłowym, który będzie używany przez system automatycznego zastępowania tekstu, aby zesynchronizować tekst z GUI i wyświetlić tłumaczenie zamiast tego. Pole LocalizationService
  • Kontekst jest pełnym imieniem instancji, na którą pojawił się tekst. Kontekst jest używany do rozróżnienia przez system automatycznej zastępy tekstu. Gdy znaleziono wiele dopasów dla źródła, system wybierze najlepszy dopas poprzez porównanie od końca linii ciąg. Są dostępne inne, bardziej elastyczne sposoby
  • Przykład to cokolwiek chcesz, aby to było. Jeśli narzędzie do kopiowania tekstu zgadnie niektóre parametry dla łańcucha, pola przykład będzie zawierał przykład używany w kontekście.

Wszystkie te pola są opcjonalne, ale co najmniej jedno z tych pol musi być puste. Nie może być dwóch wpisów z tych samych kluczy, źródeł i kontekstów.

Zobacz Tłumaczenie dynamicznej treści po więcej informacji.

Przykłady kodu

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

Podsumowanie

Metody

  • Zwraca arkusz listy dyskietek, w których każda dyskietka zawiera wpisy lokalizacji.

  • Wywraca Translator dla wpisów w tabeli lokalizacji, w określonym języku.

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

    Usuwa pozycję z tabeli lokalizacji, używając określonego key , source i context, aby ograniczyć specyficzny wpis do usunięcia.

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

    Usuwa pojedynczą tłumaczenie z tabeli lokalizacji, używając dostarczonego key, source, context i 2> context2>, aby ograniczyć konkretną pozycję do usunięcia.

  • RemoveTargetLocale(localeId : string):void

    Usunie wszystkie tłumaczenia z tabeli lokalizacji z określonym lokalizacjąId.

  • SetEntries(entries : Variant):void

    Ustawia zawartość tabeli lokalizacji.

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

    Ustawia polę Kontekst w zapisie newContext na key, używając określonego 1> klucz1>, 4> kod źródłowy4> i 7> text7>, aby ograniczyć wpis, który będzie miał zastosowany ten zmiany.

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

    Ustawia przykład pola w zapisie lokalizacji na example, używając określonego key, 2>kod źródłowy2> i 5> context5>, aby ograniczyć wpis, który będzie miał zastosowaną zmianę.

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

    Ustawia klucz pola w zapisie lokalizacji na newKey, używając określonego key, 2> kod źródłowy2> i 5> context5>, aby ograniczyć zmianę, która zostanie zastosowana.

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

    Ustawia źródło pola w zapisie LokalizacjiStolu na newSource, używając określonego key, 2> kod źródłowy2> i 5> context5>, aby ograniczyć wejście, które ma zastosowane zmiany.

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

    Ustawia tekst lokalnego ID w wierszu w tabeli lokalizacji, używając określonego key, source i context, aby ograniczyć wpis, który będzie miał zastosowaną tę zmianę.

Właściwości

SourceLocaleId

Odczyt równoległy

Lokalizacja Roblox dla kluczowych linii wejściowych dla tej tabeli, na przykład "en-us" lub "es-es". Jest to zwykle "język rozwoju" gra. Dla tłumacza, który łączy wiele obiektów tabeli lokalizacji, jest to lokalizacja "domyślna". Domyślnie dla "en-us".

Metody

GetEntries

Funkcja GetCommands zwraca arkusz listy słówek zawartych w LocalizationTable, gdzie każdy słownik reprezentuje jedną pozycję danych lokalizacji.

Aby ustawić wpisy w tabeli lokalizacji, możesz użyć LocalizationTable:SetEntries() .

Każdy słownik w matrycy zawiera następujące pola:


<tbody>
<tr>
<td>
<b>Klucz</b>
</td>
<td><code>Library.string</code></td>
<td>Klucz do wyszukiwania dla tego konkretnego wpisu w tabeli lokalizacji.</td>
</tr>
<tr>
<td>
<b>Źródło</b>
</td>
<td><code>Library.string</code></td>
<td>Strona używana do formatowania lokalizowanej ciąg. Używana jako szukacz, jeśli klucz nie zostanie podany.</td>
</tr>
<tr>
<td>
<b>Kontekst</b>
</td>
<td><code>Library.string</code></td>
<td>Class.Instance:GetFullName() droga do obiektu, który używany był do generowania tabeli lokalizacji. Używany jako wyszukiwarka, jeśli klucz nie zostanie podany.</td>
</tr>
<tr>
<td>
<b>Przykład</b>
</td>
<td><code>Library.string</code></td>
<td>Strona używana do formatowania lokalizacja. Opcjonalnie.</td>
</tr>
<tr>
<td>
<b>Werte wartości</b>
</td>
<td><code>Słownik</code></td>
<td>Dictionarium tłumaczeń dla tej lokalizacji. Klucze tego典ictwa to lokalizatorzy ID, a wartości są łańcuchami, które są używane do zastosowania lokalizacji dla języka odpowiadającego lokalizatorowi ID.</td>
</tr>
</tbody>
IndeksTypOpis

Zwroty

Materiały dyskietowe zawierające definicje i tłumaczenia dla danego języka.

Przykłady kodu

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

Zwraca Translator dla wpisów w tej tabeli lokalizacji, w określonym języku. Tłumacz najpierw szuka w tej tabeli i potem szuka w tabelach ojców.

Parametry

localeId: string

Zwroty

RemoveEntry

void

Usuwa pozycję z tabeli lokalizacji, używając określonego key , source i context, aby ograniczyć specyficzny wpis do usunięcia.

Parametry

key: string
source: string
context: string

Zwroty

void

RemoveEntryValue

void

Usuwa pojedynczą tłumaczenie z tabeli lokalizacji, używając dostarczonego key, source, context i 2> context2>, aby ograniczyć konkretną pozycję do usunięcia.

Parametry

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

Zwroty

void

RemoveTargetLocale

void

Usunie wszystkie tłumaczenia z tabeli lokalizacji z określonym lokalizacjąId.

Parametry

localeId: string

Zwroty

void

SetEntries

void

Ustawia zawartość tabeli lokalizacji.

Parametr wpisów powinien być matrycą słowników w takim formacie, jak ten zwrócony z funkcji LocalizationTable:GetEntries().

Parametry

entries: Variant

Zwroty

void

SetEntryContext

void

Ustawia polę Kontekst w zapisie newContext na key, używając określonego 1> klucz1>, 4> kod źródłowy4> i 7> text7>, aby ograniczyć wpis, który będzie miał zastosowany ten zmiany.

Parametry

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

Zwroty

void

SetEntryExample

void

Ustawia przykład pola w zapisie lokalizacji na example, używając określonego key, 2>kod źródłowy2> i 5> context5>, aby ograniczyć wpis, który będzie miał zastosowaną zmianę.

Parametry

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

Zwroty

void

SetEntryKey

void

Ustawia klucz pola w zapisie lokalizacji na newKey, używając określonego key, 2> kod źródłowy2> i 5> context5>, aby ograniczyć zmianę, która zostanie zastosowana.

Parametry

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

Zwroty

void

SetEntrySource

void

Ustawia źródło pola w zapisie LokalizacjiStolu na newSource, używając określonego key, 2> kod źródłowy2> i 5> context5>, aby ograniczyć wejście, które ma zastosowane zmiany.

Parametry

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

Zwroty

void

SetEntryValue

void

Ustawia tekst lokalnego ID w wierszu w tabeli lokalizacji, używając określonego key, source i context, aby ograniczyć wpis, który będzie miał zastosowaną tę zmianę.

Parametry

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

Zwroty

void

Zdarzenia