local data = {}
-- TODO: Support 拗音(Yōon)
data.hiragana_romaji_perfect = {
["あ"] = "a",
["い"] = "i",
["う"] = "u",
["え"] = "e",
["お"] = "o",
["か"] = "ka",
["き"] = "ki",
["く"] = "ku",
["け"] = "ke",
["こ"] = "ko",
["さ"] = "sa",
["し"] = "si",
["す"] = "su",
["せ"] = "se",
["そ"] = "so",
["た"] = "ta",
["ち"] = "ti",
["つ"] = "tu",
["て"] = "te",
["と"] = "to",
["な"] = "na",
["に"] = "ni",
["ぬ"] = "nu",
["ね"] = "ne",
["の"] = "no",
["は"] = "ha",
["ひ"] = "hi",
["ふ"] = "hu",
["へ"] = "he",
["ほ"] = "ho",
["ま"] = "ma",
["み"] = "mi",
["む"] = "mu",
["め"] = "me",
["も"] = "mo",
["や"] = "ya",
["ゆ"] = "yu",
["よ"] = "yo",
["ら"] = "ra",
["り"] = "ri",
["る"] = "ru",
["れ"] = "re",
["ろ"] = "ro",
["わ"] = "wa",
["ゐ"] = "wi",
["ゑ"] = "we",
["を"] = "wo",
["ん"] = "n",
["が"] = "ga",
["ぎ"] = "gi",
["ぐ"] = "gu",
["げ"] = "ge",
["ご"] = "go",
["ば"] = "ba",
["び"] = "bi",
["ぶ"] = "bu",
["べ"] = "be",
["ぼ"] = "bo",
["だ"] = "da",
["ぢ"] = "di",
["づ"] = "du",
["で"] = "de",
["ど"] = "do"
}
data.romaji_to_hiragana_perfect = {
["a"] = "あ",
["i"] = "い",
["u"] = "う",
["e"] = "え",
["o"] = "お",
["ka"] = "か",
["ki"] = "き",
["ku"] = "く",
["ke"] = "け",
["ko"] = "こ",
["sa"] = "さ",
["si"] = "し",
["su"] = "す",
["se"] = "せ",
["so"] = "そ",
["ta"] = "た",
["ti"] = "ち",
["tu"] = "つ",
["te"] = "て",
["to"] = "と",
["na"] = "な",
["ni"] = "に",
["nu"] = "ぬ",
["ne"] = "ね",
["no"] = "の",
["ha"] = "は",
["hi"] = "ひ",
["hu"] = "ふ",
["he"] = "へ",
["ho"] = "ほ",
["ma"] = "ま",
["mi"] = "み",
["mu"] = "む",
["me"] = "め",
["mo"] = "も",
["ya"] = "や",
["yi"] = "い",
["yu"] = "ゆ",
["ye"] = "え",
["yo"] = "よ",
["ra"] = "ら",
["ri"] = "り",
["ru"] = "る",
["re"] = "れ",
["ro"] = "ろ",
["wa"] = "わ",
["wi"] = "ゐ",
["we"] = "ゑ",
["wo"] = "を",
["n"] = "ん",
["ga"] = "が",
["gi"] = "ぎ",
["gu"] = "ぐ",
["ge"] = "げ",
["go"] = "ご",
["ba"] = "ば",
["bi"] = "び",
["bu"] = "ぶ",
["be"] = "べ",
["bo"] = "ぼ",
["da"] = "だ",
["di"] = "ぢ",
["du"] = "づ",
["de"] = "で",
["do"] = "ど"
}
local yodan_conj = {
"a", -- 未然
"i", -- 連用
"u", -- 終止
"u", -- 連体
"e", -- 已然
"e" -- 命令
}
local na_irreg_conj = {
"na", -- 未然
"ni", -- 連用
"nu", -- 終止
"nuru", -- 連体
"nure", -- 已然
"ne" -- 命令
}
ra_irreg_conj = {
"a", -- 未然
"i", -- 連用
"i", -- 終止
"u", -- 連体
"e", -- 已然
"e" -- 命令
}
local shimo_ichi_conj = {
"e", -- 未然
"e", -- 連用
"eru", -- 終止
"eru", -- 連体
"ere", -- 已然
"eyo" -- 命令
}
local shimo_ni_conj = {
"e", -- 未然
"e", -- 連用
"u", -- 終止
"uru", -- 連体
"ure", -- 已然
"eyo" -- 命令
}
local kami_ichi_conj = {
"i", -- 未然
"i", -- 連用
"iru", -- 終止
"iru", -- 連体
"ire", -- 已然
"iyo" -- 命令
}
local kami_ni_conj = {
"i", -- 未然
"i", -- 連用
"u", -- 終止
"uru", -- 連体
"ure", -- 已然
"iyo" -- 命令
}
-- TODO: ko, koyo
local ka_irreg_conj = {
"o", -- 未然
"i", -- 連用
"u", -- 終止
"uru", -- 連体
"ure", -- 已然
"ko" -- 命令
}
local sa_irreg_conj = {
"se", -- 未然
"si", -- 連用
"su", -- 終止
"suru", -- 連体
"sure", -- 已然
"seyo" -- 命令
}
data.terminal_count = {
["yodan"] = 1,
["na_irreg"] = 2,
["ra_irreg"] = 1,
["shimo_ichi"] = 3,
["shimo_ni"] = 1,
["kami_ichi"] = 3,
["kami_ni"] = 1,
["ka_irreg"] = 1,
["sa_irreg"] = 2
}
data.conjugation = {
["yodan"] = yodan_conj,
["na_irreg"] = na_irreg_conj,
["ra_irreg"] = ra_irreg_conj,
["shimo_ichi"] = shimo_ichi_conj,
["shimo_ni"] = shimo_ni_conj,
["kami_ichi"] = kami_ichi_conj,
["kami_ni"] = kami_ni_conj,
["ka_irreg"] = ka_irreg,
["sa_irreg"] = sa_irreg
}
data.types = {
["四段"] = "yodan",
["ラ変"] = "ra_irreg",
["ラ行変格"] = "ra_irreg",
["ナ行変格"] = "na_irreg",
["ナ変"] = "na_irreg",
["下一段"] = "shimo_ichi",
["下一"] = "shimo_ichi",
["下二段"] = "shimo_ni",
["下二"] = "shimo_ni",
["上一段"] = "kami_ichi",
["上一"] = "kami_ichi",
["上二段"] = "kami_ni",
["上二"] = "kami_ni",
["カ行変格"] = "ka_irreg",
["カ変"] = "ka_irreg",
["サ行変格"] = "sa_irreg",
["サ変"] = "sa_irreg"
}
data.type_names = {
["yodan"] = "四段",
["ra_irreg"] = "ラ変",
["na_irreg"] = "ナ変",
["shimo_ichi"] = "下一段",
["shimo_ni"] = "下二段",
["kami_ichi"] = "上一段",
["kami_ni"] = "上二段",
["ka_irreg"] = "カ変",
["sa_irreg"] = "サ変"
}
-- いる ヤ行 Better?
data.conj_row = {
[""] = "ア行",
["k"] = "カ行",
["s"] = "サ行",
["t"] = "タ行",
["n"] = "ナ行",
["h"] = "ハ行",
["m"] = "マ行",
["y"] = "ヤ行",
["r"] = "ラ行",
["w"] = "ワ行"
}
return data