Skip to content

Commit

Permalink
khmr/km: Add Onsets section. Improve Additional Consonants and Changi…
Browse files Browse the repository at this point in the history
…ng Consonant Registers sections.
  • Loading branch information
r12a committed Dec 4, 2023
1 parent d597b0c commit ab7e401
Showing 1 changed file with 32 additions and 15 deletions.
47 changes: 32 additions & 15 deletions khmr/km.html
Original file line number Diff line number Diff line change
Expand Up @@ -2768,13 +2768,10 @@ <h3>Basic consonants</h3>
<section id="extendedC">
<h3>Additional consonants</h3>

<p>Special combinations are used to represent non-native sounds in loan words, especially from French and Thai.</p>
<p>Special combinations are used to represent non-native sounds in loan words, especially from French and Thai. These include the following, most of which involve a stack beginning with <span class="ch"></span>.</p>

<figure class="characterBox auto" data-cols="ipa,trans,transc" data-notes="ᵃ,ᵃ,ᵓ">ប៉␣ហ្គ␣ហ្គ៊</figure>
<figure class="characterBox auto" data-cols="ipa,trans,transc" data-notes="ᵃ,ᵃ,ᵓ,ᵃ,ᵓ,ᵃ,ᵓ">ប៉␣ហ្គ␣ហ្គ៊␣ហ្វ␣ហ្វ៊␣ហ្ស␣ហ្ស៊</figure>

<figure class="characterBox auto" data-cols="ipa,trans,transc" data-notes="ᵃ,ᵓ,ᵃ,ᵓ">ហ្វ␣ហ្វ៊␣ហ្ស␣ហ្ស៊</figure>

<figure class="characterBox auto" data-cols="ipa,trans,transc" data-notes="ᵃ,ᵃ,ᵃ">ហ្ម␣ហ្ន␣ហ្ល</figure>
</section>


Expand All @@ -2786,13 +2783,19 @@ <h3>Additional consonants</h3>
<section id="register_change">
<h3>Changing consonant registers</h3>

<figure class="characterBox auto" data-cols="">&#x17C9;␣&#x17CA;</figure>
<p>There are not enough individual Khmer consonant letters to be able to assign a unique character for each a-class and o-class register. Khmer extends the number of letters as follows to close this gap.</p>

<p>Two diacritics, <span class="hx">17C9</span> and <span class="hx">17CA</span>, are used to <em>change</em> the class of a consonant. These are particularly useful when a given sound has only one character associated with it, such as the letters <span class="ex" lang="km"></span>, <span class="ex" lang="km"></span> and <span class="ex" lang="km"></span> etc.</p>

<figure class="characterBox auto" data-cols="">&#x17C9;␣&#x17CA;</figure>

<p>These diacritics appear above the base consonant or stack by default, but if another combining mark (such as a vowel sign) appears above the base (for certain consonants) the register shifter may move below the base and looks identical to <span class="hx">17BB</span> (see <a class="secref">consonant_shift_posn</a>).</p>

<p class="info">Regardless of displayed position, each of these diacritics should be typed and stored immediately after the base character, unless a ZWNJ intervenes.<tt>u,647</tt></p>

<p>A small number of o-class consonants are transformed into a-class consonants by preceding them with <span class="hx">17A0</span>, rather than using the above diacritics. They include the following.</p>

<figure class="characterBox auto" data-cols="ipa,trans,transc" data-notes="ᵃ,ᵃ,ᵃ">ហ្ម␣ហ្ន␣ហ្ល</figure>
</section>


Expand All @@ -2803,12 +2806,18 @@ <h3>Changing consonant registers</h3>


<section id="onsets">
<h3>Onset consonants</h3>
<h3>Onsets</h3>

<p>tbd</p>
<!--p>Clusters of consonant letters at the beginning of an orthographic syllable occur in Gujarati, and they are handled as described in the section <a class="secref">clusters</a>.</p>
<p>Word-initial consonant clusters are relatively common in Khmer. These include sounds commonly referred to as medials, such as <span class="ipa">-r</span> and <span class="ipa">-l</span>, but also a wider assortment of consonant clusters. For example:</p>

<p>Special behaviours include handling of <span class="uname">RA</span> at the beginning of an orthographic syllable (see <a class="secref">rconjuncts</a>).</p-->
<p><span class="eg" lang="km">ក្ដារ</span></p>
<p><span class="eg" lang="km">ឆ្កែ</span></p>
<p><span class="eg" lang="km">ធ្មេញ</span></p>
<p><span class="eg" lang="km">ផ្សែង</span></p>

<p>The consonant clusters are written as stacks, using the <span class="name">coeng</span>. See <a class="secref">clusters</a>.</p>

<p>In addition, Khmer creates syllable-initial stacks using <span class="hx">17A0</span> followed by another consonant to create sounds from other languages, or to change the register for the subjoined consonant. These combinations produce a single consonant sound, unlike the former examples, but they are handled using the normal stacking mechanism. See <a class="secref">extendedC</a>.</p>
</section>


Expand All @@ -2817,7 +2826,7 @@ <h3>Onset consonants</h3>


<section id="finals">
<h3>Final consonants</h3>
<h3>Finals</h3>

<p>Not all Khmer consonants can appear in syllable-final position. The most common syllable codas include the following:</p>

Expand Down Expand Up @@ -2877,10 +2886,6 @@ <h4>Stacking</h4>

<p><span class="hx">179A</span> produces a subjoined form that wraps <em>to the left</em> and under the preceding consonant. Several others wrap below and to the right of the consonant. <span class="hx">17A1</span> doesn't normally appear in subscript form.</p>

<p>Where the two consonants involved in the cluster are in different classes or registers, the pronunciation of any following vowel is normally determined by the register of the subscript consonant. For the following exceptions, however, the vowel pronunciation is determined by the register of the <em>first</em> consonant (all o-class):</p>

<figure class="otherBox auto" data-cols="">ង␣ញ␣ន␣ម␣យ␣រ␣ល␣វ</figure>

<p>Some subscripts change the sound of the preceding consonant. </p>

<p>Stacks commonly occur in multisyllabic words. A medial cluster will typically contain a final consonant for the first syllable and the initial consonant of the next syllable.</p>
Expand All @@ -2903,6 +2908,18 @@ <h4>Stacking</h4>



<section id="stack_register">
<h4>Stacks and registers</h4>

<p>Where the two consonants involved in the cluster are in different classes or registers, the pronunciation of any following vowel is normally determined by the register of the subscript consonant. For the following exceptions, however, the vowel pronunciation is determined by the register of the <em>first</em> consonant (all o-class):</p>

<figure class="characterBox auto" data-cols="">ង␣ញ␣ន␣ម␣យ␣រ␣ល␣វ</figure>

</section>




<section id="stack_vowels">
<h4>Combining characters &amp; stacks</h4>

Expand Down

0 comments on commit ab7e401

Please sign in to comment.