Tamil Script
Tamil carries Tamil Nadu, Sri Lanka, and a large diaspora, and it takes the series' throughline on consonant clusters to its logical end. Devanagari ligates them, Gurmukhi reduces a few to subjoined forms, and Tamil mostly just shows the pulli (virama dot) and moves on: the script has only one true required ligature. This article covers its letters, that near-total avoidance of conjuncts, and what a font needs to render it correctly.
Tamil, in one screen
An abugida descended from Brahmi, one of the longest continuously used scripts in the world, built around fewer letters and far less conjunct machinery than its northern relatives.
Tamil has fewer letters than Devanagari or Gurmukhi: 18 traditional consonants, plus 12 independent vowels, each carrying its inherent "a" sound until a dependent vowel sign changes it. Five additional consonants, borrowed from the Grantha script, extend the set for Sanskrit and loanword sounds Tamil's native consonants don't cover.
The series so far has tracked how each script handles a consonant cluster. Devanagari ligates it into a conjunct, with half-forms, reph, and rakar reshaping the letters involved. Gurmukhi reduces a small set of consonants, ர, வ, ஹ, and ய's Gurmukhi equivalents, to subjoined pairī forms. Tamil mostly skips the reshaping step: when a consonant has no vowel, it simply gets a pulli, a small mark that sits above it, and the next letter starts fresh.
Microsoft's own OpenType documentation for the script puts it plainly: Tamil "has fewer consonants than other Indic scripts and has only one consonant conjunct." That one exception, covered in section 5, is borrowed from Sanskrit. Everything else native to Tamil stays as separate, fully formed letters, which is also why Tamil text reads as visually flatter and less vertically busy than its northern relatives: there's no tall conjunct stack and no crowded ascender zone to design around.
With no headline and no conjunct stacking, two bands do most of the work: the baseline, which anchors nearly everything, and a below-base zone that most consonants dip into a little on their own, since Tamil letterforms are built from loops and curves rather than flat-bottomed strokes. The two below-base vowel signs reach furthest of all.
Notice there's no marked line at the letter tops, just a light guide showing where they happen to reach. The vowel sign in மி reaches nearly half again as high as the consonants' own tops, the same pre-base reordering pattern the series introduction covered, applied here to a Tamil vowel sign instead of a Devanagari one. The pulli under ழ் at the end of the word marks it as a bare consonant with no vowel, exactly the mechanism section 5 covers in more depth.
The series introduction showed a Devanagari vowel sign reordering to the left of its consonant at render time. Tamil reorders too, but the vowel sign that moves isn't the one you'd expect from the rest of the series: it's ெ (vowel sign E), not the I-equivalent, that shifts left. The I and AA signs stay put on the right, exactly where they're typed.
The vowel sign in கி stays on the right where it's typed, no reordering involved, which is the reverse of what the series introduction's Devanagari example showed. The vowel signs in கொ, கோ, and கௌ are each a single Unicode character, but like the split matras covered earlier in the series, they're drawn as two pieces: a left hook borrowed from the E or Ē sign, and a right-side stroke or length mark, coordinated as one glyph around the consonant.
When a Tamil consonant carries no vowel, the font doesn't reshape it, ligate it, or subjoin it. It adds a pulli, a small mark above the consonant, and the syllable ends there. That's the mechanism behind nearly every consonant cluster in the language.
In கல்வி ("education"), ல் keeps its full letterform with a pulli on top rather than fusing with the வி that follows. Tamil's one real exception is க்ஷ (kṣa), borrowed from Sanskrit for words like க்ஷணம் ("moment"): க and ஷ ligate into a single required shape, the only case in the script where a font has to draw a true conjunct. The āytham (ஃ), seen in everyday words like எஃகு ("steel"), is a sound found in no other Indic script: a distinct letter in its own right, not a combining mark.
The series introduction covered the general Indic feature set. Tamil is the lightest user of it in the series so far: the OpenType spec still defines rphf, pref, and half for Tamil, but ordinary text doesn't call on above-base reph or half-forms the way Devanagari does, and Tamil has no nukta mechanism at all. What it actually leans on is one akhand ligature, the two-piece construction behind the split vowel signs, and mark positioning.
| Feature | Tag | What it builds here |
|---|---|---|
| Akhand ligature | akhn | Forms க்ஷ, Tamil's one required conjunct. |
| Localized forms | locl | Swaps in Tamil-specific glyph shapes where they differ from the script default. |
| Pre-base substitution | pres | Builds the left-side hook of the split vowel signs ொ, ோ, and ௌ. |
| Below-base substitution | blws | Shapes ு and ூ against the consonant they attach to. |
| Post-base substitution | psts | Builds the right-side stroke of the split vowel signs and positions post-base ா, ி, and ீ. |
| Above-base marks | abvm | Positions the rare above-base signs, including the pulli in some font designs. |
| Below-base marks | blwm | Positions ு and ூ under the base glyph. |
Applied in order, these features form the one required ligature, assemble the split vowel signs from their two visual pieces, then position every mark relative to whatever base glyph resulted. A font that gets those three things right has covered nearly everything Tamil orthography asks of it.
| Symptom | Likely cause | Fix |
|---|---|---|
| க்ஷ renders as two separate letters | Missing or misconfigured akhn lookup | Add the explicit ligature substitution for க plus pulli plus ஷ |
| Split vowel sign pieces drift apart or misalign | The two halves are positioned independently instead of built as one coordinated glyph | Design ொ, ோ, and ௌ as single glyphs, not two marks placed separately |
| Pulli reads as a stray dot disconnected from its consonant | Weak mark-to-base anchor, or a pulli glyph that doesn't relate visually to the letter below it | Anchor the pulli directly above every consonant that can carry one |
| Below-base ு or ூ collides with the next letter | Insufficient clearance in the below-base design | Test both signs against every consonant, especially wide or tall ones like ற and ங |
| Grantha letters look mismatched in weight or style | Font built for native Tamil only, with grantha letters added as an afterthought | Design ஜ, ஶ, ஷ, ஸ, and ஹ as part of the core letterset |
- 1Draw all 23 consonant letters, the 18 traditional plus the 5 grantha additions, at consistent weight and proportion.
- 2Build க்ஷ as a dedicated ligature, Tamil's one required conjunct.
- 3Construct the three split vowel signs as coordinated two-piece glyphs, not independently placed marks.
- 4Anchor the pulli consistently above every consonant that can carry it.
- 5Test the below-base ு and ூ signs against tall and wide consonants for collisions.
- 6Test across shaping engines and at multiple sizes and weights before calling the script done.
Copy these into a test document. Each targets a different part of the shaping pipeline covered above.