A subunit of a Word consisting of consonants, vowels, and other linguistic and ortographic features.

Hierarchy

Constructors

  • Creates a new Syllable

    Parameters

    • clusters: Cluster[]

      an array of Cluster

    • options: SyllableParams = {}

      optional parameters

    Returns Syllable

    Example

    new Syllable([new Cluster("אָ"), new Cluster("ב")]);
    

    Description

    See the {@page Syllabification} page for how a syllable is determined. Currently, the Divine Name (e.g. יהוה), non-Hebrew text, and Hebrew punctuation (e.g. passeq, nun hafucha) are treated as a single syllable because these do not follow the rules of Hebrew syllabification.

Accessors

  • get chars(): Char[]
  • Gets all the characters in the Syllable

    Returns Char[]

    a one dimensional array of characters

    Example

    const text = new Text("וַיִּקְרָ֨א");
    text.syllables[2].chars;
    // [
    // Char { original: "ר" },
    // Char { original: "ָ" },
    // Char { original: "" }, i.e. \u{05A8} (does not print well)
    // Char { original: "א" }
    // ]
  • get clusters(): Cluster[]
  • Gets all the clusters in the Syllable

    Returns Cluster[]

    a one dimensional array of clusters

    const text = new Text("וַיִּקְרָ֨א");
    text.syllables[1].clusters;
    // [
    // Cluster { original: "יִּ" },
    // Cluster { original: "קְ" }
    // ]
  • get coda(): string
  • Gets the coda of the syllable - see structure

    Returns string

    the coda of the syllable as a string, including any taamim and ignoring gemination of the following syllable - see codaWithGemination

    Example

    const text = new Text("יָ֥ם");
    text.syllables[0].coda;
    // "ם"
  • get codaWithGemination(): string
  • Gets the coda of the syllable, including gemination of the following syllable - see structure

    Returns string

    the coda of the syllable as a string, including any taamim and including gemination of the following syllable - see structure

    Example

    const text = new Text("מַדּ֥וּעַ");
    text.syllables[0].codaWithGemination;
    // "דּ"
    text.syllables[0].coda // without gemination
    // ""
  • get consonantNames(): ConsonantName[]
  • Gets the names of the consonant characters of the syllable

    Returns ConsonantName[]

    a one dimensional array of consonant character names

    Example

    const text = new Text("רְ֭שָׁעִים");
    text.syllables[2].consonantNames;
    // ["AYIN", "YOD", "FINAL_MEM"]

    Description

    This returns a one dimensional array of consonant names, even if the characters are not phonemic consonants, meaning even the name of maters are returned. See the structure method if you need the consonants with phonemic value.

  • get consonants(): ("א" | "ב" | "ג" | "ד" | "ה" | "ו" | "ז" | "ח" | "ט" | "י" | "ך" | "כ" | "ל" | "ם" | "מ" | "ן" | "נ" | "ס" | "ע" | "ף" | "פ" | "ץ" | "צ" | "ק" | "ר" | "ש" | "ת")[]
  • Gets the consonant characters of the syllable

    Returns ("א" | "ב" | "ג" | "ד" | "ה" | "ו" | "ז" | "ח" | "ט" | "י" | "ך" | "כ" | "ל" | "ם" | "מ" | "ן" | "נ" | "ס" | "ע" | "ף" | "פ" | "ץ" | "צ" | "ק" | "ר" | "ש" | "ת")[]

    a one dimensional array of consonant characters

    Example

    const text = new Text("רְ֭שָׁעִים");
    text.syllables[2].consonants;
    // ["ע", "י", "ם"]

    Description

    This returns a one dimensional array of consonant characters, even if the characters are not phonemic consonants, meaning even maters are returned as consonant characters. See the structure method if you need the consonants with phonemic value.

  • get isAccented(): boolean
  • Checks if the Syllable is accented

    Returns boolean

    true if Syllable is accented

    Example

    const text = new Text("וַיִּקְרָ֨א"); // note the taam over the ר
    text.syllables[0].isAccented; // i.e. "וַ"
    // false
    text.syllables[2].isAccented; // i.e. "רָ֨א"
    // true

    Description

    An accented syllable receives stress, and is typically indicated by the presence of a taam character

  • set isAccented(accented): void
  • Sets whether the Syllable is accented

    Parameters

    • accented: boolean

      a boolean indicating if the Syllable is accented

    Returns void

  • get isClosed(): boolean
  • Checks if the Syllable is closed

    Returns boolean

    true if Syllable is closed

    Example

    const text = new Text("וַיִּקְרָ֨א");
    text.syllables[0].isClosed; // i.e. "וַ"
    // true
    text.syllables[2].isClosed; // i.e. "רָ֨א"
    // false

    Description

    A closed syllable in Hebrew is a CVC or CVCC type, a mater letter does not close a syllable

  • set isClosed(closed): void
  • Sets whether the Syllable is closed

    Parameters

    • closed: boolean

      a boolean for whether the Syllable is closed

    Returns void

  • get isFinal(): boolean
  • Checks if the Syllable is the final syllable in a word

    Returns boolean

    true if Syllable is final

    Example

    const text = new Text("וַיִּקְרָ֨א");
    text.syllables[0].isFinal; // i.e. "וַ"
    // false
    text.syllables[2].isFinal; // i.e. "רָ֨א"
    // true
  • set isFinal(final): void
  • Sets whether the Syllable is the final syllable in a word

    Parameters

    • final: boolean

      a boolean for whether the Syllable is the final Syallble

    Returns void

  • get nucleus(): string
  • Returns the nucleus of the syllable - see structure

    Returns string

    the nucleus of the syllable as a string, including any taamim - see structure

    Example

    const text = new Text("יָ֥ם");
    text.syllables[0].nucleus;
    // "\u{05B8}\u{05A5}""

    Description

    The nucleus is the vowel of the syllable - present in every syllable and containing its vowel (with any materes lecticonis) or a shureq.

  • get onset(): string
  • Returns the onset of the syllable - see structure

    Returns string

    the onset of the syllable as a string - see structure

    Example

    const text = new Text("יָ֥ם");
    text.syllables[0].onset;
    // "י"

    Description

    The onset is any initial consonant of the syllable - present in every syllable except those containing a except word-initial shureq or a furtive patah.

  • get taamim(): ("֑" | "֒" | "֓" | "֔" | "֕" | "֖" | "֗" | "֘" | "֙" | "֚" | "֛" | "֜" | "֝" | "֞" | "֟" | "֠" | "֡" | "֢" | "֣" | "֤" | "֥" | "֦" | "֧" | "֨" | "֩" | "֪" | "֫" | "֬" | "֭" | "֮")[]
  • Gets all the taamim characters in the Syllable

    Returns ("֑" | "֒" | "֓" | "֔" | "֕" | "֖" | "֗" | "֘" | "֙" | "֚" | "֛" | "֜" | "֝" | "֞" | "֟" | "֠" | "֡" | "֢" | "֣" | "֤" | "֥" | "֦" | "֧" | "֨" | "֩" | "֪" | "֫" | "֬" | "֭" | "֮")[]

    a one dimensional array of taamim characters in the syllable

    Example

    const text = new Text("הָאָ֖רֶץ");
    text.syllables[1].taamim;
    // ["\u{596}"]
  • get taamimNames(): TaamimName[]
  • Gets all the taamim names in the Syllable

    Returns TaamimName[]

    a one dimensional array of taamim names in the syllable

    Example

    const text = new Text("הָאָ֖רֶץ");
    text.syllables[1].taamimNames;
    // ["TIPEHA"]
  • get text(): string
  • The text of the syllable

    Returns string

    the sequenced and normalized text of the syllable

    Example

    const text = new Text("וַיִּקְרָ֨א");
    text.syllables.map((syl) => syl.text);
    // [
    // "וַ"
    // "יִּקְ"
    // "רָ֨א"
    // ]

    Description

    This returns a string that has been built up from the .text of its constituent Clusters.

  • get vowelNames(): VowelName[]
  • Gets the names of the vowel characters in the syllable

    Returns VowelName[]

    an array of names of vowel characters in the syllable

    const text = new Text("מִתָּ֑͏ַ֜חַת");
    text.syllables[1].vowelNames;
    // ["QAMATS", "PATAH"]

    Description

    This returns an array of names of vowel characters in the syllable, but not for mater lectionis (e.g. a holam vav would return the HOLAM, not the vav). The only exception is a shureq, which returns "SHUREQ" because there is no vowel character for a shureq. It is very uncommon to have multiple vowel characters in a syllable. According to {@page Syllabification}, a sheva is a vowel and serves as the nucleus of a syllable. Unlike Cluster, a Syllable is concerned with linguistics, so a sheva is a vowel character.

  • get vowels(): ("ֱ" | "ֲ" | "ֳ" | "ִ" | "ֵ" | "ֶ" | "ַ" | "ָ" | "ֹ" | "ֺ" | "ֻ" | "ׇ" | "ְ" | "וּ")[]
  • Gets the vowel characters of the syllable

    Returns ("ֱ" | "ֲ" | "ֳ" | "ִ" | "ֵ" | "ֶ" | "ַ" | "ָ" | "ֹ" | "ֺ" | "ֻ" | "ׇ" | "ְ" | "וּ")[]

    an array of vowel characters in the syllable

    Example

    const text = new Text("מִתָּ֑͏ַ֜חַת");
    text.syllables[1].vowels;
    // ["\u{05B8}", "\u{05B7}"]

    Description

    This returns a single vowel character, even for most mater lectionis (e.g. a holam vav would return the holam, not the vav). The only exception is a shureq, which returns the vav and the dagesh because there is no vowel character for a shureq. It is very uncommon to have multiple vowel characters in a syllable. According to {@page Syllabification}, a sheva is a vowel and serves as the nucleus of a syllable. Unlike Cluster, a Syllable is concerned with linguistics, so a sheva is a vowel character

  • get word(): null | Word
  • Gets the Word to which the syllable belongs

    Returns null | Word

    the Word to which the syllable belongs

    Example

    const text = new Text("הָאָ֖רֶץ");
    text.syllables[0].word;
    // Word {
    // text: "הָאָ֖רֶץ"
    // }
  • set word(word): void
  • Sets the Word to which the syllable belongs

    Parameters

    • word: null | Word

      the Word to which the syllable belongs

    Returns void

Methods

  • Checks if the syllable contains the consonant character matching the name passed in

    Parameters

    Returns boolean

    a boolean indicating if the syllable contains the consonant character matching the name passed in

    Example

    const text = new Text("רְ֭שָׁעִים");
    text.syllables[2].hasConsonantName("AYIN");
    // true
    text.syllables[2].hasConsonantName("YOD");
    // false

    Description

    This checks if the syllable contains the given consonant name, even if the character is not a phonemic consonant.

  • Checks if the syllable contains the taamim character of the name passed in

    Parameters

    Returns boolean

    a boolean indicating if the syllable contains the taamim character of the name passed in

    Example

    const text = new Text("הָאָ֖רֶץ");
    text.syllables[1].hasTaamName("TIPEHA");
    // true

    Description

    Note: it only checks according to the character name, not its semantic meaning. E.g. "כֵֽן׃" would be true when checking for "METEG", not silluq

  • Checks if the syllable contains the vowel character of the name passed in

    Parameters

    Returns boolean

    a boolean indicating if the syllable contains the vowel character of the name passed in

    Example

    const text = new Text("הַיְחָבְרְךָ");
    text.syllables[0].hasVowelName("PATAH");
    // true

    // test for vocal sheva
    text.syllables[1].hasVowelName("SHEVA");
    // true

    // test for silent sheva
    text.syllables[2].hasVowelName("SHEVA");
    // false

    Description

    This returns a boolean if the vowel character is present, even for most mater lectionis (e.g. in a holam vav construction, "HOLAM" would return true) The only exception is a shureq, because there is no vowel character for a shureq. According to {@page Syllabification}, a sheva is a vowel and serves as the nucleus of a syllable. Unlike Cluster, a Syllable is concerned with linguistics, so a sheva is a vowel character. It returns true for "SHEVA" only when the sheva is the vowel (i.e. a vocal sheva or sheva na').

  • Returns the structure of the syllable

    Parameters

    • withGemination: boolean = false

      If this argument is true, include gemination of the next syllable's onset in this syllable's coda.

      const text = new Text("מַדּוּעַ");
      text.syllables.map(s => s.structure(true));
      // [
      // [ 'מ', 'ַ', 'דּ' ],
      // [ 'דּ', 'וּ', '' ], NOTE: the dalet is the onset, but rendering can sometimes causes the blank string to appear to be first
      // [ '', 'ַ', 'ע' ]
      // ]

    Returns [string, string, string]

    the structure of the Syllable, i.e. the syllable's onset, nucleus, and coda.

    Description

    • The onset is any initial consonant of the syllable - present in every syllable except those containing a except word-initial shureq or a furtive patah.
    • The nucleus is the vowel of the syllable - present in every syllable and containing its vowel (with any materes lecticonis) or a shureq.
    • The coda is all final consonants of the syllable - not including any matres lecticonis, and including the onset of the subsequent syllable if the subsequent syllable is geminated and the withGemination argument is true.

Generated using TypeDoc