16
|
1 local Luan = require "luan:Luan.luan"
|
|
2 local error = Luan.error
|
|
3 local pairs = Luan.pairs or error()
|
|
4 local ipairs = Luan.ipairs or error()
|
|
5
|
|
6
|
26
|
7 -- https://learn.microsoft.com/en-us/azure/ai-services/speech-service/language-support?tabs=tts
|
|
8
|
16
|
9 local regions = {
|
32
|
10 GB = "United Kingdom"
|
16
|
11 JP = "Japan"
|
33
|
12 KR = "Korea"
|
16
|
13 US = "United States"
|
|
14 }
|
|
15
|
|
16 local languages = {
|
|
17 en = {
|
|
18 name = "English"
|
32
|
19 regions = {"US","GB"}
|
16
|
20 }
|
|
21 jp = {
|
|
22 name = "Japanese"
|
|
23 regions = {"JP"}
|
|
24 }
|
33
|
25 ko = {
|
|
26 name = "Korean"
|
|
27 regions = {"KR"}
|
|
28 }
|
16
|
29 }
|
|
30
|
|
31 for code, info in pairs(languages) do
|
|
32 info.code = code
|
32
|
33 local t = {nil}
|
16
|
34 for _, region in ipairs(info.regions) do
|
32
|
35 t[#t+1] = {
|
|
36 code = code.."-"..region
|
16
|
37 name = regions[region] or error(region)
|
|
38 }
|
|
39 end
|
|
40 info.regions = t
|
|
41 end
|
|
42
|
|
43 return languages
|