cec4d76254
Update transrt.cpp to exclude 0970 from roundtrip tests; it was now included because Unicode 6.1 moved it from Common to Devanagari, but it has no mapping from InterIndic to anything else. X-SVN-Rev: 31074
276 lines
6.7 KiB
Plaintext
276 lines
6.7 KiB
Plaintext
# ***************************************************************************
|
||
# *
|
||
# * Copyright (C) 2004-2011, International Business Machines
|
||
# * Corporation; Unicode, Inc.; and others. All Rights Reserved.
|
||
# *
|
||
# ***************************************************************************
|
||
# File: Latin_Katakana.txt
|
||
# Generated from CLDR
|
||
#
|
||
:: [[ᄀ-ᄒᄚᄡ\u1160-ᅵᆪᆬ-ᆭᆰ-ᆵ←-↓│■○\u3000-。「-」\u3099-\u309Aァ-ロワヲ-ヴヷヺ-ー!-~¢-₩][',.A-Za-z~À-ÖØ-öø-ďĒ-ĥĨ-İĴ-ķĹ-ľŃ-ňŌ-őŔ-ťŨ-žƠ-ơƯ-ưǍ-ǜǞ-ǣǦ-ǭǰǴ-ǵǸ-țȞ-ȟȦ-ȳ\u0304Ӣ-ӣӮ-ӯḀ-ẙẠ-ỹᾱᾹῑῙῡῩK-Å]] ;
|
||
:: [:Latin:] fullwidth-halfwidth ();
|
||
:: NFD (NFC);
|
||
:: Lower (); # whenever transliterating from cased to uncased script, include this
|
||
$vowel = [aeiou] ;
|
||
$consonant = [bcdfghjklmnpqrstvwxyz] ;
|
||
$macron = \u0304 ;
|
||
$kana = [ぁ-ゔ] ;
|
||
$voice = [\u3099゛];
|
||
$semivoice = [\u309A゜];
|
||
$k_start = [カキクケコかきくけこ] ;
|
||
$s_start = [サシスセソさしすせそ] ;
|
||
$j_start = [シし] $voice ;
|
||
$t_start = [タチツテトたちつてと] ;
|
||
$n_start = [ナニヌネノンなにぬねの] ;
|
||
$h_start = [ハヒヘホはひへほ] ;
|
||
$f_start = [フふ] ;
|
||
$m_start = [マミムメモまみむめも] ;
|
||
$y_start = [ヤユヨやゆよ] ;
|
||
$r_start = [ラリルレロらりるれろ] ;
|
||
$w_start = [ワヰヱヲわゐゑを] ;
|
||
$v_start = [ワヰヱヲ]\u3099 ;
|
||
$voweled_basekana = [ァ-オカキクケコサシスセソタチッツテトナ-ノハヒフヘホマ-ヲヵヶ] ;
|
||
$n_quoter = [ア イ ウ エ オ ナ ニ ヌ ネ ノ ヤ ユ ヨ ン] ;
|
||
$small_y = [ャィュェョ] ;
|
||
$iteration = ゝ ;
|
||
'.' ↔ 。;
|
||
',' ↔ 、;
|
||
va ↔ ワ\u3099 ;
|
||
vi ↔ ヰ\u3099 ;
|
||
ve ↔ ヱ\u3099 ;
|
||
vo ↔ ヲ\u3099 ;
|
||
'~ka' ↔ ヵ ;
|
||
'~ke' ↔ ヶ ;
|
||
ya ← '~'ャ;
|
||
yi ← '~'ィ ;
|
||
yu ← '~'ュ;
|
||
ye ← '~'ェ;
|
||
yo ← '~'ョ;
|
||
a ↔ ア ;
|
||
b | '~' ← ヒ \u3099} $small_y ;
|
||
by } $vowel → ヒ\u3099 | '~y' ;
|
||
ba ↔ ハ\u3099 ;
|
||
bi ↔ ヒ\u3099 ;
|
||
bu ↔ フ\u3099 ;
|
||
be ↔ ヘ\u3099 ;
|
||
bo ↔ ホ\u3099 ;
|
||
c } i → | s ;
|
||
c } e → | s ;
|
||
da ↔ タ\u3099 ;
|
||
di ↔ テ\u3099ィ ;
|
||
du ↔ テ\u3099ゥ ;
|
||
de ↔ テ\u3099 ;
|
||
do ↔ ト\u3099 ;
|
||
dzu ↔ ツ\u3099 ;
|
||
dja ← チ\u3099ャ ;
|
||
dji'~i' ← チ\u3099ィ ; # liu
|
||
dju ← チ\u3099ュ ;
|
||
dje ← チ\u3099ェ ;
|
||
djo ← チ\u3099ョ ;
|
||
dji ↔ チ\u3099 ;
|
||
dj } $vowel → チ\u3099 | '~y' ;
|
||
cha ← チャ ;
|
||
chi'~i' ← チィ ; # liu
|
||
chu ← チュ ;
|
||
che ← チェ ;
|
||
cho ← チョ ;
|
||
chi ↔ チ ;
|
||
ch } $vowel → チ | '~y' ;
|
||
e ↔ エ ;
|
||
g | '~' ← キ\u3099} $small_y ;
|
||
gy } $vowel → キ\u3099 | '~y' ;
|
||
ga ↔ カ\u3099 ;
|
||
gi ↔ キ\u3099 ;
|
||
gu ↔ ク\u3099 ;
|
||
ge ↔ ケ\u3099 ;
|
||
go ↔ コ\u3099 ;
|
||
i ↔ イ ;
|
||
ja ↔ シ\u3099ャ ;
|
||
ji'~i' ← シ\u3099ィ ; # liu
|
||
ju ↔ シ\u3099ュ ;
|
||
je ↔ シ\u3099ェ ;
|
||
jo ↔ シ\u3099ョ ;
|
||
ji ↔ シ\u3099 ;
|
||
k | '~' ← キ} $small_y ;
|
||
ky } $vowel → キ | '~y' ;
|
||
ka ↔ カ ;
|
||
ki ↔ キ ;
|
||
ku ↔ ク ;
|
||
ke ↔ ケ ;
|
||
ko ↔ コ ;
|
||
m | '~' ← ミ} $small_y ;
|
||
my } $vowel → ミ | '~y' ;
|
||
ma ↔ マ ;
|
||
mi ↔ ミ ;
|
||
mu ↔ ム ;
|
||
me ↔ メ ;
|
||
mo ↔ モ ;
|
||
m } [pbfv] → ン ;
|
||
n | '~' ← ニ } $small_y ;
|
||
ny } $vowel → ニ | '~y' ;
|
||
na ↔ ナ ;
|
||
ni ↔ ニ ;
|
||
nu ↔ ヌ ;
|
||
ne ↔ ネ ;
|
||
no ↔ ノ ;
|
||
o ↔ オ ;
|
||
p | '~' ← ヒ\u309A } $small_y ;
|
||
py } $vowel → ヒ\u309A | '~y' ;
|
||
pa ↔ ハ\u309A ;
|
||
pi ↔ ヒ\u309A ;
|
||
pu ↔ フ\u309A ;
|
||
pe ↔ ヘ\u309A ;
|
||
po ↔ ホ\u309A ;
|
||
h | '~' ← ヒ } $small_y ;
|
||
hy } $vowel → ヒ | '~y' ;
|
||
ha ↔ ハ ;
|
||
hi ↔ ヒ ;
|
||
hu ↔ ヘゥ ;
|
||
he ↔ ヘ ;
|
||
ho ↔ ホ ;
|
||
fa ↔ ファ ;
|
||
fi ↔ フィ ;
|
||
fe ↔ フェ ;
|
||
fo ↔ フォ ;
|
||
fu ↔ フ ;
|
||
r | '~' ← リ } $small_y ;
|
||
ry } $vowel → リ | '~y' ;
|
||
ra ↔ ラ ;
|
||
ri ↔ リ ;
|
||
ru ↔ ル ;
|
||
re ↔ レ ;
|
||
ro ↔ ロ ;
|
||
za ↔ サ\u3099 ;
|
||
zi ↔ セ\u3099ィ ;
|
||
zu ↔ ス\u3099 ;
|
||
ze ↔ セ\u3099 ;
|
||
zo ↔ ソ\u3099 ;
|
||
sa ↔ サ ;
|
||
si ↔ セィ ;
|
||
su ↔ ス ;
|
||
se ↔ セ ;
|
||
so ↔ ソ ;
|
||
sha ← シャ ;
|
||
shi'~i' ← シィ ; # liu
|
||
shu ← シュ ;
|
||
she ← シェ ;
|
||
sho ← ショ ;
|
||
shi ↔ シ ;
|
||
sh } $vowel → シ | '~y' ;
|
||
ta ↔ タ ;
|
||
ti ↔ ティ ;
|
||
tu ↔ テゥ ;
|
||
te ↔ テ ;
|
||
to ↔ ト ;
|
||
tsu ↔ ツ ;
|
||
vu ↔ ウ\u3099 ;
|
||
u ↔ ウ ;
|
||
wa ↔ ワ ;
|
||
wi ↔ ヰ ;
|
||
wu → ウ ;
|
||
we ↔ ヱ ;
|
||
wo ↔ ヲ ;
|
||
ya ↔ ヤ ;
|
||
yi → イ ;
|
||
yu ↔ ユ ;
|
||
ye → エ ;
|
||
yo ↔ ヨ ;
|
||
s } sh → ッ ;
|
||
t } ch → ッ ;
|
||
j } j ↔ ッ } $j_start ;
|
||
b } b ↔ ッ } [$h_start$f_start] $voice;
|
||
d } d ↔ ッ } $t_start $voice;
|
||
g } g ↔ ッ } $k_start $voice;
|
||
p } p ↔ ッ } [$h_start$f_start] $semivoice;
|
||
z } z ↔ ッ } $s_start $voice;
|
||
v } v ↔ ッ } $v_start;
|
||
k } k ↔ ッ } $k_start ;
|
||
m } m ↔ ッ } $m_start ;
|
||
n } n ↔ ッ } $n_start ;
|
||
h } h ↔ ッ } $h_start ;
|
||
f } f ↔ ッ } $f_start ;
|
||
r } r ↔ ッ } $r_start ;
|
||
t } t ↔ ッ } $t_start ;
|
||
s } s ↔ ッ } $s_start ;
|
||
w } w ↔ ッ } $w_start;
|
||
y } y ↔ ッ } $y_start;
|
||
x } x → ッ ;
|
||
c } k → ッ ;
|
||
c } c → ッ ;
|
||
c } q → ッ ;
|
||
l } l → ッ ;
|
||
q } q → ッ ;
|
||
$macron ↔ ー ;
|
||
'~a' ↔ ァ ;
|
||
'~i' ↔ ィ ;
|
||
'~u' ↔ ゥ ;
|
||
'~e' ↔ ェ ;
|
||
'~o' ↔ ォ ;
|
||
'~tsu' ↔ ッ ;
|
||
'~wa' ↔ ヮ ;
|
||
'~ya' ↔ ャ ;
|
||
'~yi' → ィ ;
|
||
'~yu' ↔ ュ ;
|
||
'~ye' → ェ ;
|
||
'~yo' ↔ ョ ;
|
||
j $1 ← sh (y* $vowel) {ヽ$voice ;
|
||
dj $1 ← ch (y* $vowel) {ヽ$voice ;
|
||
dz $1 ← ts (y* $vowel) {ヽ$voice ;
|
||
g $1 ← k (y* $vowel) {ヽ$voice ;
|
||
z $1 ← s (y* $vowel) {ヽ$voice ;
|
||
d $1 ← t (y* $vowel) {ヽ$voice ;
|
||
h $1 ← b (y* $vowel) {ヽ$voice ;
|
||
v $1 ← w (y* $vowel) {ヽ$voice ;
|
||
sh $1 ← sh (y* $vowel) {ヽ$voice ;
|
||
j $1 ← j (y* $vowel) {ヽ$voice ;
|
||
ch $1 ← ch (y* $vowel) {ヽ$voice ;
|
||
dj $1 ← dj(y* $vowel) {ヽ$voice ;
|
||
ts $1 ← ts (y* $vowel) {ヽ$voice ;
|
||
dz $1 ← dz (y* $vowel) {ヽ$voice ;
|
||
$1 ← ($consonant y* $vowel) {ヽ$voice? ;
|
||
$1 ← (.) {ヽ $voice? ; # otherwise repeat last character
|
||
← ヽ $voice? ; # delete if no characters found
|
||
$voweled_basekana [\u3099 \u309A]? { h → ー ;
|
||
cy → セィ ;
|
||
dy → テ\u3099ィ ;
|
||
hy → ヒ ;
|
||
sy → セィ ;
|
||
ty → ティ ;
|
||
zy → セ\u3099ィ ;
|
||
h → ヘ ;
|
||
ch → チ;
|
||
sh → シ ;
|
||
dz → ツ\u3099 ;
|
||
dj → チ\u3099;
|
||
b → フ\u3099 ;
|
||
d → テ\u3099 ;
|
||
g → ク\u3099 ;
|
||
k → ク ;
|
||
m → ム ;
|
||
n'' ← ン } $n_quoter ;
|
||
n ↔ ン ;
|
||
p → フ\u309A ;
|
||
r → ル ;
|
||
s → ス ;
|
||
t → テ ;
|
||
y → イ ;
|
||
z → ス\u3099 ;
|
||
v → ウ\u3099 ;
|
||
f → フ;
|
||
j → シ\u3099;
|
||
w → ウ;
|
||
ß → | ss ;
|
||
æ → | e ;
|
||
ð → | d ;
|
||
ø → | u ;
|
||
þ → | th ;
|
||
c → | k ;
|
||
l → | r ;
|
||
q → | k ;
|
||
x → | ks ;
|
||
'~' → ; # delete stray tildes between letters
|
||
[:Katakana:] { '' } [:Latin:] → ; # delete stray quotes between letters
|
||
:: NFC (NFD) ;
|
||
:: ([[:Katakana:][\u309B\u309C\u30A0\u30FC\uFF70\uFF9E\uFF9F]] halfwidth-fullwidth);
|
||
:: ( [[\ -~¢-£¥-¦¬\u0304₩。-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ│-○][~、-。がぎぐげござじずぜぞだぢづでどば-ぱび-ぴぶ-ぷべ-ぺぼ-ぽゔ\u3099-゛ゞァ-ヺー-ヾ][\u309B\u309C\u30A0\u30FC\uFF70\uFF9E\uFF9F]] ) ;
|