shithub: ktrans

ref: 030d8259f711b8f599ffb073885cca85981c50c7
dir: /ktrans.h/

View raw version
typedef	struct	Map	Map;
struct	Map {
	char	*roma;
	char	*kana;
	char	advance;
};


Map kata[] = {
	"a",	"ア", 1,
	"-",	"ー", 1,
	"i",	"イ", 1,
	"u",	"ウ", 1,
	"e",	"エ", 1,
	"o",	"オ", 1,
	"ka",	"カ", 2,
	"ga",	"ガ", 2,
	"ki",	"キ", 2,
	"kya",	"キャ", 3,
	"kyu",	"キュ", 3,
	"kyo",	"キョ", 3,
	"gi",	"ギ", 2,
	"gya",	"ギャ", 3,
	"gyu",	"ギュ", 3,
	"gyo",	"ギョ", 3,
	"ku",	"ク", 2,
	"gu",	"グ", 2,
	"ke",	"ケ", 2,
	"ge",	"ゲ", 2,
	"ko",	"コ", 2,
	"go",	"ゴ", 2,
	"sa",	"サ", 2,
	"za",	"ザ", 2,
	"si",	"シ", 2,
	"shi",	"シ", 3,
	"ji",	"ジ", 2,
	"sha",	"シャ", 3,
	"she",	"シェ", 3,
	"shu",	"シュ", 3,
	"je",	"ジェ", 2,
	"sho",	"ショ", 3,
	"syo",	"ショ", 3,
	"ja",	"ジャ", 2,
	"ju",	"ジュ", 2,
	"je",	"ジェ", 2,
	"jo",	"ジョ", 2,
	"su",	"ス", 2,
	"zu",	"ズ", 2,
	"se",	"セ", 2,
	"ze",	"ゼ", 2,
	"so",	"ソ", 2,
	"zo",	"ゾ", 2,
	"ta",	"タ", 2,
	"da",	"ダ", 2,
	"ti",	"ティ", 2,
	"chi",	"チ", 3,
	"zi",	"ヂ", 2,
	"cha",	"チャ", 3,
	"chu",	"チュ", 3,
	"tyu",	"チュ", 3,
	"che",	"チェ", 3,
	"cho",	"チョ", 3,
	"tu",	"ツ", 2,
	"tsu",	"ツ", 3,
	"du",	"ヅ", 2,
	"te",	"テ", 2,
	"de",	"デ", 2,
	"to",	"ト", 2,
	"do",	"ド", 2,
	"na",	"ナ", 2,
	"ni",	"ニ", 2,
	"nya",	"ニャ", 3,
	"nyu",	"ニュ", 3,
	"nyo",	"ニョ", 3,
	"nu",	"ヌ", 2,
	"ne",	"ネ", 2,
	"no",	"ノ", 2,
	"ha",	"ハ", 2,
	"ba",	"バ", 2,
	"pa",	"パ", 2,
	"hi",	"ヒ", 2,
	"hya",	"ヒャ", 3,
	"hyu",	"ヒュ", 3,
	"hyo",	"ヒョ", 3,
	"bi",	"ビ", 2,
	"bya",	"ビャ", 3,
	"byu",	"ビュ", 3,
	"byo",	"ビョ", 3,
	"pi",	"ピ", 2,
	"pya",	"ピャ", 3,
	"pyu",	"ピュ", 3,
	"pyo",	"ピョ", 3,
	"hu",	"フ", 2,
	"fu",	"フ", 2,
	"bu",	"ブ", 2,
	"pu",	"プ", 2,
	"he",	"ヘ", 2,
	"be",	"ベ", 2,
	"pe",	"ペ", 2,
	"ho",	"ホ", 2,
	"bo",	"ボ", 2,
	"po",	"ポ", 2,
	"ma",	"マ", 2,
	"mi",	"ミ", 2,
	"mya",	"ミャ", 3,
	"myu",	"ミュ", 3,
	"myo",	"ミョ", 3,
	"mu",	"ム", 2,
	"me",	"メ", 2,
	"mo",	"モ", 2,
	"ya",	"ヤ", 2,
	"yu",	"ユ", 2,
	"yo",	"ヨ", 2,
	"ra",	"ラ", 2,
	"ri",	"リ", 2,
	"rya",	"リャ", 3,
	"ryu",	"リュ", 3,
	"ryo",	"リョ", 3,
	"ru",	"ル", 2,
	"re",	"レ", 2,
	"ro",	"ロ", 2,
	"wa",	"ワ", 2,
	"wi",	"ヰ", 2,
	"we",	"ヱ", 2,
	"wo",	"ヲ", 2,
	"n",	"ン", 1,
	"xn",	"ン", 2,
	"v",	"ヴ", 1,
	"xa",	"ァ", 2,
	"xi",	"ィ", 2,
	"xe",	"ェ", 2,
	"xo",	"ォ", 2,
	"cc",	"ッ", 1,
	"dd",	"ッ", 1,
	"kk",	"ッ", 1,
	"pp",	"ッ", 1,
	"tt",	"ッ", 1,
	"tch",	"ッ", 1,
	"ss",	"ッ", 1,
	"xn",	"ン", 2,
	"di",	"ディ", 2,
	"fa",	"ファ", 2,
	"fi",	"フィ", 2,
	"fe",	"フェ", 2,
	"fo",	"フォ", 2,
	"va",	"ヴァ", 2,
	"vi",	"ヴィ", 2,
	"ve",	"ヴェ", 2,
	"vo",	"ヴォ", 2,
	".",	"。", 1,
	",",	"、", 1,
	0
};

Map hira[] = {
	"a",	"あ", 1,
	"-",	"ー", 1,
	"i",	"い", 1,
	"u",	"う", 1,
	"e",	"え", 1,
	"o",	"お", 1,
	"ka",	"か", 2,
	"ga",	"が", 2,
	"ki",	"き", 2,
	"kya",	"きゃ", 3,
	"kyu",	"きゅ", 3,
	"kyo",	"きょ", 3,
	"gi",	"ぎ", 2,
	"gya",	"ぎゃ", 3,
	"gyu",	"ぎゅ", 3,
	"gyo",	"ぎょ", 3,
	"ku",	"く", 2,
	"gu",	"ぐ", 2,
	"ke",	"け", 2,
	"ge",	"げ", 2,
	"ko",	"こ", 2,
	"go",	"ご", 2,
	"sa",	"さ", 2,
	"za",	"ざ", 2,
	"si",	"し", 2,
	"shi",	"し", 3,
	"sha",	"しゃ", 3,
	"shu",	"しゅ", 3,
	"she",	"しぇ", 3,
	"sho",	"しょ", 3,
	"syo",	"しょ", 3,
	"zi",	"ぢ", 2,
	"ja",	"じゃ", 2,
	"ju",	"じゅ", 2,
	"je",	"じぇ", 2,
	"jo",	"じょ", 2,
	"su",	"す", 2,
	"zu",	"ず", 2,
	"se",	"せ", 2,
	"ze",	"ぜ", 2,
	"so",	"そ", 2,
	"zo",	"ぞ", 2,
	"ta",	"た", 2,
	"da",	"だ", 2,
	"ti",	"ち", 2,
	"chi",	"ち", 3,
	"cha",	"ちゃ", 3,
	"chu",	"ちゅ", 3,
	"tyu",	"ちゅ", 3,
	"cho",	"ちょ", 3,
	"ji",	"じ", 2,
	"tu",	"つ", 2,
	"tsu",	"つ", 3,
	"du",	"づ", 2,
	"te",	"て", 2,
	"de",	"で", 2,
	"to",	"と", 2,
	"do",	"ど", 2,
	"na",	"な", 2,
	"ni",	"に", 2,
	"nya",	"にゃ", 3,
	"nyu",	"にゅ", 3,
	"nyo",	"にょ", 3,
	"nu",	"ぬ", 2,
	"ne",	"ね", 2,
	"no",	"の", 2,
	"ha",	"は", 2,
	"ba",	"ば", 2,
	"va",	"ば", 2,
	"pa",	"ぱ", 2,
	"hi",	"ひ", 2,
	"hya",	"ひゃ", 3,
	"hyu",	"ひゅ", 3,
	"hyo",	"ひょ", 3,
	"bi",	"び", 2,
	"bya",	"びゃ", 3,
	"byu",	"びゅ", 3,
	"byo",	"びょ", 3,
	"vi",	"び", 2,
	"pi",	"ぴ", 2,
	"pya",	"ぴゃ", 3,
	"pyu",	"ぴゅ", 3,
	"pyo",	"ぴょ", 3,
	"hu",	"ふ", 2,
	"fu",	"ふ", 2,
	"bu",	"ぶ", 2,
	"vu",	"ぶ", 2,
	"pu",	"ぷ", 2,
	"he",	"へ", 2,
	"be",	"べ", 2,
	"ve",	"べ", 2,
	"pe",	"ぺ", 2,
	"ho",	"ほ", 2,
	"bo",	"ぼ", 2,
	"vo",	"ぼ", 2,
	"po",	"ぽ", 2,
	"ma",	"ま", 2,
	"mi",	"み", 2,
	"mya",	"みゃ", 3,
	"myu",	"みゅ", 3,
	"myo",	"みょ", 3,
	"mu",	"む", 2,
	"me",	"め", 2,
	"mo",	"も", 2,
	"ya",	"や", 2,
	"yu",	"ゆ", 2,
	"yo",	"よ", 2,
	"ra",	"ら", 2,
	"ri",	"り", 2,
	"rya",	"りゃ", 3,
	"ryu",	"りゅ", 3,
	"ryo",	"りょ", 3,
	"ru",	"る", 2,
	"re",	"れ", 2,
	"ro",	"ろ", 2,
	"wa",	"わ", 2,
	"wi",	"ゐ", 2,
	"we",	"ゑ", 2,
	"wo",	"を", 2,
	"n",	"ん", 1,
	"xn",	"ん", 2,
	"v",	"\x80", 1,
	"xa",	"ぁ", 2,
	"xi",	"ぃ", 2,
	"xu",	"ぅ", 2,
	"xe",	"ぇ", 2,
	"xo",	"ぉ", 2,
	"cc",	"っ", 1,
	"dd",	"っ", 1,
	"kk",	"っ", 1,
	"pp",	"っ", 1,
	"tt",	"っ", 1,
	"ss",	"っ", 1,
	".",	"。", 1,
	",",	"、", 1,
	0,
};

Map cyril[] = {
	"YO",	"Ё", 2,
	"Yo",	"Ё", 2,
	"A",	"А", 1,
	"B",	"Б", 1,
	"V",	"В", 1,
	"G",	"Г", 1,
	"D",	"Д", 1,
	"Ye",	"Е", 1,
	"YE",	"Е", 2,
	"E",	"Е", 1,
	"Zh",	"Ж", 2,
	"ZH",	"Ж", 2,
	"Z",	"З", 1,
	"I",	"И", 1,
	"J",	"Й", 1,
	"K",	"К", 1,
	"L",	"Л", 1,
	"M",	"М", 1,
	"N",	"Н", 1,
	"O",	"О", 1,
	"P",	"П", 1,
	"R",	"Р", 1,
	"S",	"С", 1,
	"T",	"Т", 1,
	"U",	"У", 1,
	"F",	"Ф", 1,
	"Kh",	"Х", 2,
	"KH",	"Х", 2,
	"X",	"Х", 1,
	"Ts",	"Ц", 2,
	"TS",	"Ц", 2,
	"Ch",	"Ч", 2,
	"CH",	"Ч", 2,
	"Sh",	"Ш", 2,
	"SH",	"Ш", 2,
	"Shch",	"Щ", 4,
	"SHCH",	"Щ", 4,
	"''",	"ъ", 2,
	"Y",	"Ы", 1,
	"'",	"ь", 1,
	"EH",	"Э", 2,
	"Eh",	"Э", 2,
	"Yu",	"Ю", 2,
	"YU",	"Ю", 2,
	"Ya",	"Я", 2,
	"YA",	"Я", 2,
	"a",	"а", 1,
	"b",	"б", 1,
	"v",	"в", 1,
	"g",	"г", 1,
	"d",	"д", 1,
	"ye",	"е", 2,
	"e",	"е", 1,
	"zh",	"ж", 2,
	"z",	"з", 1,
	"i",	"и", 1,
	"j",	"й", 1,
	"k",	"к", 1,
	"l",	"л", 1,
	"m",	"м", 1,
	"n",	"н", 1,
	"o",	"о", 1,
	"p",	"п", 1,
	"r",	"р", 1,
	"s",	"с", 1,
	"t",	"т", 1,
	"u",	"у", 1,
	"f",	"ф", 1,
	"kh",	"х", 2,
	"x",	"х", 1,
	"ts",	"ц", 2,
	"ch",	"ч", 2,
	"sh",	"ш", 2,
	"shch",	"щ", 4,
	"''",	"ъ", 2,
	"y",	"ы", 1,
	"'",	"ь", 1,
	"eh",	"э", 2,
	"yu",	"ю", 2,
	"ya",	"я", 2,
	"yo",	"ё", 2,
	0,
};

Map greek[] = {
	"A",	"Α", 1,
	"'A",	"Ά", 2,
	"B",	"Β", 1,
	"G",	"Γ", 1,
	"D",	"Δ", 1,
	"E",	"Ε", 1,
	"'E",	"Έ", 2,
	"Z",	"Ζ", 1,
	"E!",	"Η", 2,
	"'E!",	"Έ", 3,
	"TH",	"Θ", 2,
	"Th",	"Θ", 2,
	"I",	"Ι", 1,
	"'I",	"Ί", 2,
	"K",	"Κ", 1,
	"L",	"Λ", 1,
	"M",	"Μ", 1,
	"N",	"Ν", 1,
	"KS",	"Ξ", 2,
	"Ks",	"Ξ", 2,
	"O",	"Ο", 1,
	"'O",	"Ό", 2,
	"P",	"Π", 1,
	"R",	"Ρ", 1,
	"S",	"Σ", 1,
	"T",	"Τ", 1,
	"U",	"Υ", 1,
	"'U",	"Ύ", 2,
	"F",	"Φ", 1,
	"CH",	"Χ", 2,
	"Ch",	"Χ", 2,
	"PS",	"Ψ", 2,
	"Ps",	"Ψ", 2,
	"O!",	"Ω", 2,
	"W",	"Ω", 1,
	"'O!",	"Ώ", 3,
	"'W",	"Ώ", 2,
	"a",	"α", 1,
	"'a",	"ά", 2,
	"b",	"β", 1,
	"v",	"β", 1,
	"g",	"γ", 1,
	"d",	"δ", 1,
	"e",	"ε", 1,
	"'e",	"έ", 2,
	"z",	"ζ", 1,
	"e!",	"η", 2,
	"'e!",	"ή", 3,
	"ii",	"η", 2,
	"'ii",	"ή", 3,
	"h",	"η", 1,
	"'h",	"ή", 2,
	"th",	"θ", 2,
	"i",	"ι", 1,
	"'i",	"ί", 2,
	"k",	"κ", 1,
	"l",	"λ", 1,
	"m",	"μ", 1,
	"n",	"ν", 1,
	"ks",	"ξ", 2,
	"x",	"ξ", 1,
	"o",	"ο", 1,
	"'o",	"ό", 2,
	"p",	"π", 1,
	"r",	"ρ", 1,
	"s ",	"ς", 1,
	"s.",	"ς", 1,
	"s,",	"ς", 1,
	"s\n",	"ς", 1,
	"s",	"σ", 1,
	"t",	"τ", 1,
	"u",	"υ", 1,
	"'u",	"ΰ", 2,
	"y",	"υ", 1,
	"'y",	"ΰ", 2,
	"f",	"φ", 1,
	"ch",	"χ", 2,
	"ps",	"ψ", 2,
	"o!",	"ω", 2,
	"w",	"ω", 1,
	"'o!",	"ώ", 3,
	"'w",	"ώ", 2,
	0
};

/* you can add other Map data here */