Добрый день. Нужно сделать транскрипцию с турецкого языка. Вот 2 textarea:
<textarea id="decoder-form__txt" name="input" placeholder="Ваш текст на турецком языке"></textarea>
<textarea id="decoder-form__result" placeholder="Как читается по-русски"></textarea>
Вот скрипт:
<script>
document.getElementById('decoder-form__txt').onkeyup = function() {
var text = this.value;
// Буква Ğ
var tr = "İğ Eğ Öğ Üğ iğ eğ öğ üğ".split(/ +/g);
var ru = "Ий Эй Ой Юй ий ей ой юй".split(/ +/g);
for(var x = 0; x < tr.length; x++) {
text = text.split(tr[x]).join(ru[x]);
}
// Сочетания Y с гласными
var tr = "Ya Ye Yu Yü ya ye yu yü".split(/ +/g);
var ru = "Я Е Ю Ю ья ье ю ю".split(/ +/g);
for(var x = 0; x < tr.length; x++) {
text = text.split(tr[x]).join(ru[x]);
}
// Циркумфлекс
var tr = "Gâ Kâ Lâ gâ kâ lâ Gû Kû Lû gû kû lû".split(/ +/g);
var ru = "Гя Кя Ля гя кя ля Гю Кю Лю гю кю лю".split(/ +/g);
for(var x = 0; x < tr.length; x++) {
text = text.split(tr[x]).join(ru[x]);
}
// остальные буквы
var tr = "A Â B C Ç D E F G Ğ H I İ Î J K L M N O Ö P R S Ş T U Û Ü V Y Z a â b c ç d e f g ğ h ı i î j k l m n o ö p r s ş t u û ü v y z".split(/ +/g);
var ru = "А А Б ДЖ Ч Д Е Ф Г Г Х Ы И И Ж К Л М Н О Ё П Р С Ш Т У У Ю М Й З а а б дж ч д е ф г г х ы и и ж к л м н о ё п р с ш т у у ю м й з".split(/ +/g);
for(var x = 0; x < tr.length; x++) {
text = text.split(tr[x]).join(ru[x]);
}
document.getElementById('decoder-form__result').innerHTML = text;
}
</script>
Столкнулся с проблемой. При положении в начале слова, буква может иметь другой звук. В частности нужно:
1. В начале слова и после гласных ye → е, ya → я, yu (yü) → ю: Bahtiyar → Бахтияр, сейчас выводит Бахтиьяр
2. В начале слова и после гласной действуют правила e → э, ı → и, ö → о, ü → у
Прошу помощи.