Add Tiberian Pronunciation Tradition #37
Replies: 25 comments 2 replies
-
That would be great! I used Khan's work in the syllabification package this package uses. If you're able to do it, you can open a PR. |
Beta Was this translation helpful? Give feedback.
-
Yes, Tiberian Pronunciation Tradition has much to do with syllabification because that's how you know a vowel is long or short if is in an open syllable or a closed accentuated syllable. In Tiberian vocalization that's why they invented sheva, not to write down a "very short vowel" but to not allow a short vowel to be lenghtened if in an open syllable. Tiberian tradition noted vowels QUALITY and not QUANTITY etc. Right now reading your code to better understant how to lenghten vowels when accentuated or in open syllables, remove quiescent Aleph (like in baʀ̟eːˈʃiːiθ) and add rules of sheva as normal short vowels with quality of a, ɔ, e, ɛ, o, u and i (khatefs don't have all the qualities). |
Beta Was this translation helpful? Give feedback.
-
Let me know what kind of issues you run into. Some work may have to be done on the havarotjs package, and I have an idea to improve the |
Beta Was this translation helpful? Give feedback.
-
That one is tricky; I even mentioned it in the syllabification docs.
The When it is false, it is šōmrîm |
Beta Was this translation helpful? Give feedback.
-
About שְׁתַּיִם and other exceptions (in other cases) maybe they should be manually added to a list of exceptions? |
Beta Was this translation helpful? Give feedback.
-
Any idea where should I add some rules, let's say, for quality of shewa or vowel length (open syllable or accentuated closed syllable)? Delete quiescent Aleph, He, Waw, Yod etc. Can be added in schema? I already added a new tiberianKhan.js module with definitions of signs and sqnmlvy/wawShureq/STRESS_MARKER etc. bǝʀ̟eʔˈʃîθ bɔˈʀ̟ɔʔ ʔĕloˈhîm ˈʔeθ haʃʃɔˈmajim vǝˈʔeθ hɔʔɔʀ̟ɛsˁ I need to get this: baʀ̟eːˈʃiːiθ bɔːˈʀ̟ɔː ʔɛloːˈhiːim ˈʔeːeθ haʃʃɔːˈmaːjim veˈʔeːeθ hɔːˈʔɔːʀ̟ɛsˁ |
Beta Was this translation helpful? Give feedback.
-
Check out this new branch where you can use a callback for an additional feature. See the test for an example. If you're working on a branch, you can rebase on that branch. |
Beta Was this translation helpful? Give feedback.
-
Had some luck with
|
Beta Was this translation helpful? Give feedback.
-
Yeah, documentation hasn't been my strong suit. Let me fiddle around with the callback to see it I can get something |
Beta Was this translation helpful? Give feedback.
-
It's a little rough const heb = require("./dist/index");
const additionalFeatureTransliteration = require("./dist/rules").additionalFeatureTransliteration;
const str = "יְהִי";
const result = heb.transliterate(str, {
ADDITIONAL_FEATURES: [
{
FEATURE: "cluster",
HEBREW: "\u05B0",
TRANSLITERATION: (cluster, transliteration, schema) => {
const shewa = new RegExp(transliteration, "u");
const clusterText = cluster.text;
/**
* @type {Cluster}
*/
const next = cluster.next;
const gutturalYodVowel = /[אהחעי]([\u{05B1}-\u{05BB}\u{05C7}])/u;
const match = next.text.match(gutturalYodVowel);
if (shewa.test(clusterText) && match) {
return additionalFeatureTransliteration(clusterText, shewa, match[1], schema);
}
return clusterText;
}
}
]
});
console.log(result);
// yihî Some of the naming conventions need to be improved in the callback. |
Beta Was this translation helpful? Give feedback.
-
Wonderful!! I will give it a go. |
Beta Was this translation helpful? Give feedback.
-
Odd enough I get this result on the console:
Is verbose or smth? |
Beta Was this translation helpful? Give feedback.
-
That wasn't an issue, in the JS file has
|
Beta Was this translation helpful? Give feedback.
-
Ok, I’ll take a look after the holidays |
Beta Was this translation helpful? Give feedback.
-
Thanks @charlesLoder, happy holidays! |
Beta Was this translation helpful? Give feedback.
-
It looks like the build command wasn't run after checking out the latest branch. If you're still on
|
Beta Was this translation helpful? Give feedback.
-
***@***.***:~/hebrew-transliteration$ npm run build
***@***.*** build
tsc
***@***.***:~/hebrew-transliteration$ node test.js
w(cluster, transliteration, schema) => {
const shewa = new RegExp(transliteration, "u");
const clusterText = cluster.text;
/**
* @type {Cluster}
*/
const next = cluster.next;
const gutturalYodVowel = /[ʾhḥʿy]([\u{05B1}-\u{05BB}\u{05C7}])/u;
const match = next.text.match(gutturalYodVowel);
if (shewa.test(clusterText) && match) {
return additionalFeatureTransliteration(clusterText, shewa,
match[1], schema);
}
return clusterText;
}ʾēt
…On Tue, Dec 27, 2022 at 9:37 AM Charles Loder ***@***.***> wrote:
It looks like the build command wasn't run after checking out the latest
branch.
If you're still on main, checkokut the latest branch and build:
git switch add-feature-cb
npm run buil
node test.js
—
Reply to this email directly, view it on GitHub
<#37 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AD44GHSEXI3AOVSL6QHOUODWPKTDLANCNFSM6AAAAAAS37IJOI>
.
You are receiving this because you were mentioned.Message ID:
<charlesLoder/hebrew-transliteration/repo-discussions/37/comments/4501386@
github.com>
|
Beta Was this translation helpful? Give feedback.
-
This is the code in my test.js, does it run for you? For me is just verbose and outputs the js code:
|
Beta Was this translation helpful? Give feedback.
-
When I run your code on the
When I run it on the
|
Beta Was this translation helpful? Give feedback.
-
Now that is very very strange... I will try on another system, is just weird. Here is my full log:
|
Beta Was this translation helpful? Give feedback.
-
Tried it on another machine, same result, I'm on |
Beta Was this translation helpful? Give feedback.
-
Somehow, even being on |
Beta Was this translation helpful? Give feedback.
-
Good, now works, kind of... :)
should have been (not yet Tiberian! working on it):
Using SBL schema I get this:
Heb.
|
Beta Was this translation helpful? Give feedback.
-
Yeah, right now everything is a little too tightly coupled. Because Tiberian moves more into the realm of transcription, rather than transliteration, there are still a lot of improvements that need to be made |
Beta Was this translation helpful? Give feedback.
-
fyi, I recently had a new addition to my family so work on this project has been slowed. I'll keep working on havarotjs which help improve this, but it will be a while before I get any solid work done on this. |
Beta Was this translation helpful? Give feedback.
-
It could be very useful to add The Tiberian Pronunciation Tradition (https://www.openbookpublishers.com/books/10.11647/obp.0163) as per Geoffrey Khan work. Not very hard, working on it myself for a personal project.
Example for Genesis 1:1
baʀ̟eːˈʃiːiθ bɔːˈʀ̟ɔː ʔɛloːˈhiːim ˈʔeːeθ haʃʃɔːˈmaːjim veˈʔeːeθ hɔːˈʔɔːʀ̟ɛsˁ
Beta Was this translation helpful? Give feedback.
All reactions