Skip to content

Commit

Permalink
Book-Pahlavi
Browse files Browse the repository at this point in the history
  • Loading branch information
Vyshantha authored Jul 22, 2024
1 parent 670dbf2 commit 4961987
Showing 1 changed file with 30 additions and 9 deletions.
39 changes: 30 additions & 9 deletions transliterate.js
Original file line number Diff line number Diff line change
Expand Up @@ -237,28 +237,49 @@ function transliterate() {
*/
// Word End Marker ˈ
let resultBookPahlavi = "";
let textLa = document.getElementById("textarea1").value.toLowerCase();
const latinToBookPahlavi = {"ʾ":"!","h":"!","<ʾ":"#","<h":"#","ʾ>":"$","h>":"$","<ʾ>":"%","<h>":"%","b":"*","_b":")","z":";","<z":":","l":"@","<l":"A","ł":"D","<ł":"C","łł":"b","ļ":"F","k":"=","˜k":">","γ":"?","ḥ":"L","ḥ>":"M","p":"O","c":"c"," c ":"P","c>":"N","s1":"s","s1^":",","<s1":".","s2":"3","<s2":"j","š":"Q","<š":"R","t>":"T","t":"S","yk":"6","_yk":"p","x":"r","ḇyn":"U","χ":"V","åéìøü":"W","":".","f":"\n","_":""," ":" "};
const letterNotConnectingToLeft = ["ḥ","w","n","ʿ","r","ˈ","k","γ","ļ","p","c","t"]; // P̄ p̄ ?
let textLa = document.getElementById("textarea1").value;
if (/^[A-ZΓŁĻP̄ŠΧ]*$/.test(textLa)) {
textLa = textLa; // Aramaeogram TODO
} else {
textLa = textLa.toLowerCase(); // Pahlavi
}
const latinToBookPahlavi = {"ʾ":"!","h":"!","H":"!","<ʾ":"#","<h":"#","<H":"#","ʾ>":"$","h>":"$","H>":"$","<ʾ>":"%","<h>":"%","<H>":"%","b":"*","_b":")","B":"*","_B":")","z":";","<z":":","Z":";","<Z":":","l":"@","<l":"A","L":"@","<L":"A","ł":"D","<ł":"C","łł":"b","Ł":"D","<Ł":"C","ŁŁ":"b","ļ":"F","Ļ":"F","k":"=","˜k":">","K":"=","˜K":">","γ":"?","Γ":"?","ḥ":"L","ḥ>":"M","Ḥ":"L","Ḥ>":"M","p":"O","P":"O","c":"c"," c ":"P","c>":"N","C":"c"," C ":"P","C>":"N","s1":"s","s1^":",","<s1":".","S1":"s","S1^":",","<S1":".","s2":"3","<s2":"j","S2":"3","<S2":"j","š":"Q","<š":"R","Š":"Q","<Š":"R","t>":"T","t":"S","T>":"T","T":"S","yk":"6","_yk":"p","YK":"6","_YK":"p","x":"r","X":"r","ḇyn":"U","ḆYN":"U","χ":"V","Χ":"V","åéìøü":"W","":".","f":"\n","_":""," ":" "}; // TODO
// ḇ ẕ ḵ
const letterNotConnectingToLeft = ["ḥ","Ḥ","w","W","n","N","ʿ","r","R","ˈ","k","K","γ","Γ","ļ","Ļ","p","P","c","C","t","T","p̄","P̄"];
const deepCombiningLetters = {
"ʾh":"#$","ʾh":"#%","ʾd":"#e","ʾy":"#g","ʾc":"#N","ʾš":"!_Q","ʾš":"!_R","ʾt":"#T",
"ʾH":"#$","ʾH":"#%","ʾD":"#e","ʾY":"#g","ʾC":"#N","ʾŠ":"!_Q","ʾŠ":"!_R","ʾT":"#T",
"bb":"*)",
"BB":"*)",
"dd":"-e","yy":"1",
"mm":"HI","mm":"K","mm":"HJ",
"DD":"-e","YY":"1",
"mm":"HI","mm":"HJ","mm":"K",
"MM":"HI","MM":"HJ","MM":"K",
"s1s1":",s","s1s1":",,",
"S1S1":",s","S1S1":",,",
"s2s2":"33",
"šš":"Q_R"}; // ,"":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":""
"S2S2":"33",
"šš":"Q_R",
"ŠŠ":"Q_R"};
// ,"":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":""
// TODO
const flatCombiningLetters = {
"ʾb":"!)","ʾg":"!0","ʾḥ":"!M","ʾw":"!8","ʾn":"&","ʾz":"!;","ʾz":"!:","ʾk":"!=","ʾγ":"!?","ʾl":"!@","ʾl":"!A","ʾł":"!D","ʾł":"!C","ʾļ":"!F","ʾm":"!I","ʾm":"m","ʾm":"!J","ʾs1":"!s","ʾs2":"!3","ʾp":"!0",
"ʾB":"!)","ʾG":"!0","ʾḤ":"!M","ʾW":"!8","ʾN":"&","ʾZ":"!;","ʾZ":"!:","ʾK":"!=","ʾΓ":"!?","ʾL":"!@","ʾL":"!A","ʾŁ":"!D","ʾŁ":"!C","ʾĻ":"!F","ʾM":"!I","ʾM":"m","ʾM":"!J","ʾS1":"!s","ʾS2":"!3","ʾP":"!0",
"gg":"+0",
"GG":"+0",
"zz":";;","zz":";:",
"ZZ":";;","ZZ":";:",
"ll":"AA","ll":"A@",
"LL":"AA","LL":"A@",
"łł":"D_D","łł":"D_C",
"šš":"Q_Q"}; // ,"":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":""
let deepflathigh = "";
// let lines = textLa.split("\n");
"ŁŁ":"D_D","ŁŁ":"D_C",
"šš":"Q_Q",
"ŠŠ":"Q_Q"};
// ,"":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":"","":""
// TODO
let deepflathigh = ""; // TODO
for (let i = 0; i < textLa.length; i++) {
// resultBookPahlavi = resultBookPahlavi + lines[i].split("").reverse().join("") + "\n";
if (textLa[i] && textLa[i].indexOf("\n") > -1) { // New Lines
resultBookPahlavi = resultBookPahlavi + "\n";
} else if (textLa[i] && textLa[i+1] && textLa[i+2] && textLa[i+3] && deepCombiningLetters[textLa[i] + textLa[i+1] + textLa[i+2] + textLa[i+3]]) { // s1 , s2
Expand Down

0 comments on commit 4961987

Please sign in to comment.