xref: /dokuwiki/inc/Utf8/tables/romanization.php (revision 7f6de1e37e384eca11f24cd84012a2e69da22efc)
113067778SAndreas Gohr<?php
2d4f83172SAndreas Gohr
313067778SAndreas Gohr/**
413067778SAndreas Gohr * Romanization lookup table
513067778SAndreas Gohr *
613067778SAndreas Gohr * This lookup tables provides a way to transform strings written in a language
713067778SAndreas Gohr * different from the ones based upon latin letters into plain ASCII.
813067778SAndreas Gohr *
913067778SAndreas Gohr * Please note: this is not a scientific transliteration table. It only works
1013067778SAndreas Gohr * oneway from nonlatin to ASCII and it works by simple character replacement
1113067778SAndreas Gohr * only. Specialities of each language are not supported.
1213067778SAndreas Gohr *
1313067778SAndreas Gohr * @todo some keys are used multiple times
1413067778SAndreas Gohr * @todo remove or integrate commented pairs
1513067778SAndreas Gohr *
1613067778SAndreas Gohr * @author Andreas Gohr <andi@splitbrain.org>
1713067778SAndreas Gohr * @author Vitaly Blokhin <vitinfo@vitn.com>
1813067778SAndreas Gohr * @author Bisqwit <bisqwit@iki.fi>
1913067778SAndreas Gohr * @author Arthit Suriyawongkul <arthit@gmail.com>
2013067778SAndreas Gohr * @author Denis Scheither <amorphis@uni-bremen.de>
2113067778SAndreas Gohr * @author Eivind Morland <eivind.morland@gmail.com>
2213067778SAndreas Gohr * @link   http://www.uconv.com/translit.htm
2313067778SAndreas Gohr * @link   http://kanjidict.stc.cx/hiragana.php?src=2
2413067778SAndreas Gohr * @link   http://www.translatum.gr/converter/greek-transliteration.htm
2513067778SAndreas Gohr * @link   http://en.wikipedia.org/wiki/Royal_Thai_General_System_of_Transcription
2613067778SAndreas Gohr * @link   http://www.btranslations.com/resources/romanization/korean.asp
2713067778SAndreas Gohr */
28d4f83172SAndreas Gohr
2913067778SAndreas Gohrreturn [
3013067778SAndreas Gohr    // scandinavian - differs from what we do in deaccent
3113067778SAndreas Gohr    'å' => 'a',
3213067778SAndreas Gohr    'Å' => 'A',
3313067778SAndreas Gohr    'ä' => 'a',
3413067778SAndreas Gohr    'Ä' => 'A',
3513067778SAndreas Gohr    'ö' => 'o',
3613067778SAndreas Gohr    'Ö' => 'O',
3713067778SAndreas Gohr
3813067778SAndreas Gohr    //russian cyrillic
3913067778SAndreas Gohr    'а' => 'a',
4013067778SAndreas Gohr    'А' => 'A',
4113067778SAndreas Gohr    'б' => 'b',
4213067778SAndreas Gohr    'Б' => 'B',
4313067778SAndreas Gohr    'в' => 'v',
4413067778SAndreas Gohr    'В' => 'V',
4513067778SAndreas Gohr    'г' => 'g',
4613067778SAndreas Gohr    'Г' => 'G',
4713067778SAndreas Gohr    'д' => 'd',
4813067778SAndreas Gohr    'Д' => 'D',
4913067778SAndreas Gohr    'е' => 'e',
5013067778SAndreas Gohr    'Е' => 'E',
5113067778SAndreas Gohr    'ё' => 'jo',
5213067778SAndreas Gohr    'Ё' => 'Jo',
5313067778SAndreas Gohr    'ж' => 'zh',
5413067778SAndreas Gohr    'Ж' => 'Zh',
5513067778SAndreas Gohr    'з' => 'z',
5613067778SAndreas Gohr    'З' => 'Z',
5713067778SAndreas Gohr    'и' => 'i',
5813067778SAndreas Gohr    'И' => 'I',
5913067778SAndreas Gohr    'й' => 'j',
6013067778SAndreas Gohr    'Й' => 'J',
6113067778SAndreas Gohr    'к' => 'k',
6213067778SAndreas Gohr    'К' => 'K',
6313067778SAndreas Gohr    'л' => 'l',
6413067778SAndreas Gohr    'Л' => 'L',
6513067778SAndreas Gohr    'м' => 'm',
6613067778SAndreas Gohr    'М' => 'M',
6713067778SAndreas Gohr    'н' => 'n',
6813067778SAndreas Gohr    'Н' => 'N',
6913067778SAndreas Gohr    'о' => 'o',
7013067778SAndreas Gohr    'О' => 'O',
7113067778SAndreas Gohr    'п' => 'p',
7213067778SAndreas Gohr    'П' => 'P',
7313067778SAndreas Gohr    'р' => 'r',
7413067778SAndreas Gohr    'Р' => 'R',
7513067778SAndreas Gohr    'с' => 's',
7613067778SAndreas Gohr    'С' => 'S',
7713067778SAndreas Gohr    'т' => 't',
7813067778SAndreas Gohr    'Т' => 'T',
7913067778SAndreas Gohr    'у' => 'u',
8013067778SAndreas Gohr    'У' => 'U',
8113067778SAndreas Gohr    'ф' => 'f',
8213067778SAndreas Gohr    'Ф' => 'F',
8313067778SAndreas Gohr    'х' => 'x',
8413067778SAndreas Gohr    'Х' => 'X',
8513067778SAndreas Gohr    'ц' => 'c',
8613067778SAndreas Gohr    'Ц' => 'C',
8713067778SAndreas Gohr    'ч' => 'ch',
8813067778SAndreas Gohr    'Ч' => 'Ch',
8913067778SAndreas Gohr    'ш' => 'sh',
9013067778SAndreas Gohr    'Ш' => 'Sh',
9113067778SAndreas Gohr    'щ' => 'sch',
9213067778SAndreas Gohr    'Щ' => 'Sch',
9313067778SAndreas Gohr    'ъ' => '',
9413067778SAndreas Gohr    'Ъ' => '',
9513067778SAndreas Gohr    'ы' => 'y',
9613067778SAndreas Gohr    'Ы' => 'Y',
9713067778SAndreas Gohr    'ь' => '',
9813067778SAndreas Gohr    'Ь' => '',
9913067778SAndreas Gohr    'э' => 'eh',
10013067778SAndreas Gohr    'Э' => 'Eh',
10113067778SAndreas Gohr    'ю' => 'ju',
10213067778SAndreas Gohr    'Ю' => 'Ju',
10313067778SAndreas Gohr    'я' => 'ja',
10413067778SAndreas Gohr    'Я' => 'Ja',
10513067778SAndreas Gohr
10613067778SAndreas Gohr    // Ukrainian cyrillic
10713067778SAndreas Gohr    'Ґ' => 'Gh',
10813067778SAndreas Gohr    'ґ' => 'gh',
10913067778SAndreas Gohr    'Є' => 'Je',
11013067778SAndreas Gohr    'є' => 'je',
11113067778SAndreas Gohr    'І' => 'I',
11213067778SAndreas Gohr    'і' => 'i',
11313067778SAndreas Gohr    'Ї' => 'Ji',
11413067778SAndreas Gohr    'ї' => 'ji',
11513067778SAndreas Gohr
11613067778SAndreas Gohr    // Georgian
11713067778SAndreas Gohr    'ა' => 'a',
11813067778SAndreas Gohr    'ბ' => 'b',
11913067778SAndreas Gohr    'გ' => 'g',
12013067778SAndreas Gohr    'დ' => 'd',
12113067778SAndreas Gohr    'ე' => 'e',
12213067778SAndreas Gohr    'ვ' => 'v',
12313067778SAndreas Gohr    'ზ' => 'z',
12413067778SAndreas Gohr    'თ' => 'th',
12513067778SAndreas Gohr    'ი' => 'i',
12613067778SAndreas Gohr    'კ' => 'p',
12713067778SAndreas Gohr    'ლ' => 'l',
12813067778SAndreas Gohr    'მ' => 'm',
12913067778SAndreas Gohr    'ნ' => 'n',
13013067778SAndreas Gohr    'ო' => 'o',
13113067778SAndreas Gohr    'პ' => 'p',
13213067778SAndreas Gohr    'ჟ' => 'zh',
13313067778SAndreas Gohr    'რ' => 'r',
13413067778SAndreas Gohr    'ს' => 's',
13513067778SAndreas Gohr    'ტ' => 't',
13613067778SAndreas Gohr    'უ' => 'u',
13713067778SAndreas Gohr    'ფ' => 'ph',
13813067778SAndreas Gohr    'ქ' => 'kh',
13913067778SAndreas Gohr    'ღ' => 'gh',
14013067778SAndreas Gohr    'ყ' => 'q',
14113067778SAndreas Gohr    'შ' => 'sh',
14213067778SAndreas Gohr    'ჩ' => 'ch',
14313067778SAndreas Gohr    'ც' => 'c',
14413067778SAndreas Gohr    'ძ' => 'dh',
14513067778SAndreas Gohr    'წ' => 'w',
14613067778SAndreas Gohr    'ჭ' => 'j',
14713067778SAndreas Gohr    'ხ' => 'x',
14813067778SAndreas Gohr    'ჯ' => 'jh',
14913067778SAndreas Gohr    'ჰ' => 'xh',
15013067778SAndreas Gohr
15113067778SAndreas Gohr    //Sanskrit
15213067778SAndreas Gohr    'अ' => 'a',
15313067778SAndreas Gohr    'आ' => 'ah',
15413067778SAndreas Gohr    'इ' => 'i',
15513067778SAndreas Gohr    'ई' => 'ih',
15613067778SAndreas Gohr    'उ' => 'u',
15713067778SAndreas Gohr    'ऊ' => 'uh',
15813067778SAndreas Gohr    'ऋ' => 'ry',
15913067778SAndreas Gohr    'ॠ' => 'ryh',
16013067778SAndreas Gohr    'ऌ' => 'ly',
16113067778SAndreas Gohr    'ॡ' => 'lyh',
16213067778SAndreas Gohr    'ए' => 'e',
16313067778SAndreas Gohr    'ऐ' => 'ay',
16413067778SAndreas Gohr    'ओ' => 'o',
16513067778SAndreas Gohr    'औ' => 'aw',
16613067778SAndreas Gohr    'अं' => 'amh',
16713067778SAndreas Gohr    'अः' => 'aq',
16813067778SAndreas Gohr    'क' => 'k',
16913067778SAndreas Gohr    'ख' => 'kh',
17013067778SAndreas Gohr    'ग' => 'g',
17113067778SAndreas Gohr    'घ' => 'gh',
17213067778SAndreas Gohr    'ङ' => 'nh',
17313067778SAndreas Gohr    'च' => 'c',
17413067778SAndreas Gohr    'छ' => 'ch',
17513067778SAndreas Gohr    'ज' => 'j',
17613067778SAndreas Gohr    'झ' => 'jh',
17713067778SAndreas Gohr    'ञ' => 'ny',
17813067778SAndreas Gohr    'ट' => 'tq',
17913067778SAndreas Gohr    'ठ' => 'tqh',
18013067778SAndreas Gohr    'ड' => 'dq',
18113067778SAndreas Gohr    'ढ' => 'dqh',
18213067778SAndreas Gohr    'ण' => 'nq',
18313067778SAndreas Gohr    'त' => 't',
18413067778SAndreas Gohr    'थ' => 'th',
18513067778SAndreas Gohr    'द' => 'd',
18613067778SAndreas Gohr    'ध' => 'dh',
18713067778SAndreas Gohr    'न' => 'n',
18813067778SAndreas Gohr    'प' => 'p',
18913067778SAndreas Gohr    'फ' => 'ph',
19013067778SAndreas Gohr    'ब' => 'b',
19113067778SAndreas Gohr    'भ' => 'bh',
19213067778SAndreas Gohr    'म' => 'm',
19313067778SAndreas Gohr    'य' => 'z',
19413067778SAndreas Gohr    'र' => 'r',
19513067778SAndreas Gohr    'ल' => 'l',
19613067778SAndreas Gohr    'व' => 'v',
19713067778SAndreas Gohr    'श' => 'sh',
19813067778SAndreas Gohr    'ष' => 'sqh',
19913067778SAndreas Gohr    'स' => 's',
20013067778SAndreas Gohr    'ह' => 'x',
20113067778SAndreas Gohr
20213067778SAndreas Gohr    //Sanskrit diacritics
20313067778SAndreas Gohr    'Ā' => 'A',
20413067778SAndreas Gohr    'Ī' => 'I',
20513067778SAndreas Gohr    'Ū' => 'U',
20613067778SAndreas Gohr    'Ṛ' => 'R',
20713067778SAndreas Gohr    'Ṝ' => 'R',
20813067778SAndreas Gohr    'Ṅ' => 'N',
20913067778SAndreas Gohr    'Ñ' => 'N',
21013067778SAndreas Gohr    'Ṭ' => 'T',
21113067778SAndreas Gohr    'Ḍ' => 'D',
21213067778SAndreas Gohr    'Ṇ' => 'N',
21313067778SAndreas Gohr    'Ś' => 'S',
21413067778SAndreas Gohr    'Ṣ' => 'S',
21513067778SAndreas Gohr    'Ṁ' => 'M',
21613067778SAndreas Gohr    'Ṃ' => 'M',
21713067778SAndreas Gohr    'Ḥ' => 'H',
21813067778SAndreas Gohr    'Ḷ' => 'L',
21913067778SAndreas Gohr    'Ḹ' => 'L',
22013067778SAndreas Gohr    'ā' => 'a',
22113067778SAndreas Gohr    'ī' => 'i',
22213067778SAndreas Gohr    'ū' => 'u',
22313067778SAndreas Gohr    'ṛ' => 'r',
22413067778SAndreas Gohr    'ṝ' => 'r',
22513067778SAndreas Gohr    'ṅ' => 'n',
22613067778SAndreas Gohr    'ñ' => 'n',
22713067778SAndreas Gohr    'ṭ' => 't',
22813067778SAndreas Gohr    'ḍ' => 'd',
22913067778SAndreas Gohr    'ṇ' => 'n',
23013067778SAndreas Gohr    'ś' => 's',
23113067778SAndreas Gohr    'ṣ' => 's',
23213067778SAndreas Gohr    'ṁ' => 'm',
23313067778SAndreas Gohr    'ṃ' => 'm',
23413067778SAndreas Gohr    'ḥ' => 'h',
23513067778SAndreas Gohr    'ḷ' => 'l',
23613067778SAndreas Gohr    'ḹ' => 'l',
23713067778SAndreas Gohr
23813067778SAndreas Gohr    //Hebrew
23913067778SAndreas Gohr    'א' => 'a',
24013067778SAndreas Gohr    'ב' => 'b',
24113067778SAndreas Gohr    'ג' => 'g',
24213067778SAndreas Gohr    'ד' => 'd',
24313067778SAndreas Gohr    'ה' => 'h',
24413067778SAndreas Gohr    'ו' => 'v',
24513067778SAndreas Gohr    'ז' => 'z',
24613067778SAndreas Gohr    'ח' => 'kh',
24713067778SAndreas Gohr    'ט' => 'th',
24813067778SAndreas Gohr    'י' => 'y',
24913067778SAndreas Gohr    'ך' => 'h',
25013067778SAndreas Gohr    'כ' => 'k',
25113067778SAndreas Gohr    'ל' => 'l',
25213067778SAndreas Gohr    'ם' => 'm',
25313067778SAndreas Gohr    'מ' => 'm',
25413067778SAndreas Gohr    'ן' => 'n',
25513067778SAndreas Gohr    'נ' => 'n',
25613067778SAndreas Gohr    'ס' => 's',
25713067778SAndreas Gohr    'ע' => 'ah',
25813067778SAndreas Gohr    'ף' => 'f',
25913067778SAndreas Gohr    'פ' => 'p',
26013067778SAndreas Gohr    'ץ' => 'c',
26113067778SAndreas Gohr    'צ' => 'c',
26213067778SAndreas Gohr    'ק' => 'q',
26313067778SAndreas Gohr    'ר' => 'r',
26413067778SAndreas Gohr    'ש' => 'sh',
26513067778SAndreas Gohr    'ת' => 't',
26613067778SAndreas Gohr
26713067778SAndreas Gohr    //Arabic
26813067778SAndreas Gohr    'ا' => 'a',
26913067778SAndreas Gohr    'ب' => 'b',
27013067778SAndreas Gohr    'ت' => 't',
27113067778SAndreas Gohr    'ث' => 'th',
27213067778SAndreas Gohr    'ج' => 'g',
27313067778SAndreas Gohr    'ح' => 'xh',
27413067778SAndreas Gohr    'خ' => 'x',
27513067778SAndreas Gohr    'د' => 'd',
27613067778SAndreas Gohr    'ذ' => 'dh',
27713067778SAndreas Gohr    'ر' => 'r',
27813067778SAndreas Gohr    'ز' => 'z',
27913067778SAndreas Gohr    'س' => 's',
28013067778SAndreas Gohr    'ش' => 'sh',
28113067778SAndreas Gohr    'ص' => 's\'',
28213067778SAndreas Gohr    'ض' => 'd\'',
28313067778SAndreas Gohr    'ط' => 't\'',
28413067778SAndreas Gohr    'ظ' => 'z\'',
28513067778SAndreas Gohr    'ع' => 'y',
28613067778SAndreas Gohr    'غ' => 'gh',
28713067778SAndreas Gohr    'ف' => 'f',
28813067778SAndreas Gohr    'ق' => 'q',
28913067778SAndreas Gohr    'ك' => 'k',
29013067778SAndreas Gohr    'ل' => 'l',
29113067778SAndreas Gohr    'م' => 'm',
29213067778SAndreas Gohr    'ن' => 'n',
29313067778SAndreas Gohr    'ه' => 'x\'',
29413067778SAndreas Gohr    'و' => 'u',
29513067778SAndreas Gohr    'ي' => 'i',
29613067778SAndreas Gohr
29713067778SAndreas Gohr    // Japanese characters  (last update: 2008-05-09)
29813067778SAndreas Gohr
29913067778SAndreas Gohr    // Japanese hiragana
30013067778SAndreas Gohr
30113067778SAndreas Gohr    // 3 character syllables, っ doubles the consonant after
30213067778SAndreas Gohr    'っびゃ' => 'bbya',
30313067778SAndreas Gohr    'っびぇ' => 'bbye',
30413067778SAndreas Gohr    'っびぃ' => 'bbyi',
30513067778SAndreas Gohr    'っびょ' => 'bbyo',
30613067778SAndreas Gohr    'っびゅ' => 'bbyu',
30713067778SAndreas Gohr    'っぴゃ' => 'ppya',
30813067778SAndreas Gohr    'っぴぇ' => 'ppye',
30913067778SAndreas Gohr    'っぴぃ' => 'ppyi',
31013067778SAndreas Gohr    'っぴょ' => 'ppyo',
31113067778SAndreas Gohr    'っぴゅ' => 'ppyu',
31213067778SAndreas Gohr    'っちゃ' => 'ccha',
31313067778SAndreas Gohr    'っちぇ' => 'cche',
31413067778SAndreas Gohr    'っちょ' => 'ccho',
31513067778SAndreas Gohr    'っちゅ' => 'cchu',
31613067778SAndreas Gohr    // 'っひゃ'=>'hya',
31713067778SAndreas Gohr    // 'っひぇ'=>'hye',
31813067778SAndreas Gohr    // 'っひぃ'=>'hyi',
31913067778SAndreas Gohr    // 'っひょ'=>'hyo',
32013067778SAndreas Gohr    // 'っひゅ'=>'hyu',
32113067778SAndreas Gohr    'っきゃ' => 'kkya',
32213067778SAndreas Gohr    'っきぇ' => 'kkye',
32313067778SAndreas Gohr    'っきぃ' => 'kkyi',
32413067778SAndreas Gohr    'っきょ' => 'kkyo',
32513067778SAndreas Gohr    'っきゅ' => 'kkyu',
32613067778SAndreas Gohr    'っぎゃ' => 'ggya',
32713067778SAndreas Gohr    'っぎぇ' => 'ggye',
32813067778SAndreas Gohr    'っぎぃ' => 'ggyi',
32913067778SAndreas Gohr    'っぎょ' => 'ggyo',
33013067778SAndreas Gohr    'っぎゅ' => 'ggyu',
33113067778SAndreas Gohr    'っみゃ' => 'mmya',
33213067778SAndreas Gohr    'っみぇ' => 'mmye',
33313067778SAndreas Gohr    'っみぃ' => 'mmyi',
33413067778SAndreas Gohr    'っみょ' => 'mmyo',
33513067778SAndreas Gohr    'っみゅ' => 'mmyu',
33613067778SAndreas Gohr    'っにゃ' => 'nnya',
33713067778SAndreas Gohr    'っにぇ' => 'nnye',
33813067778SAndreas Gohr    'っにぃ' => 'nnyi',
33913067778SAndreas Gohr    'っにょ' => 'nnyo',
34013067778SAndreas Gohr    'っにゅ' => 'nnyu',
34113067778SAndreas Gohr    'っりゃ' => 'rrya',
34213067778SAndreas Gohr    'っりぇ' => 'rrye',
34313067778SAndreas Gohr    'っりぃ' => 'rryi',
34413067778SAndreas Gohr    'っりょ' => 'rryo',
34513067778SAndreas Gohr    'っりゅ' => 'rryu',
34613067778SAndreas Gohr    'っしゃ' => 'ssha',
34713067778SAndreas Gohr    'っしぇ' => 'sshe',
34813067778SAndreas Gohr    'っしょ' => 'ssho',
34913067778SAndreas Gohr    'っしゅ' => 'sshu',
35013067778SAndreas Gohr
35113067778SAndreas Gohr    // seperate hiragana 'n' ('n' + 'i' != 'ni', normally we would write "kon'nichi wa" but the
35213067778SAndreas Gohr    // apostrophe would be converted to _ anyway)
35313067778SAndreas Gohr    'んあ' => 'n_a',
35413067778SAndreas Gohr    'んえ' => 'n_e',
35513067778SAndreas Gohr    'んい' => 'n_i',
35613067778SAndreas Gohr    'んお' => 'n_o',
35713067778SAndreas Gohr    'んう' => 'n_u',
35813067778SAndreas Gohr    'んや' => 'n_ya',
35913067778SAndreas Gohr    'んよ' => 'n_yo',
36013067778SAndreas Gohr    'んゆ' => 'n_yu',
36113067778SAndreas Gohr
36213067778SAndreas Gohr    // 2 character syllables - normal
36313067778SAndreas Gohr    'ふぁ' => 'fa',
36413067778SAndreas Gohr    'ふぇ' => 'fe',
36513067778SAndreas Gohr    'ふぃ' => 'fi',
36613067778SAndreas Gohr    'ふぉ' => 'fo',
36713067778SAndreas Gohr    'ちゃ' => 'cha',
36813067778SAndreas Gohr    'ちぇ' => 'che',
36913067778SAndreas Gohr    'ちょ' => 'cho',
37013067778SAndreas Gohr    'ちゅ' => 'chu',
37113067778SAndreas Gohr    'ひゃ' => 'hya',
37213067778SAndreas Gohr    'ひぇ' => 'hye',
37313067778SAndreas Gohr    'ひぃ' => 'hyi',
37413067778SAndreas Gohr    'ひょ' => 'hyo',
37513067778SAndreas Gohr    'ひゅ' => 'hyu',
37613067778SAndreas Gohr    'びゃ' => 'bya',
37713067778SAndreas Gohr    'びぇ' => 'bye',
37813067778SAndreas Gohr    'びぃ' => 'byi',
37913067778SAndreas Gohr    'びょ' => 'byo',
38013067778SAndreas Gohr    'びゅ' => 'byu',
38113067778SAndreas Gohr    'ぴゃ' => 'pya',
38213067778SAndreas Gohr    'ぴぇ' => 'pye',
38313067778SAndreas Gohr    'ぴぃ' => 'pyi',
38413067778SAndreas Gohr    'ぴょ' => 'pyo',
38513067778SAndreas Gohr    'ぴゅ' => 'pyu',
38613067778SAndreas Gohr    'きゃ' => 'kya',
38713067778SAndreas Gohr    'きぇ' => 'kye',
38813067778SAndreas Gohr    'きぃ' => 'kyi',
38913067778SAndreas Gohr    'きょ' => 'kyo',
39013067778SAndreas Gohr    'きゅ' => 'kyu',
39113067778SAndreas Gohr    'ぎゃ' => 'gya',
39213067778SAndreas Gohr    'ぎぇ' => 'gye',
39313067778SAndreas Gohr    'ぎぃ' => 'gyi',
39413067778SAndreas Gohr    'ぎょ' => 'gyo',
39513067778SAndreas Gohr    'ぎゅ' => 'gyu',
39613067778SAndreas Gohr    'みゃ' => 'mya',
39713067778SAndreas Gohr    'みぇ' => 'mye',
39813067778SAndreas Gohr    'みぃ' => 'myi',
39913067778SAndreas Gohr    'みょ' => 'myo',
40013067778SAndreas Gohr    'みゅ' => 'myu',
40113067778SAndreas Gohr    'にゃ' => 'nya',
40213067778SAndreas Gohr    'にぇ' => 'nye',
40313067778SAndreas Gohr    'にぃ' => 'nyi',
40413067778SAndreas Gohr    'にょ' => 'nyo',
40513067778SAndreas Gohr    'にゅ' => 'nyu',
40613067778SAndreas Gohr    'りゃ' => 'rya',
40713067778SAndreas Gohr    'りぇ' => 'rye',
40813067778SAndreas Gohr    'りぃ' => 'ryi',
40913067778SAndreas Gohr    'りょ' => 'ryo',
41013067778SAndreas Gohr    'りゅ' => 'ryu',
41113067778SAndreas Gohr    'しゃ' => 'sha',
41213067778SAndreas Gohr    'しぇ' => 'she',
41313067778SAndreas Gohr    'しょ' => 'sho',
41413067778SAndreas Gohr    'しゅ' => 'shu',
41513067778SAndreas Gohr    'じゃ' => 'ja',
41613067778SAndreas Gohr    'じぇ' => 'je',
41713067778SAndreas Gohr    'じょ' => 'jo',
41813067778SAndreas Gohr    'じゅ' => 'ju',
41913067778SAndreas Gohr    'うぇ' => 'we',
42013067778SAndreas Gohr    'うぃ' => 'wi',
42113067778SAndreas Gohr    'いぇ' => 'ye',
42213067778SAndreas Gohr
42313067778SAndreas Gohr    // 2 character syllables, っ doubles the consonant after
42413067778SAndreas Gohr    'っば' => 'bba',
42513067778SAndreas Gohr    'っべ' => 'bbe',
42613067778SAndreas Gohr    'っび' => 'bbi',
42713067778SAndreas Gohr    'っぼ' => 'bbo',
42813067778SAndreas Gohr    'っぶ' => 'bbu',
42913067778SAndreas Gohr    'っぱ' => 'ppa',
43013067778SAndreas Gohr    'っぺ' => 'ppe',
43113067778SAndreas Gohr    'っぴ' => 'ppi',
43213067778SAndreas Gohr    'っぽ' => 'ppo',
43313067778SAndreas Gohr    'っぷ' => 'ppu',
43413067778SAndreas Gohr    'った' => 'tta',
43513067778SAndreas Gohr    'って' => 'tte',
43613067778SAndreas Gohr    'っち' => 'cchi',
43713067778SAndreas Gohr    'っと' => 'tto',
43813067778SAndreas Gohr    'っつ' => 'ttsu',
43913067778SAndreas Gohr    'っだ' => 'dda',
44013067778SAndreas Gohr    'っで' => 'dde',
44113067778SAndreas Gohr    'っぢ' => 'ddi',
44213067778SAndreas Gohr    'っど' => 'ddo',
44313067778SAndreas Gohr    'っづ' => 'ddu',
44413067778SAndreas Gohr    'っが' => 'gga',
44513067778SAndreas Gohr    'っげ' => 'gge',
44613067778SAndreas Gohr    'っぎ' => 'ggi',
44713067778SAndreas Gohr    'っご' => 'ggo',
44813067778SAndreas Gohr    'っぐ' => 'ggu',
44913067778SAndreas Gohr    'っか' => 'kka',
45013067778SAndreas Gohr    'っけ' => 'kke',
45113067778SAndreas Gohr    'っき' => 'kki',
45213067778SAndreas Gohr    'っこ' => 'kko',
45313067778SAndreas Gohr    'っく' => 'kku',
45413067778SAndreas Gohr    'っま' => 'mma',
45513067778SAndreas Gohr    'っめ' => 'mme',
45613067778SAndreas Gohr    'っみ' => 'mmi',
45713067778SAndreas Gohr    'っも' => 'mmo',
45813067778SAndreas Gohr    'っむ' => 'mmu',
45913067778SAndreas Gohr    'っな' => 'nna',
46013067778SAndreas Gohr    'っね' => 'nne',
46113067778SAndreas Gohr    'っに' => 'nni',
46213067778SAndreas Gohr    'っの' => 'nno',
46313067778SAndreas Gohr    'っぬ' => 'nnu',
46413067778SAndreas Gohr    'っら' => 'rra',
46513067778SAndreas Gohr    'っれ' => 'rre',
46613067778SAndreas Gohr    'っり' => 'rri',
46713067778SAndreas Gohr    'っろ' => 'rro',
46813067778SAndreas Gohr    'っる' => 'rru',
46913067778SAndreas Gohr    'っさ' => 'ssa',
47013067778SAndreas Gohr    'っせ' => 'sse',
47113067778SAndreas Gohr    'っし' => 'sshi',
47213067778SAndreas Gohr    'っそ' => 'sso',
47313067778SAndreas Gohr    'っす' => 'ssu',
47413067778SAndreas Gohr    'っざ' => 'zza',
47513067778SAndreas Gohr    'っぜ' => 'zze',
47613067778SAndreas Gohr    'っじ' => 'jji',
47713067778SAndreas Gohr    'っぞ' => 'zzo',
47813067778SAndreas Gohr    'っず' => 'zzu',
47913067778SAndreas Gohr
48013067778SAndreas Gohr    // 1 character syllabels
48113067778SAndreas Gohr    'あ' => 'a',
48213067778SAndreas Gohr    'え' => 'e',
48313067778SAndreas Gohr    'い' => 'i',
48413067778SAndreas Gohr    'お' => 'o',
48513067778SAndreas Gohr    'う' => 'u',
48613067778SAndreas Gohr    'ん' => 'n',
48713067778SAndreas Gohr    'は' => 'ha',
48813067778SAndreas Gohr    'へ' => 'he',
48913067778SAndreas Gohr    'ひ' => 'hi',
49013067778SAndreas Gohr    'ほ' => 'ho',
49113067778SAndreas Gohr    'ふ' => 'fu',
49213067778SAndreas Gohr    'ば' => 'ba',
49313067778SAndreas Gohr    'べ' => 'be',
49413067778SAndreas Gohr    'び' => 'bi',
49513067778SAndreas Gohr    'ぼ' => 'bo',
49613067778SAndreas Gohr    'ぶ' => 'bu',
49713067778SAndreas Gohr    'ぱ' => 'pa',
49813067778SAndreas Gohr    'ぺ' => 'pe',
49913067778SAndreas Gohr    'ぴ' => 'pi',
50013067778SAndreas Gohr    'ぽ' => 'po',
50113067778SAndreas Gohr    'ぷ' => 'pu',
50213067778SAndreas Gohr    'た' => 'ta',
50313067778SAndreas Gohr    'て' => 'te',
50413067778SAndreas Gohr    'ち' => 'chi',
50513067778SAndreas Gohr    'と' => 'to',
50613067778SAndreas Gohr    'つ' => 'tsu',
50713067778SAndreas Gohr    'だ' => 'da',
50813067778SAndreas Gohr    'で' => 'de',
50913067778SAndreas Gohr    'ぢ' => 'di',
51013067778SAndreas Gohr    'ど' => 'do',
51113067778SAndreas Gohr    'づ' => 'du',
51213067778SAndreas Gohr    'が' => 'ga',
51313067778SAndreas Gohr    'げ' => 'ge',
51413067778SAndreas Gohr    'ぎ' => 'gi',
51513067778SAndreas Gohr    'ご' => 'go',
51613067778SAndreas Gohr    'ぐ' => 'gu',
51713067778SAndreas Gohr    'か' => 'ka',
51813067778SAndreas Gohr    'け' => 'ke',
51913067778SAndreas Gohr    'き' => 'ki',
52013067778SAndreas Gohr    'こ' => 'ko',
52113067778SAndreas Gohr    'く' => 'ku',
52213067778SAndreas Gohr    'ま' => 'ma',
52313067778SAndreas Gohr    'め' => 'me',
52413067778SAndreas Gohr    'み' => 'mi',
52513067778SAndreas Gohr    'も' => 'mo',
52613067778SAndreas Gohr    'む' => 'mu',
52713067778SAndreas Gohr    'な' => 'na',
52813067778SAndreas Gohr    'ね' => 'ne',
52913067778SAndreas Gohr    'に' => 'ni',
53013067778SAndreas Gohr    'の' => 'no',
53113067778SAndreas Gohr    'ぬ' => 'nu',
53213067778SAndreas Gohr    'ら' => 'ra',
53313067778SAndreas Gohr    'れ' => 're',
53413067778SAndreas Gohr    'り' => 'ri',
53513067778SAndreas Gohr    'ろ' => 'ro',
53613067778SAndreas Gohr    'る' => 'ru',
53713067778SAndreas Gohr    'さ' => 'sa',
53813067778SAndreas Gohr    'せ' => 'se',
53913067778SAndreas Gohr    'し' => 'shi',
54013067778SAndreas Gohr    'そ' => 'so',
54113067778SAndreas Gohr    'す' => 'su',
54213067778SAndreas Gohr    'わ' => 'wa',
54313067778SAndreas Gohr    'を' => 'wo',
54413067778SAndreas Gohr    'ざ' => 'za',
54513067778SAndreas Gohr    'ぜ' => 'ze',
54613067778SAndreas Gohr    'じ' => 'ji',
54713067778SAndreas Gohr    'ぞ' => 'zo',
54813067778SAndreas Gohr    'ず' => 'zu',
54913067778SAndreas Gohr    'や' => 'ya',
55013067778SAndreas Gohr    'よ' => 'yo',
55113067778SAndreas Gohr    'ゆ' => 'yu',
55213067778SAndreas Gohr    // old characters
55313067778SAndreas Gohr    'ゑ' => 'we',
55413067778SAndreas Gohr    'ゐ' => 'wi',
55513067778SAndreas Gohr
55613067778SAndreas Gohr    //  convert what's left (probably only kicks in when something's missing above)
55713067778SAndreas Gohr    // 'ぁ'=>'a','ぇ'=>'e','ぃ'=>'i','ぉ'=>'o','ぅ'=>'u',
55813067778SAndreas Gohr    // 'ゃ'=>'ya','ょ'=>'yo','ゅ'=>'yu',
55913067778SAndreas Gohr
56013067778SAndreas Gohr    // never seen one of those (disabled for the moment)
56113067778SAndreas Gohr    // 'ヴぁ'=>'va','ヴぇ'=>'ve','ヴぃ'=>'vi','ヴぉ'=>'vo','ヴ'=>'vu',
56213067778SAndreas Gohr    // 'でゃ'=>'dha','でぇ'=>'dhe','でぃ'=>'dhi','でょ'=>'dho','でゅ'=>'dhu',
56313067778SAndreas Gohr    // 'どぁ'=>'dwa','どぇ'=>'dwe','どぃ'=>'dwi','どぉ'=>'dwo','どぅ'=>'dwu',
56413067778SAndreas Gohr    // 'ぢゃ'=>'dya','ぢぇ'=>'dye','ぢぃ'=>'dyi','ぢょ'=>'dyo','ぢゅ'=>'dyu',
56513067778SAndreas Gohr    // 'ふぁ'=>'fwa','ふぇ'=>'fwe','ふぃ'=>'fwi','ふぉ'=>'fwo','ふぅ'=>'fwu',
56613067778SAndreas Gohr    // 'ふゃ'=>'fya','ふぇ'=>'fye','ふぃ'=>'fyi','ふょ'=>'fyo','ふゅ'=>'fyu',
56713067778SAndreas Gohr    // 'すぁ'=>'swa','すぇ'=>'swe','すぃ'=>'swi','すぉ'=>'swo','すぅ'=>'swu',
56813067778SAndreas Gohr    // 'てゃ'=>'tha','てぇ'=>'the','てぃ'=>'thi','てょ'=>'tho','てゅ'=>'thu',
56913067778SAndreas Gohr    // 'つゃ'=>'tsa','つぇ'=>'tse','つぃ'=>'tsi','つょ'=>'tso','つ'=>'tsu',
57013067778SAndreas Gohr    // 'とぁ'=>'twa','とぇ'=>'twe','とぃ'=>'twi','とぉ'=>'two','とぅ'=>'twu',
57113067778SAndreas Gohr    // 'ヴゃ'=>'vya','ヴぇ'=>'vye','ヴぃ'=>'vyi','ヴょ'=>'vyo','ヴゅ'=>'vyu',
57213067778SAndreas Gohr    // 'うぁ'=>'wha','うぇ'=>'whe','うぃ'=>'whi','うぉ'=>'who','うぅ'=>'whu',
57313067778SAndreas Gohr    // 'じゃ'=>'zha','じぇ'=>'zhe','じぃ'=>'zhi','じょ'=>'zho','じゅ'=>'zhu',
57413067778SAndreas Gohr    // 'じゃ'=>'zya','じぇ'=>'zye','じぃ'=>'zyi','じょ'=>'zyo','じゅ'=>'zyu',
57513067778SAndreas Gohr
57613067778SAndreas Gohr    // 'spare' characters from other romanization systems
57713067778SAndreas Gohr    // 'だ'=>'da','で'=>'de','ぢ'=>'di','ど'=>'do','づ'=>'du',
57813067778SAndreas Gohr    // 'ら'=>'la','れ'=>'le','り'=>'li','ろ'=>'lo','る'=>'lu',
57913067778SAndreas Gohr    // 'さ'=>'sa','せ'=>'se','し'=>'si','そ'=>'so','す'=>'su',
58013067778SAndreas Gohr    // 'ちゃ'=>'cya','ちぇ'=>'cye','ちぃ'=>'cyi','ちょ'=>'cyo','ちゅ'=>'cyu',
58113067778SAndreas Gohr    //'じゃ'=>'jya','じぇ'=>'jye','じぃ'=>'jyi','じょ'=>'jyo','じゅ'=>'jyu',
58213067778SAndreas Gohr    //'りゃ'=>'lya','りぇ'=>'lye','りぃ'=>'lyi','りょ'=>'lyo','りゅ'=>'lyu',
58313067778SAndreas Gohr    //'しゃ'=>'sya','しぇ'=>'sye','しぃ'=>'syi','しょ'=>'syo','しゅ'=>'syu',
58413067778SAndreas Gohr    //'ちゃ'=>'tya','ちぇ'=>'tye','ちぃ'=>'tyi','ちょ'=>'tyo','ちゅ'=>'tyu',
58513067778SAndreas Gohr    //'し'=>'ci',,い'=>'yi','ぢ'=>'dzi',
58613067778SAndreas Gohr    //'っじゃ'=>'jja','っじぇ'=>'jje','っじ'=>'jji','っじょ'=>'jjo','っじゅ'=>'jju',
58713067778SAndreas Gohr
58813067778SAndreas Gohr
58913067778SAndreas Gohr    // Japanese katakana
59013067778SAndreas Gohr
59113067778SAndreas Gohr    // 4 character syllables: ッ doubles the consonant after, ー doubles the vowel before
59213067778SAndreas Gohr    // (usualy written with macron, but we don't want that in our URLs)
59313067778SAndreas Gohr    'ッビャー' => 'bbyaa',
59413067778SAndreas Gohr    'ッビェー' => 'bbyee',
59513067778SAndreas Gohr    'ッビィー' => 'bbyii',
59613067778SAndreas Gohr    'ッビョー' => 'bbyoo',
59713067778SAndreas Gohr    'ッビュー' => 'bbyuu',
59813067778SAndreas Gohr    'ッピャー' => 'ppyaa',
59913067778SAndreas Gohr    'ッピェー' => 'ppyee',
60013067778SAndreas Gohr    'ッピィー' => 'ppyii',
60113067778SAndreas Gohr    'ッピョー' => 'ppyoo',
60213067778SAndreas Gohr    'ッピュー' => 'ppyuu',
60313067778SAndreas Gohr    'ッキャー' => 'kkyaa',
60413067778SAndreas Gohr    'ッキェー' => 'kkyee',
60513067778SAndreas Gohr    'ッキィー' => 'kkyii',
60613067778SAndreas Gohr    'ッキョー' => 'kkyoo',
60713067778SAndreas Gohr    'ッキュー' => 'kkyuu',
60813067778SAndreas Gohr    'ッギャー' => 'ggyaa',
60913067778SAndreas Gohr    'ッギェー' => 'ggyee',
61013067778SAndreas Gohr    'ッギィー' => 'ggyii',
61113067778SAndreas Gohr    'ッギョー' => 'ggyoo',
61213067778SAndreas Gohr    'ッギュー' => 'ggyuu',
61313067778SAndreas Gohr    'ッミャー' => 'mmyaa',
61413067778SAndreas Gohr    'ッミェー' => 'mmyee',
61513067778SAndreas Gohr    'ッミィー' => 'mmyii',
61613067778SAndreas Gohr    'ッミョー' => 'mmyoo',
61713067778SAndreas Gohr    'ッミュー' => 'mmyuu',
61813067778SAndreas Gohr    'ッニャー' => 'nnyaa',
61913067778SAndreas Gohr    'ッニェー' => 'nnyee',
62013067778SAndreas Gohr    'ッニィー' => 'nnyii',
62113067778SAndreas Gohr    'ッニョー' => 'nnyoo',
62213067778SAndreas Gohr    'ッニュー' => 'nnyuu',
62313067778SAndreas Gohr    'ッリャー' => 'rryaa',
62413067778SAndreas Gohr    'ッリェー' => 'rryee',
62513067778SAndreas Gohr    'ッリィー' => 'rryii',
62613067778SAndreas Gohr    'ッリョー' => 'rryoo',
62713067778SAndreas Gohr    'ッリュー' => 'rryuu',
62813067778SAndreas Gohr    'ッシャー' => 'sshaa',
62913067778SAndreas Gohr    'ッシェー' => 'sshee',
63013067778SAndreas Gohr    'ッショー' => 'sshoo',
63113067778SAndreas Gohr    'ッシュー' => 'sshuu',
63213067778SAndreas Gohr    'ッチャー' => 'cchaa',
63313067778SAndreas Gohr    'ッチェー' => 'cchee',
63413067778SAndreas Gohr    'ッチョー' => 'cchoo',
63513067778SAndreas Gohr    'ッチュー' => 'cchuu',
63613067778SAndreas Gohr    'ッティー' => 'ttii',
63713067778SAndreas Gohr    'ッヂィー' => 'ddii',
63813067778SAndreas Gohr
63913067778SAndreas Gohr    // 3 character syllables - doubled vowels
64013067778SAndreas Gohr    'ファー' => 'faa',
64113067778SAndreas Gohr    'フォー' => 'foo',
64213067778SAndreas Gohr    'フャー' => 'fyaa',
643*7f6de1e3SAndreas Gohr    'フェー' => 'fee',
64413067778SAndreas Gohr    'フィー' => 'fyii',
64513067778SAndreas Gohr    'フョー' => 'fyoo',
64613067778SAndreas Gohr    'フュー' => 'fyuu',
64713067778SAndreas Gohr    'ヒャー' => 'hyaa',
64813067778SAndreas Gohr    'ヒェー' => 'hyee',
64913067778SAndreas Gohr    'ヒィー' => 'hyii',
65013067778SAndreas Gohr    'ヒョー' => 'hyoo',
65113067778SAndreas Gohr    'ヒュー' => 'hyuu',
65213067778SAndreas Gohr    'ビャー' => 'byaa',
65313067778SAndreas Gohr    'ビェー' => 'byee',
65413067778SAndreas Gohr    'ビィー' => 'byii',
65513067778SAndreas Gohr    'ビョー' => 'byoo',
65613067778SAndreas Gohr    'ビュー' => 'byuu',
65713067778SAndreas Gohr    'ピャー' => 'pyaa',
65813067778SAndreas Gohr    'ピェー' => 'pyee',
65913067778SAndreas Gohr    'ピィー' => 'pyii',
66013067778SAndreas Gohr    'ピョー' => 'pyoo',
66113067778SAndreas Gohr    'ピュー' => 'pyuu',
66213067778SAndreas Gohr    'キャー' => 'kyaa',
66313067778SAndreas Gohr    'キェー' => 'kyee',
66413067778SAndreas Gohr    'キィー' => 'kyii',
66513067778SAndreas Gohr    'キョー' => 'kyoo',
66613067778SAndreas Gohr    'キュー' => 'kyuu',
66713067778SAndreas Gohr    'ギャー' => 'gyaa',
66813067778SAndreas Gohr    'ギェー' => 'gyee',
66913067778SAndreas Gohr    'ギィー' => 'gyii',
67013067778SAndreas Gohr    'ギョー' => 'gyoo',
67113067778SAndreas Gohr    'ギュー' => 'gyuu',
67213067778SAndreas Gohr    'ミャー' => 'myaa',
67313067778SAndreas Gohr    'ミェー' => 'myee',
67413067778SAndreas Gohr    'ミィー' => 'myii',
67513067778SAndreas Gohr    'ミョー' => 'myoo',
67613067778SAndreas Gohr    'ミュー' => 'myuu',
67713067778SAndreas Gohr    'ニャー' => 'nyaa',
67813067778SAndreas Gohr    'ニェー' => 'nyee',
67913067778SAndreas Gohr    'ニィー' => 'nyii',
68013067778SAndreas Gohr    'ニョー' => 'nyoo',
68113067778SAndreas Gohr    'ニュー' => 'nyuu',
68213067778SAndreas Gohr    'リャー' => 'ryaa',
68313067778SAndreas Gohr    'リェー' => 'ryee',
68413067778SAndreas Gohr    'リィー' => 'ryii',
68513067778SAndreas Gohr    'リョー' => 'ryoo',
68613067778SAndreas Gohr    'リュー' => 'ryuu',
68713067778SAndreas Gohr    'シャー' => 'shaa',
68813067778SAndreas Gohr    'シェー' => 'shee',
68913067778SAndreas Gohr    'ショー' => 'shoo',
69013067778SAndreas Gohr    'シュー' => 'shuu',
69113067778SAndreas Gohr    'ジャー' => 'jaa',
69213067778SAndreas Gohr    'ジェー' => 'jee',
69313067778SAndreas Gohr    'ジョー' => 'joo',
69413067778SAndreas Gohr    'ジュー' => 'juu',
69513067778SAndreas Gohr    'スァー' => 'swaa',
69613067778SAndreas Gohr    'スェー' => 'swee',
69713067778SAndreas Gohr    'スィー' => 'swii',
69813067778SAndreas Gohr    'スォー' => 'swoo',
69913067778SAndreas Gohr    'スゥー' => 'swuu',
70013067778SAndreas Gohr    'デァー' => 'daa',
70113067778SAndreas Gohr    'デェー' => 'dee',
70213067778SAndreas Gohr    'ディー' => 'dii',
70313067778SAndreas Gohr    'デォー' => 'doo',
70413067778SAndreas Gohr    'デゥー' => 'duu',
70513067778SAndreas Gohr    'チャー' => 'chaa',
70613067778SAndreas Gohr    'チェー' => 'chee',
70713067778SAndreas Gohr    'チョー' => 'choo',
70813067778SAndreas Gohr    'チュー' => 'chuu',
70913067778SAndreas Gohr    'ヂャー' => 'dyaa',
71013067778SAndreas Gohr    'ヂェー' => 'dyee',
71113067778SAndreas Gohr    'ヂョー' => 'dyoo',
71213067778SAndreas Gohr    'ヂュー' => 'dyuu',
71313067778SAndreas Gohr    'ツャー' => 'tsaa',
71413067778SAndreas Gohr    'ツェー' => 'tsee',
71513067778SAndreas Gohr    'ツィー' => 'tsii',
71613067778SAndreas Gohr    'ツョー' => 'tsoo',
71713067778SAndreas Gohr    'トァー' => 'twaa',
71813067778SAndreas Gohr    'トェー' => 'twee',
71913067778SAndreas Gohr    'トィー' => 'twii',
72013067778SAndreas Gohr    'トォー' => 'twoo',
72113067778SAndreas Gohr    'トゥー' => 'twuu',
72213067778SAndreas Gohr    'ドァー' => 'dwaa',
72313067778SAndreas Gohr    'ドェー' => 'dwee',
72413067778SAndreas Gohr    'ドィー' => 'dwii',
72513067778SAndreas Gohr    'ドォー' => 'dwoo',
72613067778SAndreas Gohr    'ドゥー' => 'dwuu',
72713067778SAndreas Gohr    'ウァー' => 'whaa',
72813067778SAndreas Gohr    'ウォー' => 'whoo',
72913067778SAndreas Gohr    'ウゥー' => 'whuu',
73013067778SAndreas Gohr    'ヴャー' => 'vyaa',
73113067778SAndreas Gohr    'ヴョー' => 'vyoo',
73213067778SAndreas Gohr    'ヴュー' => 'vyuu',
73313067778SAndreas Gohr    'ヴァー' => 'vaa',
73413067778SAndreas Gohr    'ヴェー' => 'vee',
73513067778SAndreas Gohr    'ヴィー' => 'vii',
73613067778SAndreas Gohr    'ヴォー' => 'voo',
73713067778SAndreas Gohr    'ヴー' => 'vuu',
73813067778SAndreas Gohr    'ウェー' => 'wee',
73913067778SAndreas Gohr    'ウィー' => 'wii',
74013067778SAndreas Gohr    'イェー' => 'yee',
74113067778SAndreas Gohr    'ティー' => 'tii',
74213067778SAndreas Gohr    'ヂィー' => 'dii',
74313067778SAndreas Gohr
74413067778SAndreas Gohr    // 3 character syllables - doubled consonants
74513067778SAndreas Gohr    'ッビャ' => 'bbya',
74613067778SAndreas Gohr    'ッビェ' => 'bbye',
74713067778SAndreas Gohr    'ッビィ' => 'bbyi',
74813067778SAndreas Gohr    'ッビョ' => 'bbyo',
74913067778SAndreas Gohr    'ッビュ' => 'bbyu',
75013067778SAndreas Gohr    'ッピャ' => 'ppya',
75113067778SAndreas Gohr    'ッピェ' => 'ppye',
75213067778SAndreas Gohr    'ッピィ' => 'ppyi',
75313067778SAndreas Gohr    'ッピョ' => 'ppyo',
75413067778SAndreas Gohr    'ッピュ' => 'ppyu',
75513067778SAndreas Gohr    'ッキャ' => 'kkya',
75613067778SAndreas Gohr    'ッキェ' => 'kkye',
75713067778SAndreas Gohr    'ッキィ' => 'kkyi',
75813067778SAndreas Gohr    'ッキョ' => 'kkyo',
75913067778SAndreas Gohr    'ッキュ' => 'kkyu',
76013067778SAndreas Gohr    'ッギャ' => 'ggya',
76113067778SAndreas Gohr    'ッギェ' => 'ggye',
76213067778SAndreas Gohr    'ッギィ' => 'ggyi',
76313067778SAndreas Gohr    'ッギョ' => 'ggyo',
76413067778SAndreas Gohr    'ッギュ' => 'ggyu',
76513067778SAndreas Gohr    'ッミャ' => 'mmya',
76613067778SAndreas Gohr    'ッミェ' => 'mmye',
76713067778SAndreas Gohr    'ッミィ' => 'mmyi',
76813067778SAndreas Gohr    'ッミョ' => 'mmyo',
76913067778SAndreas Gohr    'ッミュ' => 'mmyu',
77013067778SAndreas Gohr    'ッニャ' => 'nnya',
77113067778SAndreas Gohr    'ッニェ' => 'nnye',
77213067778SAndreas Gohr    'ッニィ' => 'nnyi',
77313067778SAndreas Gohr    'ッニョ' => 'nnyo',
77413067778SAndreas Gohr    'ッニュ' => 'nnyu',
77513067778SAndreas Gohr    'ッリャ' => 'rrya',
77613067778SAndreas Gohr    'ッリェ' => 'rrye',
77713067778SAndreas Gohr    'ッリィ' => 'rryi',
77813067778SAndreas Gohr    'ッリョ' => 'rryo',
77913067778SAndreas Gohr    'ッリュ' => 'rryu',
78013067778SAndreas Gohr    'ッシャ' => 'ssha',
78113067778SAndreas Gohr    'ッシェ' => 'sshe',
78213067778SAndreas Gohr    'ッショ' => 'ssho',
78313067778SAndreas Gohr    'ッシュ' => 'sshu',
78413067778SAndreas Gohr    'ッチャ' => 'ccha',
78513067778SAndreas Gohr    'ッチェ' => 'cche',
78613067778SAndreas Gohr    'ッチョ' => 'ccho',
78713067778SAndreas Gohr    'ッチュ' => 'cchu',
78813067778SAndreas Gohr    'ッティ' => 'tti',
78913067778SAndreas Gohr    'ッヂィ' => 'ddi',
79013067778SAndreas Gohr
79113067778SAndreas Gohr    // 3 character syllables - doubled vowel and consonants
79213067778SAndreas Gohr    'ッバー' => 'bbaa',
79313067778SAndreas Gohr    'ッベー' => 'bbee',
79413067778SAndreas Gohr    'ッビー' => 'bbii',
79513067778SAndreas Gohr    'ッボー' => 'bboo',
79613067778SAndreas Gohr    'ッブー' => 'bbuu',
79713067778SAndreas Gohr    'ッパー' => 'ppaa',
79813067778SAndreas Gohr    'ッペー' => 'ppee',
79913067778SAndreas Gohr    'ッピー' => 'ppii',
80013067778SAndreas Gohr    'ッポー' => 'ppoo',
80113067778SAndreas Gohr    'ップー' => 'ppuu',
80213067778SAndreas Gohr    'ッケー' => 'kkee',
80313067778SAndreas Gohr    'ッキー' => 'kkii',
80413067778SAndreas Gohr    'ッコー' => 'kkoo',
80513067778SAndreas Gohr    'ックー' => 'kkuu',
80613067778SAndreas Gohr    'ッカー' => 'kkaa',
80713067778SAndreas Gohr    'ッガー' => 'ggaa',
80813067778SAndreas Gohr    'ッゲー' => 'ggee',
80913067778SAndreas Gohr    'ッギー' => 'ggii',
81013067778SAndreas Gohr    'ッゴー' => 'ggoo',
81113067778SAndreas Gohr    'ッグー' => 'gguu',
81213067778SAndreas Gohr    'ッマー' => 'maa',
81313067778SAndreas Gohr    'ッメー' => 'mee',
81413067778SAndreas Gohr    'ッミー' => 'mii',
81513067778SAndreas Gohr    'ッモー' => 'moo',
81613067778SAndreas Gohr    'ッムー' => 'muu',
81713067778SAndreas Gohr    'ッナー' => 'nnaa',
81813067778SAndreas Gohr    'ッネー' => 'nnee',
81913067778SAndreas Gohr    'ッニー' => 'nnii',
82013067778SAndreas Gohr    'ッノー' => 'nnoo',
82113067778SAndreas Gohr    'ッヌー' => 'nnuu',
82213067778SAndreas Gohr    'ッラー' => 'rraa',
82313067778SAndreas Gohr    'ッレー' => 'rree',
82413067778SAndreas Gohr    'ッリー' => 'rrii',
82513067778SAndreas Gohr    'ッロー' => 'rroo',
82613067778SAndreas Gohr    'ッルー' => 'rruu',
82713067778SAndreas Gohr    'ッサー' => 'ssaa',
82813067778SAndreas Gohr    'ッセー' => 'ssee',
82913067778SAndreas Gohr    'ッシー' => 'sshii',
83013067778SAndreas Gohr    'ッソー' => 'ssoo',
83113067778SAndreas Gohr    'ッスー' => 'ssuu',
83213067778SAndreas Gohr    'ッザー' => 'zzaa',
83313067778SAndreas Gohr    'ッゼー' => 'zzee',
83413067778SAndreas Gohr    'ッジー' => 'jjii',
83513067778SAndreas Gohr    'ッゾー' => 'zzoo',
83613067778SAndreas Gohr    'ッズー' => 'zzuu',
83713067778SAndreas Gohr    'ッター' => 'ttaa',
83813067778SAndreas Gohr    'ッテー' => 'ttee',
83913067778SAndreas Gohr    'ッチー' => 'chii',
84013067778SAndreas Gohr    'ットー' => 'ttoo',
84113067778SAndreas Gohr    'ッツー' => 'ttsuu',
84213067778SAndreas Gohr    'ッダー' => 'ddaa',
84313067778SAndreas Gohr    'ッデー' => 'ddee',
84413067778SAndreas Gohr    'ッヂー' => 'ddii',
84513067778SAndreas Gohr    'ッドー' => 'ddoo',
84613067778SAndreas Gohr    'ッヅー' => 'dduu',
84713067778SAndreas Gohr
84813067778SAndreas Gohr    // 2 character syllables - normal
84913067778SAndreas Gohr    'ファ' => 'fa',
85013067778SAndreas Gohr    'フォ' => 'fo',
85113067778SAndreas Gohr    'フゥ' => 'fu',
85213067778SAndreas Gohr    // 'フャ'=>'fya',
85313067778SAndreas Gohr    // 'フェ'=>'fye',
85413067778SAndreas Gohr    // 'フィ'=>'fyi',
85513067778SAndreas Gohr    // 'フョ'=>'fyo',
85613067778SAndreas Gohr    // 'フュ'=>'fyu',
85713067778SAndreas Gohr    'フャ' => 'fa',
85813067778SAndreas Gohr    'フェ' => 'fe',
85913067778SAndreas Gohr    'フィ' => 'fi',
86013067778SAndreas Gohr    'フョ' => 'fo',
86113067778SAndreas Gohr    'フュ' => 'fu',
86213067778SAndreas Gohr    'ヒャ' => 'hya',
86313067778SAndreas Gohr    'ヒェ' => 'hye',
86413067778SAndreas Gohr    'ヒィ' => 'hyi',
86513067778SAndreas Gohr    'ヒョ' => 'hyo',
86613067778SAndreas Gohr    'ヒュ' => 'hyu',
86713067778SAndreas Gohr    'ビャ' => 'bya',
86813067778SAndreas Gohr    'ビェ' => 'bye',
86913067778SAndreas Gohr    'ビィ' => 'byi',
87013067778SAndreas Gohr    'ビョ' => 'byo',
87113067778SAndreas Gohr    'ビュ' => 'byu',
87213067778SAndreas Gohr    'ピャ' => 'pya',
87313067778SAndreas Gohr    'ピェ' => 'pye',
87413067778SAndreas Gohr    'ピィ' => 'pyi',
87513067778SAndreas Gohr    'ピョ' => 'pyo',
87613067778SAndreas Gohr    'ピュ' => 'pyu',
87713067778SAndreas Gohr    'キャ' => 'kya',
87813067778SAndreas Gohr    'キェ' => 'kye',
87913067778SAndreas Gohr    'キィ' => 'kyi',
88013067778SAndreas Gohr    'キョ' => 'kyo',
88113067778SAndreas Gohr    'キュ' => 'kyu',
88213067778SAndreas Gohr    'ギャ' => 'gya',
88313067778SAndreas Gohr    'ギェ' => 'gye',
88413067778SAndreas Gohr    'ギィ' => 'gyi',
88513067778SAndreas Gohr    'ギョ' => 'gyo',
88613067778SAndreas Gohr    'ギュ' => 'gyu',
88713067778SAndreas Gohr    'ミャ' => 'mya',
88813067778SAndreas Gohr    'ミェ' => 'mye',
88913067778SAndreas Gohr    'ミィ' => 'myi',
89013067778SAndreas Gohr    'ミョ' => 'myo',
89113067778SAndreas Gohr    'ミュ' => 'myu',
89213067778SAndreas Gohr    'ニャ' => 'nya',
89313067778SAndreas Gohr    'ニェ' => 'nye',
89413067778SAndreas Gohr    'ニィ' => 'nyi',
89513067778SAndreas Gohr    'ニョ' => 'nyo',
89613067778SAndreas Gohr    'ニュ' => 'nyu',
89713067778SAndreas Gohr    'リャ' => 'rya',
89813067778SAndreas Gohr    'リェ' => 'rye',
89913067778SAndreas Gohr    'リィ' => 'ryi',
90013067778SAndreas Gohr    'リョ' => 'ryo',
90113067778SAndreas Gohr    'リュ' => 'ryu',
90213067778SAndreas Gohr    'シャ' => 'sha',
90313067778SAndreas Gohr    'シェ' => 'she',
90413067778SAndreas Gohr    'ショ' => 'sho',
90513067778SAndreas Gohr    'シュ' => 'shu',
90613067778SAndreas Gohr    'ジャ' => 'ja',
90713067778SAndreas Gohr    'ジェ' => 'je',
90813067778SAndreas Gohr    'ジョ' => 'jo',
90913067778SAndreas Gohr    'ジュ' => 'ju',
91013067778SAndreas Gohr    'スァ' => 'swa',
91113067778SAndreas Gohr    'スェ' => 'swe',
91213067778SAndreas Gohr    'スィ' => 'swi',
91313067778SAndreas Gohr    'スォ' => 'swo',
91413067778SAndreas Gohr    'スゥ' => 'swu',
91513067778SAndreas Gohr    'デァ' => 'da',
91613067778SAndreas Gohr    'デェ' => 'de',
91713067778SAndreas Gohr    'ディ' => 'di',
91813067778SAndreas Gohr    'デォ' => 'do',
91913067778SAndreas Gohr    'デゥ' => 'du',
92013067778SAndreas Gohr    'チャ' => 'cha',
92113067778SAndreas Gohr    'チェ' => 'che',
92213067778SAndreas Gohr    'チョ' => 'cho',
92313067778SAndreas Gohr    'チュ' => 'chu',
92413067778SAndreas Gohr    // 'ヂャ'=>'dya',
92513067778SAndreas Gohr    // 'ヂェ'=>'dye',
92613067778SAndreas Gohr    // 'ヂィ'=>'dyi',
92713067778SAndreas Gohr    // 'ヂョ'=>'dyo',
92813067778SAndreas Gohr    // 'ヂュ'=>'dyu',
92913067778SAndreas Gohr    'ツャ' => 'tsa',
93013067778SAndreas Gohr    'ツェ' => 'tse',
93113067778SAndreas Gohr    'ツィ' => 'tsi',
93213067778SAndreas Gohr    'ツョ' => 'tso',
93313067778SAndreas Gohr    'トァ' => 'twa',
93413067778SAndreas Gohr    'トェ' => 'twe',
93513067778SAndreas Gohr    'トィ' => 'twi',
93613067778SAndreas Gohr    'トォ' => 'two',
93713067778SAndreas Gohr    'トゥ' => 'twu',
93813067778SAndreas Gohr    'ドァ' => 'dwa',
93913067778SAndreas Gohr    'ドェ' => 'dwe',
94013067778SAndreas Gohr    'ドィ' => 'dwi',
94113067778SAndreas Gohr    'ドォ' => 'dwo',
94213067778SAndreas Gohr    'ドゥ' => 'dwu',
94313067778SAndreas Gohr    'ウァ' => 'wha',
94413067778SAndreas Gohr    'ウォ' => 'who',
94513067778SAndreas Gohr    'ウゥ' => 'whu',
94613067778SAndreas Gohr    'ヴャ' => 'vya',
94713067778SAndreas Gohr    'ヴョ' => 'vyo',
94813067778SAndreas Gohr    'ヴュ' => 'vyu',
94913067778SAndreas Gohr    'ヴァ' => 'va',
95013067778SAndreas Gohr    'ヴェ' => 've',
95113067778SAndreas Gohr    'ヴィ' => 'vi',
95213067778SAndreas Gohr    'ヴォ' => 'vo',
95313067778SAndreas Gohr    'ヴ' => 'vu',
95413067778SAndreas Gohr    'ウェ' => 'we',
95513067778SAndreas Gohr    'ウィ' => 'wi',
95613067778SAndreas Gohr    'イェ' => 'ye',
95713067778SAndreas Gohr    'ティ' => 'ti',
95813067778SAndreas Gohr    'ヂィ' => 'di',
95913067778SAndreas Gohr
96013067778SAndreas Gohr    // 2 character syllables - doubled vocal
96113067778SAndreas Gohr    'アー' => 'aa',
96213067778SAndreas Gohr    'エー' => 'ee',
96313067778SAndreas Gohr    'イー' => 'ii',
96413067778SAndreas Gohr    'オー' => 'oo',
96513067778SAndreas Gohr    'ウー' => 'uu',
96613067778SAndreas Gohr    'ダー' => 'daa',
96713067778SAndreas Gohr    'デー' => 'dee',
96813067778SAndreas Gohr    'ヂー' => 'dii',
96913067778SAndreas Gohr    'ドー' => 'doo',
97013067778SAndreas Gohr    'ヅー' => 'duu',
97113067778SAndreas Gohr    'ハー' => 'haa',
97213067778SAndreas Gohr    'ヘー' => 'hee',
97313067778SAndreas Gohr    'ヒー' => 'hii',
97413067778SAndreas Gohr    'ホー' => 'hoo',
97513067778SAndreas Gohr    'フー' => 'fuu',
97613067778SAndreas Gohr    'バー' => 'baa',
97713067778SAndreas Gohr    'ベー' => 'bee',
97813067778SAndreas Gohr    'ビー' => 'bii',
97913067778SAndreas Gohr    'ボー' => 'boo',
98013067778SAndreas Gohr    'ブー' => 'buu',
98113067778SAndreas Gohr    'パー' => 'paa',
98213067778SAndreas Gohr    'ペー' => 'pee',
98313067778SAndreas Gohr    'ピー' => 'pii',
98413067778SAndreas Gohr    'ポー' => 'poo',
98513067778SAndreas Gohr    'プー' => 'puu',
98613067778SAndreas Gohr    'ケー' => 'kee',
98713067778SAndreas Gohr    'キー' => 'kii',
98813067778SAndreas Gohr    'コー' => 'koo',
98913067778SAndreas Gohr    'クー' => 'kuu',
99013067778SAndreas Gohr    'カー' => 'kaa',
99113067778SAndreas Gohr    'ガー' => 'gaa',
99213067778SAndreas Gohr    'ゲー' => 'gee',
99313067778SAndreas Gohr    'ギー' => 'gii',
99413067778SAndreas Gohr    'ゴー' => 'goo',
99513067778SAndreas Gohr    'グー' => 'guu',
99613067778SAndreas Gohr    'マー' => 'maa',
99713067778SAndreas Gohr    'メー' => 'mee',
99813067778SAndreas Gohr    'ミー' => 'mii',
99913067778SAndreas Gohr    'モー' => 'moo',
100013067778SAndreas Gohr    'ムー' => 'muu',
100113067778SAndreas Gohr    'ナー' => 'naa',
100213067778SAndreas Gohr    'ネー' => 'nee',
100313067778SAndreas Gohr    'ニー' => 'nii',
100413067778SAndreas Gohr    'ノー' => 'noo',
100513067778SAndreas Gohr    'ヌー' => 'nuu',
100613067778SAndreas Gohr    'ラー' => 'raa',
100713067778SAndreas Gohr    'レー' => 'ree',
100813067778SAndreas Gohr    'リー' => 'rii',
100913067778SAndreas Gohr    'ロー' => 'roo',
101013067778SAndreas Gohr    'ルー' => 'ruu',
101113067778SAndreas Gohr    'サー' => 'saa',
101213067778SAndreas Gohr    'セー' => 'see',
101313067778SAndreas Gohr    'シー' => 'shii',
101413067778SAndreas Gohr    'ソー' => 'soo',
101513067778SAndreas Gohr    'スー' => 'suu',
101613067778SAndreas Gohr    'ザー' => 'zaa',
101713067778SAndreas Gohr    'ゼー' => 'zee',
101813067778SAndreas Gohr    'ジー' => 'jii',
101913067778SAndreas Gohr    'ゾー' => 'zoo',
102013067778SAndreas Gohr    'ズー' => 'zuu',
102113067778SAndreas Gohr    'ター' => 'taa',
102213067778SAndreas Gohr    'テー' => 'tee',
102313067778SAndreas Gohr    'チー' => 'chii',
102413067778SAndreas Gohr    'トー' => 'too',
102513067778SAndreas Gohr    'ツー' => 'tsuu',
102613067778SAndreas Gohr    'ワー' => 'waa',
102713067778SAndreas Gohr    'ヲー' => 'woo',
102813067778SAndreas Gohr    'ヤー' => 'yaa',
102913067778SAndreas Gohr    'ヨー' => 'yoo',
103013067778SAndreas Gohr    'ユー' => 'yuu',
103113067778SAndreas Gohr    'ヵー' => 'kaa',
103213067778SAndreas Gohr    'ヶー' => 'kee',
103313067778SAndreas Gohr    // old characters
103413067778SAndreas Gohr    'ヱー' => 'wee',
103513067778SAndreas Gohr    'ヰー' => 'wii',
103613067778SAndreas Gohr
103713067778SAndreas Gohr    // seperate katakana 'n'
103813067778SAndreas Gohr    'ンア' => 'n_a',
103913067778SAndreas Gohr    'ンエ' => 'n_e',
104013067778SAndreas Gohr    'ンイ' => 'n_i',
104113067778SAndreas Gohr    'ンオ' => 'n_o',
104213067778SAndreas Gohr    'ンウ' => 'n_u',
104313067778SAndreas Gohr    'ンヤ' => 'n_ya',
104413067778SAndreas Gohr    'ンヨ' => 'n_yo',
104513067778SAndreas Gohr    'ンユ' => 'n_yu',
104613067778SAndreas Gohr
104713067778SAndreas Gohr    // 2 character syllables - doubled consonants
104813067778SAndreas Gohr    'ッバ' => 'bba',
104913067778SAndreas Gohr    'ッベ' => 'bbe',
105013067778SAndreas Gohr    'ッビ' => 'bbi',
105113067778SAndreas Gohr    'ッボ' => 'bbo',
105213067778SAndreas Gohr    'ッブ' => 'bbu',
105313067778SAndreas Gohr    'ッパ' => 'ppa',
105413067778SAndreas Gohr    'ッペ' => 'ppe',
105513067778SAndreas Gohr    'ッピ' => 'ppi',
105613067778SAndreas Gohr    'ッポ' => 'ppo',
105713067778SAndreas Gohr    'ップ' => 'ppu',
105813067778SAndreas Gohr    'ッケ' => 'kke',
105913067778SAndreas Gohr    'ッキ' => 'kki',
106013067778SAndreas Gohr    'ッコ' => 'kko',
106113067778SAndreas Gohr    'ック' => 'kku',
106213067778SAndreas Gohr    'ッカ' => 'kka',
106313067778SAndreas Gohr    'ッガ' => 'gga',
106413067778SAndreas Gohr    'ッゲ' => 'gge',
106513067778SAndreas Gohr    'ッギ' => 'ggi',
106613067778SAndreas Gohr    'ッゴ' => 'ggo',
106713067778SAndreas Gohr    'ッグ' => 'ggu',
106813067778SAndreas Gohr    'ッマ' => 'ma',
106913067778SAndreas Gohr    'ッメ' => 'me',
107013067778SAndreas Gohr    'ッミ' => 'mi',
107113067778SAndreas Gohr    'ッモ' => 'mo',
107213067778SAndreas Gohr    'ッム' => 'mu',
107313067778SAndreas Gohr    'ッナ' => 'nna',
107413067778SAndreas Gohr    'ッネ' => 'nne',
107513067778SAndreas Gohr    'ッニ' => 'nni',
107613067778SAndreas Gohr    'ッノ' => 'nno',
107713067778SAndreas Gohr    'ッヌ' => 'nnu',
107813067778SAndreas Gohr    'ッラ' => 'rra',
107913067778SAndreas Gohr    'ッレ' => 'rre',
108013067778SAndreas Gohr    'ッリ' => 'rri',
108113067778SAndreas Gohr    'ッロ' => 'rro',
108213067778SAndreas Gohr    'ッル' => 'rru',
108313067778SAndreas Gohr    'ッサ' => 'ssa',
108413067778SAndreas Gohr    'ッセ' => 'sse',
108513067778SAndreas Gohr    'ッシ' => 'sshi',
108613067778SAndreas Gohr    'ッソ' => 'sso',
108713067778SAndreas Gohr    'ッス' => 'ssu',
108813067778SAndreas Gohr    'ッザ' => 'zza',
108913067778SAndreas Gohr    'ッゼ' => 'zze',
109013067778SAndreas Gohr    'ッジ' => 'jji',
109113067778SAndreas Gohr    'ッゾ' => 'zzo',
109213067778SAndreas Gohr    'ッズ' => 'zzu',
109313067778SAndreas Gohr    'ッタ' => 'tta',
109413067778SAndreas Gohr    'ッテ' => 'tte',
109513067778SAndreas Gohr    'ッチ' => 'cchi',
109613067778SAndreas Gohr    'ット' => 'tto',
109713067778SAndreas Gohr    'ッツ' => 'ttsu',
109813067778SAndreas Gohr    'ッダ' => 'dda',
109913067778SAndreas Gohr    'ッデ' => 'dde',
110013067778SAndreas Gohr    'ッヂ' => 'ddi',
110113067778SAndreas Gohr    'ッド' => 'ddo',
110213067778SAndreas Gohr    'ッヅ' => 'ddu',
110313067778SAndreas Gohr
110413067778SAndreas Gohr    // 1 character syllables
110513067778SAndreas Gohr    'ア' => 'a',
110613067778SAndreas Gohr    'エ' => 'e',
110713067778SAndreas Gohr    'イ' => 'i',
110813067778SAndreas Gohr    'オ' => 'o',
110913067778SAndreas Gohr    'ウ' => 'u',
111013067778SAndreas Gohr    'ン' => 'n',
111113067778SAndreas Gohr    'ハ' => 'ha',
111213067778SAndreas Gohr    'ヘ' => 'he',
111313067778SAndreas Gohr    'ヒ' => 'hi',
111413067778SAndreas Gohr    'ホ' => 'ho',
111513067778SAndreas Gohr    'フ' => 'fu',
111613067778SAndreas Gohr    'バ' => 'ba',
111713067778SAndreas Gohr    'ベ' => 'be',
111813067778SAndreas Gohr    'ビ' => 'bi',
111913067778SAndreas Gohr    'ボ' => 'bo',
112013067778SAndreas Gohr    'ブ' => 'bu',
112113067778SAndreas Gohr    'パ' => 'pa',
112213067778SAndreas Gohr    'ペ' => 'pe',
112313067778SAndreas Gohr    'ピ' => 'pi',
112413067778SAndreas Gohr    'ポ' => 'po',
112513067778SAndreas Gohr    'プ' => 'pu',
112613067778SAndreas Gohr    'ケ' => 'ke',
112713067778SAndreas Gohr    'キ' => 'ki',
112813067778SAndreas Gohr    'コ' => 'ko',
112913067778SAndreas Gohr    'ク' => 'ku',
113013067778SAndreas Gohr    'カ' => 'ka',
113113067778SAndreas Gohr    'ガ' => 'ga',
113213067778SAndreas Gohr    'ゲ' => 'ge',
113313067778SAndreas Gohr    'ギ' => 'gi',
113413067778SAndreas Gohr    'ゴ' => 'go',
113513067778SAndreas Gohr    'グ' => 'gu',
113613067778SAndreas Gohr    'マ' => 'ma',
113713067778SAndreas Gohr    'メ' => 'me',
113813067778SAndreas Gohr    'ミ' => 'mi',
113913067778SAndreas Gohr    'モ' => 'mo',
114013067778SAndreas Gohr    'ム' => 'mu',
114113067778SAndreas Gohr    'ナ' => 'na',
114213067778SAndreas Gohr    'ネ' => 'ne',
114313067778SAndreas Gohr    'ニ' => 'ni',
114413067778SAndreas Gohr    'ノ' => 'no',
114513067778SAndreas Gohr    'ヌ' => 'nu',
114613067778SAndreas Gohr    'ラ' => 'ra',
114713067778SAndreas Gohr    'レ' => 're',
114813067778SAndreas Gohr    'リ' => 'ri',
114913067778SAndreas Gohr    'ロ' => 'ro',
115013067778SAndreas Gohr    'ル' => 'ru',
115113067778SAndreas Gohr    'サ' => 'sa',
115213067778SAndreas Gohr    'セ' => 'se',
115313067778SAndreas Gohr    'シ' => 'shi',
115413067778SAndreas Gohr    'ソ' => 'so',
115513067778SAndreas Gohr    'ス' => 'su',
115613067778SAndreas Gohr    'ザ' => 'za',
115713067778SAndreas Gohr    'ゼ' => 'ze',
115813067778SAndreas Gohr    'ジ' => 'ji',
115913067778SAndreas Gohr    'ゾ' => 'zo',
116013067778SAndreas Gohr    'ズ' => 'zu',
116113067778SAndreas Gohr    'タ' => 'ta',
116213067778SAndreas Gohr    'テ' => 'te',
116313067778SAndreas Gohr    'チ' => 'chi',
116413067778SAndreas Gohr    'ト' => 'to',
116513067778SAndreas Gohr    'ツ' => 'tsu',
116613067778SAndreas Gohr    'ダ' => 'da',
116713067778SAndreas Gohr    'デ' => 'de',
116813067778SAndreas Gohr    'ヂ' => 'di',
116913067778SAndreas Gohr    'ド' => 'do',
117013067778SAndreas Gohr    'ヅ' => 'du',
117113067778SAndreas Gohr    'ワ' => 'wa',
117213067778SAndreas Gohr    'ヲ' => 'wo',
117313067778SAndreas Gohr    'ヤ' => 'ya',
117413067778SAndreas Gohr    'ヨ' => 'yo',
117513067778SAndreas Gohr    'ユ' => 'yu',
117613067778SAndreas Gohr    'ヵ' => 'ka',
117713067778SAndreas Gohr    'ヶ' => 'ke',
117813067778SAndreas Gohr    // old characters
117913067778SAndreas Gohr    'ヱ' => 'we',
118013067778SAndreas Gohr    'ヰ' => 'wi',
118113067778SAndreas Gohr
118213067778SAndreas Gohr    //  convert what's left (probably only kicks in when something's missing above)
118313067778SAndreas Gohr    'ァ' => 'a',
118413067778SAndreas Gohr    'ェ' => 'e',
118513067778SAndreas Gohr    'ィ' => 'i',
118613067778SAndreas Gohr    'ォ' => 'o',
118713067778SAndreas Gohr    'ゥ' => 'u',
118813067778SAndreas Gohr    'ャ' => 'ya',
118913067778SAndreas Gohr    'ョ' => 'yo',
119013067778SAndreas Gohr    'ュ' => 'yu',
119113067778SAndreas Gohr
119213067778SAndreas Gohr    // special characters
119313067778SAndreas Gohr    '・' => '_',
119413067778SAndreas Gohr    '、' => '_',
119513067778SAndreas Gohr    'ー' => '_',
119613067778SAndreas Gohr    // when used with hiragana (seldom), this character would not be converted otherwise
119713067778SAndreas Gohr
119813067778SAndreas Gohr    // 'ラ'=>'la',
119913067778SAndreas Gohr    // 'レ'=>'le',
120013067778SAndreas Gohr    // 'リ'=>'li',
120113067778SAndreas Gohr    // 'ロ'=>'lo',
120213067778SAndreas Gohr    // 'ル'=>'lu',
120313067778SAndreas Gohr    // 'チャ'=>'cya',
120413067778SAndreas Gohr    // 'チェ'=>'cye',
120513067778SAndreas Gohr    // 'チィ'=>'cyi',
120613067778SAndreas Gohr    // 'チョ'=>'cyo',
120713067778SAndreas Gohr    // 'チュ'=>'cyu',
120813067778SAndreas Gohr    // 'デャ'=>'dha',
120913067778SAndreas Gohr    // 'デェ'=>'dhe',
121013067778SAndreas Gohr    // 'ディ'=>'dhi',
121113067778SAndreas Gohr    // 'デョ'=>'dho',
121213067778SAndreas Gohr    // 'デュ'=>'dhu',
121313067778SAndreas Gohr    // 'リャ'=>'lya',
121413067778SAndreas Gohr    // 'リェ'=>'lye',
121513067778SAndreas Gohr    // 'リィ'=>'lyi',
121613067778SAndreas Gohr    // 'リョ'=>'lyo',
121713067778SAndreas Gohr    // 'リュ'=>'lyu',
121813067778SAndreas Gohr    // 'テャ'=>'tha',
121913067778SAndreas Gohr    // 'テェ'=>'the',
122013067778SAndreas Gohr    // 'ティ'=>'thi',
122113067778SAndreas Gohr    // 'テョ'=>'tho',
122213067778SAndreas Gohr    // 'テュ'=>'thu',
122313067778SAndreas Gohr    // 'ファ'=>'fwa',
122413067778SAndreas Gohr    // 'フェ'=>'fwe',
122513067778SAndreas Gohr    // 'フィ'=>'fwi',
122613067778SAndreas Gohr    // 'フォ'=>'fwo',
122713067778SAndreas Gohr    // 'フゥ'=>'fwu',
122813067778SAndreas Gohr    // 'チャ'=>'tya',
122913067778SAndreas Gohr    // 'チェ'=>'tye',
123013067778SAndreas Gohr    // 'チィ'=>'tyi',
123113067778SAndreas Gohr    // 'チョ'=>'tyo',
123213067778SAndreas Gohr    // 'チュ'=>'tyu',
123313067778SAndreas Gohr    // 'ジャ'=>'jya',
123413067778SAndreas Gohr    // 'ジェ'=>'jye',
123513067778SAndreas Gohr    // 'ジィ'=>'jyi',
123613067778SAndreas Gohr    // 'ジョ'=>'jyo',
123713067778SAndreas Gohr    // 'ジュ'=>'jyu',
123813067778SAndreas Gohr    // 'ジャ'=>'zha',
123913067778SAndreas Gohr    // 'ジェ'=>'zhe',
124013067778SAndreas Gohr    // 'ジィ'=>'zhi',
124113067778SAndreas Gohr    // 'ジョ'=>'zho',
124213067778SAndreas Gohr    // 'ジュ'=>'zhu',
124313067778SAndreas Gohr    // 'ジャ'=>'zya',
124413067778SAndreas Gohr    // 'ジェ'=>'zye',
124513067778SAndreas Gohr    // 'ジィ'=>'zyi',
124613067778SAndreas Gohr    // 'ジョ'=>'zyo',
124713067778SAndreas Gohr    // 'ジュ'=>'zyu',
124813067778SAndreas Gohr    // 'シャ'=>'sya',
124913067778SAndreas Gohr    // 'シェ'=>'sye',
125013067778SAndreas Gohr    // 'シィ'=>'syi',
125113067778SAndreas Gohr    // 'ショ'=>'syo',
125213067778SAndreas Gohr    // 'シュ'=>'syu',
125313067778SAndreas Gohr    // 'シ'=>'ci',
125413067778SAndreas Gohr    // 'フ'=>'hu',
125513067778SAndreas Gohr    // 'シ'=>'si',
125613067778SAndreas Gohr    // 'チ'=>'ti',
125713067778SAndreas Gohr    // 'ツ'=>'tu',
125813067778SAndreas Gohr    // 'イ'=>'yi',
125913067778SAndreas Gohr    // 'ヂ'=>'dzi',
126013067778SAndreas Gohr
126113067778SAndreas Gohr    // "Greeklish"
12621fa01e4aSsintoris    'Α' => 'a',
12631fa01e4aSsintoris    'Ά' => 'a',
12641fa01e4aSsintoris    'Β' => 'b',
12651fa01e4aSsintoris    'Γ' => 'g',
12661fa01e4aSsintoris    'Δ' => 'd',
12671fa01e4aSsintoris    'Ε' => 'e',
12681fa01e4aSsintoris    'Έ' => 'e',
12691fa01e4aSsintoris    'Ζ' => 'z',
12701fa01e4aSsintoris    'Η' => 'i',
12711fa01e4aSsintoris    'Ή' => 'i',
12721fa01e4aSsintoris    'Θ' => 'th',
12731fa01e4aSsintoris    'Ι' => 'i',
12741fa01e4aSsintoris    'Ί' => 'i',
12751fa01e4aSsintoris    'Ϊ' => 'i',
12761fa01e4aSsintoris    'ΐ' => 'i',
12771fa01e4aSsintoris    'Κ' => 'k',
12781fa01e4aSsintoris    'Λ' => 'l',
12791fa01e4aSsintoris    'Μ' => 'm',
12801fa01e4aSsintoris    'Ν' => 'n',
12811fa01e4aSsintoris    'Ξ' => 'x',
12821fa01e4aSsintoris    'Ο' => 'o',
12831fa01e4aSsintoris    'Ό' => 'o',
12841fa01e4aSsintoris    'Π' => 'p',
12851fa01e4aSsintoris    'Ρ' => 'r',
12861fa01e4aSsintoris    'Σ' => 's',
12871fa01e4aSsintoris    'Τ' => 't',
12881fa01e4aSsintoris    'Υ' => 'y',
12891fa01e4aSsintoris    'Ύ' => 'y',
12901fa01e4aSsintoris    'Ϋ' => 'y',
12911fa01e4aSsintoris    'ΰ' => 'y',
12921fa01e4aSsintoris    'Φ' => 'f',
12931fa01e4aSsintoris    'Χ' => 'ch',
12941fa01e4aSsintoris    'Ψ' => 'ps',
12951fa01e4aSsintoris    'Ω' => 'o',
12961fa01e4aSsintoris    'Ώ' => 'o',
12971fa01e4aSsintoris    'α' => 'a',
12981fa01e4aSsintoris    'ά' => 'a',
12991fa01e4aSsintoris    'β' => 'b',
130013067778SAndreas Gohr    'γ' => 'g',
13011fa01e4aSsintoris    'δ' => 'd',
13021fa01e4aSsintoris    'ε' => 'e',
13031fa01e4aSsintoris    'έ' => 'e',
13041fa01e4aSsintoris    'ζ' => 'z',
13051fa01e4aSsintoris    'η' => 'i',
13061fa01e4aSsintoris    'ή' => 'i',
130713067778SAndreas Gohr    'θ' => 'th',
13081fa01e4aSsintoris    'ι' => 'i',
13091fa01e4aSsintoris    'ί' => 'i',
13101fa01e4aSsintoris    'ϊ' => 'i',
13111fa01e4aSsintoris    'κ' => 'k',
131213067778SAndreas Gohr    'λ' => 'l',
13131fa01e4aSsintoris    'μ' => 'm',
13141fa01e4aSsintoris    'ν' => 'n',
131513067778SAndreas Gohr    'ξ' => 'x',
13161fa01e4aSsintoris    'ο' => 'o',
13171fa01e4aSsintoris    'ό' => 'o',
131813067778SAndreas Gohr    'π' => 'p',
13191fa01e4aSsintoris    'ρ' => 'r',
132013067778SAndreas Gohr    'σ' => 's',
13211fa01e4aSsintoris    'ς' => 's',
13221fa01e4aSsintoris    'τ' => 't',
13231fa01e4aSsintoris    'υ' => 'y',
13241fa01e4aSsintoris    'ύ' => 'y',
13251fa01e4aSsintoris    'ϋ' => 'y',
132613067778SAndreas Gohr    'φ' => 'f',
13271fa01e4aSsintoris    'χ' => 'ch',
132813067778SAndreas Gohr    'ψ' => 'ps',
13291fa01e4aSsintoris    'ω' => 'o',
13301fa01e4aSsintoris    'ώ' => 'o',
133113067778SAndreas Gohr
133213067778SAndreas Gohr    // Thai
133313067778SAndreas Gohr    'ก' => 'k',
133413067778SAndreas Gohr    'ข' => 'kh',
133513067778SAndreas Gohr    'ฃ' => 'kh',
133613067778SAndreas Gohr    'ค' => 'kh',
133713067778SAndreas Gohr    'ฅ' => 'kh',
133813067778SAndreas Gohr    'ฆ' => 'kh',
133913067778SAndreas Gohr    'ง' => 'ng',
134013067778SAndreas Gohr    'จ' => 'ch',
134113067778SAndreas Gohr    'ฉ' => 'ch',
134213067778SAndreas Gohr    'ช' => 'ch',
134313067778SAndreas Gohr    'ซ' => 's',
134413067778SAndreas Gohr    'ฌ' => 'ch',
134513067778SAndreas Gohr    'ญ' => 'y',
134613067778SAndreas Gohr    'ฎ' => 'd',
134713067778SAndreas Gohr    'ฏ' => 't',
134813067778SAndreas Gohr    'ฐ' => 'th',
134913067778SAndreas Gohr    'ฑ' => 'd',
135013067778SAndreas Gohr    'ฒ' => 'th',
135113067778SAndreas Gohr    'ณ' => 'n',
135213067778SAndreas Gohr    'ด' => 'd',
135313067778SAndreas Gohr    'ต' => 't',
135413067778SAndreas Gohr    'ถ' => 'th',
135513067778SAndreas Gohr    'ท' => 'th',
135613067778SAndreas Gohr    'ธ' => 'th',
135713067778SAndreas Gohr    'น' => 'n',
135813067778SAndreas Gohr    'บ' => 'b',
135913067778SAndreas Gohr    'ป' => 'p',
136013067778SAndreas Gohr    'ผ' => 'ph',
136113067778SAndreas Gohr    'ฝ' => 'f',
136213067778SAndreas Gohr    'พ' => 'ph',
136313067778SAndreas Gohr    'ฟ' => 'f',
136413067778SAndreas Gohr    'ภ' => 'ph',
136513067778SAndreas Gohr    'ม' => 'm',
136613067778SAndreas Gohr    'ย' => 'y',
136713067778SAndreas Gohr    'ร' => 'r',
136813067778SAndreas Gohr    'ฤ' => 'rue',
136913067778SAndreas Gohr    'ฤๅ' => 'rue',
137013067778SAndreas Gohr    'ล' => 'l',
137113067778SAndreas Gohr    'ฦ' => 'lue',
137213067778SAndreas Gohr    'ฦๅ' => 'lue',
137313067778SAndreas Gohr    'ว' => 'w',
137413067778SAndreas Gohr    'ศ' => 's',
137513067778SAndreas Gohr    'ษ' => 's',
137613067778SAndreas Gohr    'ส' => 's',
137713067778SAndreas Gohr    'ห' => 'h',
137813067778SAndreas Gohr    'ฬ' => 'l',
137913067778SAndreas Gohr    'ฮ' => 'h',
138013067778SAndreas Gohr    'ะ' => 'a',
138113067778SAndreas Gohr    'ั' => 'a',
138213067778SAndreas Gohr    'รร' => 'a',
138313067778SAndreas Gohr    'า' => 'a',
138413067778SAndreas Gohr    'ๅ' => 'a',
138513067778SAndreas Gohr    'ำ' => 'am',
138613067778SAndreas Gohr    'ํา' => 'am',
138713067778SAndreas Gohr    'ิ' => 'i',
138813067778SAndreas Gohr    'ึ' => 'ue',
138913067778SAndreas Gohr    'ี' => 'ue',
139013067778SAndreas Gohr    'ุ' => 'u',
139113067778SAndreas Gohr    'ู' => 'u',
139213067778SAndreas Gohr    'เ' => 'e',
139313067778SAndreas Gohr    'แ' => 'ae',
139413067778SAndreas Gohr    'โ' => 'o',
139513067778SAndreas Gohr    'อ' => 'o',
139613067778SAndreas Gohr    'ียะ' => 'ia',
139713067778SAndreas Gohr    'ีย' => 'ia',
139813067778SAndreas Gohr    'ือะ' => 'uea',
139913067778SAndreas Gohr    'ือ' => 'uea',
140013067778SAndreas Gohr    'ัวะ' => 'ua',
140113067778SAndreas Gohr    'ัว' => 'ua',
140213067778SAndreas Gohr    'ใ' => 'ai',
140313067778SAndreas Gohr    'ไ' => 'ai',
140413067778SAndreas Gohr    'ัย' => 'ai',
140513067778SAndreas Gohr    'าย' => 'ai',
140613067778SAndreas Gohr    'าว' => 'ao',
140713067778SAndreas Gohr    'ุย' => 'ui',
140813067778SAndreas Gohr    'อย' => 'oi',
140913067778SAndreas Gohr    'ือย' => 'ueai',
141013067778SAndreas Gohr    'วย' => 'uai',
141113067778SAndreas Gohr    'ิว' => 'io',
141213067778SAndreas Gohr    '็ว' => 'eo',
141313067778SAndreas Gohr    'ียว' => 'iao',
141413067778SAndreas Gohr    '่' => '',
141513067778SAndreas Gohr    '้' => '',
141613067778SAndreas Gohr    '๊' => '',
141713067778SAndreas Gohr    '๋' => '',
141813067778SAndreas Gohr    '็' => '',
141913067778SAndreas Gohr    '์' => '',
142013067778SAndreas Gohr    '๎' => '',
142113067778SAndreas Gohr    'ํ' => '',
142213067778SAndreas Gohr    'ฺ' => '',
142313067778SAndreas Gohr    'ๆ' => '2',
142413067778SAndreas Gohr    '๏' => 'o',
142513067778SAndreas Gohr    'ฯ' => '-',
142613067778SAndreas Gohr    '๚' => '-',
142713067778SAndreas Gohr    '๛' => '-',
142813067778SAndreas Gohr    '๐' => '0',
142913067778SAndreas Gohr    '๑' => '1',
143013067778SAndreas Gohr    '๒' => '2',
143113067778SAndreas Gohr    '๓' => '3',
143213067778SAndreas Gohr    '๔' => '4',
143313067778SAndreas Gohr    '๕' => '5',
143413067778SAndreas Gohr    '๖' => '6',
143513067778SAndreas Gohr    '๗' => '7',
143613067778SAndreas Gohr    '๘' => '8',
143713067778SAndreas Gohr    '๙' => '9',
143813067778SAndreas Gohr
143913067778SAndreas Gohr    // Korean
144013067778SAndreas Gohr    'ㄱ' => 'k', 'ㅋ' => 'kh',
144113067778SAndreas Gohr    'ㄲ' => 'kk',
144213067778SAndreas Gohr    'ㄷ' => 't',
144313067778SAndreas Gohr    'ㅌ' => 'th',
144413067778SAndreas Gohr    'ㄸ' => 'tt',
144513067778SAndreas Gohr    'ㅂ' => 'p',
144613067778SAndreas Gohr    'ㅍ' => 'ph',
144713067778SAndreas Gohr    'ㅃ' => 'pp',
144813067778SAndreas Gohr    'ㅈ' => 'c',
144913067778SAndreas Gohr    'ㅊ' => 'ch',
145013067778SAndreas Gohr    'ㅉ' => 'cc',
145113067778SAndreas Gohr    'ㅅ' => 's',
145213067778SAndreas Gohr    'ㅆ' => 'ss',
145313067778SAndreas Gohr    'ㅎ' => 'h',
145413067778SAndreas Gohr    'ㅇ' => 'ng',
145513067778SAndreas Gohr    'ㄴ' => 'n',
145613067778SAndreas Gohr    'ㄹ' => 'l',
145713067778SAndreas Gohr    'ㅁ' => 'm',
145813067778SAndreas Gohr    'ㅏ' => 'a',
145913067778SAndreas Gohr    'ㅓ' => 'e',
146013067778SAndreas Gohr    'ㅗ' => 'o',
146113067778SAndreas Gohr    'ㅜ' => 'wu',
146213067778SAndreas Gohr    'ㅡ' => 'u',
146313067778SAndreas Gohr    'ㅣ' => 'i',
146413067778SAndreas Gohr    'ㅐ' => 'ay',
146513067778SAndreas Gohr    'ㅔ' => 'ey',
146613067778SAndreas Gohr    'ㅚ' => 'oy',
146713067778SAndreas Gohr    'ㅘ' => 'wa',
146813067778SAndreas Gohr    'ㅝ' => 'we',
146913067778SAndreas Gohr    'ㅟ' => 'wi',
147013067778SAndreas Gohr    'ㅙ' => 'way',
147113067778SAndreas Gohr    'ㅞ' => 'wey',
147213067778SAndreas Gohr    'ㅢ' => 'uy',
147313067778SAndreas Gohr    'ㅑ' => 'ya',
147413067778SAndreas Gohr    'ㅕ' => 'ye',
147513067778SAndreas Gohr    'ㅛ' => 'oy',
147613067778SAndreas Gohr    'ㅠ' => 'yu',
147713067778SAndreas Gohr    'ㅒ' => 'yay',
147813067778SAndreas Gohr    'ㅖ' => 'yey',
147913067778SAndreas Gohr];
1480