|
our $VERSION = version->declare( 'v0.34.4' );
use if $^V ge v5.12.0, feature => 'unicode_strings' ;
BEGIN {
die "Transliteration requires Perl 5.18 or above"
unless $^V ge v5.18.0;
}
no warnings 'experimental::regex_sets' ;
has 'transforms' => (
is => 'ro' ,
isa => ArrayRef,
init_arg => undef ,
default => sub { [
qr/(?^um:\G.)/ ,
{
type => 'transform' ,
data => [
{
from => q(Any) ,
to => q(NFD) ,
},
{
from => q(Any) ,
to => q(Lower) ,
},
],
},
{
type => 'filter' ,
data => [
],
},
{
type => 'conversion' ,
data => [
{
before => q() ,
after => q() ,
replace => q(([bcdfghjklmnpqrstvwxyz]) \'),
result => q() ,
revisit => 2,
},
{
before => q() ,
after => q() ,
replace => q(\') ,
result => q() ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(cqu) ,
result => q(ኩ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(cc) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(ca) ,
result => q(ካ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(cia) ,
result => q(ቻ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(cio) ,
result => q(ቺዮ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ciu) ,
result => q(ቺዩ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ci) ,
result => q(ቺ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(cu) ,
result => q(ኩ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ce) ,
result => q(ቼ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(co) ,
result => q(ኮ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(cha) ,
result => q(ካ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(chi) ,
result => q(ኪ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(chu) ,
result => q(ኩ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(che) ,
result => q(ኬ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(cho) ,
result => q(ኮ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(c) ,
result => q(ክ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(gg) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(ghi) ,
result => q(ጊ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ghe) ,
result => q(ጌ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ghu) ,
result => q(ጉ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(gli) ,
result => q() ,
revisit => 2,
},
{
before => q() ,
after => q() ,
replace => q(gna) ,
result => q(ኛ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(gni) ,
result => q(ኚ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(gnu) ,
result => q(ኙ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(gne) ,
result => q(ኜ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(gno) ,
result => q(ኞ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(gn) ,
result => q(ኝ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ga) ,
result => q(ጋ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(gia) ,
result => q(ጂያ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(giu) ,
result => q(ጂዩ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(gio) ,
result => q(ጂዮ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(gi) ,
result => q(ጂ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(gu) ,
result => q(ጉ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ge) ,
result => q(ጄ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(go) ,
result => q(ጎ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(g) ,
result => q(ግ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(rr) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(ra) ,
result => q(ራ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ri) ,
result => q(ሪ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ru) ,
result => q(ሩ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(re) ,
result => q(ሬ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ro) ,
result => q(ሮ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(r) ,
result => q(ር) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ll) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(la) ,
result => q(ላ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(li) ,
result => q(ሊ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(lu) ,
result => q(ሉ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(le) ,
result => q(ሌ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(lo) ,
result => q(ሎ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(l) ,
result => q(ል) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(tt) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(ta) ,
result => q(ታ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ti) ,
result => q(ቲ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(thi) ,
result => q(ቲ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(tu) ,
result => q(ቱ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(thu) ,
result => q(ቱ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(te) ,
result => q(ቴ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(the) ,
result => q(ቴ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(to) ,
result => q(ቶ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(tho) ,
result => q(ቶ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(tzu) ,
result => q(ፁ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(tz) ,
result => q() ,
revisit => 2,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(t) ,
result => q(ት) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(dd) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(da) ,
result => q(ዳ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(di) ,
result => q(ዲ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(du) ,
result => q(ዱ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(de) ,
result => q(ዴ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(do) ,
result => q(ዶ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(d) ,
result => q(ድ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(mm) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(ma) ,
result => q(ማ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(mi) ,
result => q(ሚ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(mu) ,
result => q(ሙ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(me) ,
result => q(ሜ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(mo) ,
result => q(ሞ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(m) ,
result => q(ም) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(nn) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(na) ,
result => q(ና) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ni) ,
result => q(ኒ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(nu) ,
result => q(ኑ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ne) ,
result => q(ኔ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(no) ,
result => q(ኖ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(n) ,
result => q(ን) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ff) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(fa) ,
result => q(ፋ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(fi) ,
result => q(ፊ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(fu) ,
result => q(ፉ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(fe) ,
result => q(ፌ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(fo) ,
result => q(ፎ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(f) ,
result => q(ፍ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(bb) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(ba) ,
result => q(ባ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(bi) ,
result => q(ቢ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(bu) ,
result => q(ቡ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(be) ,
result => q(ቤ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(bo) ,
result => q(ቦ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(b) ,
result => q(ብ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(pp) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(pa) ,
result => q(ፓ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(pi) ,
result => q(ፒ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(pu) ,
result => q(ፑ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(pe) ,
result => q(ፔ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(po) ,
result => q(ፖ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(p) ,
result => q(ፕ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(vv) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(va) ,
result => q(ቫ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(vi) ,
result => q(ቪ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(vu) ,
result => q(ቩ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ve) ,
result => q(ቬ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(vo) ,
result => q(ቮ) ,
revisit => 0,
},
{
before => q() ,
after => q([bcdfghjklmnpqrstvwxyz]) ,
replace => q(v) ,
result => q(ቩ) ,
revisit => 0,
},
{
before => q() ,
after => q(nt[ao]) ,
replace => q(sa) ,
result => q(ሣ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ss) ,
result => q() ,
revisit => 3,
},
{
before => q() ,
after => q() ,
replace => q(sb) ,
result => q(ዝ) ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(sd) ,
result => q(ዝ) ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(sg) ,
result => q(ዝ) ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(sl) ,
result => q(ዝ) ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(sm) ,
result => q(ዝ) ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(sn) ,
result => q(ዝ) ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(sr) ,
result => q(ዝ) ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(sv) ,
result => q(ዝ) ,
revisit => 1,
},
{
before => q() ,
after => q([aeiou]) ,
replace => q(([bcdfghjklmnpqrstvwxyz]) s),
result => q() ,
revisit => 5,
},
{
before => q() ,
after => q() ,
replace => q(\~sa) ,
result => q(ሣ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(\~si) ,
result => q(ሢ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(\~su) ,
result => q(ሡ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(\~se) ,
result => q(ሤ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(\~so) ,
result => q(ሦ) ,
revisit => 0,
},
{
before => q(\p{^Letter}) ,
after => q() ,
replace => q(sa) ,
result => q(ሣ) ,
revisit => 0,
},
{
before => q(\p{^Letter}) ,
after => q() ,
replace => q(si) ,
result => q(ሢ) ,
revisit => 0,
},
{
before => q(\p{^Letter}) ,
after => q() ,
replace => q(su) ,
result => q(ሡ) ,
revisit => 0,
},
{
before => q(\p{^Letter}) ,
after => q() ,
replace => q(se) ,
result => q(ሤ) ,
revisit => 0,
},
{
before => q(\p{^Letter}) ,
after => q() ,
replace => q(so) ,
result => q(ሦ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(sa) ,
result => q(ዛ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(si) ,
result => q(ዚ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(su) ,
result => q(ዙ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(se) ,
result => q(ዜ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(so) ,
result => q(ዞ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(scia) ,
result => q(ሺያ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(sci) ,
result => q(ሺ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(sce) ,
result => q(ሼ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(zz) ,
result => q() ,
revisit => 3,
},
{
before => q() ,
after => q() ,
replace => q(([bcdfghjklmnpqrstvwxyz]) z),
result => q() ,
revisit => 5,
},
{
before => q() ,
after => q() ,
replace => q(\~za) ,
result => q(ጻ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(\~zi) ,
result => q(ጺ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(\~zu) ,
result => q(ጹ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(\~ze) ,
result => q(ጼ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(\~zo) ,
result => q(ጾ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(za) ,
result => q(ዛ) ,
revisit => 0,
},
{
before => q(\p{^Letter}) ,
after => q() ,
replace => q(zi) ,
result => q(ዚ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(zi) ,
result => q(ዚ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(zu) ,
result => q(ዙ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ze) ,
result => q(ዜ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(zo) ,
result => q(ዞ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ja) ,
result => q(ያ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(je) ,
result => q(ዬ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(j) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(a) ,
result => q(አ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(i) ,
result => q(ዒ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(u) ,
result => q(ዑ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(e) ,
result => q(ዔ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(o) ,
result => q(ዖ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(b) ,
result => q(ብ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(c) ,
result => q(ክ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(d) ,
result => q(ድ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(f) ,
result => q(ፍ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(g) ,
result => q(ግ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(h) ,
result => q(ህ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(k) ,
result => q(ክ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(l) ,
result => q(ል) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(m) ,
result => q(ም) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(n) ,
result => q(ን) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(p) ,
result => q(ፕ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(q) ,
result => q(ክ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(r) ,
result => q(ር) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(s) ,
result => q(ስ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(t) ,
result => q(ት) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(v) ,
result => q(ው) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(x) ,
result => q() ,
revisit => 2,
},
{
before => q() ,
after => q() ,
replace => q(y) ,
result => q() ,
revisit => 1,
},
{
before => q() ,
after => q() ,
replace => q(z) ,
result => q(ዝ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(\p{nonspacingmark}) ,
result => q() ,
revisit => 0,
},
],
},
{
type => 'transform' ,
data => [
{
from => q(Any) ,
to => q(NFC) ,
},
]
},
] },
);
no Moo;
1;
|