--[[
based on https://support.microsoft.com/ja-jp/help/883232
- all caps → katakana
- "ぃぇ " is a typo for "いぇ "
- "ゐ " conflicts with "うぃ " and has been left out
- "ゑ " conflicts with "うぇ " and has been left out
- "ゐ " and "ゑ " are not listed but has been added
- "ヵ " and "ヶ " have been changed to "ゕ ", "ゖ ", "ヵ ", and "ヶ "
- "ん " must be prioritized -- testcase "こんよう "
]]
local data = {}
data = {
= {
)%1'] = 'っ%1',
)%1'] = 'ッ%1',
},
= {
= 'っ',
= 'ん',
= 'ッ',
= 'ン',
},
= {
= 'びゃ',
= 'びぇ',
= 'びぃ',
= 'びょ',
= 'びゅ',
= 'ちゃ',
= 'ちぇ',
= 'ち',
= 'ちょ',
= 'ちゅ',
= 'ちゃ',
= 'ちぇ',
= 'ちぃ',
= 'ちょ',
= 'ちゅ',
= 'でゃ',
= 'でぇ',
= 'でぃ',
= 'でょ',
= 'でゅ',
= 'どぁ',
= 'どぇ',
= 'どぃ',
= 'どぉ',
= 'どぅ',
= 'ぢゃ',
= 'ぢぇ',
= 'ぢぃ',
= 'ぢょ',
= 'ぢゅ',
= 'ふぁ',
= 'ふぇ',
= 'ふぃ',
= 'ふぉ',
= 'ふぅ',
= 'ふゃ',
= 'ふぇ',
= 'ふぃ',
= 'ふょ',
= 'ふゅ',
= 'ぐぁ',
= 'ぐぇ',
= 'ぐぃ',
= 'ぐぉ',
= 'ぐぅ',
= 'ぎゃ',
= 'ぎぇ',
= 'ぎぃ',
= 'ぎょ',
= 'ぎゅ',
= 'ひゃ',
= 'ひぇ',
= 'ひぃ',
= 'ひょ',
= 'ひゅ',
= 'じゃ',
= 'じぇ',
= 'じぃ',
= 'じょ',
= 'じゅ',
= 'くぁ',
= 'きゃ',
= 'きぇ',
= 'きぃ',
= 'きょ',
= 'きゅ',
= 'ゕ',
= 'ゖ',
= 'っ',
= 'ゎ',
= 'ゃ',
= 'ぇ',
= 'ぃ',
= 'ょ',
= 'ゅ',
= 'みゃ',
= 'みぇ',
= 'みぃ',
= 'みょ',
= 'みゅ',
= 'にゃ',
= 'にぇ',
= 'にぃ',
= 'にょ',
= 'にゅ',
= 'ぴゃ',
= 'ぴぇ',
= 'ぴぃ',
= 'ぴょ',
= 'ぴゅ',
= 'くぁ',
= 'くぇ',
= 'くぃ',
= 'くぉ',
= 'くぅ',
= 'くゃ',
= 'くぇ',
= 'くぃ',
= 'くょ',
= 'くゅ',
= 'りゃ',
= 'りぇ',
= 'りぃ',
= 'りょ',
= 'りゅ',
= 'しゃ',
= 'しぇ',
= 'し',
= 'しょ',
= 'しゅ',
= 'すぁ',
= 'すぇ',
= 'すぃ',
= 'すぉ',
= 'すぅ',
= 'しゃ',
= 'しぇ',
= 'しぃ',
= 'しょ',
= 'しゅ',
= 'てゃ',
= 'てぇ',
= 'てぃ',
= 'てょ',
= 'てゅ',
= 'つぁ',
= 'つぇ',
= 'つぃ',
= 'つぉ',
= 'つ',
= 'とぁ',
= 'とぇ',
= 'とぃ',
= 'とぉ',
= 'とぅ',
= 'ちゃ',
= 'ちぇ',
= 'ちぃ',
= 'ちょ',
= 'ちゅ',
= 'ヴゃ',
= 'ヴぇ',
= 'ヴぃ',
= 'ヴょ',
= 'ヴゅ',
= 'うぁ',
= 'うぇ',
= 'うぃ',
= 'うぉ',
= 'う',
= 'ゑ',
= 'ゐ',
= 'ゕ',
= 'ゖ',
= 'っ',
= 'ゎ',
= 'ゃ',
= 'ぇ',
= 'ぃ',
= 'ょ',
= 'ゅ',
= 'じゃ',
= 'じぇ',
= 'じぃ',
= 'じょ',
= 'じゅ',
= 'ビャ',
= 'ビェ',
= 'ビィ',
= 'ビョ',
= 'ビュ',
= 'チャ',
= 'チェ',
= 'チ',
= 'チョ',
= 'チュ',
= 'チャ',
= 'チェ',
= 'チィ',
= 'チョ',
= 'チュ',
= 'デャ',
= 'デェ',
= 'ディ',
= 'デョ',
= 'デュ',
= 'ドァ',
= 'ドェ',
= 'ドィ',
= 'ドォ',
= 'ドゥ',
= 'ヂャ',
= 'ヂェ',
= 'ヂィ',
= 'ヂョ',
= 'ヂュ',
= 'ファ',
= 'フェ',
= 'フィ',
= 'フォ',
= 'フゥ',
= 'フャ',
= 'フェ',
= 'フィ',
= 'フョ',
= 'フュ',
= 'グァ',
= 'グェ',
= 'グィ',
= 'グォ',
= 'グゥ',
= 'ギャ',
= 'ギェ',
= 'ギィ',
= 'ギョ',
= 'ギュ',
= 'ヒャ',
= 'ヒェ',
= 'ヒィ',
= 'ヒョ',
= 'ヒュ',
= 'ジャ',
= 'ジェ',
= 'ジィ',
= 'ジョ',
= 'ジュ',
= 'クァ',
= 'キャ',
= 'キェ',
= 'キィ',
= 'キョ',
= 'キュ',
= 'ヵ',
= 'ヶ',
= 'ッ',
= 'ヮ',
= 'ャ',
= 'ェ',
= 'ィ',
= 'ョ',
= 'ュ',
= 'ミャ',
= 'ミェ',
= 'ミィ',
= 'ミョ',
= 'ミュ',
= 'ニャ',
= 'ニェ',
= 'ニィ',
= 'ニョ',
= 'ニュ',
= 'ピャ',
= 'ピェ',
= 'ピィ',
= 'ピョ',
= 'ピュ',
= 'クァ',
= 'クェ',
= 'クィ',
= 'クォ',
= 'クゥ',
= 'クャ',
= 'クェ',
= 'クィ',
= 'クョ',
= 'クュ',
= 'リャ',
= 'リェ',
= 'リィ',
= 'リョ',
= 'リュ',
= 'シャ',
= 'シェ',
= 'シ',
= 'ショ',
= 'シュ',
= 'スァ',
= 'スェ',
= 'スィ',
= 'スォ',
= 'スゥ',
= 'シャ',
= 'シェ',
= 'シィ',
= 'ショ',
= 'シュ',
= 'テャ',
= 'テェ',
= 'ティ',
= 'テョ',
= 'テュ',
= 'ツァ',
= 'ツェ',
= 'ツィ',
= 'ツォ',
= 'ツ',
= 'トァ',
= 'トェ',
= 'トィ',
= 'トォ',
= 'トゥ',
= 'チャ',
= 'チェ',
= 'チィ',
= 'チョ',
= 'チュ',
= 'ヴャ',
= 'ヴェ',
= 'ヴィ',
= 'ヴョ',
= 'ヴュ',
= 'ウァ',
= 'ウェ',
= 'ウィ',
= 'ウォ',
= 'ウ',
= 'ヱ',
= 'ヰ',
= 'ヵ',
= 'ヶ',
= 'ッ',
= 'ヮ',
= 'ャ',
= 'ェ',
= 'ィ',
= 'ョ',
= 'ュ',
= 'ジャ',
= 'ジェ',
= 'ジィ',
= 'ジョ',
= 'ジュ',
},
= {
= 'ば',
= 'べ',
= 'び',
= 'ぼ',
= 'ぶ',
= 'か',
= 'せ',
= 'し',
= 'こ',
= 'く',
= 'だ',
= 'で',
= 'ぢ',
= 'ど',
= 'づ',
= 'ふぁ',
= 'ふぇ',
= 'ふぃ',
= 'ふぉ',
= 'ふ',
= 'が',
= 'げ',
= 'ぎ',
= 'ご',
= 'ぐ',
= 'は',
= 'へ',
= 'ひ',
= 'ほ',
= 'ふ',
= 'じゃ',
= 'じぇ',
= 'じ',
= 'じょ',
= 'じゅ',
= 'か',
= 'け',
= 'き',
= 'こ',
= 'く',
= 'ぁ',
= 'ぇ',
= 'ぃ',
= 'ぉ',
= 'ぅ',
= 'ま',
= 'め',
= 'み',
= 'も',
= 'む',
= 'ん', --
= 'な',
= 'ね',
= 'に',
-- = 'ん',
= 'の',
= 'ぬ',
= 'ぱ',
= 'ぺ',
= 'ぴ',
= 'ぽ',
= 'ぷ',
= 'くぁ',
= 'くぇ',
= 'くぃ',
= 'くぉ',
= 'く',
= 'ら',
= 'れ',
= 'り',
= 'ろ',
= 'る',
= 'さ',
= 'せ',
= 'し',
= 'そ',
= 'す',
= 'た',
= 'て',
= 'ち',
= 'と',
= 'つ',
= 'ヴぁ',
= 'ヴぇ',
= 'ヴぃ',
= 'ヴぉ',
= 'ヴ',
= 'わ',
= 'うぇ',
= 'うぃ',
= 'を',
= 'う',
= 'ぁ',
= 'ぇ',
= 'ぃ',
= 'ん',
= 'ぉ',
= 'ぅ',
= 'や',
= 'ぃぇ',
= 'い',
= 'よ',
= 'ゆ',
= 'ざ',
= 'ぜ',
= 'じ',
= 'ぞ',
= 'ず',
= 'バ',
= 'ベ',
= 'ビ',
= 'ボ',
= 'ブ',
= 'カ',
= 'セ',
= 'シ',
= 'コ',
= 'ク',
= 'ダ',
= 'デ',
= 'ヂ',
= 'ド',
= 'ヅ',
= 'ファ',
= 'フェ',
= 'フィ',
= 'フォ',
= 'フ',
= 'ガ',
= 'ゲ',
= 'ギ',
= 'ゴ',
= 'グ',
= 'ハ',
= 'ヘ',
= 'ヒ',
= 'ホ',
= 'フ',
= 'ジャ',
= 'ジェ',
= 'ジ',
= 'ジョ',
= 'ジュ',
= 'カ',
= 'ケ',
= 'キ',
= 'コ',
= 'ク',
= 'ァ',
= 'ェ',
= 'ィ',
= 'ォ',
= 'ゥ',
= 'マ',
= 'メ',
= 'ミ',
= 'モ',
= 'ム',
= 'ン', --
= 'ナ',
= 'ネ',
= 'ニ',
-- = 'ン',
= 'ノ',
= 'ヌ',
= 'パ',
= 'ペ',
= 'ピ',
= 'ポ',
= 'プ',
= 'クァ',
= 'クェ',
= 'クィ',
= 'クォ',
= 'ク',
= 'ラ',
= 'レ',
= 'リ',
= 'ロ',
= 'ル',
= 'サ',
= 'セ',
= 'シ',
= 'ソ',
= 'ス',
= 'タ',
= 'テ',
= 'チ',
= 'ト',
= 'ツ',
= 'ヴァ',
= 'ヴェ',
= 'ヴィ',
= 'ヴォ',
= 'ヴ',
= 'ワ',
= 'ウェ',
= 'ウィ',
= 'ヲ',
= 'ウ',
= 'ァ',
= 'ェ',
= 'ィ',
= 'ン',
= 'ォ',
= 'ゥ',
= 'ヤ',
= 'ィェ',
= 'イ',
= 'ヨ',
= 'ユ',
= 'ザ',
= 'ゼ',
= 'ジ',
= 'ゾ',
= 'ズ',
},
= {
= 'あ',
= 'え',
= 'い',
= 'ん',
= 'お',
= 'う',
= 'ア',
= 'エ',
= 'イ',
= 'ン',
= 'オ',
= 'ウ',
},
= {
= 'ー',
= '・',
},
}
return data