The Candl (Conlangs and Languages) tool is for those wanting to automate complex language morphological and phonetic rules. It uses regular expressions extensively to define these rules. This tool is not very user-friendly at the moment, but I invite others to make changes as needed, and encourage them to publish useful modifications. Syntax and semantics are still left to the language crafter to decide, but much else is automated. This tool can therefore help prevent typos and speed up translation efforts.
It's not yet fully-featured, but it's a start and can already be used to a large degree.
Here's a usage example.
example.dict
Code: Select all
skom (v): run
narum (n): store
atl (pn): 3SG
Code: Select all
-PAST $ > yo
to= ^ > au
3SG-SUBJ $ > u
Code: Select all
# Rewrite some letters to appropriate IPA
y > j
l > ɬ
# Some useful phoneme groupings (V for vowels, C for consonants)
V=[aeiou]
C=(?:[ptknmsjɬ]|tɬ)
# break syllables apart:
(V)(CV) > \1\.\2
(VC)(CV) > \1\.\2
(V)(VV) > \1\.\2
# Primary stress rules:
(\.|^)([^\.]+\.[^\.]+$) > ˈ\2 # This puts the stress on the next-to-last syllable
Code: Select all
run-PAST store=to 3SG-SUBJ
"He ran to the store"
Code: Select all
ˈskom.jo auˈna.rum aˈtɬu
skomyo aunarum atlu
run-PAST to=store 3SG-SUBJ
"He ran to the store"