| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573 | 
// This file is UTF8 encoded
// Updated file. up to 20 Jan 2015
// letter groups:
// A   vowel letters and vowel signs
// B   vowel signs and virama ्
// C   consonants
// Y   vowel letters and vowel signs
// conditional rules
// ?2   use diphthong for "ai"
// ?3   use diphthong for "au"
.replace
 ०	0
 १	1
 २	2
 ३	3
 ४	4
 ५	5
 ६	6
 ७	7
 ८	8
 ९	9
// combine nukta-dot consonants into a single character
क़	क़
ख़	ख़
ग़	ग़
ज़	ज़
ड़	ड़
ढ़	ढ़
फ़	फ़
य़	य़	
// Vowels
.group अ
        अ          V
        अ (ह       E         //  (h
    अह) अ          E
.group आ
        आ          a:
        आं          a~
.group इ
        इ          I
//       इँ        i~
        इं        i~
.group ई
        ई          i:
        ई (_       i
.group उ
        उ          U
.group ऊ
        ऊ          u
        ऊं          u~        // + anusvara
        ऊँ (_       u~        // + candrabinbu
.group ऋ
        ऋ          rI
.group ऌ
        ऌ          l-        // vocalic l
.group ऍ
        ऍ          E         // candra e
.group ऎ
        ऎ          e
        ऎं          e~
        ऎँ (_       e~
.group ए
        ए          e:
        एँ          e~:
        एं          e~:
    ा) एँ (_       j
.group ऐ
        ऐ          E:        // ?? [aI] [E:] [&:]
        ऐं          E~
        ऐँ (_       E~
?2      ऐ          aI        // ?? [aI] [E:] [&:]
.group ऑ
        ऑ          O         // candra O
.group ऒ
        ऒ          o
        ऒं          o~
        ऒँ (_       o~
.group ओ
        ओ          o:
        ओं          o~        // +anusvara
        ओँ (_       o~        // +candrabindu
    ा) ओं (_       w        // +anusvara
    ा) ओँ (_       w
    
.group औ
        औ          O:        // ?? [aU] [O:]
        औं          O~        // +anusvara
        औँ (_       O~        // +candrabindu
?3      औ          aU        // ?? [aU] [O:]
// Vowel Signs
.group ा
ा	#X2a:
   C) ा      a:
C)        ा (ँ       a~
C)        ाँ (_      a~
C)        ां         a~
.group ि
ि	#X1I
C)        ि          I
C)//      िँ       i~
C)        िं       i~
.group ी
ी	#X2i:
C)        ी          i:
C)        ी (_       i
C)        ी (ँ       i~
C)        ीँ (_      i~
C)        ीं         i~
.group ु
ु	#X1U
C)        ु          U
C)        ु (ँ       u~
C)        ुं         u~
C)        ुँ (_      u~
.group ू
ू	#X2u:
C)        ू          u:
C)        ू (ँ       u~
C)        ूं         u~        // or O~   ??
C)        ूँ (_      u~
.group ृ
ृ	#X1rI
C)        ृ          rI
.group ॄ
ॄ	#X1rI
C)        ॄ          rI
.group ॅ
ॅ	#X1E
C)        ॅ          E
.group ॆ
ॆ	#X1e
C)        ॆ          e
C)        ॆ (ँ       e~
C)        ॆं         e~
C)        ॆँ (_      e~
.group े
े	#X2e:
C)        े          e:
C)        े (ँ       e~
C)        ें         e~:
C)        ेँ (_      e~:
.group ै
ै	#X2E:
C)        ै          E:        // ?? [aI] [E:] [&:]
C)        ैं         E~ 
C)        ै (ँ       E~ 
C)        ैं         E~
C)        ैँ (_      E~
?2 ै	#X2aI
?2  C)    ै          aI        // ?? [aI] [E:] [&:]
.group ॉ
ॉ	#X1O
C)        ॉ          O
.group ॊ
ॊ	#X1o
C)        ॊ          o
C)        ॊ (ँ       o~
C)        ॊं         o~
C)        ॊँ (_      o~
.group ो
ो	#X2o:
C)        ो          o:
C)        ो (ँ       o~
C)        ों         o~
C)        ोँ (_      o~
.group ौ
ौ	#X2O:
C)        ौ          O:        //  [O:] or [aU] ??
C)        ौ (ँ       O~        //  [O:] or [aU] ??
C)        ौं         O~
C)        ौँ (_      O~
?3 ौ 	#X2aU
?3  C)    ौ          aU        //  [O:] or [aU] ??
.group ॢ     // vowel sign l
ॢ 	#X1l-
C)        ॢ          l-
.group ॣ    // vowel sign ll
ॣ	#X2l-:
C)        ॣ          l-:
.group ॐ
ॐ	o~m
// Consonants
.group क
        क          kV
        क (B       k
        क (्य      k:
        क़         qV
        क़ (B      q
        क्क         k:V   // kk -> k:
        क्क (B      k:
        क्ष          kSV
        क्ष (B       kS
        
.group ख
        ख          k#V
        ख (B       k#
        ख़         xV
        ख़ (B      x
.group ग
        ग          gV
        ग (B       g
        ग़         QV
        ग़ (B      Q
//new
        ग्ग         g:V   // GG -> g:
        ग्ग (B      g:
.group घ
        घ          g#V
        घ (B       g#
.group ङ
        ङ          NV
        ङ (B       N
     ्) ङ (_       N@
.group च
        च          cV
        च (B       c
        च (्य      c:
//New
        च्च          c:V   // cc -> c:
        च्च (B       c:
//new
        च्छ          c#:V    // c#c# -> c#:
        च्छ (B       c#:
      
.group छ
        छ          c#V
        छ (B       c#
.group ज
        ज          JV
        ज (B       J
        ज़         zV
        ज़ (B      z
//new
        ज्ज         J:V   // JJ -> J:
        ज्ज (B      J:
        
         ज्ञ           gjV
        ज्ञ (B       gj
.group झ
        झ          J#V
        झ (B       J#
.group ञ
        ञ          n^V
        ञ (B       n^
     ्) ञ (_       n^@
.group ट
        ट          t.V
        ट (B       t.
        ट (्य      t.:
        ट्ट          t.:V    // t.t. -> t.:
        ट्ट (B       t.:
        ट्ठ          t.#:V    // t.t.# -> t.#:
        ट्ठ (B       t.#:
.group ठ
        ठ          t.#V
        ठ (B       t.#
        
        ठ्ठ          t.#:V   // t.#t.# -> t.#:
        ठ्ठ (B       t.#:
        
.group ड
        ड          d.V
        ड (B       d.
        ड्ड          d.:V   // d. d. -> d.:
        ड्ड (B      d.:
        ड्ढ          d.#:V    // d#d# -> d#:
        ड्ढ (B       d.#:
        ड़         r.V
        ड़ (B      r.
.group ढ
        ढ          d.#V
        ढ (B       d.#
        ढ़         r.hV      // nukta  (should retroflex flap)
        ढ़ (B      r.h       // nukta
.group ण
        ण          n.V
        ण (B       n.
     ्) ण (_       n.@
.group त
        त          tV
        त (B       t
        त (्य      t:
        त्त          t:V   // tt -> t:
        त्त (B       t:
//new
        त्थ          t#:V    // t#:t#: -> t#:
        त्थ (B       t#:
       
.group थ
        थ          t#V
        थ (B       t#
.group द
        द          dV
        द (B       d
//new
        द्द         d:V   // dd -> d:
        द्द (B      d:
        द्ध          d#:V    // d#d# -> d#:
        द्ध (B       d#:
.group ध
        ध          d#V
        ध (B       d#
.group न
        न          nV
        न (B       n
     ्) न (_       n@
    र्) न (_       n         // r +virama
.group ऩ
        ऩ          n:        // should this be a long [n] ?
.group प
        प          pV
        प (B       p
        प (्य      p:
        
        प्प         p:V      // pp -> p:
        प्प (B      p:
.group फ
        फ          p#V
        फ (B       p#
        फ़         fV
        फ़ (B      f
.group ब
        ब          bV
        ब (B       b
.group भ
        भ          b#V
        भ (B       b#
.group म
        म          mV
        म (B       m
     ्) म (_       m@
    र्) म (_       m         // r +virama
    न्) म (_       m         // n +virama
.group य
        य          jV
        य (B       j
     C) य (_       Ej     // [Ej] not [@j]
     ्) य (_       j@
.group र
        र          rV
        र (B       r
        र (_       r
     ्) र (_       r@
.group ऱ             // rra
        ऱ          rV        // (temporary) same as [r]  should this be [r.] or perhaps [z.] ?
        ऱ (B       r
     ्) ऱ (_       r@
.group ल
        ल          lV
        ल (B       l
     ्) ल (_       l@
.group ळ
        ळ          l.V
        ळ (B       l.
     ्) ळ (_       l.@
.group ऴ
        ऴ          l.V       // (temporary) same as [l.]
        ऴ (B       l.
     ्) ऴ (_       l.@
.group व
        व          vV
        व (B       v
// 3     _) व          wV
// 3     _) व (B       w
// 4      _) व (्       v         // +virma
// 2        व (_       w
// 5     ्) व (_       w@
// 1 deleted
.group श
        श          SV
        श (B       S
.group ष
        ष          s.V 
        ष (B       s.
.group स
        स          sV
        स (B       s
.group ह
        ह          HV
        ह (B       H
                        // nukta,  modifies a consonant
.group ऽ                // avagraha, lengthens a vowel ??
        ऽ          :
.group ँ
        ँ          n         // candrabindu
.group ं
        ं          n         // anusvara
        ं (प       m
        ं (फ       m
        ं (ब       m
        ं (भ       m
        ं (म       m
        ं (ट       n.
        ं (ठ       n.
        ं (ड       n.
        ं (ढ       n.
        ं (ण       n.
        ं (च       n^
        ं (छ       n^
        ं (ज       n^
        ं (झ       n^
        ं (ञ       n^
        ं (य       n^
        ं (क       N
        ं (ख       N
        ं (ग       N
        ं (घ       N
        ं (ङ       N
       
.group ः
        ः          H         //  visarga
.group ्		// virama
्	H@l'Vnt
C)	् 
// Extra consonants
.group क़   // qa
        क़          qV
        क़ (B       q
.group ख़   // khha
        ख़          xV
        ख़ (B       x
.group ग़    // ghha
        ग़          QV
        ग़ (B       Q
.group ज़    // za
        ज़          zV
        ज़ (B       z
.group ड़    // dddha   (should retroflex flap ?)
        ड़          r.V
        ड़ (B       r.
.group ढ़    // rha  (aspirated version of dddha)
        ढ़          r.hV
        ढ़ (B       r.h
.group फ़    // fa
        फ़          fV
        फ़ (B       f
.group य़    // yya
        य़          jV
        य़ (B       j
.group ॠ    // rr
        ॠ          V-rr
.group ॡ    // ll
        ॡ          l-:       // long syllabic l
// If we find a Latin letter a-z, then translate as English
// (This is now done automatically by the eSpeak program)
.group o
        o          _^_EN
   D__) of (__D    me
 |