LocalizationTable

Hiển Thị Bản Đã Lỗi Thời

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Một bảng dịch là một cơ sở dữ liệu của các bản dịch. Nó chứa các chuỗi nguồn và bản dịch cho các ngôn ngữ khác nhau. Nó được sử dụng với hệ thống Class.Translator

Nhập bảng dịch

Mỗi bảng dịch địa lý đều có một bộ dữ liệu. Mỗi bảng dịch đều chứa các bản dịch của văn bản, cùng với một số trường đặc biệt:

  • Key là một chìa khóa mở khóa tùy chọn cho các hành động nhanh chóng tìm kiếm mật mã trong mã. Nếu nó không rỗi thì nó phải là chìa khóa độc nhất trong bảng.
  • Nguồn là văn bản nguyên bản trong ngôn ngữ nguồn mà sẽ được sử dụng bởi hệ thống LocalizationService thay thế văn bản tự động để khớ
  • Context là tên Instanhữu từng câu chữ xuất hiện trên nó. Context được sử dụng cho mục đích tranh nhầm bởi hệ thống thay chữ tự động. Khi nhiều kết quả trùng với nguồn, hệ thống sẽ chọn kết quả tốt nhấ
  • Ví dụ là bất cứ thứ gì bạn muốn nó là. Nếu công cụ bắt chữ ký tự nào cho một dòng chuỗi, thì trường Ví dụ sẽ chứa một ví dụ của chúng được sử dụng trong ngữ cảnh.

Tất cả các trường này là tùy chọn, nhưng ít nhất một trong các trường Key hoặc Source phải không rỗi. Không có hai mục trùng hợp Key, Source và Context.

Xem Dịch nội dung động để biết thêm thông tin.

Mẫu mã

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

Tóm Tắt

Phương Pháp

  • Trả lại một dàn bảng từ điển, mỗi bảng từ điển đại diện cho một hàng dữ liệu địa hình.

  • Trả lại một Translator cho các mục trong bảng dịch này, trong ngôn ngữ được xác định.

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

    Loại bỏ một mục từ bảng localization, sử dụng các tham chiếu được quy định key, sourcecontext để thu nhỏ các mục để được xóa.

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

    Loại bỏ một ngôn ngữ duy nhất từ Bảng dịch, bằng cách sử dụng các key, source, context và 2> context2> cung cấp, và 5>localId5> để thu nhỏ vào mục để được xóa.

  • RemoveTargetLocale(localeId : string):void

    Loại bỏ tất cả các bản dịch từ Bảng localization với ngôn ngữ được chỉ định.

  • SetEntries(entries : Variant):void

    Đặt nội dung của bảng localization.

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

    Đặt trường Bối cảnh của một mục trong bảng dữ liệu LocalizationTable để newContext , bằng cách sử dụng chìa khóa, 2> nguồn2> và 5> text5> để thu nhỏ kết quả sẽ áp dụng thay đổi này.

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

    Đặt trường Ví dụ của một mục trong bảng dữ liệu localization lên example , bằng cách sử dụng key , 1> nguồn1> và 4> context4> để thu nhỏ những hàng nào có thay đổi được áp dụng.

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

    Đặt trường Chìa khóa của một hàng trong bảng dữ liệu localization lên newKey , bằng cách sử dụng key được định nghĩa, 1> nguồn1> và 4> context4> để hạn chế những hàng có thay đổi được áp dụng.

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

    Đặt trường Nguồn của một mục trong bảng dữ liệu localization lên newSource , bằng cách sử dụng key , 1> nguồn1> và 4> context4> để thu nhỏ kết quả sẽ áp dụng thay đổi này.

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

    Đặt chữ vào bảng dữ liệu localizationTable bằng cách sử dụng chìa khóa key, sourcecontext để hạn chế những hàng nhận được thay đổi này được áp dụng.

Thuộc Tính

SourceLocaleId

Đọc Song Song

Nơi bản địa của các dòng chuỗi nhập cho bảng này, ví dụ "en-us" hoặc "es-es." Đây thường là "ngôn ngữ phát triển" của trò chơi. Đối với một Translator hợp nhất nhiều các thống kê bản địa hóa của bảng dữ liệu, nó là "IdLoca

Phương Pháp

GetEntries

Hàm GetCommands trả về một dàn bảng từ điển được chứa trong một LocalizationTable, trong đó mỗi từ điển đại diện cho một hàng dữ liệu địa phương hóa.

Để cài đặt các mục của bảng LocalizationTable, bạn có thể sử dụng LocalizationTable:SetEntries() .

Mỗi bảng từ điển trong hàng đều chứa các trường sau đây:


<tbody>
<tr>
<td>
<b>Chìa khóa</b>
</td>
<td><code>Library.string</code></td>
<td>Một chìa khóa tìm kiếm cho mục này trong bảng dịch.</td>
</tr>
<tr>
<td>
<b>Nguồn</b>
</td>
<td><code>Library.string</code></td>
<td>Chuỗi được sử dụng để tạo dạng chuỗi địa phương. Được sử dụng như một mẫu nếu không cung cấp một chìa khóa.</td>
</tr>
<tr>
<td>
<b>context</b>
</td>
<td><code>Library.string</code></td>
<td>Một con đường <code>Class.Instance:GetFullName()</code> đến đối tượng đã được sử dụng để tạo bảng dịch. Được sử dụng như một mục tìm kiếm nếu không cung cấp một chìa khóa.</td>
</tr>
<tr>
<td>
<b>Ví dụ</b>
</td>
<td><code>Library.string</code></td>
<td>Chuỗi được sử dụng để tạo ra bản địa hóa. Tùy chọn.</td>
</tr>
<tr>
<td>
<b>Giá trị</b>
</td>
<td><code>Từ điển</code></td>
<td>Một từ điển của các bản dịch ngôn ngữ cho các hành động này. Các chìa khóa của từ điển này là ID ngữ cục bộ, và giá trị là các chuỗi được sử dụng để áp dụng localization cho ngôn ngữ tương ứng với ID ngữ cục bộ.</td>
</tr>
</tbody>
Chỉ mụcKiểuMô tả

Lợi Nhuận

Một dàn bộ từ điển, trong đó mỗi từ điển đại diện cho một hàng dữ liệu địa hình.

Mẫu mã

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

Điều này trả về một Class.Translator cho các hàng trong bảng dịch này, trong ngôn ngữ được xác định. Translator sẽ đầu tiên tìm kiếm trong bảng dịch này và sau đó tìm kiếm trong các bảng dịch tiền nhân.

Tham Số

localeId: string

Lợi Nhuận

RemoveEntry

void

Loại bỏ một mục từ bảng localization, sử dụng các tham chiếu được quy định key, sourcecontext để thu nhỏ các mục để được xóa.

Tham Số

key: string
source: string
context: string

Lợi Nhuận

void

RemoveEntryValue

void

Loại bỏ một ngôn ngữ duy nhất từ Bảng dịch, bằng cách sử dụng các key, source, context và 2> context2> cung cấp, và 5>localId5> để thu nhỏ vào mục để được xóa.

Tham Số

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

Lợi Nhuận

void

RemoveTargetLocale

void

Loại bỏ tất cả các bản dịch từ Bảng localization với ngôn ngữ được chỉ định.

Tham Số

localeId: string

Lợi Nhuận

void

SetEntries

void

Đặt nội dung của bảng localization.

Tham số các hàm nên là một dàn bảng các từ điển trong cùng một hình dạng như một trong những hàm trả lại từ chức năng LocalizationTable:GetEntries() .

Tham Số

entries: Variant

Lợi Nhuận

void

SetEntryContext

void

Đặt trường Bối cảnh của một mục trong bảng dữ liệu LocalizationTable để newContext , bằng cách sử dụng chìa khóa, 2> nguồn2> và 5> text5> để thu nhỏ kết quả sẽ áp dụng thay đổi này.

Tham Số

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

Lợi Nhuận

void

SetEntryExample

void

Đặt trường Ví dụ của một mục trong bảng dữ liệu localization lên example , bằng cách sử dụng key , 1> nguồn1> và 4> context4> để thu nhỏ những hàng nào có thay đổi được áp dụng.

Tham Số

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

Lợi Nhuận

void

SetEntryKey

void

Đặt trường Chìa khóa của một hàng trong bảng dữ liệu localization lên newKey , bằng cách sử dụng key được định nghĩa, 1> nguồn1> và 4> context4> để hạn chế những hàng có thay đổi được áp dụng.

Tham Số

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

Lợi Nhuận

void

SetEntrySource

void

Đặt trường Nguồn của một mục trong bảng dữ liệu localization lên newSource , bằng cách sử dụng key , 1> nguồn1> và 4> context4> để thu nhỏ kết quả sẽ áp dụng thay đổi này.

Tham Số

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

Lợi Nhuận

void

SetEntryValue

void

Đặt chữ vào bảng dữ liệu localizationTable bằng cách sử dụng chìa khóa key, sourcecontext để hạn chế những hàng nhận được thay đổi này được áp dụng.

Tham Số

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

Lợi Nhuận

void

Sự Kiện