|
our $VERSION = version->declare( 'v0.34.2' );
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(Lower) ,
},
{
from => q(Any) ,
to => q(NFC) ,
},
],
},
{
type => 'conversion' ,
data => [
{
before => q() ,
after => q() ,
replace => q(ae) ,
result => q(aj) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(av) ,
result => q(aw) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(æ) ,
result => q(aj) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ā) ,
result => q(aː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q([aáàă]) ,
result => q(a) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(b) ,
result => q(b) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ch) ,
result => q(kʰ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(c) ,
result => q(k) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(d) ,
result => q(d) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ev) ,
result => q(ew) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ē) ,
result => q(eː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q([eéèĕ]) ,
result => q(ɛ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(f) ,
result => q(f) ,
revisit => 0,
},
{
before => q() ,
after => q(n) ,
replace => q(g) ,
result => q(ŋ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(g) ,
result => q(ɡ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(h) ,
result => q(h) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ī) ,
result => q(iː) ,
revisit => 0,
},
{
before => q() ,
after => q([aáàăāeéèĕēiíìĭīoóòŏōuúùŭūæœ]) ,
replace => q([iíìĭ]) ,
result => q(j) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q([iíìĭ]) ,
result => q(ɪ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(k) ,
result => q(k) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(l) ,
result => q(l) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(m) ,
result => q(m) ,
revisit => 0,
},
{
before => q() ,
after => q([bpfm]) ,
replace => q(n) ,
result => q(m) ,
revisit => 0,
},
{
before => q() ,
after => q([gckq]) ,
replace => q(n) ,
result => q(ŋ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(n) ,
result => q(n) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(œ) ,
result => q(oj) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(oe) ,
result => q(oj) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ō) ,
result => q(oː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q([oóòŏ]) ,
result => q(ɔ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ph) ,
result => q(pʰ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(p) ,
result => q(p) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(qu) ,
result => q(kʷ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(qv) ,
result => q(kʷ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(rh) ,
result => q(rʰ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(r) ,
result => q(r) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(s) ,
result => q(s) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(th) ,
result => q(tʰ) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(t) ,
result => q(t) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ū) ,
result => q(uː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q([uúùŭ]) ,
result => q(ʊ) ,
revisit => 0,
},
{
before => q() ,
after => q([aáàăāeéèĕēiíìĭīoóòŏōuúùŭūæœ]) ,
replace => q(v) ,
result => q(w) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(v) ,
result => q(u) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(xs) ,
result => q(ks) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(x) ,
result => q(ks) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(y) ,
result => q(y) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(z) ,
result => q(d͡z) ,
revisit => 0,
},
],
},
{
type => 'transform' ,
data => [
{
from => q(Any) ,
to => q(Null) ,
},
],
},
{
type => 'conversion' ,
data => [
{
before => q() ,
after => q() ,
replace => q(bb) ,
result => q(bː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(dd) ,
result => q(dː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ɡɡ) ,
result => q(ɡː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(hh) ,
result => q(hː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(kk) ,
result => q(kː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ll) ,
result => q(lː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(mm) ,
result => q(mː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(nn) ,
result => q(nː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(pp) ,
result => q(pː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(rr) ,
result => q(rː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(ss) ,
result => q(sː) ,
revisit => 0,
},
{
before => q() ,
after => q() ,
replace => q(tt) ,
result => q(tː) ,
revisit => 0,
},
{
before => q() ,
after => q([^aeɛiouː]) ,
replace => q(l) ,
result => q(ɫ) ,
revisit => 0,
},
],
},
{
type => 'transform' ,
data => [
{
from => q(Any) ,
to => q(NFC) ,
},
]
},
] },
);
no Moo;
1;
|