|
|
|
|
|
|
|
|
#!/bin/sh |
|
|
#!/bin/sh |
|
|
|
|
|
|
|
|
test_phonemes() { |
|
|
|
|
|
TEST_LANG=$1 |
|
|
|
|
|
EXPECTED=$2 |
|
|
|
|
|
TEST_TEXT=$3 |
|
|
|
|
|
|
|
|
|
|
|
echo "testing ${TEST_LANG} \"${TEST_TEXT}\"" |
|
|
|
|
|
ESPEAK_DATA_PATH=`pwd` LD_LIBRARY_PATH=src:${LD_LIBRARY_PATH} \ |
|
|
|
|
|
src/espeak-ng -xq -v ${TEST_LANG} "${TEST_TEXT}" > actual.txt |
|
|
|
|
|
echo "${EXPECTED}" > expected.txt |
|
|
|
|
|
diff expected.txt actual.txt || exit 1 |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
# include common script |
|
|
|
|
|
. "`dirname $0`/common" |
|
|
|
|
|
|
|
|
# word lookup |
|
|
# word lookup |
|
|
test_phonemes en "h@l'oU" "hello" |
|
|
|
|
|
|
|
|
test_phonemes1 en "h@l'oU" "hello" |
|
|
|
|
|
|
|
|
# correct word stress |
|
|
# correct word stress |
|
|
test_phonemes en "s'VmTIN Imp'o@t@nt" "something important" |
|
|
|
|
|
|
|
|
test_phonemes1 en "s'VmTIN Imp'o@t@nt" "something important" |
|
|
|
|
|
|
|
|
# suffix rules |
|
|
# suffix rules |
|
|
test_phonemes lv \ |
|
|
|
|
|
|
|
|
test_phonemes1 lv \ |
|
|
"nev'ie:na nuo\`_ 'eiRo:pas v'alsti:m nek,ad nav p'a:Rga:jusi nuo\`_ 'univERsa:la:s_:_: nuo\` v'ispa:Re:jiem n'uoduok_|l^iem f'inanse:tas_:_: s'iste:mas uz 'obliga:ta:s 'apdRuoSina:Sanas s'iste:mu b'eigas" \ |
|
|
"nev'ie:na nuo\`_ 'eiRo:pas v'alsti:m nek,ad nav p'a:Rga:jusi nuo\`_ 'univERsa:la:s_:_: nuo\` v'ispa:Re:jiem n'uoduok_|l^iem f'inanse:tas_:_: s'iste:mas uz 'obliga:ta:s 'apdRuoSina:Sanas s'iste:mu b'eigas" \ |
|
|
"Neviena no Eiropas valstīm nekad nav pārgājusi no universālās (no vispārējiem nodokļiem finansētas) sistēmas uz obligātās apdrošināšanas sistēmu Beigas." |
|
|
"Neviena no Eiropas valstīm nekad nav pārgājusi no universālās (no vispārējiem nodokļiem finansētas) sistēmas uz obligātās apdrošināšanas sistēmu Beigas." |
|
|
|
|
|
|
|
|
# A list entry that uses '$text' to map to another list entry crashes 1.49.2 multi-word support: |
|
|
# A list entry that uses '$text' to map to another list entry crashes 1.49.2 multi-word support: |
|
|
test_phonemes en "d'eIbju:tI2d" "débuted" |
|
|
|
|
|
test_phonemes en-US "d'eIbju:t#I#d" "débuted" |
|
|
|
|
|
|
|
|
test_phonemes1 en "d'eIbju:tI2d" "débuted" |
|
|
|
|
|
test_phonemes1 en-US "d'eIbju:t#I#d" "débuted" |
|
|
|
|
|
|
|
|
# s at the end of abbreviations |
|
|
# s at the end of abbreviations |
|
|
# https://github.com/espeak-ng/espeak-ng/issues/706 |
|
|
# https://github.com/espeak-ng/espeak-ng/issues/706 |
|
|
test_phonemes en ",aIb,i:;'Em m'It 'Ib@mz m'Its ,aIb,i:;'Em ,Em,aIt'i:; ,eIp,i:;'eItS s,i:;,i:;'Es ,aIt,i:;'Eks ,aIb,i:;'Emz ,Em,aIt'i:z ,eIp,i:;'eItSIz s,i:;,i:;'EsIz ,aIt,i:;'EksIz" "ibm mit ibms mits IBM MIT APH CES ITX IBMs MIT's APHs CES's ITXs" |
|
|
|
|
|
test_phonemes lv "'ibm m'it 'ibm-s m'its 'ibm m'it 'aph ts'Es 'it_ks 'ibm-s m'its 'aphs ts'Ess 'it_kss 'a>_:,ess_! ,a:_:,ess_!v'e:_:_:_: s'i:a:_ 'u>_:t,e:_:t,e:_:" "ibm mit ibms mits IBM MIT APH CES ITX IBMs MIT's APHs CES's ITXs AS ASV SIA utt" |
|
|
|
|
|
test_phonemes ru "'Ibm (en),aIb,i:;'Em m'It 'Ib@mz m'Its ,aIb,i:;'Em ,Em,aIt'i:; ,eIp,i:;'eItS s,i:;,i:;'Es ,aIt,i:;'Eks 'Ib@mz m'Its 'afz s'EI2zI2z 'ItEksz(ru) SS'A" "ИБМ ibm mit ibms mits IBM MIT APH CES ITX IBMs MIT's APHs CES's ITXs США" |
|
|
|
|
|
|
|
|
test_phonemes1 en ",aIb,i:;'Em m'It 'Ib@mz m'Its ,aIb,i:;'Em ,Em,aIt'i:; ,eIp,i:;'eItS s,i:;,i:;'Es ,aIt,i:;'Eks ,aIb,i:;'Emz ,Em,aIt'i:z ,eIp,i:;'eItSIz s,i:;,i:;'EsIz ,aIt,i:;'EksIz" "ibm mit ibms mits IBM MIT APH CES ITX IBMs MIT's APHs CES's ITXs" |
|
|
|
|
|
test_phonemes1 lv "'ibm m'it 'ibm-s m'its 'ibm m'it 'aph ts'Es 'it_ks 'ibm-s m'its 'aphs ts'Ess 'it_kss 'a>_:,ess_! ,a:_:,ess_!v'e:_:_:_: s'i:a:_ 'u>_:t,e:_:t,e:_:" "ibm mit ibms mits IBM MIT APH CES ITX IBMs MIT's APHs CES's ITXs AS ASV SIA utt" |
|
|
|
|
|
test_phonemes1 ru "'Ibm (en),aIb,i:;'Em m'It 'Ib@mz m'Its ,aIb,i:;'Em ,Em,aIt'i:; ,eIp,i:;'eItS s,i:;,i:;'Es ,aIt,i:;'Eks 'Ib@mz m'Its 'afz s'EI2zI2z 'ItEksz(ru) SS'A" "ИБМ ibm mit ibms mits IBM MIT APH CES ITX IBMs MIT's APHs CES's ITXs США" |
|
|
|
|
|
|
|
|
# bug: https://github.com/nvaccess/nvda/issues/7740 |
|
|
# bug: https://github.com/nvaccess/nvda/issues/7740 |
|
|
test_phonemes ta "'il." "ள்" |
|
|
|
|
|
test_phonemes my "kon'i" "7" |
|
|
|
|
|
test_phonemes ka "s'ami Sv'idi" "3 7" |
|
|
|
|
|
|
|
|
test_phonemes1 ta "'il." "ள்" |
|
|
|
|
|
test_phonemes1 my "kon'i" "7" |
|
|
|
|
|
test_phonemes1 ka "s'ami Sv'idi" "3 7" |
|
|
|
|
|
|
|
|
# bug: https://github.com/nvaccess/nvda/issues/7805 |
|
|
# bug: https://github.com/nvaccess/nvda/issues/7805 |
|
|
test_phonemes hi "r'UcI" "रुचि" |
|
|
|
|
|
test_phonemes hi "dUk'a:n" "दुकान" |
|
|
|
|
|
test_phonemes hi "ka:n'u:n" "कानून" |
|
|
|
|
|
|
|
|
test_phonemes1 hi "r'UcI" "रुचि" |
|
|
|
|
|
test_phonemes1 hi "dUk'a:n" "दुकान" |
|
|
|
|
|
test_phonemes1 hi "ka:n'u:n" "कानून" |
|
|
|
|
|
|
|
|
# bug: https://github.com/espeak-ng/espeak-ng/issues/824 |
|
|
# bug: https://github.com/espeak-ng/espeak-ng/issues/824 |
|
|
test_phonemes ru "(en)s'i:(ru) n'ojl t'otS;ka v'os;E2md;E2s;ats;'ejm m;,IlI;'onof_! p;,It;s'ot SE2z;d;d;Is;'jatd;'evI3t; t'ys;VtS;_! dv;'es;t;I p;Vd;d;Is;'jattR;'i p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I ojd;'in p@-rats'Ent dv;'es;t;I t'otS;ka t@-r;'ittsat;S'Es;t; t'ys;VtS;_! vOs;Ims'ot s;Imn'AttsVt; p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka dv;'e t'ys;VdZ; d;E2v;Itn'AttsVt; p@-rats'Ent dv;'es;t;I ojd;'in t'otS;ka n'ojl tR;'iv'os;E#m_!s;'ejm d;'evI3t;S'Es;t;_!tR;'i p@-rats'Ent dv'A (en)s'i:(ru) ojd;'in t'otS;ka n'ojl tR;'iv'os;E#m_!s;'ejm d;'evI3t;S'Es;t;_!tR;'i p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I ojd;'in p@-rats'Ent dv;'es;t;I t'otS;ka tS;It'yr;E2sta d;E2v;Itn'AttsVt; t'ys;VtS;_! S,E#s;t;s'ot t@-r;'ittsat;s;'ejm p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka n'ojldv'A_! tR;'is;'ejm_!p;'jat; p@-rats'Ent dv'AttsVt; (en)s'i:(ru) p@-rats'Ent dv;'es;t;I t'otS;ka t@-r;'ittsVt; t'ys;VtS;_! v'os;E2md;E2s;ats;'ejm p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka n'ojltS;It'yR;I_! p;'jat;Vjd;'in_!tS;It'yR;I p@-rats'Ent dv;'es;t;I t'otS;ka p;,It;s'ot v'os;E2md;E2s;atdv;'e t'ys;VtS;_! s;,Ims'ot t@-r;'ittsat;d;'evI3t; p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka dv;'es;t;I SE#stn'AttsVt; t'ys;VtS;_! dev;ats'ot s'o@-*Okdv'A p@-rats'Ent dv;'es;t;I t'otS;ka s;,Ims'ot p;Vd;d;Is;'jat t'ys;VtS;_! p;,It;s'ot d;E2v;In'ostOtR;'i p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka tS;It'yr;E2sta s;'emd;E2s;Vt t'ys;VtS;_! t@-r;'ista v'os;E2m p@-rats'Ent dv;'es;t;I t'otS;ka n'ojld;'evI3t;_! p;'jat;n'ojl_!dv'A p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka st'o s'o@-*Okdv;'e t'ys;VtS;_! p;,It;s'ot s;Imn'AttsVt; p@-rats'Ent |
|
|
|
|
|
|
|
|
test_phonemes1 ru "(en)s'i:(ru) n'ojl t'otS;ka v'os;E2md;E2s;ats;'ejm m;,IlI;'onof_! p;,It;s'ot SE2z;d;d;Is;'jatd;'evI3t; t'ys;VtS;_! dv;'es;t;I p;Vd;d;Is;'jattR;'i p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I ojd;'in p@-rats'Ent dv;'es;t;I t'otS;ka t@-r;'ittsat;S'Es;t; t'ys;VtS;_! vOs;Ims'ot s;Imn'AttsVt; p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka dv;'e t'ys;VdZ; d;E2v;Itn'AttsVt; p@-rats'Ent dv;'es;t;I ojd;'in t'otS;ka n'ojl tR;'iv'os;E#m_!s;'ejm d;'evI3t;S'Es;t;_!tR;'i p@-rats'Ent dv'A (en)s'i:(ru) ojd;'in t'otS;ka n'ojl tR;'iv'os;E#m_!s;'ejm d;'evI3t;S'Es;t;_!tR;'i p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I ojd;'in p@-rats'Ent dv;'es;t;I t'otS;ka tS;It'yr;E2sta d;E2v;Itn'AttsVt; t'ys;VtS;_! S,E#s;t;s'ot t@-r;'ittsat;s;'ejm p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka n'ojldv'A_! tR;'is;'ejm_!p;'jat; p@-rats'Ent dv'AttsVt; (en)s'i:(ru) p@-rats'Ent dv;'es;t;I t'otS;ka t@-r;'ittsVt; t'ys;VtS;_! v'os;E2md;E2s;ats;'ejm p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka n'ojltS;It'yR;I_! p;'jat;Vjd;'in_!tS;It'yR;I p@-rats'Ent dv;'es;t;I t'otS;ka p;,It;s'ot v'os;E2md;E2s;atdv;'e t'ys;VtS;_! s;,Ims'ot t@-r;'ittsat;d;'evI3t; p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka dv;'es;t;I SE#stn'AttsVt; t'ys;VtS;_! dev;ats'ot s'o@-*Okdv'A p@-rats'Ent dv;'es;t;I t'otS;ka s;,Ims'ot p;Vd;d;Is;'jat t'ys;VtS;_! p;,It;s'ot d;E2v;In'ostOtR;'i p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka tS;It'yr;E2sta s;'emd;E2s;Vt t'ys;VtS;_! t@-r;'ista v'os;E2m p@-rats'Ent dv;'es;t;I t'otS;ka n'ojld;'evI3t;_! p;'jat;n'ojl_!dv'A p@-rats'Ent dv'A (en)s'i:(ru) n'ojl t'otS;ka st'o s'o@-*Okdv;'e t'ys;VtS;_! p;,It;s'ot s;Imn'AttsVt; p@-rats'Ent |
|
|
dv'A (en)s'i:(ru) v'os;E2m t'otS;ka vOs;Ims'ot dv'Attsat;d;'evI3t; t'ys;VtS;_! s;,Ims'ot SE2z;d;d;Is;'jatv'os;E2m p@-rats'Ent dv'AttsVt; (en)s'i:(ru) p@-rats'Ent dv;'es;t;I p@-rats'Ent dv'A (en)s'i:(ru) p;'jat; t'otS;ka S,E#s;t;s'ot SE2z;d;d;Is;'jatd;'evI3t; t'ys;VtS;_! s'o@-*Okojd;'in p@-rats'Ent dv'AttsVt; tS;It'yR;I t'otS;ka p;Vd;d;Is;'jatd;'evI3t; t'ys;VtS;_! S,E#s;t;s'ot d;E2v;In'ostOd;'evI3t; p@-rats'Ent dv'A (en)s'i:(ru) d;'es;It; t'otS;ka dv'A m;,IlI;'onof_! S,E#s;t;s'ot p;Vd;d;Is;'jatdv;'e t'ys;VtS;_! t@-r;'ista d;E2v;In'ostOojd;'in p@-rats'Ent dv'AttsVt; d;'es;It; t'otS;ka dv;'es;t;I SE2z;d;d;Is;'jatp;'jat; t'ys;VtS;_! dv;'es;t;I t@-r;'ittsat;v'os;E2m p@-rats'Ent dv'A (en)s'i:(ru) d;'es;It; t'otS;ka dv'A m;,IlI;'onof_! S,E#s;t;s'ot p;Vd;d;Is;'jatdv;'e t'ys;VtS;_! t@-r;'ista d;E2v;In'ostOojd;'in p@-rats'Ent dv'AttsVt; (en)z'Ed(ru) p@-rats'Ent dv'AttsVt; (en)'Em(ru) p@-rats'Ent dv;'e t'ys;VdZ; d;'es;It; t'otS;ka n'ojltR;'i_!s;'ejm v'os;E#mS'Es;t;_!p;'jat; p@-rats'Ent dv'A (en)s'i:(ru) d;E2v;Itn'AttsVt; t'otS;ka s;,Ims'ot d;E2v;In'ostOv'os;E2m t'ys;VtS;_! p;,It;s'ot t@-r;'ittsat;s;'ejm p@-rats'Ent dv'AttsVt; (en)v'i:(ru) p@-rats'Ent dv;'es;t;I ojd;'in t'otS;ka st'o s;'emd;E2s;VttS;It'yR;I t'ys;VtS;_! st'o v'os;E2md;E2s;atv'os;E2m p@-rats'Ent dv'AttsVt; (en)'eI(ru) p@-rats'Ent dv;'es;t;I ojd;'in t'otS;ka tS;It'yr;E2sta v'os;E2md;E2s;atv'os;E2m t'ys;VtS;_! p;,It;s'ot d;E2v;Itn'AttsVt; p@-rats'Ent dv'A (en)s'i:(ru) ojd;'in t'otS;ka tS;It'yr;E2sta v'os;E2md;E2s;atv'os;E2m t'ys;VtS;_! p;,It;s'ot d;E2v;Itn'AttsVt; p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I ojd;'in p@-rats'Ent dv;'es;t;I t'otS;ka vOs;Ims'ot p;Vd;d;Is;'jats;'ejm t'ys;VtS;" "C0.87569253%200%200%201%200.36817%2C-0.2019%201.0387963%2C1.0387963%200%200%201%200.419637%2C-0.02375%20c%200.30087%2C0.04514%200.582739%2C0.216942%200.750593%2C0.470308%200.09502%2C0.142517%200.153603%2C0.308788%200.18844%2C0.478226%200.03484%2C0.168646%200.0475%2C0.340459%200.05701%2C0.513064%200.03167%2C0.601741%200.03167%2C1.205067%200.01426%2C1.808392%20-0.01426%2C0.526524%20-0.04355%2C1.0673%20-0.253366%2C1.549486%20-0.271575%2C0.619159%20-0.817101%2C1.08155%20-1.405383%2C1.414092%20a%205.5835296%2C5.5835296%200%200%201%20-1.257323%2C0.512272%20c%200.38163%2C1.219319%200.580363%2C2.56532%200.580363%2C3.93349%20a%2013.935071%2C13.935071%200%200%201%20-0.106901%2C1.682498%2010.264446%2C10.264446%200%200%200%205.054631%2C-8.829768%20c%200%2C-5.669041%20-4.59699%2C-10.2652391%20-10.265238%2C-10.2652391%20z%20M%2010.037865%2C19.798537%20v%201.174188%20a%201.488519%2C1.488519%200%200%201%200.857482%2C0.286619%201.3760882%2C1.3760882%200%200%201%200.440222%2C0.538402%20c%200.0966%2C0.213775%200.131432%2C0.456056%200.09184%2C0.687252%20a%201.1821057%2C1.1821057%200%200%201%20-0.262867%2C0.560568%201.3040376%2C1.3040376%200%200%201%20-0.502772%2C0.36263%201.3760882%2C1.3760882%200%200%201%20-0.623119%2C0.0966%20v%202.953287%20l%206.145683%2C-3.33175%20-6.145683%2C-3," |
|
|
dv'A (en)s'i:(ru) v'os;E2m t'otS;ka vOs;Ims'ot dv'Attsat;d;'evI3t; t'ys;VtS;_! s;,Ims'ot SE2z;d;d;Is;'jatv'os;E2m p@-rats'Ent dv'AttsVt; (en)s'i:(ru) p@-rats'Ent dv;'es;t;I p@-rats'Ent dv'A (en)s'i:(ru) p;'jat; t'otS;ka S,E#s;t;s'ot SE2z;d;d;Is;'jatd;'evI3t; t'ys;VtS;_! s'o@-*Okojd;'in p@-rats'Ent dv'AttsVt; tS;It'yR;I t'otS;ka p;Vd;d;Is;'jatd;'evI3t; t'ys;VtS;_! S,E#s;t;s'ot d;E2v;In'ostOd;'evI3t; p@-rats'Ent dv'A (en)s'i:(ru) d;'es;It; t'otS;ka dv'A m;,IlI;'onof_! S,E#s;t;s'ot p;Vd;d;Is;'jatdv;'e t'ys;VtS;_! t@-r;'ista d;E2v;In'ostOojd;'in p@-rats'Ent dv'AttsVt; d;'es;It; t'otS;ka dv;'es;t;I SE2z;d;d;Is;'jatp;'jat; t'ys;VtS;_! dv;'es;t;I t@-r;'ittsat;v'os;E2m p@-rats'Ent dv'A (en)s'i:(ru) d;'es;It; t'otS;ka dv'A m;,IlI;'onof_! S,E#s;t;s'ot p;Vd;d;Is;'jatdv;'e t'ys;VtS;_! t@-r;'ista d;E2v;In'ostOojd;'in p@-rats'Ent dv'AttsVt; (en)z'Ed(ru) p@-rats'Ent dv'AttsVt; (en)'Em(ru) p@-rats'Ent dv;'e t'ys;VdZ; d;'es;It; t'otS;ka n'ojltR;'i_!s;'ejm v'os;E#mS'Es;t;_!p;'jat; p@-rats'Ent dv'A (en)s'i:(ru) d;E2v;Itn'AttsVt; t'otS;ka s;,Ims'ot d;E2v;In'ostOv'os;E2m t'ys;VtS;_! p;,It;s'ot t@-r;'ittsat;s;'ejm p@-rats'Ent dv'AttsVt; (en)v'i:(ru) p@-rats'Ent dv;'es;t;I ojd;'in t'otS;ka st'o s;'emd;E2s;VttS;It'yR;I t'ys;VtS;_! st'o v'os;E2md;E2s;atv'os;E2m p@-rats'Ent dv'AttsVt; (en)'eI(ru) p@-rats'Ent dv;'es;t;I ojd;'in t'otS;ka tS;It'yr;E2sta v'os;E2md;E2s;atv'os;E2m t'ys;VtS;_! p;,It;s'ot d;E2v;Itn'AttsVt; p@-rats'Ent dv'A (en)s'i:(ru) ojd;'in t'otS;ka tS;It'yr;E2sta v'os;E2md;E2s;atv'os;E2m t'ys;VtS;_! p;,It;s'ot d;E2v;Itn'AttsVt; p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I p@-rats'Ent dv;'es;t;I ojd;'in p@-rats'Ent dv;'es;t;I t'otS;ka vOs;Ims'ot p;Vd;d;Is;'jats;'ejm t'ys;VtS;" "C0.87569253%200%200%201%200.36817%2C-0.2019%201.0387963%2C1.0387963%200%200%201%200.419637%2C-0.02375%20c%200.30087%2C0.04514%200.582739%2C0.216942%200.750593%2C0.470308%200.09502%2C0.142517%200.153603%2C0.308788%200.18844%2C0.478226%200.03484%2C0.168646%200.0475%2C0.340459%200.05701%2C0.513064%200.03167%2C0.601741%200.03167%2C1.205067%200.01426%2C1.808392%20-0.01426%2C0.526524%20-0.04355%2C1.0673%20-0.253366%2C1.549486%20-0.271575%2C0.619159%20-0.817101%2C1.08155%20-1.405383%2C1.414092%20a%205.5835296%2C5.5835296%200%200%201%20-1.257323%2C0.512272%20c%200.38163%2C1.219319%200.580363%2C2.56532%200.580363%2C3.93349%20a%2013.935071%2C13.935071%200%200%201%20-0.106901%2C1.682498%2010.264446%2C10.264446%200%200%200%205.054631%2C-8.829768%20c%200%2C-5.669041%20-4.59699%2C-10.2652391%20-10.265238%2C-10.2652391%20z%20M%2010.037865%2C19.798537%20v%201.174188%20a%201.488519%2C1.488519%200%200%201%200.857482%2C0.286619%201.3760882%2C1.3760882%200%200%201%200.440222%2C0.538402%20c%200.0966%2C0.213775%200.131432%2C0.456056%200.09184%2C0.687252%20a%201.1821057%2C1.1821057%200%200%201%20-0.262867%2C0.560568%201.3040376%2C1.3040376%200%200%201%20-0.502772%2C0.36263%201.3760882%2C1.3760882%200%200%201%20-0.623119%2C0.0966%20v%202.953287%20l%206.145683%2C-3.33175%20-6.145683%2C-3," |
|
|
|
|
|
|
|
|
# A deleted phoneme at the start of a word should preserve the sourceix property. |
|
|
# A deleted phoneme at the start of a word should preserve the sourceix property. |
|
|
test_phonemes en-GB-x-gbcwmd "aI 'av" "I have" |
|
|
|
|
|
|
|
|
test_phonemes1 en-GB-x-gbcwmd "aI 'av" "I have" |
|
|
|
|
|
|
|
|
# A deleted phonSWITCH should preserve the sourceix property of the deleted phoneme. |
|
|
# A deleted phonSWITCH should preserve the sourceix property of the deleted phoneme. |
|
|
test_phonemes hyw "'a g@rn'am" "A Կրնամ" |
|
|
|
|
|
|
|
|
test_phonemes1 hyw "'a g@rn'am" "A Կրնամ" |
|
|
|
|
|
|
|
|
test_phonemes en "'eI |
|
|
|
|
|
|
|
|
test_phonemes1 en "'eI |
|
|
b'i: s'i: |
|
|
b'i: s'i: |
|
|
d'i: |
|
|
d'i: |
|
|
'i: |
|
|
'i: |
|
|
'Ef" "A. B C, D. E: F." |
|
|
'Ef" "A. B C, D. E: F." |
|
|
|
|
|
|
|
|
# Handling of english acronym + genitive without breaking simple quote |
|
|
# Handling of english acronym + genitive without breaking simple quote |
|
|
test_phonemes en "hi: s'Ed |
|
|
|
|
|
|
|
|
test_phonemes1 en "hi: s'Ed |
|
|
aI w0z b'O@n InD@ j,u:,Es'eI z_:_: and l'Eft" "He said : I was born in the u.s.a.'s and left." |
|
|
aI w0z b'O@n InD@ j,u:,Es'eI z_:_: and l'Eft" "He said : I was born in the u.s.a.'s and left." |
|
|
|
|
|
|
|
|
test_phonemes en "hi: s'Ed |
|
|
|
|
|
|
|
|
test_phonemes1 en "hi: s'Ed |
|
|
h@l'oU |
|
|
h@l'oU |
|
|
aIa#m b'ak |
|
|
aIa#m b'ak |
|
|
and l'Eft" "He said : 'Hello, I am back.' and left." |
|
|
and l'Eft" "He said : 'Hello, I am back.' and left." |
|
|
|
|
|
|
|
|
# Hawaiian okina to apostrophe |
|
|
# Hawaiian okina to apostrophe |
|
|
test_phonemes en "h@w'aIi:" "Hawaiʻi" |
|
|
|
|
|
|
|
|
test_phonemes1 en "h@w'aIi:" "Hawaiʻi" |
|
|
|
|
|
|
|
|
#----- Emoji [http://www.unicode.org/reports/tr51/tr51-12.html] ----- |
|
|
#----- Emoji [http://www.unicode.org/reports/tr51/tr51-12.html] ----- |
|
|
|
|
|
|
|
|
# ED-3 - emoji_character |
|
|
# ED-3 - emoji_character |
|
|
test_phonemes en "'e@ri:z" "♈" |
|
|
|
|
|
test_phonemes my "pru3'a2nke3DN_|_| mj@@lu3'a2mj@2tsnh,a2N_|_| nm_|n'e3DN_|_| mj@@nh,ats" "😙" |
|
|
|
|
|
test_phonemes ka "k'ots#nis g'amomx,atveli s'axe m'omQim,are t#v'alebit#" "😙" |
|
|
|
|
|
test_phonemes ka "'imedg,ats#ru,ebuli m'agram Sv'ebis g'amomx,atveli s'axe" "😥" |
|
|
|
|
|
|
|
|
test_phonemes1 en "'e@ri:z" "♈" |
|
|
|
|
|
test_phonemes1 my "pru3'a2nke3DN_|_| mj@@lu3'a2mj@2tsnh,a2N_|_| nm_|n'e3DN_|_| mj@@nh,ats" "😙" |
|
|
|
|
|
test_phonemes1 ka "k'ots#nis g'amomx,atveli s'axe m'omQim,are t#v'alebit#" "😙" |
|
|
|
|
|
test_phonemes1 ka "'imedg,ats#ru,ebuli m'agram Sv'ebis g'amomx,atveli s'axe" "😥" |
|
|
# TODO: Fix adjacent emoji without whitespace so the pronunciation is separated by a space. |
|
|
# TODO: Fix adjacent emoji without whitespace so the pronunciation is separated by a space. |
|
|
test_phonemes en "'e@ri:zr'eInboU" "♈🌈" |
|
|
|
|
|
test_phonemes en "'e@ri:z r'eInboU" "♈ 🌈" |
|
|
|
|
|
|
|
|
test_phonemes1 en "'e@ri:zr'eInboU" "♈🌈" |
|
|
|
|
|
test_phonemes1 en "'e@ri:z r'eInboU" "♈ 🌈" |
|
|
|
|
|
|
|
|
# multi-word emoji |
|
|
# multi-word emoji |
|
|
test_phonemes en "Ekskla#m'eIS@n kw'EstS@n m'A@k" "⁉" |
|
|
|
|
|
test_phonemes en "Ekskla#m'eIS@n kw'EstS@n m'A@k r'eInboU" "⁉ 🌈" |
|
|
|
|
|
test_phonemes en "r'oUlIN 0nD@ fl'o@ l'aafIN" "🤣" # skip words |
|
|
|
|
|
|
|
|
test_phonemes1 en "Ekskla#m'eIS@n kw'EstS@n m'A@k" "⁉" |
|
|
|
|
|
test_phonemes1 en "Ekskla#m'eIS@n kw'EstS@n m'A@k r'eInboU" "⁉ 🌈" |
|
|
|
|
|
test_phonemes1 en "r'oUlIN 0nD@ fl'o@ l'aafIN" "🤣" # skip words |
|
|
|
|
|
|
|
|
# bug: https://github.com/espeak-ng/espeak-ng/issues/471 |
|
|
# bug: https://github.com/espeak-ng/espeak-ng/issues/471 |
|
|
test_phonemes sk "sm'eju:tsa s'a tv'a:R" "☺" |
|
|
|
|
|
test_phonemes sk "bl'ax sm'eju:tsa s'a tv'a:R" "blah ☺" |
|
|
|
|
|
|
|
|
test_phonemes1 sk "sm'eju:tsa s'a tv'a:R" "☺" |
|
|
|
|
|
test_phonemes1 sk "bl'ax sm'eju:tsa s'a tv'a:R" "blah ☺" |