Comments (7)
We could allow passing in the list of consonant clusters as an argument and define a constant for each of the common lists. What should we call each of these sets? BASIC, POETIC, HOMERIC?
from greek-accentuation.
So, in other words, we'd have
BASIC = [
"βδ", "βλ", "βρ",
"γλ", "γν", "γρ",
"δρ",
"θλ", "θν", "θρ",
"κλ", "κν", "κρ", "κτ",
"μν",
"πλ", "πν", "πρ", "πτ",
"σβ", "σθ", "σκ", "σμ", "σπ", "στ", "σφ", "σχ", "στρ",
"τρ",
"φθ", "φλ", "φρ",
"χλ", "χρ",
]
POETIC = [
"δρ",
"θλ", "θν", "θρ", "θμ",
"κλ", "κν", "κρ",
"πλ", "πν", "πρ",
"τρ", "τμ", "τν",
"φλ", "φρ",
"χλ", "χρ",
]
from greek-accentuation.
then syllabify
would take an option arg for consonant clusters, e.g.
from greek_accentuation.syllabify import syllabify, POETIC
syllabify(word) # same as syllabify(word, BASIC)
syllabify(word, POETIC)
from greek-accentuation.
I think that this would work very well! Tomorrow I will double-check the list of clusters allowed in poetry and Homer
from greek-accentuation.
@francescomambrini were you able to double-check the list of clusters for POETIC and HOMER?
from greek-accentuation.
@francescomambrini any update on this? I think I can proceed just with the POETIC if that list looks right and can add HOMER when you get a chance.
from greek-accentuation.
Yes! Homer's prosody is complicated by several historical phenomena, like the preservation of digamma, some anomalous consonant redoubling (e.g. ὥςτε λίς > ὥς-τελ-λἰς), or etymological syllabification.
Those cases are basically impossible to catch in a function. In practice, however, for the most part no consonant clustering is needed in Homer. I think the most straightforward way is to give another option, along with PROSE and POETIC, named NO_CLUSTER (empty list). Then users might deal with the exceptions case by case: this should work with Homer.
Maybe there is a more sophisticated way to deal with Homer, but I didn't find it...
from greek-accentuation.
Related Issues (15)
- consider containing package HOT 7
- document the core API HOT 2
- Syllabify rules HOT 1
- Incorrect syllabification of αυῖ (e.g. μεμαυῖα)
- How do I get rid of extra accents from enclitics: e.g., Μαῖράν HOT 3
- Test suite HOT 1
- add_necessary_breathing can get UnboundLocalError
- Grave accent HOT 1
- display_accentuation(get_accentuation('ἣ')) -- eta rough breathing and grave -- throws and error HOT 5
- a "strip accent" function? HOT 1
- Grave accent (again) HOT 1
- Accenting Ἰάννης HOT 3
- dealing with an omega that is short for the purposes of accentuation
- accenting ὕβρεως rather than *ὑβρέως
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from greek-accentuation.