Installation

git clone https://github.com/vvulpes0/Language-Toolkit-2.git
cabal v2-install all
cabal v2-install --lib LTK

For more information, see the README.

Examples

There are example pleb and plebby files in the examples directory of the Git repository. Their format is documented by the plebby(1) and pleb(5) manual pages. If you want to use these examples, you should create a symbolic link called plebFiles in the directory you want to work in.

The pleb and plebby files included in that directory are in ASCII format for maximum compatibility. There is also a Unicode syntax that may or may not be more readable. For example, the Cheremis Meadow stress pattern (described on the poster presented at SCiL 2019) can be written in ASCII format:

= sigma {/L, /H, /S}
= sigma' {/L', /H', /S'}
= sigma* {sigma, sigma'}
= heavy* {/H, /S, /H', /S'}
= obligatoriness <sigma'>
= culminativity ~<sigma',sigma'>
= d1 ~<sigma',/S>
= d2 ~<sigma',/H,sigma*>
= d3 ~</L' sigma*>
= d4 /\{~</L',heavy*>, ~<heavy*,/L'>}
= d5 ~|%<heavy*,/H'>
= cheremis-meadow /\{obligatoriness, culminativity, d1, d2, d3, d4, d5}
cheremis-meadow

or in Unicode format:

= L {/L} = H {/H} = S {/S} = ˈL {/L'} = ˈH {/H'} = ˈS {/S'}
= σ {L, H, S}
= ˈσ {ˈL, ˈH, ˈS}
= ˣσ {σ, ˈσ}
= ˣheavy {H, S, ˈH, ˈS}
= obligatoriness ⟨ˈσ⟩
= culminativity ¬⟨ˈσ,ˈσ⟩
= d1 ¬⟨ˈσ,S⟩
= d2 ¬⟨ˈσ,H,ˣσ⟩
= d3 ¬⟨ˈL ˣσ⟩
= d4 ⋂{¬⟨ˈL,ˣheavy⟩, ¬⟨ˣheavy,ˈL⟩}
= d5 ¬⋉⟨ˣheavy,ˈH⟩
= cheremis-meadow ⋂{obligatoriness, culminativity, d1, d2, d3, d4, d5}
cheremis-meadow

Note that the trick of defining singleton sets to eliminate the slashes works in both variants of the syntax, and that nothing prevents a user from mixing both types of syntax in the same file. The prefix marker for primary stress used here is “MODIFIER LETTER VERTICAL LINE” (u02C8) while the suffix version is “APOSTROPHE” (u0027) — attempting to use the apostrophe in prefix position will fail because that character is not a letter.

A spreadsheet containing a (sometimes-incorrect) list of factorizations that predates the factorize program is available in Open Document format. This can be used with stressConstraints.plebby, as shown in the other provided example files, though it should be noted that the output of factorize is definitive.