PcoWSkbVqDnWTu_dm2ix
We use cookies on this site to enhance your user experience
Collapse Sidebar

GetTranslatorForLocaleAsync

This function takes a language code as an argument and yields until the cloud localization data for that locale has been loaded, and then returns a Translator object which can be used to perform translations for that locale if any are available.

This function can error and thus should be wrapped in a articles/Built-in Functions & Variables — Lua|pcall.

See also

  • LocalizationService/GetTranslatorForPlayerAsync

Parameters

Name Type Default Description

A Roblox supported language code. The currently supported language codes are “en” (English), “fr” (French), “de” (German), “ko” (Korean), “pt” (Portuguese), “es” (Spanish)

Returns

Return Type Summary

The Translator instance for the specified locale


Code Samples


Getting and Using a Translator for a Locale

This code sample attempts to retrieve a Translator object for the locale “fr” - French.

LocalizationService/GetTranslatorForLocaleAsync is wrapped in a pcall because it may error. If it does not error and returns a Translator, prints “Hello in French:“ followed by the French translation of “Hello World!”. If the function errors, it prints “GetTranslatorForLocaleAsync failed:“ followed by the error message.

local LS = game:GetService('LocalizationService')

local res,trans = pcall(function()
	return LS:GetTranslatorForLocaleAsync("fr")
end)
	
if res then
	local ctx = game.Workspace.Sign.SurfaceGui.Frame.TextLabel
	local res = trans:Translate(ctx, "Hello World!")
	print('Hello in French: ' .. res)
else
	print('GetTranslatorForLocaleAsync failed: ' .. trans)
end