Sound change rules (also known as phonological rules) are mainly used in the Sound Change field and in custom affixes. This notation can also be used in the Custom Spelling field to mimic spelling idiosyncrasies of natural languages, and in illegal combinations field to prohibit combinations of phonemes.
A basic rule like
Input | Rule | Output |
---|---|---|
alabama | a > e |
The
You can also specify if the change should only happen in a particular environment:
Input | Rule | Output |
---|---|---|
alabama | a > e / _b |
Word boundaries
Input | Rule | Output |
---|---|---|
alabama | a > e / #_ |
Sets
Capture a set of phonemes inside curly brackets:
Input | Rule | Output |
---|---|---|
alabama | {b,m} > p | |
alabama | a > e / _{b,m} |
Note: Curly brackets cannot be used in the replacement side. Instead, bar symbol
Input | Rule | Output |
---|---|---|
alabama | V > e / C_ |
Additionally,
Optional patterns
Round brackets makes a pattern optional:
Input | Rule | Output |
---|---|---|
to god | o > e / _(C)# |
Adding a star symbol
Input | Rule | Output |
---|---|---|
to gods | o > e / _(C)*# |
Deletion
Null symbol
Input | Rule | Output |
---|---|---|
alabama | C > ∅ |
You can also literally write nothing:
Insertion
The null symbol can be useful for inserting infixes into a certain position of the word:
Input | Rule | Output |
---|---|---|
burro | ∅ > it / _V# |
Exceptions to rules
The
Exception rules can also be added to the end of a normal rule, eg:
Distinctive features
Square brackets are used to specify the presence (+) or absence (-) of distinctive features of a phoneme. The following rule nasalizes a vowel before another nasal:
Input | Rule | Output |
---|---|---|
bon | V > [+nasal] / _[+nasal] |
[+nasal] matches both nasal vowels and nasal consonants. But you could specify that you only want it to affect nasal consonants with [C +nasal]:
Input | Rule | Output |
---|---|---|
bon boõ | V > [+nasal] / _[C +nasal] |
Various features can be used to narrow down the match. The following rule deletes voiceless stops, which in this case is only
Input | Rule | Output |
---|---|---|
tahad | [+stop -voice] > ∅ |
Here is a complete list:
Feature | Meaning |
---|---|
[±affricate] | affricate consonants |
[±alveolar] | alveolar consonants |
[±approx] | approximants |
[±back] | back vowels |
[±click] | click consonants |
C or [±consonant] | consonants |
[±cons] | consonantals (different to consonants) |
[±cont] | continuants |
[±dorsal] | dorsals |
[±fricative] | fricative consonants |
[±front] | front vowels |
[±high] | high vowels |
[±implosive] | implosive consonants |
[±labial] | labial consonants and round vowels |
[±laryngeal] | laryngeal consonants |
[±lat] | lateral consonants |
[±liquid] | liquid consonants |
[±low] | low vowels |
[±nasal] | nasal consonants or nasal vowels |
[C ±nasal] | nasal consonants |
[V ±nasal] | nasal vowels |
[±palatal] | palatal consonants |
[±retroflex] | retroflex consonants |
[±round] | round vowels |
[±son] | sonorants |
[V ±stress] | stressed vowels |
[±tap] | tap consonants |
[±trill] | trill consonants |
[±uvular] | uvular consonants |
[±velar] | velar consonants |
[±voice] | voiced consonant or vowel (unless specifically a voiceless vowel) |
[C ±voice] | voiced consonant |
[V ±voice] | voiced vowels |
V or [±vowel] | vowels |
Syllables
Stress
You can use the feature
Additionally,
Input | Rule | Output |
---|---|---|
ˈama ˈdrama draˈma | a > á / ˈ(C)*_ |
Same phoneme in a set
There may be scenarios where you want to match two of the same phonemes from a class, e.g., between two of the same vowels. To do this, use the a matching subscript number (₁₂₃₄₅₆₇₈₉) after the uppercase class:
Input | Rule | Output |
---|---|---|
mitigate | t > d / V₁_V₁ |
Different numbers can signify that they are different phonemes. The following pattern matches two consonants in a row and swaps them:
Input | Rule | Output |
---|---|---|
ask | C₁C₂ > C₂C₁ |
Subscripts can also be used after distinctive features:
Input | Rule | Output |
---|---|---|
tada | {CV}₁{CV}₂ > {CV}₂{CV}₁ |
For ease of typing, regular numbers also work, e.g.
Reduplication
Reduplication is a process in some languages where the whole word, or part of the word, is repeated exactly (or with a slight change). It often plays more of a grammatical function (such as forming the plural of a word) rather than being a global sound change process.
A quick-and-dirty rule to do a full reduplication is
Input | Rule | Output |
---|---|---|
bye | X(X)* > @@ |
Partial reduplication comes in many forms, and there a few strategies for expressing them as rules. The Pangasinan language (Philippines) may reduplicate the first CVC pattern:
Input | Rule | Output |
---|---|---|
baley | #CVC > @@ |
However, in a more complicated example, it repeats the first consonant only and first vowel. You could express this as being inserted at the beginning of the word with subscript numbers:
Input | Rule | Output |
---|---|---|
plato | ∅ > C₁V₁ / #_C₁C₂V₁ |
Non-Latin alphabets
Custom spelling supports all Unicode alphabets and scripts, such as Japanese, Chinese, Cyrillic and even Unicode Emojis.
Order of rules
The order of rules matter. Vulgar will find-and-replace the first rule to a word, then apply the next rule over the top of what it just did. This can be a problem if a IPA symbol appears in multiple patterns. For instance, the following ordering is problematic:
The intent here is for the diphthong
Another solution is to use the exception