Skip to content

Revise Syllable.structure #213

@charlesLoder

Description

@charlesLoder

Going forward with API's, in particularly with handling of sheva, the structure function needs to be revised.

Return type

The current return type is not flexible. If Modern Hebrew syllabification were implemented, the current structure of the tuple would become meaningless. It is better to return an object, allowing for better naming.

Terminology

Though the the Syllable class is focused more on linguistic components (e.g. a sheva is counted as a vowel, though not labeled a vowel character in Unicode), the entire library is still focused on syllabifying text, not doing proper linguistic analysis.

Following precedent of traditional grammars, like GKC, opt to use the terms:

  • initial_consonant
  • vowel
  • final_consonant

Though clunky, they do not conflate orthography with linguistics.

Maters

By using a more generic "vowel" term, the mater could be included as part of the vowel — e.g. a hiriq-yod

Structure

See thread here, with final return type looking something like this:

{
  initial_consonants: {
    original: "יּ֫",
    text: "י" // the "meaningful" part of the text
    silent_characters: []
  },
  vowel: {
    original: "\u{5B7}", // the patah by itself is illegible
    text: "\u{5B7}"
    silent_characters: []
  },
  final_consonants: {
    original: "רְא",
    text: "ר"
    silent_characters: ["\u{5B0}", "א"]
  }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions