Block startU+0900
ilug-cal.orgLinux in India

Code Points

Three rows of the Devanagari block, sixteen to a row

The grid Unicode inherited from ISCII is not arbitrary — it encodes a phonological theory, and every sort order and keyboard layout built since has had to live inside it.

Section 1 · Code Pointsthree pieces in this section

Chart listing Devanagari vowels and consonants organized by row under "देवनागरी लिपि" heading
FigureThe varṇamālā order set out as a teaching chart: back of the throat first, sixteen to a row.Photo: Devanagari Varnamala · Wikimedia Commons

A table that teaches phonology

The Unicode Devanagari block runs from U+0900 to U+097F: 128 code points arranged in eight rows of sixteen. The first four rows — U+0900 through U+093F — carry the bulk of the script's working vocabulary: combining marks that encode vowel sounds, the independent vowel letters, and the first consonants of the traditional varṇamālā (sound-garland) ordering inherited from Sanskrit grammar.

That ordering is not arbitrary. Pāṇini's Ashtadhyayi classified Sanskrit phonemes by place and manner of articulation, grouping stops into five varga (classes) of five: velar, palatal, retroflex, dental, labial. Unicode absorbed that sequence directly, which is why the block reads not alphabetically in any European sense but anatomically — from the back of the throat forward. The sixteen-per-row grid fits the five-by-five consonant table with room left for the nasals, semivowels, sibilants and aspirate that follow.

A printed code chart page of script characters
PlateA chart page shows representative glyphs. The standard’s own note says they are illustrative, not normative.

The design is not Unicode's invention. ISCII 1988, the Indian standard C-DAC and the Bureau of Indian Standards produced, had already arranged ten Brahmi-derived scripts on a common phonological skeleton, so that the same code position meant the same sound across Devanagari, Bengali, Tamil and the rest. Unicode's Devanagari block preserved that positional logic while assigning each script its own block range — a negotiation that the conjuncts-and-reordering problem made more complex than the flat table suggests.

What the layout decides

Sorting is the most immediate consequence. Because the block encodes phonological sequence rather than glyph frequency, a naïve byte-order sort of bare consonants and independent vowels approximates dictionary order without a collation table — provided the text is canonically composed. The moment a vowel matra (a dependent vowel sign, sitting in the fourth row) arrives as a combining mark applied to a base consonant, byte order alone no longer gives reading order, and locale-aware collation is necessary.

Input methods feel the grid too. Every phonetic keyboard layout for Devanagari maps keystrokes to code points whose neighbours in the block are phonological relatives, not visual ones. A key that produces ka (क, U+0915) sits one position before kha (ख, U+0916) in the block and therefore on adjacent keys in most standard layouts — the table made a spatial decision that keyboard designers subsequently ratified.

Chronology

  1. 1988ISCII published, establishing phonological ordering across ten Brahmi scripts
  2. 1991ISCII 13194 revised and formalised by Bureau of Indian Standards
  3. 1991Unicode 1.0 released; Devanagari block U+0900–U+097F assigned
  4. —Unicode preserves ISCII's varṇamālā sequence within the block

Font engineers face the same geometry. A shaping engine traversing the block relies on the positional regularity to identify base consonants, combining marks and halant (virama) sequences. The rows are not decoration; they are the grammar the renderer reads.

Unicode absorbed that sequence directly, which is why the block reads not alphabetically in any European sense but anatomically — from the back of the throat forward.

A printed standards document open on a desk beside a monitor
InsetTwo documents, one dependency — the standard on the desk decides what the machine beside it can print.

The block at a glance

  • U+0900–U+090Fvarious signs and short independent vowels
  • U+0910–U+091Findependent vowels continuing; first consonants (velar class)
  • U+0920–U+092Fpalatal and retroflex consonant classes
  • U+0930–U+093Fdental and remaining stops; matra row begins

Attributions

Read next