mesdan
Version:
Latinî mesdan ile Osmanî metin yazmak için hazırlanmış bir alettir.
58 lines (57 loc) • 2.4 kB
JavaScript
import { gayriİşaretlerdenMi, harekeMi, kesmeMi, tenvinMi, şeddeMi } from "../aletler/harf-tedkiki";
export function silOsmaniMetindenHarfSonra(mevcutMetin, alemMevkisi) {
let metin = mevcutMetin;
const alemİlkresi = metin.slice(0, alemMevkisi.başMevki);
const alemSonrası = metin.slice(alemMevkisi.sonMevki);
if (alemSonrası.length < 1) {
return {
metinOsmani: mevcutMetin,
alemBaşMevkisi: alemMevkisi.başMevki,
};
}
else if (alemSonrası.length === 1) {
return {
metinOsmani: alemİlkresi,
alemBaşMevkisi: alemMevkisi.başMevki,
};
}
// const alemSonrasındekiHarf_Birinci = alemSonrası.slice(0, 1);
const alemSonrasındekiHarf_İkinci = alemSonrası.slice(1, 2);
const alemSonrasındekiHarf_Üçüncü = alemSonrası.slice(2, 3);
const alemSonrasındekiHarf_Dördüncü = alemSonrası.slice(3, 4);
const alemSonrasındekiHarf_İkinciÜçüncü = alemSonrası.slice(1, 3);
const alemSonrasıHarekeliMi = harekeMi(alemSonrasındekiHarf_İkinci);
const alemSonrasıTenvinliMi = tenvinMi(alemSonrasındekiHarf_İkinci);
const alemSonrasıGayriİşaretliMi = gayriİşaretlerdenMi(alemSonrasındekiHarf_İkinci);
const alemSonrasıŞeddeliMi = şeddeMi(alemSonrasındekiHarf_İkinciÜçüncü);
const alemSonrasıKesmeliMi = kesmeMi(alemSonrasındekiHarf_İkinci);
const alemSonrasıŞeddeHariciMi = alemSonrasıHarekeliMi || alemSonrasıTenvinliMi || alemSonrasıGayriİşaretliMi;
let silinecekHarfAdedi = 1;
if (alemSonrasıŞeddeliMi) {
const şeddeAhiriKesmeMi = kesmeMi(alemSonrasındekiHarf_Dördüncü);
if (şeddeAhiriKesmeMi) {
silinecekHarfAdedi = 4;
}
else {
silinecekHarfAdedi = 3;
}
}
else if (alemSonrasıŞeddeHariciMi) {
const şeddeHariciAhiriKesmeMi = kesmeMi(alemSonrasındekiHarf_Üçüncü);
if (şeddeHariciAhiriKesmeMi) {
silinecekHarfAdedi = 3;
}
else {
silinecekHarfAdedi = 2;
}
}
else if (alemSonrasıKesmeliMi) {
silinecekHarfAdedi = 2;
}
const silinmedenSonra = alemSonrası.slice(silinecekHarfAdedi);
metin = alemİlkresi + silinmedenSonra;
return {
metinOsmani: metin,
alemBaşMevkisi: alemMevkisi.başMevki,
};
}