summaryrefslogtreecommitdiff
path: root/language/malayalam/cfg
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /language/malayalam/cfg
Initial commit
Diffstat (limited to 'language/malayalam/cfg')
-rw-r--r--language/malayalam/cfg/mm_rch.scr1062
-rw-r--r--language/malayalam/cfg/mm_rch.trs172
-rw-r--r--language/malayalam/cfg/mmr_ildc_cdac.scr275
-rw-r--r--language/malayalam/cfg/mmr_ildc_cdac.trs171
-rw-r--r--language/malayalam/cfg/mmr_ism.scr275
-rw-r--r--language/malayalam/cfg/mmr_ism.trs171
-rw-r--r--language/malayalam/cfg/mmr_keli.scr275
-rw-r--r--language/malayalam/cfg/mmr_keli.trs171
-rw-r--r--language/malayalam/cfg/mmr_rch.scr281
-rw-r--r--language/malayalam/cfg/vim_ildc_cdac12
-rw-r--r--language/malayalam/cfg/vim_ism12
-rw-r--r--language/malayalam/cfg/vim_keli12
-rw-r--r--language/malayalam/cfg/vim_rch12
-rw-r--r--language/malayalam/cfg/vim_tmp3
14 files changed, 2904 insertions, 0 deletions
diff --git a/language/malayalam/cfg/mm_rch.scr b/language/malayalam/cfg/mm_rch.scr
new file mode 100644
index 0000000000..049dbbdb7d
--- /dev/null
+++ b/language/malayalam/cfg/mm_rch.scr
@@ -0,0 +1,1062 @@
+% mm_rch.scr --- Malayalam traditional script file for Rachana font
+% November 2002 Alex A.J.
+% $Id$
+%
+
+@malayalam
+% script type
+
+@atbegin "{\\mm "
+@atend "}"
+% to be placed at the begin respectively end of malayalam text
+
+@atbeginsyllabe "\\-\\X{"
+@atendsyllabe "}"
+%@atbeginsyllabe "\\-"
+%@atendsyllabe ""
+% to be placed at the begin repectively end of every syllabe
+
+@prebuild
+% prebuild characters: <codes, glyphs>.
+% We start with a list mapping all single characters to glyphs (i.e. TeX
+% codes to typeset them), they need to be here!
+
+"\d02" "\\<119>" % anusvara
+"\d03" "\\<120>" % visarga
+
+% vowels
+
+"\d05" "\\<65>" % a
+"\d06" "\\<66>" % aa
+"\d07" "\\<67>" % i
+"\d08" "\\<164>" % ii
+"\d09" "\\<68>" % u
+"\d10" "\\<165>" % uu
+"\d11" "\\<69>" % vocalic r
+"\d96" "\\<161>" % vocalic rr
+"\d12" "\\<162>" % vocalic l
+"\d97" "\\<163>" % vocalic ll
+"\d14" "\\<70>" % e
+"\d15" "\\<71>" % ee
+"\d16" "\\<166>" % ai
+"\d18" "\\<72>" % o
+"\d19" "\\<168>" % oo
+"\d20" "\\<169>" % au
+"\d87" "\\<118>" % au length mark
+
+% consonants
+
+"\d21" "\\<73>" % ka
+"\d22" "\\<74>" % kha
+"\d23" "\\<75>" % ga
+"\d24" "\\<76>" % gha
+"\d25" "\\<77>" % nga
+
+"\d26" "\\<78>" % ca
+"\d27" "\\<79>" % cha
+"\d28" "\\<80>" % ja
+"\d29" "\\<81>" % jha
+"\d30" "\\<82>" % n~a
+
+"\d31" "\\<83>" % Ta
+"\d32" "\\<84>" % Tha
+"\d33" "\\<85>" % Da
+"\d34" "\\<86>" % Dha
+"\d35" "\\<87>" % Na
+
+"\d36" "\\<88>" % ta
+"\d37" "\\<89>" % tha
+"\d38" "\\<90>" % da
+"\d39" "\\<91>" % dha
+"\d40" "\\<92>" % na
+
+"\d42" "\\<93>" % pa
+"\d43" "\\<94>" % pha, fa
+"\d44" "\\<95>" % ba
+"\d45" "\\<245>" % bha
+"\d46" "\\<97>" % ma
+
+"\d47" "\\<98>" % ya
+"\d48" "\\<99>" % ra
+"\d49" "\\<108>" % Ra
+"\d50" "\\<100>" % la
+"\d51" "\\<106>" % La
+"\d52" "\\<107>" % zha
+"\d53" "\\<101>" % va
+"\d54" "\\<102>" % sha
+"\d55" "\\<103>" % Sa
+"\d56" "\\<104>" % sa
+"\d57" "\\<105>" % ha
+
+% digits
+
+"\d102" "\\<48>" % 0
+"\d103" "\\<49>" % 1
+"\d104" "\\<50>" % 2
+"\d105" "\\<51>" % 3
+"\d106" "\\<52>" % 4
+"\d107" "\\<53>" % 5
+"\d108" "\\<54>" % 6
+"\d109" "\\<55>" % 7
+"\d110" "\\<56>" % 8
+"\d111" "\\<57>" % 9
+
+% specials
+
+
+"\d77" "\\<109>" % virama
+
+"\d127" "\\hbox{}" % join (dissapears)
+"\d126" "\\hbox{}" % non-join (dissapears)
+"\d125" "\\<35>" % dotted circle
+"\d125\d127" "\\<35>" % dotted circle + join
+"\d124" " " % space
+"\d124\d127" "\\hbox{}" % space + join (dissapears)
+
+% then we have a list of all conjuncts and consonant vowel combinations
+% that cannot be build by the standard algorithm, i.e. we need a ligature.
+
+"\d21\d21" "\\<183>" % k+ka
+"\d21\d55" "\\<184>" % k+Sa
+%"\d21\d36" "\\<199>" % k+ta
+%"\d21\d31" "{\\<74>\\<233>}" % k+Ta
+%"\d21\d50" "{\\<74>\\<235>}" % k+la
+
+%"\d23\d23" "{\\<76>\\<234>}" % g+ga
+%"\d23\d38" "\\<145>" % g+da
+%"\d23\d38\d39" "\\<146>" % g+d+dha
+%"\d23\d40" "\\<222>" % g+na
+%"\d23\d46" "\\<196>" % g+ma
+%"\d23\d50" "{\\<76>\\<235>}" % g+la
+
+"\d25\d25" "\\<186>" % ng+nga
+"\d25\d21" "\\<185>" % ng+ka
+
+"\d26\d26" "\\<187>" % c+ca
+%"\d26\d27" "\\<212>" % c+cha
+
+%"\d28\d28" "\\<210>" % j+ja
+%"\d28\d30" "\\<209>" % j+nya
+
+%"\d30\d26" "\\<213>" % ny+ca
+%"\d30\d28" "\\<211>" % ny+ja
+"\d30\d30" "\\<188>" % ny+nya
+
+"\d31\d31" "\\<189>" % T+Ta
+
+%"\d33\d33" "{\\<86>\\<236>}" % D+Da
+
+"\d35\d31" "\\<190>" % N+Ta
+%"\d35\d33" "\\<223>" % N+Da
+%"\d35\d34" "\\<148>" % N+Dha
+%"\d35\d35" "\\<187>" % N+Na
+%"\d35\d46" "\\<195>" % N+ma
+"\d35\d77" "\\<174>" % N+virama
+
+"\d36\d36" "\\<191>" % t+ta
+%"\d36\d37" "\\<207>" % t+tha
+%"\d36\d40" "\\<208>" % t+na
+%"\d36\d46" "\\<197>" % t+ma
+%"\d36\d56" "\\<203>" % t+sa
+%"\d36\d45" "\\<206>" % t+bha
+
+%"\d38\d38" "\\<192>" % d+da
+%"\d38\d39" "\\<218>" % d+dha
+%"\d38\d48\d47" "{\\<177>\\<97>\\<172>}" % d+r+ya
+
+%"\d40\d36" "\\<201>" % n+ta
+"\d40\d38" "\\<192>" % n+da
+"\d40\d40" "\\<193>" % n+na
+%"\d40\d46" "\\<193>" % n+ma
+"\d40\d77" "\\<176>" % n+virama
+
+"\d40\d49" "\\<194>" % n+Ra
+"\d40\d42" "\\<196>" % n+pa
+%"\d40\d37" "\\<221>" % n+tha
+%"\d40\d39" "\\<220>" % n+dha
+%"\d40\d36\d48" "{\\<177>\\<201>}" % n+t+ra
+
+"\d42\d42" "\\<195>" % p+pa
+%"\d42\d50" "{\\<100>\\<235>}" % p+la
+
+%"\d44\d44" "\\<226>" % b+ba
+%"\d44\d50" "{\\<102>\\<235>}" % b+la
+%"\d44\d38" "{\\<102>\\<239>}" % b+da
+%"\d44\d39" "{\\<102>\\<232>}" % b+dha
+
+"\d46\d46" "\\<197>" % m+ma
+"\d46\d42" "\\<196>" % m+pa
+"\d46\d77" "\\<119>" % m+virama (=anusvara)
+%"\d46\d50" "{\\<104>\\<235>}" % m+la
+
+"\d47\d47" "\\<199>" % y+ya
+
+"\d49\d47" "{\\<99>\\<121>}" % r+ya
+
+"\d49\d49" "\\<202>" % R+Ra
+"\d49\d77" "\\<177>" % R+virama
+
+"\d50\d77" "\\<178>" % l+virama
+"\d50\d50" "\\<200>" % l+la
+
+"\d51\d51" "\\<201>" % L+La
+"\d51\d77" "\\<179>" % L+virama
+
+%"\d53\d53" "\\<225>" % v+va
+
+%"\d54\d54" "{\\<109>\\<227>}" % sh+sha
+%"\d54\d50" "{\\<109>\\<235>}" % sh+la
+%"\d54\d26" "\\<214>" % sh+ca
+
+%"\d55\d31" "{\\<110>\\<233>}" % S+Ta
+
+%"\d56\d56" "{\\<111>\\<230>}" % s+sa
+%"\d56\d50" "{\\<111>\\<235>}" % s+la
+%"\d56\d37" "\\<204>" % s+tha
+%"\d56\d49\d49" "\\<205>" % s+RRa
+
+%"\d57\d40" "\\<219>" % h+na
+%"\d57\d50" "{\\<112>\\<235>}" % h+la
+%"\d57\d46" "\\<194>" % h+ma
+
+% cillu/non-cillu variants of $k$ $y$ $n$, $N$, $m$, $t$ $l$ $L$
+
+
+"\d35\d127\d77" "{\\<87>\\<109>}" % Na
+"\d40\d127\d77" "{\\<92>\\<109>}" % na
+"\d46\d127\d77" "{\\<97>\\<109>}" % ma
+"\d48\d127\d77" "{\\<99>\\<109>}" % ra
+"\d49\d127\d77" "{\\<108>\\<109>}" % Ra
+"\d50\d127\d77" "{\\<100>\\<109>}" % la
+"\d51\d127\d77" "{\\<106>\\<109>}" % La
+
+% Additional chars from Ra1
+
+"\d47\d21\d21" "\\<198>" % y+kka
+
+% Characters from font Ra2 (mlr2)
+
+"\d21\d09" "{\\B\\<33>}" % ku
+"\d21\d10" "{\\B\\<34>}" % kU
+"\d21\d11" "{\\B\\<35>}" % k.r
+"\d21\d12" "{\\B\\<36>}" % k.l
+"\d21\d21\d09" "{\\B\\<37>}" % kku
+"\d21\d21\d10" "{\\B\\<38>}" % kkU
+"\d21\d21\d11" "{\\B\\<39>}" % kk.r
+"\d21\d21\d48" "{\\B\\<40>}" % kkra
+"\d21\d21\d48\d09" "{\\B\\<41>}" % kkru
+"\d21\d21\d48\d10" "{\\B\\<42>}" % kkrU
+"\d21\d31" "{\\B\\<43>}" % kTa
+"\d21\d31\d09" "{\\B\\<44>}" % kTu
+"\d21\d31\d10" "{\\B\\<46>}" % kTU
+"\d21\d35" "{\\B\\<47>}" % kNa
+"\d21\d35\d09" "{\\B\\<48>}" % kNu
+"\d21\d35\d10" "{\\B\\<49>}" % kNU
+"\d21\d36" "{\\B\\<50>}" % kta
+"\d21\d36\d09" "{\\B\\<51>}" % ktu
+"\d21\d36\d10" "{\\B\\<52>}" % ktU
+"\d21\d36\d11" "{\\B\\<53>}" % kt.r
+"\d21\d36\d48" "{\\B\\<54>}" % ktra
+"\d21\d36\d48\d09" "{\\B\\<55>}" % ktru
+"\d21\d36\d48\d10" "{\\B\\<56>}" % ktrU
+"\d21\d40" "{\\B\\<57>}" % kna
+"\d21\d40\d09" "{\\B\\<58>}" % knu
+"\d21\d40\d10" "{\\B\\<59>}" % knU
+"\d21\d46" "{\\B\\<60>}" % kma
+"\d21\d46\d09" "{\\B\\<61>}" % kmu
+"\d21\d46\d10" "{\\B\\<62>}" % kmU
+"\d21\d48" "{\\B\\<63>}" % kra
+"\d21\d48\d09" "{\\B\\<64>}" % kru
+"\d21\d48\d10" "{\\B\\<65>}" % krU
+"\d21\d50" "{\\B\\<66>}" % kla
+"\d21\d50\d09" "{\\B\\<67>}" % klu
+"\d21\d50\d10" "{\\B\\<68>}" % klU
+"\d21\d55\d09" "{\\B\\<69>}" % kSu
+"\d21\d55\d10" "{\\B\\<70>}" % kSU
+"\d21\d55\d11" "{\\B\\<71>}" % kS.r
+"\d21\d55\d35" "{\\B\\<72>}" % kSNa
+"\d21\d55\d35\d09" "{\\B\\<73>}" % kSNu
+"\d21\d55\d35\d10" "{\\B\\<74>}" % kSNU
+"\d21\d55\d46" "{\\B\\<75>}" % kSma
+"\d21\d55\d46\d09" "{\\B\\<76>}" % kSmu
+"\d21\d55\d46\d10" "{\\B\\<77>}" % kSmU
+"\d21\d55\d46\d11" "{\\B\\<78>}" % kSm.r
+"\d21\d56" "{\\B\\<79>}" % ksa
+"\d21\d56\d09" "{\\B\\<80>}" % ksu
+"\d21\d56\d10" "{\\B\\<81>}" % ksU
+"\d21\d56\d11" "{\\B\\<82>}" % ks.r
+"\d21\d49\d49" "{\\B\\<83>}" % kRRa
+"\d21\d49\d49\d09" "{\\B\\<84>}" % kRRu
+"\d21\d49\d49\d10" "{\\B\\<85>}" % kRRU
+"\d22\d09" "{\\B\\<86>}" % khu
+"\d22\d10" "{\\B\\<87>}" % khU
+"\d22\d11" "{\\B\\<88>}" % kh.r
+"\d23\d09" "{\\B\\<89>}" % gu
+"\d23\d10" "{\\B\\<90>}" % gU
+"\d23\d11" "{\\B\\<91>}" % g.r
+"\d23\d23" "{\\B\\<92>}" % gga
+"\d23\d23\d09" "{\\B\\<93>}" % ggu
+"\d23\d23\d10" "{\\B\\<94>}" % ggU
+"\d23\d38" "{\\B\\<97>}" % gda
+"\d23\d38\d09" "{\\B\\<98>}" % gdu
+"\d23\d38\d10" "{\\B\\<99>}" % gdU
+"\d23\d38\d11" "{\\B\\<100>}" % gd.r
+"\d23\d38\d39" "{\\B\\<101>}" % gddha
+"\d23\d38\d39\d09" "{\\B\\<102>}" % gddhu
+"\d23\d38\d39\d10" "{\\B\\<103>}" % gddhU
+"\d23\d38\d39\d11" "{\\B\\<104>}" % gddh.r
+"\d23\d38\d39\d48" "{\\B\\<105>}" % gddhra
+"\d23\d38\d39\d48\d09" "{\\B\\<106>}" % gddhru
+"\d23\d38\d39\d48\d10" "{\\B\\<107>}" % gddhrU
+"\d23\d40" "{\\B\\<108>}" % gna
+"\d23\d40\d09" "{\\B\\<109>}" % gnu
+"\d23\d40\d10" "{\\B\\<110>}" % gnU
+"\d23\d46" "{\\B\\<111>}" % gma
+"\d23\d46\d09" "{\\B\\<112>}" % gmu
+"\d23\d46\d10" "{\\B\\<113>}" % gmU
+"\d23\d48" "{\\B\\<114>}" % gra
+"\d23\d48\d09" "{\\B\\<115>}" % gru
+"\d23\d48\d10" "{\\B\\<116>}" % grU
+"\d23\d50" "{\\B\\<117>}" % gla
+"\d23\d50\d09" "{\\B\\<118>}" % glu
+"\d23\d50\d10" "{\\B\\<119>}" % glU
+"\d24\d09" "{\\B\\<120>}" % ghu
+"\d24\d10" "{\\B\\<121>}" % ghU
+"\d24\d11" "{\\B\\<122>}" % gh.r
+"\d24\d40" "{\\B\\<123>}" % ghna
+"\d24\d40\d09" "{\\B\\<124>}" % ghnu
+"\d24\d40\d10" "{\\B\\<125>}" % ghnU
+"\d24\d48" "{\\B\\<126>}" % ghra
+"\d24\d48\d09" "{\\B\\<161>}" % ghru
+"\d24\d48\d10" "{\\B\\<162>}" % ghrU
+"\d25\d09" "{\\B\\<163>}" % n"u
+"\d25\d10" "{\\B\\<164>}" % n"U
+"\d25\d21\d09" "{\\B\\<165>}" % n"ku
+"\d25\d21\d10" "{\\B\\<166>}" % n"kU
+"\d25\d21\d11" "{\\B\\<168>}" % n"k.r
+"\d25\d25\d09" "{\\B\\<169>}" % n"n"u
+"\d25\d25\d10" "{\\B\\<170>}" % n"n"U
+"\d26\d09" "{\\B\\<171>}" % cu
+"\d26\d26\d09" "{\\B\\<174>}" % ccu
+"\d26\d26\d10" "{\\B\\<176>}" % ccU
+"\d26\d27" "{\\B\\<177>}" % ccha
+"\d26\d27\d09" "{\\B\\<178>}" % cchu
+"\d26\d27\d10" "{\\B\\<179>}" % cchU
+"\d26\d27\d11" "{\\B\\<180>}" % cch.r
+"\d26\d27\d48" "{\\B\\<183>}" % cchra
+"\d26\d27\d48\d09" "{\\B\\<184>}" % cchru
+"\d26\d27\d48\d10" "{\\B\\<185>}" % cchrU
+"\d27\d09" "{\\B\\<186>}" % chu
+"\d27\d10" "{\\B\\<187>}" % chU
+"\d27\d11" "{\\B\\<188>}" % ch.r
+"\d27\d48" "{\\B\\<189>}" % chra
+"\d27\d48\d09" "{\\B\\<190>}" % chru
+"\d27\d48\d10" "{\\B\\<191>}" % chrU
+"\d28\d09" "{\\B\\<192>}" % ju
+"\d28\d10" "{\\B\\<193>}" % jU
+"\d28\d11" "{\\B\\<194>}" % j.r
+"\d28\d28" "{\\B\\<195>}" % jja
+"\d28\d28\d09" "{\\B\\<196>}" % jju
+"\d28\d28\d10" "{\\B\\<197>}" % jjU
+"\d28\d28\d11" "{\\B\\<198>}" % jj.r
+"\d28\d30" "{\\B\\<199>}" % jn~a
+"\d28\d30\d09" "{\\B\\<200>}" % jn~u
+"\d28\d30\d10" "{\\B\\<201>}" % jn~U
+"\d28\d48" "{\\B\\<202>}" % jra
+"\d28\d48\d09" "{\\B\\<203>}" % jru
+"\d28\d48\d10" "{\\B\\<204>}" % jrU
+"\d29\d09" "{\\B\\<205>}" % jhu
+"\d29\d10" "{\\B\\<206>}" % jhU
+"\d29\d11" "{\\B\\<207>}" % jh.r
+"\d29\d48" "{\\B\\<208>}" % jhra
+"\d29\d48\d09" "{\\B\\<209>}" % jhru
+"\d29\d48\d10" "{\\B\\<210>}" % jhrU
+"\d30\d09" "{\\B\\<211>}" % n~u
+"\d30\d10" "{\\B\\<212>}" % n~U
+"\d30\d26" "{\\B\\<213>}" % n~ca
+"\d30\d26\d09" "{\\B\\<214>}" % n~cu
+"\d30\d26\d10" "{\\B\\<215>}" % n~cU
+"\d30\d26\d11" "{\\B\\<216>}" % n~c.r
+"\d30\d27" "{\\B\\<217>}" % n~cha
+"\d30\d27\d09" "{\\B\\<218>}" % n~chu
+"\d30\d27\d10" "{\\B\\<219>}" % n~chU
+"\d30\d27\d11" "{\\B\\<220>}" % n~ch.r
+"\d30\d28" "{\\B\\<221>}" % n~ja
+"\d30\d28\d09" "{\\B\\<222>}" % n~ju
+"\d30\d28\d10" "{\\B\\<223>}" % n~jU
+"\d30\d30\d09" "{\\B\\<224>}" % n~n~u
+"\d30\d30\d10" "{\\B\\<225>}" % n~n~U
+"\d31\d09" "{\\B\\<226>}" % Tu
+"\d31\d10" "{\\B\\<227>}" % TU
+"\d31\d11" "{\\B\\<228>}" % T.r
+"\d31\d31\d09" "{\\B\\<229>}" % TTu
+"\d31\d31\d10" "{\\B\\<230>}" % TTU
+"\d31\d48" "{\\B\\<231>}" % Tra
+"\d31\d48\d09" "{\\B\\<232>}" % Tru
+"\d31\d48\d10" "{\\B\\<233>}" % TrU
+"\d32\d09" "{\\B\\<234>}" % Thu
+"\d32\d10" "{\\B\\<235>}" % ThU
+"\d33\d09" "{\\B\\<236>}" % Du
+"\d33\d10" "{\\B\\<237>}" % DU
+"\d33\d11" "{\\B\\<238>}" % D.r
+"\d33\d33" "{\\B\\<239>}" % DDa
+"\d33\d33\d09" "{\\B\\<240>}" % DDu
+"\d33\d33\d10" "{\\B\\<241>}" % DDU
+"\d33\d33\d11" "{\\B\\<242>}" % DD.r
+"\d33\d34" "{\\B\\<243>}" % DDha
+"\d33\d34\d09" "{\\B\\<244>}" % DDhu
+"\d33\d34\d10" "{\\B\\<245>}" % DDhU
+"\d26\d10" "{\\B\\<250>}" % cU
+"\d23\d23\d11" "{\\B\\<251>}" % gg.r
+
+% Characters from Ra3 (mlr3)
+
+"\d33\d46" "{\\C\\<33>}" % Dma
+"\d33\d46\d09" "{\\C\\<34>}" % Dmu
+"\d33\d46\d10" "{\\C\\<35>}" % DmU
+"\d33\d46\d11" "{\\C\\<36>}" % Dm.r
+"\d33\d48" "{\\C\\<37>}" % Dra
+"\d33\d48\d09" "{\\C\\<38>}" % Dru
+"\d33\d48\d10" "{\\C\\<39>}" % DrU
+"\d33\d09" "{\\C\\<40>}" % Dhu
+"\d34\d10" "{\\C\\<41>}" % DhU
+"\d34\d11" "{\\C\\<42>}" % Dh.r
+"\d34\d48" "{\\C\\<43>}" % Dhra
+"\d34\d48\d09" "{\\C\\<44>}" % Dhru
+"\d34\d48\d10" "{\\C\\<46>}" % DhrU
+"\d35\d10" "{\\C\\<48>}" % NU
+"\d35\d31\d09" "{\\C\\<49>}" % NTu
+"\d35\d31\d10" "{\\C\\<50>}" % NTU
+"\d35\d31\d48" "{\\C\\<51>}" % NTra
+"\d35\d31\d48\d09" "{\\C\\<52>}" % NTru
+"\d35\d31\d48\d10" "{\\C\\<53>}" % NTrU
+"\d35\d32" "{\\C\\<54>}" % NTha
+"\d35\d33" "{\\C\\<55>}" % NDa
+"\d35\d33\d09" "{\\C\\<56>}" % NDu
+"\d35\d33\d10" "{\\C\\<57>}" % NDU
+"\d35\d33\d11" "{\\C\\<58>}" % ND.r
+"\d35\d33\d48" "{\\C\\<59>}" % NDra
+"\d35\d33\d48\d09" "{\\C\\<60>}" % NDru
+"\d35\d33\d48\d10" "{\\C\\<61>}" % NDrU
+"\d35\d34" "{\\C\\<62>}" % NDha
+"\d35\d34\d09" "{\\C\\<63>}" % NDhu
+"\d35\d34\d10" "{\\C\\<64>}" % NDhU
+"\d35\d34\d11" "{\\C\\<65>}" % NDh.r
+"\d35\d35" "{\\C\\<66>}" % NNa
+"\d35\d35\d09" "{\\C\\<67>}" % NNu
+"\d35\d35\d10" "{\\C\\<68>}" % NNU
+"\d35\d46" "{\\C\\<69>}" % Nma
+"\d35\d46\d09" "{\\C\\<70>}" % Nmu
+"\d35\d46\d10" "{\\C\\<71>}" % NmU
+"\d36\d09" "{\\C\\<72>}" % tu
+"\d36\d10" "{\\C\\<73>}" % tU
+"\d36\d11" "{\\C\\<74>}" % t.r
+"\d36\d36\d09" "{\\C\\<75>}" % ttu
+"\d36\d36\d10" "{\\C\\<76>}" % ttU
+"\d36\d36\d11" "{\\C\\<77>}" % tt.r
+"\d36\d36\d48" "{\\C\\<78>}" % ttra
+"\d36\d36\d48\d09" "{\\C\\<79>}" % ttru
+"\d36\d36\d48\d10" "{\\C\\<80>}" % ttrU
+"\d36\d37" "{\\C\\<81>}" % ttha
+"\d36\d37\d09" "{\\C\\<82>}" % tthu
+"\d36\d37\d10" "{\\C\\<83>}" % tthU
+"\d36\d37\d11" "{\\C\\<84>}" % tth.r
+"\d36\d40" "{\\C\\<85>}" % tna
+"\d36\d45" "{\\C\\<86>}" % tbha
+"\d36\d45\d09" "{\\C\\<87>}" % tbhu
+"\d36\d45\d10" "{\\C\\<88>}" % tbhU
+"\d36\d45\d11" "{\\C\\<89>}" % tbh.r
+"\d36\d46" "{\\C\\<90>}" % tma
+"\d36\d46\d09" "{\\C\\<91>}" % tmu
+"\d36\d46\d10" "{\\C\\<92>}" % tmU
+"\d36\d46\d11" "{\\C\\<93>}" % tm.r
+"\d36\d48" "{\\C\\<94>}" % tra
+"\d36\d48\d10" "{\\C\\<97>}" % trU
+"\d36\d50" "{\\C\\<98>}" % tla
+"\d36\d50\d09" "{\\C\\<99>}" % tlu
+"\d36\d50\d10" "{\\C\\<100>}" % tlU
+"\d36\d56" "{\\C\\<101>}" % tsa
+"\d36\d56\d09" "{\\C\\<102>}" % tsu
+"\d36\d56\d10" "{\\C\\<103>}" % tsU
+"\d36\d56\d11" "{\\C\\<104>}" % ts.r
+"\d36\d56\d37" "{\\C\\<105>}" % tstha
+"\d36\d56\537\d09" "{\\C\\<106>}" % tsthu
+"\d36\d56\d37\d10" "{\\C\\<107>}" % tsthU
+"\d36\d56\d37\d11" "{\\C\\<108>}" % tsth.r
+"\d36\d56\d40" "{\\C\\<109>}" % tsna
+"\d36\d56\d40\d09" "{\\C\\<110>}" % tsnu
+"\d36\d56\d40\d10" "{\\C\\<111>}" % tsnU
+"\d36\d56\d46" "{\\C\\<112>}" % tsma
+"\d36\d56\d46\d09" "{\\C\\<113>}" % tsmu
+"\d36\d56\d46\d10" "{\\C\\<114>}" % tsmU
+"\d36\d56\d46\d11" "{\\C\\<115>}" % tsm.r
+"\d36\d56\d48" "{\\C\\<116>}" % tsra
+"\d36\d56\d48\d09" "{\\C\\<117>}" % tsru
+"\d36\d56\d48\d10" "{\\C\\<118>}" % tsrU
+"\d37\d09" "{\\C\\<119>}" % thu
+"\d37\d10" "{\\C\\<120>}" % thU
+"\d37\d40" "{\\C\\<121>}" % thna
+"\d37\d40\d09" "{\\C\\<122>}" % thnu
+"\d37\d40\d10" "{\\C\\<123>}" % thnU
+"\d37\d46" "{\\C\\<124>}" % thma
+"\d37\d46\d09" "{\\C\\<125>}" % thmu
+"\d37\d46\d10" "{\\C\\<126>}" % thmU
+"\d37\d46\d11" "{\\C\\<161>}" % thm.r
+"\d38\d09" "{\\C\\<162>}" % du
+"\d38\d10" "{\\C\\<163>}" % dU
+"\d38\d11" "{\\C\\<164>}" % d.r
+"\d38\d38" "{\\C\\<165>}" % dda
+"\d38\d38\d09" "{\\C\\<166>}" % ddu
+"\d38\d38\d10" "{\\C\\<168>}" % ddU
+"\d38\d38\d11" "{\\C\\<169>}" % dd.r
+"\d38\d39" "{\\C\\<170>}" % ddha
+"\d38\d39\d09" "{\\C\\<171>}" % ddhu
+"\d38\d39\d11" "{\\C\\<174>}" % ddh.r
+"\d38\d39\d40" "{\\C\\<176>}" % ddhna
+"\d38\d39\d40\d09" "{\\C\\<177>}" % ddhnu
+"\d38\d39\d40\d10" "{\\C\\<178>}" % ddhnU
+"\d38\d39\d46" "{\\C\\<179>}" % ddhma
+"\d38\d39\d46\d09" "{\\C\\<180>}" % ddhmu
+"\d38\d39\d46\d10" "{\\C\\<183>}" % ddhmU
+"\d38\d39\d46\d11" "{\\C\\<184>}" % ddhm.r
+"\d38\d39\d48" "{\\C\\<185>}" % ddhra
+"\d38\d39\d48\d09" "{\\C\\<186>}" % ddhru
+"\d38\d39\d48\d10" "{\\C\\<187>}" % ddhrU
+"\d38\d48" "{\\C\\<188>}" % dra
+"\d38\d48\d09" "{\\C\\<189>}" % dru
+"\d38\d48\d10" "{\\C\\<190>}" % drU
+"\d39\d09" "{\\C\\<191>}" % dhu
+"\d39\d10" "{\\C\\<192>}" % dhU
+"\d39\d11" "{\\C\\<193>}" % dh.r
+"\d39\d40" "{\\C\\<194>}" % dhna
+"\d39\d40\d09" "{\\C\\<195>}" % dhnu
+"\d39\d40\d10" "{\\C\\<196>}" % dhnU
+"\d39\d46" "{\\C\\<197>}" % dhma
+"\d39\d46\d09" "{\\C\\<198>}" % dhmu
+"\d39\d46\d10" "{\\C\\<199>}" % dhmU
+"\d39\d46\d11" "{\\C\\<200>}" % dhm.r
+"\d39\d48" "{\\C\\<201>}" % dhra
+"\d39\d48\d09" "{\\C\\<202>}" % dhru
+"\d39\d48\d10" "{\\C\\<203>}" % dhrU
+"\d40\d09" "{\\C\\<204>}" % nu
+
+"\d40\d10" "{\\C\\<206>}" % nU
+"\d40\d11" "{\\C\\<207>}" % n.r
+"\d40\d36" "{\\C\\<208>}" % nta
+"\d40\d36\d09" "{\\C\\<209>}" % ntu
+"\d40\d36\d10" "{\\C\\<210>}" % ntU
+"\d40\d36\d11" "{\\C\\<211>}" % nt.r
+"\d40\d36\d48" "{\\C\\<212>}" % ntra
+"\d40\d36\d48\d09" "{\\C\\<213>}" % ntru
+"\d40\d36\d48\d10" "{\\C\\<214>}" % ntrU
+"\d40\d37" "{\\C\\<215>}" % ntha
+"\d40\d37\d09" "{\\C\\<216>}" % nthu
+"\d40\d37\d10" "{\\C\\<217>}" % nthU
+"\d40\d37\d11" "{\\C\\<218>}" % nth.r
+"\d40\d38\d09" "{\\C\\<219>}" % ndu
+"\d40\d38\d10" "{\\C\\<220>}" % ndU
+"\d40\d38\d11" "{\\C\\<221>}" % nd.r
+"\d40\d38\d48" "{\\C\\<222>}" % ndra
+"\d40\d38\d48\d09" "{\\C\\<223>}" % ndru
+"\d40\d38\d48\d10" "{\\C\\<224>}" % ndrU
+"\d40\d39" "{\\C\\<225>}" % ndha
+"\d40\d39\d09" "{\\C\\<226>}" % ndhu
+"\d40\d39\d10" "{\\C\\<227>}" % ndhU
+"\d40\d39\d11" "{\\C\\<228>}" % ndh.r
+"\d40\d39\d48" "{\\C\\<229>}" % ndhra
+"\d40\d39\d48\d09" "{\\C\\<230>}" % ndhru
+"\d40\d39\d48\d10" "{\\C\\<231>}" % ndhrU
+"\d40\d40\d09" "{\\C\\<232>}" % nnu
+"\d40\d40\d10" "{\\C\\<233>}" % nnU
+"\d40\d40\d11" "{\\C\\<234>}" % nn.r
+"\d40\d40\d48" "{\\C\\<235>}" % nnra
+"\d40\d40\d48\d09" "{\\C\\<236>}" % nnru
+"\d40\d40\d48\d10" "{\\C\\<237>}" % nnrU
+"\d40\d46" "{\\C\\<238>}" % nma
+"\d40\d46\d09" "{\\C\\<239>}" % nmu
+"\d40\d46\d10" "{\\C\\<240>}" % nmU
+"\d40\d46\d11" "{\\C\\<241>}" % nm.r
+"\d40\d46\d48" "{\\C\\<242>}" % nmra
+"\d40\d46\d48\d09" "{\\C\\<243>}" % nmru
+"\d40\d46\d48\d10" "{\\C\\<244>}" % nmrU
+"\d40\d48" "{\\C\\<245>}" % nra
+"\d40\d48\d09" "{\\C\\<246>}" % nru
+"\d40\d48\d10" "{\\C\\<247>}" % nrU
+"\d40\d49\d09" "{\\C\\<248>}" % nRu
+"\d40\d49\d10" "{\\C\\<249>}" % nRU
+"\d38\d39\d10" "{\\C\\<250>}" % ddhU
+"\d36\d48\d09" "{\\C\\<251>}" % tru
+"\d35\d09" "{\\C\\<252>}" % Nu
+
+% Characters from Ra4 (mlr4)
+
+"\d42\d09" "{\\D\\<33>}" % pu
+"\d42\d10" "{\\D\\<34>}" % pU
+"\d42\d11" "{\\D\\<35>}" % p.r
+"\d42\d31" "{\\D\\<36>}" % pTa
+"\d42\d31\d09" "{\\D\\<37>}" % pTu
+"\d42\d31\d10" "{\\D\\<38>}" % pTU
+"\d42\d36" "{\\D\\<39>}" % pta
+"\d42\d36\d09" "{\\D\\<40>}" % ptu
+"\d42\d36\d10" "{\\D\\<41>}" % ptU
+"\d42\d36\d11" "{\\D\\<42>}" % pt.r
+"\d42\d40" "{\\D\\<43>}" % pna
+"\d42\d40\d09" "{\\D\\<44>}" % pnu
+"\d42\d40\d10" "{\\D\\<46>}" % pnU
+"\d42\d42\d09" "{\\D\\<47>}" % ppu
+"\d42\d42\d10" "{\\D\\<48>}" % ppU
+"\d42\d42\d11" "{\\D\\<49>}" % pp.r
+"\d42\d43" "{\\D\\<50>}" % pfa
+"\d42\d43\d09" "{\\D\\<51>}" % pfu
+"\d42\d43\d10" "{\\D\\<52>}" % pfU
+"\d42\d48" "{\\D\\<53>}" % pra
+"\d42\d48\d09" "{\\D\\<54>}" % pru
+"\d42\d48\d10" "{\\D\\<55>}" % prU
+"\d42\d50" "{\\D\\<56>}" % pla
+"\d42\d50\d09" "{\\D\\<57>}" % plu
+"\d42\d50\d10" "{\\D\\<58>}" % plU
+"\d42\d56" "{\\D\\<59>}" % psa
+"\d42\d56\d09" "{\\D\\<60>}" % psu
+"\d42\d56\d10" "{\\D\\<61>}" % psU
+"\d42\d56\d11" "{\\D\\<62>}" % ps.r
+"\d42\d56\d48" "{\\D\\<63>}" % psra
+"\d42\d56\d48\d09" "{\\D\\<64>}" % psru
+"\d42\d56\d48\d10" "{\\D\\<65>}" % psrU
+"\d43\d09" "{\\D\\<66>}" % fu
+"\d43\d10" "{\\D\\<67>}" % fU
+"\d43\d21" "{\\D\\<68>}" % fka
+"\d43\d21\d09" "{\\D\\<69>}" % fku
+"\d43\d21\d10" "{\\D\\<70>}" % fkU
+"\d43\d31" "{\\D\\<71>}" % fTa
+"\d43\d31\d09" "{\\D\\<72>}" % fTu
+"\d43\d31\d10" "{\\D\\<73>}" % fTU
+"\d43\d36" "{\\D\\<74>}" % fta
+"\d43\d36\d09" "{\\D\\<75>}" % ftu
+"\d43\d36\d10" "{\\D\\<76>}" % ftU
+"\d43\d36\d11" "{\\D\\<77>}" % ft.r
+"\d43\d40" "{\\D\\<78>}" % fna
+"\d43\d40\d09" "{\\D\\<79>}" % fnu
+"\d43\d40\d10" "{\\D\\<80>}" % fnU
+"\d43\d42" "{\\D\\<81>}" % fpa
+"\d43\d42\d09" "{\\D\\<82>}" % fpu
+"\d43\d42\d10" "{\\D\\<83>}" % fpU
+"\d43\d46" "{\\D\\<84>}" % fma
+"\d43\d46\d09" "{\\D\\<85>}" % fmu
+"\d43\d46\d10" "{\\D\\<86>}" % fmU
+"\d43\d48" "{\\D\\<87>}" % fra
+"\d43\d48\d09" "{\\D\\<88>}" % fru
+"\d43\d48\d10" "{\\D\\<89>}" % frU
+"\d43\d50" "{\\D\\<90>}" % fla
+"\d43\d50\d09" "{\\D\\<91>}" % flu
+"\d43\d50\d10" "{\\D\\<92>}" % flU
+"\d43\d56" "{\\D\\<93>}" % fsa
+"\d43\d56\d09" "{\\D\\<94>}" % fsu
+"\d43\d56\d11" "{\\D\\<97>}" % fs.r
+"\d43\d49\d49" "{\\D\\<98>}" % fRRa
+"\d43\d49\d49\d09" "{\\D\\<99>}" % fRRu
+"\d43\d49\d49\d10" "{\\D\\<100>}" % fRRU
+"\d44\d09" "{\\D\\<101>}" % bu
+"\d44\d10" "{\\D\\<102>}" % bU
+"\d44\d11" "{\\D\\<103>}" % b.r
+"\d44\d23" "{\\D\\<104>}" % bga
+"\d44\d23\d09" "{\\D\\<105>}" % bgu
+"\d44\d23\d10" "{\\D\\<106>}" % bgU
+"\d44\d23\d11" "{\\D\\<107>}" % bg.r
+"\d44\d28" "{\\D\\<108>}" % bja
+"\d44\d28\d09" "{\\D\\<109>}" % bju
+"\d44\d28\d10" "{\\D\\<110>}" % bjU
+"\d44\d28\d11" "{\\D\\<111>}" % bj.r
+"\d44\d38" "{\\D\\<112>}" % bda
+"\d44\d38\d09" "{\\D\\<113>}" % bdu
+"\d44\d38\d10" "{\\D\\<114>}" % bdU
+"\d44\d38\d11" "{\\D\\<115>}" % bd.r
+"\d44\d39" "{\\D\\<116>}" % bdha
+"\d44\d39\d09" "{\\D\\<117>}" % bdhu
+"\d44\d39\d10" "{\\D\\<118>}" % bdhU
+"\d44\d39\d11" "{\\D\\<119>}" % bdh.r
+"\d44\d40" "{\\D\\<120>}" % bna
+"\d44\d40\d09" "{\\D\\<121>}" % bnu
+"\d44\d40\d10" "{\\D\\<122>}" % bnU
+"\d44\d44" "{\\D\\<123>}" % bba
+"\d44\d44\d09" "{\\D\\<124>}" % bbu
+"\d44\d44\d10" "{\\D\\<125>}" % bbU
+"\d44\d48" "{\\D\\<126>}" % bra
+"\d44\d48\d09" "{\\D\\<161>}" % bru
+"\d44\d48\d10" "{\\D\\<162>}" % brU
+"\d44\d50" "{\\D\\<163>}" % bla
+"\d44\d50\d09" "{\\D\\<164>}" % blu
+"\d44\d50\d10" "{\\D\\<165>}" % blU
+"\d45\d09" "{\\D\\<166>}" % bhu
+"\d45\d10" "{\\D\\<168>}" % bhU
+"\d45\d11" "{\\D\\<169>}" % bh.r
+"\d45\d48" "{\\D\\<170>}" % bhra
+"\d45\d48\d09" "{\\D\\<171>}" % bhru
+"\d46\d09" "{\\D\\<174>}" % mu
+"\d46\d10" "{\\D\\<176>}" % mU
+"\d46\d11" "{\\D\\<177>}" % m.r
+"\d46\d40" "{\\D\\<178>}" % mna
+"\d46\d40\d09" "{\\D\\<179>}" % mnu
+"\d46\d40\d10" "{\\D\\<180>}" % mnU
+"\d40\d42\d09" "{\\D\\<183>}" % npu
+"\d40\d42\d10" "{\\D\\<184>}" % npU
+"\d40\d42\d11" "{\\D\\<185>}" % np.r
+"\d40\d42\d48" "{\\D\\<186>}" % npra
+"\d40\d42\d48\d09" "{\\D\\<187>}" % npru
+"\d40\d42\d48\d10" "{\\D\\<188>}" % nprU
+"\d46\d46\d09" "{\\D\\<189>}" % mmu
+"\d46\d46\d10" "{\\D\\<190>}" % mmU
+"\d46\d46\d11" "{\\D\\<191>}" % mm.r
+"\d46\d48" "{\\D\\<192>}" % mra
+"\d46\d48\d09" "{\\D\\<193>}" % mru
+"\d46\d48\d10" "{\\D\\<194>}" % mrU
+"\d46\d50" "{\\D\\<195>}" % mla
+"\d46\d50\d09" "{\\D\\<196>}" % mlu
+"\d46\d50\d10" "{\\D\\<197>}" % mlU
+"\d47\d09" "{\\D\\<198>}" % yu
+"\d47\d10" "{\\D\\<199>}" % yU
+"\d47\d21" "{\\D\\<201>}" % yka
+"\d47\d21\d09" "{\\D\\<202>}" % yku
+"\d47\d21\d10" "{\\D\\<203>}" % ykU
+"\d47\d21\d11" "{\\D\\<204>}" % yk.r
+"\d47\d21\d21\d09" "{\\D\\<205>}" % ykku
+"\d47\d21\d21\d10" "{\\D\\<206>}" % ykkU
+"\d47\d26" "{\\D\\<207>}" % yca
+"\d47\d26\d09" "{\\D\\<208>}" % ycu
+"\d47\d26\d10" "{\\D\\<209>}" % ycU
+"\d47\d36" "{\\D\\<210>}" % yta
+"\d47\d36\d09" "{\\D\\<211>}" % ytu
+"\d47\d36\d10" "{\\D\\<212>}" % ytU
+"\d47\d36\d11" "{\\D\\<213>}" % yt.r
+"\d47\d36\d36" "{\\D\\<214>}" % ytta
+"\d47\d36\d36\d09" "{\\D\\<215>}" % yttu
+"\d47\d36\d36\d10" "{\\D\\<216>}" % yttU
+"\d47\d36\d36\d11" "{\\D\\<217>}" % ytt.r
+"\d47\d40" "{\\D\\<218>}" % yna
+"\d47\d40\d09" "{\\D\\<219>}" % ynu
+"\d47\d40\d10" "{\\D\\<220>}" % ynU
+"\d47\d42" "{\\D\\<221>}" % ypa
+"\d47\d42\d09" "{\\D\\<222>}" % ypu
+"\d47\d42\d10" "{\\D\\<223>}" % ypU
+"\d47\d42\d11" "{\\D\\<224>}" % yp.r
+"\d47\d46" "{\\D\\<225>}" % yma
+"\d47\d46\d09" "{\\D\\<226>}" % ymu
+"\d47\d46\d10" "{\\D\\<227>}" % ymU
+"\d47\d46\d11" "{\\D\\<228>}" % ym.r
+"\d47\d47\d09" "{\\D\\<229>}" % yyu
+"\d47\d47\d10" "{\\D\\<230>}" % yyU
+"\d48\d09" "{\\D\\<231>}" % ru
+"\d48\d10" "{\\D\\<232>}" % rU
+"\d48\d11" "{\\D\\<233>}" % r.r
+"\d50\d09" "{\\D\\<234>}" % lu
+"\d50\d10" "{\\D\\<235>}" % lU
+"\d50\d11" "{\\D\\<236>}" % l.r
+%"\d50\d21" "{\\D\\<237>}" % lka
+%"\d50\d21\d09" "{\\D\\<238>}" % lku
+%"\d50\d21\d10" "{\\D\\<239>}" % lkU
+%"\d50\d21\d11" "{\\D\\<240>}" % lk.r
+%"\d50\d21\d21" "{\\D\\<241>}" % lkka
+%"\d50\d21\d21\d09" "{\\D\\<242>}" % lkku
+%"\d50\d21\d21\d10" "{\\D\\<243>}" % lkkU
+%"\d50\d23" "{\\D\\<244>}" % lga
+%"\d50\d23\d09" "{\\D\\<245>}" % lgu
+%"\d50\d23\d10" "{\\D\\<246>}" % lgU
+%"\d50\d23\d11" "{\\D\\<247>}" % lg.r
+"\d45\d48\d10" "{\\D\\<250>}" % bhrU
+"\d43\d56\d10" "{\\D\\<251>}" % fsU
+
+% Characters from Ra5 (mlr5)
+
+%"\d50\d26" "{\\E\\<33>}" % lca
+%"\d50\d26\d09" "{\\E\\<34>}" % lcu
+%"\d50\d26\d10" "{\\E\\<35>}" % lcU
+%"\d50\d36" "{\\E\\<36>}" % lta
+%"\d50\d36\d09" "{\\E\\<37>}" % ltu
+%"\d50\d36\d10" "{\\E\\<38>}" % ltU
+%"\d50\d36\d11" "{\\E\\<39>}" % lt.r
+%"\d50\d36\d36" "{\\E\\<40>}" % ltta
+%"\d50\d36\d36\d09" "{\\E\\<41>}" % lttu
+%"\d50\d36\d36\d10" "{\\E\\<42>}" % lttU
+"\d50\d42" "{\\E\\<43>}" % lpa
+"\d50\d42\d09" "{\\E\\<44>}" % lpu
+"\d50\d42\d10" "{\\E\\<46>}" % lpU
+"\d50\d42\d48" "{\\E\\<47>}" % lpra
+"\d50\d42\d48\d09" "{\\E\\<48>}" % lpru
+"\d50\d42\d48\d10" "{\\E\\<49>}" % lprU
+"\d50\d43" "{\\E\\<50>}" % lfa
+"\d50\d43\d09" "{\\E\\<51>}" % lfu
+"\d50\d43\d10" "{\\E\\<52>}" % lfU
+"\d50\d44" "{\\E\\<53>}" % lba
+"\d50\d44\d09" "{\\E\\<54>}" % lbu
+"\d50\d44\d10" "{\\E\\<55>}" % lbU
+"\d50\d46" "{\\E\\<56>}" % lma
+"\d50\d46\d09" "{\\E\\<57>}" % lmu
+"\d50\d46\d10" "{\\E\\<58>}" % lmU
+"\d50\d50\d09" "{\\E\\<59>}" % llu
+"\d50\d50\d10" "{\\E\\<60>}" % llU
+"\d53\d09" "{\\E\\<61>}" % vu
+"\d53\d10" "{\\E\\<62>}" % vU
+"\d53\d11" "{\\E\\<63>}" % v.r
+"\d53\d48" "{\\E\\<64>}" % vra
+"\d53\d48\d09" "{\\E\\<65>}" % vru
+"\d53\d48\d10" "{\\E\\<66>}" % vrU
+"\d53\d50" "{\\E\\<67>}" % vla
+"\d53\d50\d09" "{\\E\\<68>}" % vlu
+"\d53\d50\d10" "{\\E\\<69>}" % vlU
+"\d53\d53" "{\\E\\<70>}" % vva
+"\d53\d53\d09" "{\\E\\<71>}" % vvu
+"\d53\d53\d10" "{\\E\\<72>}" % vvU
+"\d54\d09" "{\\E\\<73>}" % shu
+"\d54\d10" "{\\E\\<74>}" % shU
+"\d54\d11" "{\\E\\<75>}" % sh.r
+"\d54\d26" "{\\E\\<76>}" % shca
+"\d54\d26\d09" "{\\E\\<77>}" % shcu
+"\d54\d26\d10" "{\\E\\<78>}" % shcU
+"\d54\d26\d11" "{\\E\\<79>}" % shc.r
+"\d54\d27" "{\\E\\<80>}" % shcha
+"\d54\d27\d09" "{\\E\\<81>}" % shchu
+"\d54\d27\d10" "{\\E\\<82>}" % shchU
+"\d54\d27\d11" "{\\E\\<83>}" % shch.r
+"\d54\d40" "{\\E\\<84>}" % shna
+"\d54\d40\d09" "{\\E\\<85>}" % shnu
+"\d54\d40\d10" "{\\E\\<86>}" % shnU
+"\d54\d46" "{\\E\\<87>}" % shma
+"\d54\d46\d09" "{\\E\\<88>}" % shmu
+"\d54\d46\d10" "{\\E\\<89>}" % shmU
+"\d54\d46\d11" "{\\E\\<90>}" % shm.r
+"\d54\d48" "{\\E\\<91>}" % shra
+"\d54\d48\d09" "{\\E\\<92>}" % shru
+"\d54\d48\d10" "{\\E\\<93>}" % shrU
+"\d54\d50" "{\\E\\<94>}" % shla
+"\d54\d50\d10" "{\\E\\<97>}" % shlU
+"\d54\d54" "{\\E\\<98>}" % shsha
+"\d54\d54\d09" "{\\E\\<99>}" % shshu
+"\d54\d54\d10" "{\\E\\<100>}" % shshU
+"\d54\d54\d11" "{\\E\\<101>}" % shsh.r
+"\d54\d54\d48" "{\\E\\<102>}" % shshra
+"\d54\d54\d48\d09" "{\\E\\<103>}" % shshru
+"\d54\d54\d48\d10" "{\\E\\<104>}" % shshrU
+"\d55\d09" "{\\E\\<105>}" % Su
+"\d55\d10" "{\\E\\<106>}" % SU
+"\d55\d11" "{\\E\\<107>}" % S.r
+"\d55\d21" "{\\E\\<108>}" % Ska
+"\d55\d21\d09" "{\\E\\<109>}" % Sku
+"\d55\d21\d10" "{\\E\\<110>}" % SkU
+"\d55\d21\d11" "{\\E\\<111>}" % Sk.r
+"\d55\d21\d21" "{\\E\\<112>}" % Skka
+"\d55\d21\d21\d09" "{\\E\\<113>}" % Skku
+"\d55\d21\d21\d10" "{\\E\\<114>}" % SkkU
+"\d55\d21\d21\d11" "{\\E\\<115>}" % Skk.r
+"\d55\d21\d48" "{\\E\\<116>}" % Skra
+"\d55\d21\d48\d09" "{\\E\\<117>}" % Skru
+"\d55\d21\d48\d10" "{\\E\\<118>}" % SkrU
+"\d55\d31" "{\\E\\<119>}" % STa
+"\d55\d31\d09" "{\\E\\<120>}" % STu
+"\d55\d31\d10" "{\\E\\<121>}" % STU
+"\d55\d31\d11" "{\\E\\<122>}" % ST.r
+"\d55\d31\d48" "{\\E\\<123>}" % STra
+"\d55\d31\d48\d09" "{\\E\\<124>}" % STru
+"\d55\d31\d48\d10" "{\\E\\<125>}" % STrU
+"\d55\d32" "{\\E\\<126>}" % STha
+"\d55\d32\d09" "{\\E\\<161>}" % SThu
+"\d55\d32\d10" "{\\E\\<162>}" % SThU
+"\d55\d35" "{\\E\\<163>}" % SNa
+"\d55\d35\d09" "{\\E\\<164>}" % SNu
+"\d55\d35\d10" "{\\E\\<165>}" % SNU
+"\d55\d42" "{\\E\\<166>}" % Spa
+"\d55\d42\d09" "{\\E\\<168>}" % Spu
+"\d55\d42\d10" "{\\E\\<169>}" % SpU
+"\d55\d42\d11" "{\\E\\<170>}" % Sp.r
+"\d55\d42\d48' "{\\E\\<171>}" % Spra
+"\d55\d42\d48\d10" "{\\E\\<174>}" % SprU
+"\d55\d43" "{\\E\\<176>}" % Sfa
+"\d55\d43\d09" "{\\E\\<177>}" % Sfu
+"\d55\d43\d10" "{\\E\\<178>}" % SfU
+"\d55\d46" "{\\E\\<179>}" % Sma
+"\d55\d46\d09" "{\\E\\<180>}" % Smu
+"\d55\d46\d10" "{\\E\\<183>}" % SmU
+"\d55\d48" "{\\E\\<184>}" % Sra
+"\d55\d48\d09" "{\\E\\<185>}" % Sru
+"\d55\d48\d10" "{\\E\\<186>}" % SrU
+"\d56\d09" "{\\E\\<187>}" % su
+"\d56\d10" "{\\E\\<188>}" % sU
+"\d56\d11" "{\\E\\<189>}" % s.r
+"\d56\d21" "{\\E\\<190>}" % ska
+"\d56\d21\d09" "{\\E\\<191>}" % sku
+"\d56\d21\d10" "{\\E\\<192>}" % skU
+"\d56\d21\d11" "{\\E\\<193>}" % sk.r
+"\d56\d21\d21" "{\\E\\<194>}" % skka
+"\d56\d21\d21\d09" "{\\E\\<195>}" % skku
+"\d56\d21\d21\d10" "{\\E\\<196>}" % skkU
+"\d56\d21\d21\d11" "{\\E\\<197>}" % skk.r
+"\d56\d21\d48" "{\\E\\<198>}" % skra
+"\d56\d21\d48\d09" "{\\E\\<199>}" % skru
+"\d56\d21\d48\d10" "{\\E\\<200>}" % skrU
+"\d56\d22" "{\\E\\<201>}" % skha
+"\d56\d22\d09" "{\\E\\<202>}" % skhu
+"\d56\d22\d10" "{\\E\\<203>}" % skhU
+"\d56\d31" "{\\E\\<204>}" % sTa
+"\d56\d31\d09" "{\\E\\<205>}" % sTu
+"\d56\d31\d10" "{\\E\\<206>}" % sTU
+"\d56\d31\d48" "{\\E\\<207>}" % sTra
+"\d56\d31\d48\d09" "{\\E\\<208>}" % sTru
+"\d56\d31\d48\d10" "{\\E\\<209>}" % sTrU
+"\d56\d36" "{\\E\\<210>}" % sta
+"\d56\d36\d09" "{\\E\\<211>}" % stu
+"\d56\d36\d10" "{\\E\\<212>}" % stU
+"\d56\d36\d11" "{\\E\\<213>}" % st.r
+"\d56\d36\d48" "{\\E\\<214>}" % stra
+"\d56\d36\d48\d09" "{\\E\\<215>}" % stru
+"\d56\d36\d48\d10" "{\\E\\<216>}" % strU
+"\d56\d37" "{\\E\\<217>}" % stha
+"\d56\d37\d09" "{\\E\\<218>}" % sthu
+"\d56\d37\d10" "{\\E\\<219>}" % sthU
+"\d56\d37\d11" "{\\E\\<220>}" % sth.r
+"\d56\d40" "{\\E\\<221>}" % sna
+"\d56\d40\d09" "{\\E\\<222>}" % snu
+"\d56\d40\d10" "{\\E\\<223>}" % snU
+"\d56\d42" "{\\E\\<224>}" % spa
+"\d56\d42\d09" "{\\E\\<225>}" % spu
+"\d56\d42\d10" "{\\E\\<226>}" % spU
+"\d56\d42\d11" "{\\E\\<227>}" % sp.r
+"\d56\d42\d48" "{\\E\\<228>}" % spra
+"\d56\d42\d48\d09" "{\\E\\<229>}" % spru
+"\d56\d42\d48\d10" "{\\E\\<230>}" % sprU
+"\d56\d43" "{\\E\\<231>}" % sfa
+"\d56\d43\d09" "{\\E\\<232>}" % sfu
+"\d56\d43\d10" "{\\E\\<233>}" % sfU
+"\d56\d46" "{\\E\\<234>}" % sma
+"\d56\d46\d09" "{\\E\\<235>}" % smu
+"\d56\d46\d10" "{\\E\\<236>}" % smU
+"\d56\d46\d11" "{\\E\\<237>}" % sm.r
+"\d56\d48" "{\\E\\<238>}" % sra
+"\d56\d48\d09" "{\\E\\<239>}" % sru
+"\d56\d48\d10" "{\\E\\<240>}" % srU
+"\d56\d50" "{\\E\\<241>}" % sla
+"\d56\d50\d09" "{\\E\\<242>}" % slu
+"\d56\d50\d10" "{\\E\\<243>}" % slU
+"\d56\d56" "{\\E\\<244>}" % ssa
+"\d56\d56\d09" "{\\E\\<245>}" % ssu
+"\d56\d56\d10" "{\\E\\<246>}" % ssU
+"\d56\d56\d11" "{\\E\\<247>}" % ss.r
+"\d55\d42\d48\d09" "{\\E\\<250>}" % Spru
+"\d54\d50\d09" "{\\E\\<251>}" % shlu
+
+% Characters from Ra6 (mlr6)
+
+"\d56\d56\d48" "{\\F\\<33>}" % ssra
+"\d56\d56\d48\d09" "{\\F\\<34>}" % ssru
+"\d56\d56\d48\d10" "{\\F\\<35>}" % ssrU
+"\d56\d49\d49" "{\\F\\<36>}" % sRRa
+"\d56\d49\d49\d09" "{\\F\\<37>}" % sRRu
+"\d56\d49\d49\d10" "{\\F\\<38>}" % sRRU
+"\d56\d49\d49\d48\d09" "{\\F\\<40>}" % sRRru
+"\d56\d49\d49\d48\d10" "{\\F\\<41>}" % sRRrU
+"\d57\d09" "{\\F\\<42>}" % hu
+"\d57\d10" "{\\F\\<43>}" % hU
+"\d57\d11" "{\\F\\<44>}" % h.r
+"\d57\d40" "{\\F\\<46>}" % hna
+"\d57\d40\d09" "{\\F\\<47>}" % hnu
+"\d57\d40\d10" "{\\F\\<48>}" % hnU
+"\d57\d46" "{\\F\\<49>}" % hma
+"\d57\d46\d09" "{\\F\\<50>}" % hmu
+"\d57\d46\d10" "{\\F\\<51>}" % hmU
+"\d57\d46\d11" "{\\F\\<52>}" % hm.r
+"\d57\d48" "{\\F\\<53>}" % hra
+"\d57\d48\d09" "{\\F\\<54>}" % hru
+"\d57\d48\d10" "{\\F\\<55>}" % hrU
+"\d57\d50" "{\\F\\<56>}" % hla
+"\d57\d50\d09" "{\\F\\<57>}" % hlu
+"\d57\d50\d10" "{\\F\\<58>}" % hlU
+"\d51\d09" "{\\F\\<59>}" % Lu
+"\d51\d10" "{\\F\\<60>}" % LU
+"\d51\d51\d09" "{\\F\\<61>}" % LLu
+"\d51\d51\d10" "{\\F\\<62>}" % LLU
+"\d52\d09" "{\\F\\<63>}" % zhu
+"\d52\d10" "{\\F\\<64>}" % zhU
+"\d52\d21" "{\\F\\<65>}" % zhka
+"\d52\d21\d09" "{\\F\\<66>}" % zhku
+"\d52\d21\d10" "{\\F\\<67>}" % zhkU
+"\d52\d21\d21" "{\\F\\<68>}" % zhkka
+"\d52\d21\d21\d09" "{\\F\\<69>}" % zhkku
+"\d52\d21\d21\d10" "{\\F\\<70>}" % zhkkU
+"\d52\d26" "{\\F\\<71>}" % zhca
+"\d52\d26\d09" "{\\F\\<72>}" % zhcu
+"\d52\d26\d10" "{\\F\\<73>}" % zhcU
+"\d52\d36" "{\\F\\<74>}" % zhta
+"\d52\d36\d09" "{\\F\\<75>}" % zhtu
+"\d52\d36\d10" "{\\F\\<76>}" % zhtU
+"\d52\d36\d36" "{\\F\\<77>}" % zhtta
+"\d52\d36\d36\d09" "{\\F\\<78>}" % zhttu
+"\d52\d36\d36\d10" "{\\F\\<79>}" % zhttU
+"\d52\d40" "{\\F\\<80>}" % zhna
+"\d52\d40\d09" "{\\F\\<81>}" % zhnu
+"\d52\d40\d10" "{\\F\\<82>}" % zhnU
+"\d52\d40\d40" "{\\F\\<83>}" % zhnna
+"\d52\d40\d40\d09" "{\\F\\<84>}" % zhnnu
+"\d52\d40\d40\d10" "{\\F\\<85>}" % zhnnU
+"\d52\d42" "{\\F\\<86>}" % zhpa
+"\d52\d42\d09" "{\\F\\<87>}" % zhpu
+"\d52\d42\d10" "{\\F\\<88>}" % zhpU
+"\d52\d46" "{\\F\\<89>}" % zhma
+"\d52\d46\d09" "{\\F\\<90>}" % zhmu
+"\d52\d46\d10" "{\\F\\<91>}" % zhmU
+"\d52\d53" "{\\F\\<92>}" % zhva
+"\d52\d53\d09" "{\\F\\<93>}" % zhvu
+"\d52\d53\d10" "{\\F\\<94>}" % zhvU
+"\d52\d56\d09" "{\\F\\<97>}" % zhsu
+"\d52\d56\d10" "{\\F\\<98>}" % zhsU
+"\d49\d09" "{\\F\\<99>}" % Ru
+"\d49\d10" "{\\F\\<100>}" % RU
+"\d49\d49\d09" "{\\F\\<101>}" % RRu
+"\d49\d49\d10" "{\\F\\<102>}" % RRU
+"\d49\d49\d48" "{\\F\\<103>}" % RRra
+"\d49\d49\d48\d09" "{\\F\\<104>}" % RRru
+"\d49\d49\d48\d10" "{\\F\\<105>}" % RRrU
+"\d56\d49\d49\d48" "{\\F\\<145>}" % sRRra
+
+
+@secondary
+% secondary shapes of characters: <codes, glyphs, glyphs> the first set of
+% glyphs (TeX commands) comes in front of the cluster that is being build,
+% the second set comes after it.
+
+% vowels
+
+"\d05" "" "" % a
+"\d06" "" "\\<110>" % aa
+"\d07" "" "\\<111>" % i
+"\d08" "" "\\<112>" % ii
+"\d09" "" "\\<113>" % u
+"\d10" "" "\\<114>" % uu
+"\d11" "" "\\<115>" % vocalic r
+%"\d96" "\\M{" "}{\\<68>}" % vocalic rr
+%"\d12" "" "\\<12>" % vocalic l
+%"\d97" "" "\\<97>" % vocalic ll
+"\d14" "\\<116>" "" % e
+"\d15" "\\<117>" "" % ee
+"\d16" "\\<116>{\\<116>}" "" % ai
+"\d18" "\\<116>" "\\<110>" % o
+"\d19" "\\<117>" "\\<110>" % oo
+"\d20" "" "\\<118>" % au
+"\d87" "\\<116>" "\\<118>" % au length mark
+"\d77" "" "\\<109>" % virama
+
+% secondary shapes of the consonants
+
+"\d47" "" "\\<121>" % secondary ya
+%"\d47\d09" "" "\\<122>" % secondary yu
+%"\d47\d10" "" "\\<123>" % secondary yU
+"\d48" "\\<125>" "" % secondary ra
+"\d53" "" "\\<124>" % secondary va
+
+@primary
+% primary shapes of characters, occurs only with "ra"
+%
+% @reepham "\\T{\\<76>}{" "}"
+%
+% "\d48" "\\T{\\<76>}{" "}" % ra
+
+"\d48" "{\\<99>\\<109>}" "" % ra
+
+@end
+% end of file
diff --git a/language/malayalam/cfg/mm_rch.trs b/language/malayalam/cfg/mm_rch.trs
new file mode 100644
index 0000000000..41ab3d6b54
--- /dev/null
+++ b/language/malayalam/cfg/mm_rch.trs
@@ -0,0 +1,172 @@
+% mm_rch.trs --- Malayalam transcription definition for Rachana font
+% $Id$
+% Alex A.J.
+%
+% November 2002
+
+@atbegin "<malayalam>" "<m>" % this starts Malayalam text in ASCII
+@atend "</malayalam>" "</m>" % this ends Malayalam text in ASCII
+
+% @table format:
+% <pattern> <space> <command> <space> [ <parameter> ][ <comment> ]
+
+@table
+
+% vowels
+
+"a" = "\d05" % a
+"aa" = "\d06" % aa
+"A" = "\d06"
+"i" = "\d07" % i
+"ii" = "\d08" % ii
+"I" = "\d08"
+"u" = "\d09"
+"uu" = "\d10"
+"U" = "\d10"
+".r" = "\d11" % vocalic r
+".r.r" = "\d96" % vocalic rr
+".R" = "\d96"
+".l" = "\d12" % vocalic l
+".l.l" = "\d97" % vocalic ll
+".L" = "\d97"
+"e" = "\d14"
+"ee" = "\d15"
+"E" = "\d15"
+"ai" = "\d16"
+"o" = "\d18"
+"oo" = "\d19"
+"O" = "\d19"
+"au" = "\d20"
+"au\"" = "\d87" % au length mark
+
+% modifiers
+
+"M" = "\d02" % anusvara
+"H" = "\d03" % visarga
+
+% consonants will be print in cillu form if no vowel follows
+
+"k" = "\d21"
+"kh" = "\d22"
+"g" = "\d23"
+"gh" = "\d24"
+"n\"" = "\d25" % nga
+
+"c" = "\d26"
+"ch" = "\d27"
+"j" = "\d28"
+"jh" = "\d29"
+"n~" = "\d30" % nya
+
+"T" = "\d31"
+"Th" = "\d32"
+"D" = "\d33"
+"Dh" = "\d34"
+"N" = "\d35"
+
+"t" = "\d36"
+"th" = "\d37"
+"d" = "\d38"
+"dh" = "\d39"
+"n" = "\d40"
+%"n_" = "\d40"
+
+"p" = "\d42"
+"ph" = "\d43"
+"f" = "\d43"
+"b" = "\d44"
+"bh" = "\d45"
+"m" = "\d46"
+
+"y" = "\d47"
+"r" = "\d48"
+"R" = "\d49"
+%"t_" = "\d49"
+"l" = "\d50"
+"L" = "\d51"
+"zh" = "\d52"
+"v" = "\d53"
+"sh" = "\d54"
+"S" = "\d55"
+"s" = "\d56"
+"h" = "\d57"
+
+"+" = "\d77" % virama
+"u+" = "\d77" % half u
+
+
+% digits
+
+"0" = "\d102"
+"1" = "\d103"
+"2" = "\d104"
+"3" = "\d105"
+"4" = "\d106"
+"5" = "\d107"
+"6" = "\d108"
+"7" = "\d109"
+"8" = "\d110"
+"9" = "\d111"
+
+% special (arbitrary code positions)
+
+"<<" = "\d127" % join
+">>" = "\d126" % non join
+"[]" = "\d125" % dotted circle
+" " = "\d124" % space
+"\t" = "\d124" % tab = space
+
+% interpunction
+
+% non malayalam things
+
+">" f % eliminate ambiguities
+"\\" t % copy TeX command
+"^" f % forget about capital letters
+"\\$" p "\\$"
+"%" s % skip comment
+"{" p "{"
+"}" p "}"
+"\n" p "\n" % newline
+
+% things borrowed from roman
+
+"." p "\\K{.1}{.}"
+"," p "\\K{.1}{,}"
+":" p "\\K{.1}{:}"
+";" p "\\K{.1}{;}"
+"`" p "\\K{-.1}{\\RMF`}"
+"``" p "\\K{-.1}{\\RMF``}"
+"'" p "\\K{.15}{\\RMF'}"
+"''" p "\\K{.15}{\\RMF''}"
+"-" p "{\\RMF-}"
+"--" p "{\\RMF--}"
+"---" p "\\K{.1}{\\RMF---}"
+"?" p "\\K{.1}{?}"
+"!" p "\\K{.1}{!}"
+"(" p "("
+")" p "\\K{.1}{)}"
+"[" p "{\\RMF[}"
+"]" p "\\K{.1}{\\RMF]}"
+"/" p "/"
+"\\%" p "{\\RMF\\%}"
+"~" p "~"
+
+"\\mm" p "\\mm"
+"\\part{" p "\\part{\\mm "
+"\\part*{" p "\\part*{\\mm "
+"\\chapter{" p "\\chapter{\\mm "
+"\\chapter*{" p "\\chapter*{\\mm "
+"\\section{" p "\\section{\\mm "
+"\\section*{" p "\\section*{\\mm "
+"\\subsection{" p "\\subsection{\\mm "
+"\\subsection*{" p "\\subsection*{\\mm "
+"\\subsubsection{" p "\\subsubsection{\\mm "
+"\\subsubsection*{" p "\\subsubsection*{\\mm "
+"\\abstract{" p "\\abstract{\\mm "
+"\\itshape" p "\\itshape"
+"\\it" p "\\it\\mm "
+"\\bfseries" p "\\bfseries"
+"\\bf" p "\\bf\\mm "
+
+@end
diff --git a/language/malayalam/cfg/mmr_ildc_cdac.scr b/language/malayalam/cfg/mmr_ildc_cdac.scr
new file mode 100644
index 0000000000..5b230dd692
--- /dev/null
+++ b/language/malayalam/cfg/mmr_ildc_cdac.scr
@@ -0,0 +1,275 @@
+% mmr_keli.scr --- Malayalam reformed script file for TeX pre-processor
+% November 2002 Alex A.J.
+% $Id$
+%
+
+@malayalam
+% script type
+
+@atbegin "{\\mm "
+%@atbegin "{ "
+@atend "}"
+% to be placed at the begin respectively end of malayalam text
+
+@atbeginsyllabe "\\-\\X{"
+@atendsyllabe "}"
+% to be placed at the begin repectively end of every syllabe
+
+@prebuild
+% prebuild characters: <codes, glyphs>.
+% We start with a list mapping all single characters to glyphs (i.e. TeX
+% codes to typeset them), they need to be here!
+
+"\d02" "\\<119>" % anusvara
+"\d03" "\\<120>" % visarga
+
+% vowels
+
+"\d05" "\\<65>" % a
+"\d06" "\\<66>" % aa
+"\d07" "\\<67>" % i
+"\d08" "\\<67>\\<117>" % ii
+"\d09" "\\<68>" % u
+"\d10" "\\<68>\\<117>" % uu
+"\d11" "\\<69>" % vocalic r
+"\d14" "\\<70>" % e
+"\d15" "\\<71>" % ee
+"\d16" "\\<115>\\<70>" % ai
+"\d18" "\\<72>" % o
+"\d19" "\\<72>\\<109>" % oo
+"\d20" "\\<72>\\<117>" % au
+"\d87" "\\<117>" % au length mark
+
+% consonants
+
+"\d21" "\\<73>" % ka
+"\d22" "\\<74>" % kha
+"\d23" "\\<75>" % ga
+"\d24" "\\<76>" % gha
+"\d25" "\\<77>" % nga
+
+"\d26" "\\<78>" % ca
+"\d27" "\\<79>" % cha
+"\d28" "\\<80>" % ja
+"\d29" "\\<81>" % jha
+"\d30" "\\<82>" % nya
+
+"\d31" "\\<83>" % Ta
+"\d32" "\\<84>" % Tha
+"\d33" "\\<85>" % Da
+"\d34" "\\<86>" % Dha
+"\d35" "\\<87>" % Na
+
+"\d36" "\\<88>" % ta
+"\d37" "\\<89>" % tha
+"\d38" "\\<90>" % da
+"\d39" "\\<91>" % dha
+"\d40" "\\<92>" % na
+
+"\d42" "\\<93>" % pa
+"\d43" "\\<94>" % pha, fa
+"\d44" "\\<95>" % ba
+"\d45" "\\<96>" % bha
+"\d46" "\\<97>" % ma
+
+"\d47" "\\<98>" % ya
+"\d48" "\\<99>" % ra
+"\d49" "\\<100>" % Ra
+"\d50" "\\<101>" % la
+"\d51" "\\<102>" % La
+"\d52" "\\<103>" % zha
+"\d53" "\\<104>" % va
+"\d54" "\\<105>" % sha
+"\d55" "\\<106>" % Sa
+"\d56" "\\<107>" % sa
+"\d57" "\\<108>" % ha
+
+% digits
+
+"\d102" "\\<48>" % 0
+"\d103" "\\<49>" % 1
+"\d104" "\\<50>" % 2
+"\d105" "\\<51>" % 3
+"\d106" "\\<52>" % 4
+"\d107" "\\<53>" % 5
+"\d108" "\\<54>" % 6
+"\d109" "\\<55>" % 7
+"\d110" "\\<56>" % 8
+"\d111" "\\<57>" % 9
+
+% specials
+
+
+"\d77" "\\<118>" % virama
+
+"\d127" "\\hbox{}" % join (dissapears)
+"\d126" "\\hbox{}" % non-join (dissapears)
+"\d125" "\\<35>" % dotted circle
+"\d125\d127" "\\<35>" % dotted circle + join
+"\d124" " " % space
+"\d124\d127" "\\hbox{}" % space + join (dissapears)
+
+% then we have a list of all conjuncts and consonant vowel combinations
+% that cannot be build by the standard algorithm, i.e. we need a ligature.
+
+"\d21\d21" "\\<161>" % k+ka
+"\d21\d55" "\\<163>" % k+Sa
+"\d21\d36" "\\<224>" % k+ta
+"\d21\d31" "\\<206>" % k+Ta
+"\d21\d50" "\\<162>" % k+la
+%"\d21\d77" "\\<94>" % k+virama
+
+"\d23\d23" "\\<164>" % g+ga
+%"\d23\d24" "\\<218>" % g+gha
+%"\d23\d38" "\\<145>" % g+da
+%"\d23\d38\d39" "\\<146>" % g+d+dha
+"\d23\d40" "\\<225>" % g+na
+"\d23\d46" "\\<220>" % g+ma
+"\d23\d50" "\\<165>" % g+la
+
+"\d25\d25" "\\<167>" % ng+nga
+"\d25\d21" "\\<166>" % ng+ka
+
+"\d26\d26" "\\<168>" % c+ca
+"\d26\d27" "\\<209>" % c+cha
+
+"\d28\d28" "\\<214>" % j+ja
+"\d28\d30" "\\<218>" % j+nya
+
+"\d30\d26" "\\<244>" % ny+ca
+%"\d30\d28" "\\K{.1}{\\<229>}" % ny+ja
+"\d30\d30" "\\<170>" % ny+nya
+
+"\d31\d31" "\\<171>" % T+Ta
+
+"\d33\d33" "\\<205>" % D+Da
+
+
+"\d35\d31" "\\<239>" % N+Ta
+"\d35\d33" "\\<222>" % N+Da
+%"\d35\d34" "\\<148>" % N+Dha
+"\d35\d35" "\\<174>" % N+Na
+"\d35\d46" "\\<215>" % N+ma
+"\d35\d77" "\\<172>" % N+virama
+
+"\d36\d36" "\\<175>" % t+ta
+"\d36\d37" "\\<176>" % t+tha
+%"\d36\d40" "\\<147>" % t+na
+"\d36\d46" "\\<223>" % t+ma
+"\d36\d56" "\\<213>" % t+sa
+"\d36\d45" "\\<219>" % t+bha
+%"\d36\d77" "\\<81>" % t+virama
+
+"\d38\d38" "\\<177>" % d+da
+"\d38\d39" "\\<178>" % d+dha
+"\d38\d48\d47" "{\\<123>\\<90>\\<121>}" % d+r+ya
+
+"\d40\d36" "\\<180>" % n+ta
+"\d40\d38" "\\<181>" % n+da
+"\d40\d40" "\\<243>" % n+na
+"\d40\d46" "\\<242>" % n+ma
+"\d40\d77" "\\<179>" % n+virama
+
+%by alex
+"\d40\d49" "\\<226>" % n+Ra
+"\d40\d42" "\\<188>" % n+pa
+"\d40\d37" "\\<217>" % n+tha
+"\d40\d39" "\\<212>" % n+dha
+"\d40\d36\d48" "{\\<123>\\<180>}" % n+t+ra
+
+"\d42\d42" "\\<184>" % p+pa
+"\d42\d50" "\\<185>" % p+la
+
+"\d44\d44" "\\<186>" % b+ba
+"\d44\d50" "\\<187>" % b+la
+"\d44\d38" "\\<208>" % b+da
+"\d44\d39" "\\<207>" % b+dha
+
+"\d46\d46" "\\<189>" % m+ma
+"\d46\d42" "\\<188>" % m+pa
+"\d46\d77" "\\<119>" % m+virama (=anusvara)
+"\d46\d50" "\\<190>" % m+la
+
+"\d47\d47" "\\<191>" % y+ya
+
+%"\d48\d77" "\\<80>" % r+virama
+"\d49\d47" "{\\<99>\\<121>}" % r+ya
+
+"\d49\d49" "\\<228>" % R+Ra
+"\d49\d77" "\\<192>" % R+virama
+
+"\d50\d77" "\\<240>" % l+virama
+"\d50\d50" "\\<241>" % l+la
+
+"\d51\d51" "\\<197>" % L+La
+"\d51\d77" "\\<196>" % L+virama
+
+"\d53\d53" "\\<198>" % v+va
+
+"\d54\d54" "\\<200>" % sh+sha
+"\d54\d50" "\\<199>" % sh+la
+"\d54\d26" "\\<221>" % sh+ca
+
+"\d55\d31" "\\<227>" % S+Ta
+
+"\d56\d56" "\\<202>" % s+sa
+"\d56\d50" "\\<201>" % s+la
+"\d56\d37" "\\<216>" % s+tha
+"\d56\d49\d49" "\\<204>" % s+RRa
+
+"\d57\d40" "\\<211>" % h+na
+"\d57\d50" "\\<203>" % h+la
+"\d57\d46" "\\<210>" % h+ma
+
+% cillu/non-cillu variants of $k$ $y$ $n$, $N$, $m$, $t$ $l$ $L$
+
+
+"\d35\d127\d77" "{\\<87>\\<118>}" % Na
+"\d40\d127\d77" "{\\<92>\\<118>}" % na
+"\d46\d127\d77" "{\\<97>\\<118>}" % ma
+"\d48\d127\d77" "{\\<99>\\<118>}" % ra
+"\d49\d127\d77" "{\\<100>\\<118>}" % Ra
+"\d50\d127\d77" "{\\<101>\\<118>}" % la
+"\d51\d127\d77" "{\\<102>\\<118>}" % La
+
+@secondary
+% secondary shapes of characters: <codes, glyphs, glyphs> the first set of
+% glyphs (TeX commands) comes in front of the cluster that is being build,
+% the second set comes after it.
+
+% vowels
+
+"\d05" "" "" % a
+"\d06" "" "\\<109>" % aa
+"\d07" "" "\\<110>" % i
+"\d08" "" "\\<111>" % ii
+"\d09" "" "\\<112>" % u
+"\d10" "" "\\<113>" % uu
+"\d11" "" "\\<114>" % vocalic r
+"\d14" "\\<115>" "" % e
+"\d15" "\\<116>" "" % ee
+"\d16" "\\<115>{\\<115>}" "" % ai
+"\d18" "\\<115>" "\\<109>" % o
+"\d19" "\\<116>" "\\<109>" % oo
+"\d20" "" "\\<117>" % au
+"\d87" "\\<115>" "\\<117>" % au length mark
+"\d77" "" "\\<118>" % virama
+
+% secondary shapes of the consonants
+
+"\d47" "" "\\<121>" % secondary ya
+"\d48" "\\<123>" "" % secondary ra
+%"\d50" "\\M{" "}{\\<85>}" % secondary la
+"\d53" "" "\\<122>" % secondary va
+
+@primary
+% primary shapes of characters, occurs only with "ra"
+%
+% @reepham "\\T{\\<76>}{" "}"
+%
+% "\d48" "\\T{\\<76>}{" "}" % ra
+
+"\d48" "{\\<99>\\<118>}" "" % ra
+
+@end
+% end of file
diff --git a/language/malayalam/cfg/mmr_ildc_cdac.trs b/language/malayalam/cfg/mmr_ildc_cdac.trs
new file mode 100644
index 0000000000..3226075fab
--- /dev/null
+++ b/language/malayalam/cfg/mmr_ildc_cdac.trs
@@ -0,0 +1,171 @@
+% mmr_keli.trs --- Malayalam transcription definition for TeX pre-processor
+%
+% 21 May 2004 Alex AJ (0.9a Update)
+% November 2002 Alex A.J.
+% $Id$
+
+@atbegin "<malayalam>" "<m>" % this starts Malayalam text in ASCII
+@atend "</malayalam>" "</m>" % this ends Malayalam text in ASCII
+
+% @table format:
+% <pattern> <space> <command> <space> [ <parameter> ][ <comment> ]
+
+@table
+
+% vowels
+
+"a" = "\d05" % a
+"aa" = "\d06" % aa
+"A" = "\d06"
+"i" = "\d07" % i
+"ii" = "\d08" % ii
+"I" = "\d08"
+"u" = "\d09"
+"uu" = "\d10"
+"U" = "\d10"
+".r" = "\d11" % vocalic r
+".r.r" = "\d96" % vocalic rr
+".R" = "\d96"
+".l" = "\d12" % vocalic l
+".l.l" = "\d97" % vocalic ll
+".L" = "\d97"
+"e" = "\d14"
+"ee" = "\d15"
+"E" = "\d15"
+"ai" = "\d16"
+"o" = "\d18"
+"oo" = "\d19"
+"O" = "\d19"
+"au" = "\d20"
+"au\"" = "\d87" % au length mark
+
+% modifiers
+
+"M" = "\d02" % anusvara
+"H" = "\d03" % visarga
+
+% consonants will be print in cillu form if no vowel follows
+
+"k" = "\d21"
+"kh" = "\d22"
+"g" = "\d23"
+"gh" = "\d24"
+"n\"" = "\d25" % nga
+
+"c" = "\d26"
+"ch" = "\d27"
+"j" = "\d28"
+"jh" = "\d29"
+"n~" = "\d30" % nya
+
+"T" = "\d31"
+"Th" = "\d32"
+"D" = "\d33"
+"Dh" = "\d34"
+"N" = "\d35"
+
+"t" = "\d36"
+"th" = "\d37"
+"d" = "\d38"
+"dh" = "\d39"
+"n" = "\d40"
+%"n_" = "\d40"
+
+"p" = "\d42"
+"ph" = "\d43"
+"f" = "\d43"
+"b" = "\d44"
+"bh" = "\d45"
+"m" = "\d46"
+
+"y" = "\d47"
+"r" = "\d48"
+"R" = "\d49"
+"t_" = "\d49"
+"l" = "\d50"
+"L" = "\d51"
+"zh" = "\d52"
+"v" = "\d53"
+"sh" = "\d54"
+"S" = "\d55"
+"s" = "\d56"
+"h" = "\d57"
+
+"+" = "\d77" % virama
+"u+" = "\d77" % half u
+
+% digits
+
+"0" = "\d102"
+"1" = "\d103"
+"2" = "\d104"
+"3" = "\d105"
+"4" = "\d106"
+"5" = "\d107"
+"6" = "\d108"
+"7" = "\d109"
+"8" = "\d110"
+"9" = "\d111"
+
+% special (arbitrary code positions)
+
+"<<" = "\d127" % join
+">>" = "\d126" % non join
+"[]" = "\d125" % dotted circle
+" " = "\d124" % space
+"\t" = "\d124" % tab = space
+
+% interpunction
+
+% non malayalam things
+
+">" f % eliminate ambiguities
+"\\" t % copy TeX command
+"^" f % forget about capital letters
+"\\$" p "\\$"
+"%" s % skip comment
+"{" p "{"
+"}" p "}"
+"\n" p "\n" % newline
+
+% things borrowed from roman
+
+"." p "."
+"," p ","
+":" p ":"
+";" p ";"
+"`" p "\\K{-.1}{\\RMF`}"
+"``" p "\\K{-.1}{\\RMF``}"
+"'" p "\\K{.1}{\\RMF'}"
+"''" p "\\K{.1}{\\RMF''}"
+"-" p "{\\RMF-}"
+"--" p "{\\RMF--}"
+"---" p "\\K{.1}{\\RMF---}"
+"?" p "\\K{.1}{?}"
+"!" p "!"
+"(" p "("
+")" p "\\K{.1}{)}"
+"[" p "{\\RMF[}"
+"]" p "\\K{.1}{\\RMF]}"
+"/" p "/"
+"\\%" p "{\\RMF\\%}"
+"~" p "~"
+
+"\\mm" p "\\mm"
+"\\part{" p "\\part{\\mm "
+"\\part*{" p "\\part*{\\mm "
+"\\chapter{" p "\\chapter{\\mm "
+"\\chapter*{" p "\\chapter*{\\mm "
+"\\section{" p "\\section{\\mm "
+"\\section*{" p "\\section*{\\mm "
+"\\subsection{" p "\\subsection{\\mm "
+"\\subsection*{" p "\\subsection*{\\mm "
+"\\subsubsection{" p "\\subsubsection{\\mm "
+"\\subsubsection*{" p "\\subsubsection*{\\mm "
+"\\abstract{" p "\\abstract{\\mm "
+"\\itshape" p "\\itshape"
+"\\it" p "\\it\\mm "
+"\\bfseries" p "\\bfseries"
+"\\bf" p "\\bf\\mm "
+
+@end
diff --git a/language/malayalam/cfg/mmr_ism.scr b/language/malayalam/cfg/mmr_ism.scr
new file mode 100644
index 0000000000..0c4498301a
--- /dev/null
+++ b/language/malayalam/cfg/mmr_ism.scr
@@ -0,0 +1,275 @@
+% mmr_keli.scr --- Malayalam reformed script file for TeX pre-processor
+% November 2002 Alex A.J.
+% $Id$
+%
+
+@malayalam
+% script type
+
+@atbegin "{\\mm "
+%@atbegin "{ "
+@atend "}"
+% to be placed at the begin respectively end of malayalam text
+
+@atbeginsyllabe "\\-\\X{"
+@atendsyllabe "}"
+% to be placed at the begin repectively end of every syllabe
+
+@prebuild
+% prebuild characters: <codes, glyphs>.
+% We start with a list mapping all single characters to glyphs (i.e. TeX
+% codes to typeset them), they need to be here!
+
+"\d02" "\\<119>" % anusvara
+"\d03" "\\<120>" % visarga
+
+% vowels
+
+"\d05" "\\<65>" % a
+"\d06" "\\<66>" % aa
+"\d07" "\\<67>" % i
+"\d08" "\\<67>\\<117>" % ii
+"\d09" "\\<68>" % u
+"\d10" "\\<68>\\<117>" % uu
+"\d11" "\\<69>" % vocalic r
+"\d14" "\\<70>" % e
+"\d15" "\\<71>" % ee
+"\d16" "\\<115>\\<70>" % ai
+"\d18" "\\<72>" % o
+"\d19" "\\<72>\\<109>" % oo
+"\d20" "\\<72>\\<117>" % au
+"\d87" "\\<117>" % au length mark
+
+% consonants
+
+"\d21" "\\<73>" % ka
+"\d22" "\\<74>" % kha
+"\d23" "\\<75>" % ga
+"\d24" "\\<76>" % gha
+"\d25" "\\<77>" % nga
+
+"\d26" "\\<78>" % ca
+"\d27" "\\<79>" % cha
+"\d28" "\\<80>" % ja
+"\d29" "\\<81>" % jha
+"\d30" "\\<82>" % nya
+
+"\d31" "\\<83>" % Ta
+"\d32" "\\<84>" % Tha
+"\d33" "\\<85>" % Da
+"\d34" "\\<86>" % Dha
+"\d35" "\\<87>" % Na
+
+"\d36" "\\<88>" % ta
+"\d37" "\\<89>" % tha
+"\d38" "\\<90>" % da
+"\d39" "\\<91>" % dha
+"\d40" "\\<92>" % na
+
+"\d42" "\\<93>" % pa
+"\d43" "\\<94>" % pha, fa
+"\d44" "\\<95>" % ba
+"\d45" "\\<96>" % bha
+"\d46" "\\<97>" % ma
+
+"\d47" "\\<98>" % ya
+"\d48" "\\<99>" % ra
+"\d49" "\\<100>" % Ra
+"\d50" "\\<101>" % la
+"\d51" "\\<102>" % La
+"\d52" "\\<103>" % zha
+"\d53" "\\<104>" % va
+"\d54" "\\<105>" % sha
+"\d55" "\\<106>" % Sa
+"\d56" "\\<107>" % sa
+"\d57" "\\<108>" % ha
+
+% digits
+
+"\d102" "\\<48>" % 0
+"\d103" "\\<49>" % 1
+"\d104" "\\<50>" % 2
+"\d105" "\\<51>" % 3
+"\d106" "\\<52>" % 4
+"\d107" "\\<53>" % 5
+"\d108" "\\<54>" % 6
+"\d109" "\\<55>" % 7
+"\d110" "\\<56>" % 8
+"\d111" "\\<57>" % 9
+
+% specials
+
+
+"\d77" "\\<118>" % virama
+
+"\d127" "\\hbox{}" % join (dissapears)
+"\d126" "\\hbox{}" % non-join (dissapears)
+"\d125" "\\<35>" % dotted circle
+"\d125\d127" "\\<35>" % dotted circle + join
+"\d124" " " % space
+"\d124\d127" "\\hbox{}" % space + join (dissapears)
+
+% then we have a list of all conjuncts and consonant vowel combinations
+% that cannot be build by the standard algorithm, i.e. we need a ligature.
+
+"\d21\d21" "\\<161>" % k+ka
+"\d21\d55" "\\<163>" % k+Sa
+"\d21\d36" "\\<224>" % k+ta
+"\d21\d31" "\\<206>" % k+Ta
+"\d21\d50" "\\<162>" % k+la
+%"\d21\d77" "\\<94>" % k+virama
+
+"\d23\d23" "\\<164>" % g+ga
+%"\d23\d24" "\\<218>" % g+gha
+%"\d23\d38" "\\<145>" % g+da
+%"\d23\d38\d39" "\\<146>" % g+d+dha
+"\d23\d40" "\\<225>" % g+na
+"\d23\d46" "\\<220>" % g+ma
+"\d23\d50" "\\<165>" % g+la
+
+"\d25\d25" "\\<167>" % ng+nga
+"\d25\d21" "\\<166>" % ng+ka
+
+"\d26\d26" "\\<168>" % c+ca
+"\d26\d27" "\\<209>" % c+cha
+
+"\d28\d28" "\\<214>" % j+ja
+"\d28\d30" "\\<218>" % j+nya
+
+"\d30\d26" "\\<169>" % ny+ca
+%"\d30\d28" "\\K{.1}{\\<229>}" % ny+ja
+"\d30\d30" "\\<170>" % ny+nya
+
+"\d31\d31" "\\<171>" % T+Ta
+
+"\d33\d33" "\\<205>" % D+Da
+
+
+"\d35\d31" "\\<173>" % N+Ta
+"\d35\d33" "\\<222>" % N+Da
+%"\d35\d34" "\\<148>" % N+Dha
+"\d35\d35" "\\<174>" % N+Na
+"\d35\d46" "\\<215>" % N+ma
+"\d35\d77" "\\<172>" % N+virama
+
+"\d36\d36" "\\<175>" % t+ta
+"\d36\d37" "\\<176>" % t+tha
+%"\d36\d40" "\\<147>" % t+na
+"\d36\d46" "\\<223>" % t+ma
+"\d36\d56" "\\<213>" % t+sa
+"\d36\d45" "\\<219>" % t+bha
+%"\d36\d77" "\\<81>" % t+virama
+
+"\d38\d38" "\\<177>" % d+da
+"\d38\d39" "\\<178>" % d+dha
+"\d38\d48\d47" "{\\<123>\\<90>\\<121>}" % d+r+ya
+
+"\d40\d36" "\\<180>" % n+ta
+"\d40\d38" "\\<181>" % n+da
+"\d40\d40" "\\<182>" % n+na
+"\d40\d46" "\\<183>" % n+ma
+"\d40\d77" "\\<179>" % n+virama
+
+%by alex
+"\d40\d49" "\\<226>" % n+Ra
+"\d40\d42" "\\<188>" % n+pa
+"\d40\d37" "\\<217>" % n+tha
+"\d40\d39" "\\<212>" % n+dha
+"\d40\d36\d48" "{\\<123>\\<180>}" % n+t+ra
+
+"\d42\d42" "\\<184>" % p+pa
+"\d42\d50" "\\<185>" % p+la
+
+"\d44\d44" "\\<186>" % b+ba
+"\d44\d50" "\\<187>" % b+la
+"\d44\d38" "\\<208>" % b+da
+"\d44\d39" "\\<207>" % b+dha
+
+"\d46\d46" "\\<189>" % m+ma
+"\d46\d42" "\\<188>" % m+pa
+"\d46\d77" "\\<119>" % m+virama (=anusvara)
+"\d46\d50" "\\<190>" % m+la
+
+"\d47\d47" "\\<191>" % y+ya
+
+%"\d48\d77" "\\<80>" % r+virama
+"\d49\d47" "{\\<99>\\<121>}" % r+ya
+
+"\d49\d49" "\\<228>" % R+Ra
+"\d49\d77" "\\<192>" % R+virama
+
+"\d50\d77" "\\<194>" % l+virama
+"\d50\d50" "\\<195>" % l+la
+
+"\d51\d51" "\\<197>" % L+La
+"\d51\d77" "\\<196>" % L+virama
+
+"\d53\d53" "\\<198>" % v+va
+
+"\d54\d54" "\\<200>" % sh+sha
+"\d54\d50" "\\<199>" % sh+la
+"\d54\d26" "\\<221>" % sh+ca
+
+"\d55\d31" "\\<227>" % S+Ta
+
+"\d56\d56" "\\<202>" % s+sa
+"\d56\d50" "\\<201>" % s+la
+"\d56\d37" "\\<216>" % s+tha
+"\d56\d49\d49" "\\<204>" % s+RRa
+
+"\d57\d40" "\\<211>" % h+na
+"\d57\d50" "\\<203>" % h+la
+"\d57\d46" "\\<210>" % h+ma
+
+% cillu/non-cillu variants of $k$ $y$ $n$, $N$, $m$, $t$ $l$ $L$
+
+
+"\d35\d127\d77" "{\\<87>\\<118>}" % Na
+"\d40\d127\d77" "{\\<92>\\<118>}" % na
+"\d46\d127\d77" "{\\<97>\\<118>}" % ma
+"\d48\d127\d77" "{\\<99>\\<118>}" % ra
+"\d49\d127\d77" "{\\<100>\\<118>}" % Ra
+"\d50\d127\d77" "{\\<101>\\<118>}" % la
+"\d51\d127\d77" "{\\<102>\\<118>}" % La
+
+@secondary
+% secondary shapes of characters: <codes, glyphs, glyphs> the first set of
+% glyphs (TeX commands) comes in front of the cluster that is being build,
+% the second set comes after it.
+
+% vowels
+
+"\d05" "" "" % a
+"\d06" "" "\\<109>" % aa
+"\d07" "" "\\<110>" % i
+"\d08" "" "\\<111>" % ii
+"\d09" "" "\\<112>" % u
+"\d10" "" "\\<113>" % uu
+"\d11" "" "\\<114>" % vocalic r
+"\d14" "\\<115>" "" % e
+"\d15" "\\<116>" "" % ee
+"\d16" "\\<115>{\\<115>}" "" % ai
+"\d18" "\\<115>" "\\<109>" % o
+"\d19" "\\<116>" "\\<109>" % oo
+"\d20" "" "\\<117>" % au
+"\d87" "\\<115>" "\\<117>" % au length mark
+"\d77" "" "\\<118>" % virama
+
+% secondary shapes of the consonants
+
+"\d47" "" "\\<121>" % secondary ya
+"\d48" "\\<123>" "" % secondary ra
+%"\d50" "\\M{" "}{\\<85>}" % secondary la
+"\d53" "" "\\<122>" % secondary va
+
+@primary
+% primary shapes of characters, occurs only with "ra"
+%
+% @reepham "\\T{\\<76>}{" "}"
+%
+% "\d48" "\\T{\\<76>}{" "}" % ra
+
+"\d48" "{\\<99>\\<118>}" "" % ra
+
+@end
+% end of file
diff --git a/language/malayalam/cfg/mmr_ism.trs b/language/malayalam/cfg/mmr_ism.trs
new file mode 100644
index 0000000000..3226075fab
--- /dev/null
+++ b/language/malayalam/cfg/mmr_ism.trs
@@ -0,0 +1,171 @@
+% mmr_keli.trs --- Malayalam transcription definition for TeX pre-processor
+%
+% 21 May 2004 Alex AJ (0.9a Update)
+% November 2002 Alex A.J.
+% $Id$
+
+@atbegin "<malayalam>" "<m>" % this starts Malayalam text in ASCII
+@atend "</malayalam>" "</m>" % this ends Malayalam text in ASCII
+
+% @table format:
+% <pattern> <space> <command> <space> [ <parameter> ][ <comment> ]
+
+@table
+
+% vowels
+
+"a" = "\d05" % a
+"aa" = "\d06" % aa
+"A" = "\d06"
+"i" = "\d07" % i
+"ii" = "\d08" % ii
+"I" = "\d08"
+"u" = "\d09"
+"uu" = "\d10"
+"U" = "\d10"
+".r" = "\d11" % vocalic r
+".r.r" = "\d96" % vocalic rr
+".R" = "\d96"
+".l" = "\d12" % vocalic l
+".l.l" = "\d97" % vocalic ll
+".L" = "\d97"
+"e" = "\d14"
+"ee" = "\d15"
+"E" = "\d15"
+"ai" = "\d16"
+"o" = "\d18"
+"oo" = "\d19"
+"O" = "\d19"
+"au" = "\d20"
+"au\"" = "\d87" % au length mark
+
+% modifiers
+
+"M" = "\d02" % anusvara
+"H" = "\d03" % visarga
+
+% consonants will be print in cillu form if no vowel follows
+
+"k" = "\d21"
+"kh" = "\d22"
+"g" = "\d23"
+"gh" = "\d24"
+"n\"" = "\d25" % nga
+
+"c" = "\d26"
+"ch" = "\d27"
+"j" = "\d28"
+"jh" = "\d29"
+"n~" = "\d30" % nya
+
+"T" = "\d31"
+"Th" = "\d32"
+"D" = "\d33"
+"Dh" = "\d34"
+"N" = "\d35"
+
+"t" = "\d36"
+"th" = "\d37"
+"d" = "\d38"
+"dh" = "\d39"
+"n" = "\d40"
+%"n_" = "\d40"
+
+"p" = "\d42"
+"ph" = "\d43"
+"f" = "\d43"
+"b" = "\d44"
+"bh" = "\d45"
+"m" = "\d46"
+
+"y" = "\d47"
+"r" = "\d48"
+"R" = "\d49"
+"t_" = "\d49"
+"l" = "\d50"
+"L" = "\d51"
+"zh" = "\d52"
+"v" = "\d53"
+"sh" = "\d54"
+"S" = "\d55"
+"s" = "\d56"
+"h" = "\d57"
+
+"+" = "\d77" % virama
+"u+" = "\d77" % half u
+
+% digits
+
+"0" = "\d102"
+"1" = "\d103"
+"2" = "\d104"
+"3" = "\d105"
+"4" = "\d106"
+"5" = "\d107"
+"6" = "\d108"
+"7" = "\d109"
+"8" = "\d110"
+"9" = "\d111"
+
+% special (arbitrary code positions)
+
+"<<" = "\d127" % join
+">>" = "\d126" % non join
+"[]" = "\d125" % dotted circle
+" " = "\d124" % space
+"\t" = "\d124" % tab = space
+
+% interpunction
+
+% non malayalam things
+
+">" f % eliminate ambiguities
+"\\" t % copy TeX command
+"^" f % forget about capital letters
+"\\$" p "\\$"
+"%" s % skip comment
+"{" p "{"
+"}" p "}"
+"\n" p "\n" % newline
+
+% things borrowed from roman
+
+"." p "."
+"," p ","
+":" p ":"
+";" p ";"
+"`" p "\\K{-.1}{\\RMF`}"
+"``" p "\\K{-.1}{\\RMF``}"
+"'" p "\\K{.1}{\\RMF'}"
+"''" p "\\K{.1}{\\RMF''}"
+"-" p "{\\RMF-}"
+"--" p "{\\RMF--}"
+"---" p "\\K{.1}{\\RMF---}"
+"?" p "\\K{.1}{?}"
+"!" p "!"
+"(" p "("
+")" p "\\K{.1}{)}"
+"[" p "{\\RMF[}"
+"]" p "\\K{.1}{\\RMF]}"
+"/" p "/"
+"\\%" p "{\\RMF\\%}"
+"~" p "~"
+
+"\\mm" p "\\mm"
+"\\part{" p "\\part{\\mm "
+"\\part*{" p "\\part*{\\mm "
+"\\chapter{" p "\\chapter{\\mm "
+"\\chapter*{" p "\\chapter*{\\mm "
+"\\section{" p "\\section{\\mm "
+"\\section*{" p "\\section*{\\mm "
+"\\subsection{" p "\\subsection{\\mm "
+"\\subsection*{" p "\\subsection*{\\mm "
+"\\subsubsection{" p "\\subsubsection{\\mm "
+"\\subsubsection*{" p "\\subsubsection*{\\mm "
+"\\abstract{" p "\\abstract{\\mm "
+"\\itshape" p "\\itshape"
+"\\it" p "\\it\\mm "
+"\\bfseries" p "\\bfseries"
+"\\bf" p "\\bf\\mm "
+
+@end
diff --git a/language/malayalam/cfg/mmr_keli.scr b/language/malayalam/cfg/mmr_keli.scr
new file mode 100644
index 0000000000..0b9056cbca
--- /dev/null
+++ b/language/malayalam/cfg/mmr_keli.scr
@@ -0,0 +1,275 @@
+% mmr_keli.scr --- Malayalam reformed script file for TeX pre-processor
+% November 2002 Alex A.J.
+% $Id$
+%
+
+@malayalam
+% script type
+
+@atbegin "{\\mm "
+%@atbegin "{ "
+@atend "}"
+% to be placed at the begin respectively end of malayalam text
+
+@atbeginsyllabe "\\-\\X{"
+@atendsyllabe "}"
+% to be placed at the begin repectively end of every syllabe
+
+@prebuild
+% prebuild characters: <codes, glyphs>.
+% We start with a list mapping all single characters to glyphs (i.e. TeX
+% codes to typeset them), they need to be here!
+
+"\d02" "\\<119>" % anusvara
+"\d03" "\\<120>" % visarga
+
+% vowels
+
+"\d05" "\\<65>" % a
+"\d06" "\\<66>" % aa
+"\d07" "\\<67>" % i
+"\d08" "\\<135>" % ii
+"\d09" "\\<68>" % u
+"\d10" "\\<136>" % uu
+"\d11" "\\<69>" % vocalic r
+"\d14" "\\<70>" % e
+"\d15" "\\<71>" % ee
+"\d16" "\\<137>" % ai
+"\d18" "\\<72>" % o
+"\d19" "\\<138>" % oo
+"\d20" "\\<139>" % au
+"\d87" "\\<117>" % au length mark
+
+% consonants
+
+"\d21" "\\<73>" % ka
+"\d22" "\\<74>" % kha
+"\d23" "\\<75>" % ga
+"\d24" "\\<76>" % gha
+"\d25" "\\<77>" % nga
+
+"\d26" "\\<78>" % ca
+"\d27" "\\<79>" % cha
+"\d28" "\\<80>" % ja
+"\d29" "\\<81>" % jha
+"\d30" "\\<82>" % nya
+
+"\d31" "\\<83>" % Ta
+"\d32" "\\<84>" % Tha
+"\d33" "\\<85>" % Da
+"\d34" "\\<86>" % Dha
+"\d35" "\\<87>" % Na
+
+"\d36" "\\<88>" % ta
+"\d37" "\\<89>" % tha
+"\d38" "\\<90>" % da
+"\d39" "\\<91>" % dha
+"\d40" "\\<92>" % na
+
+"\d42" "\\<93>" % pa
+"\d43" "\\<94>" % pha, fa
+"\d44" "\\<95>" % ba
+"\d45" "\\<96>" % bha
+"\d46" "\\<97>" % ma
+
+"\d47" "\\<98>" % ya
+"\d48" "\\<99>" % ra
+"\d49" "\\<100>" % Ra
+"\d50" "\\<101>" % la
+"\d51" "\\<102>" % La
+"\d52" "\\<103>" % zha
+"\d53" "\\<104>" % va
+"\d54" "\\<105>" % sha
+"\d55" "\\<106>" % Sa
+"\d56" "\\<107>" % sa
+"\d57" "\\<108>" % ha
+
+% digits
+
+"\d102" "\\<48>" % 0
+"\d103" "\\<49>" % 1
+"\d104" "\\<50>" % 2
+"\d105" "\\<51>" % 3
+"\d106" "\\<52>" % 4
+"\d107" "\\<53>" % 5
+"\d108" "\\<54>" % 6
+"\d109" "\\<55>" % 7
+"\d110" "\\<56>" % 8
+"\d111" "\\<57>" % 9
+
+% specials
+
+
+"\d77" "\\<118>" % virama
+
+"\d127" "\\hbox{}" % join (dissapears)
+"\d126" "\\hbox{}" % non-join (dissapears)
+"\d125" "\\<35>" % dotted circle
+"\d125\d127" "\\<35>" % dotted circle + join
+"\d124" " " % space
+"\d124\d127" "\\hbox{}" % space + join (dissapears)
+
+% then we have a list of all conjuncts and consonant vowel combinations
+% that cannot be build by the standard algorithm, i.e. we need a ligature.
+
+"\d21\d21" "\\<161>" % k+ka
+"\d21\d55" "\\<163>" % k+Sa
+"\d21\d36" "\\<224>" % k+ta
+"\d21\d31" "\\<206>" % k+Ta
+"\d21\d50" "\\<162>" % k+la
+%"\d21\d77" "\\<94>" % k+virama
+
+"\d23\d23" "\\<164>" % g+ga
+%"\d23\d24" "\\<218>" % g+gha
+"\d23\d38" "\\<145>" % g+da
+"\d23\d38\d39" "\\<146>" % g+d+dha
+"\d23\d40" "\\<225>" % g+na
+"\d23\d46" "\\<220>" % g+ma
+"\d23\d50" "\\<165>" % g+la
+
+"\d25\d25" "\\<167>" % ng+nga
+"\d25\d21" "\\<166>" % ng+ka
+
+"\d26\d26" "\\<168>" % c+ca
+"\d26\d27" "\\<209>" % c+cha
+
+"\d28\d28" "\\<214>" % j+ja
+"\d28\d30" "\\<218>" % j+nya
+
+"\d30\d26" "\\<169>" % ny+ca
+%"\d30\d28" "\\K{.1}{\\<229>}" % ny+ja
+"\d30\d30" "\\<170>" % ny+nya
+
+"\d31\d31" "\\<171>" % T+Ta
+
+"\d33\d33" "\\<205>" % D+Da
+
+
+"\d35\d31" "\\<173>" % N+Ta
+"\d35\d33" "\\<222>" % N+Da
+"\d35\d34" "\\<148>" % N+Dha
+"\d35\d35" "\\<174>" % N+Na
+"\d35\d46" "\\<215>" % N+ma
+"\d35\d77" "\\<172>" % N+virama
+
+"\d36\d36" "\\<175>" % t+ta
+"\d36\d37" "\\<176>" % t+tha
+"\d36\d40" "\\<147>" % t+na
+"\d36\d46" "\\<223>" % t+ma
+"\d36\d56" "\\<213>" % t+sa
+"\d36\d45" "\\<219>" % t+bha
+%"\d36\d77" "\\<81>" % t+virama
+
+"\d38\d38" "\\<177>" % d+da
+"\d38\d39" "\\<178>" % d+dha
+"\d38\d48\d47" "{\\<123>\\<90>\\<121>}" % d+r+ya
+
+"\d40\d36" "\\<180>" % n+ta
+"\d40\d38" "\\<181>" % n+da
+"\d40\d40" "\\<182>" % n+na
+"\d40\d46" "\\<183>" % n+ma
+"\d40\d77" "\\<179>" % n+virama
+
+%by alex
+"\d40\d49" "\\<226>" % n+Ra
+"\d40\d42" "\\<188>" % n+pa
+"\d40\d37" "\\<217>" % n+tha
+"\d40\d39" "\\<212>" % n+dha
+"\d40\d36\d48" "{\\<123>\\<180>}" % n+t+ra
+
+"\d42\d42" "\\<184>" % p+pa
+"\d42\d50" "\\<185>" % p+la
+
+"\d44\d44" "\\<186>" % b+ba
+"\d44\d50" "\\<187>" % b+la
+"\d44\d38" "\\<208>" % b+da
+"\d44\d39" "\\<207>" % b+dha
+
+"\d46\d46" "\\<189>" % m+ma
+"\d46\d42" "\\<188>" % m+pa
+"\d46\d77" "\\<119>" % m+virama (=anusvara)
+"\d46\d50" "\\<190>" % m+la
+
+"\d47\d47" "\\<191>" % y+ya
+
+%"\d48\d77" "\\<80>" % r+virama
+"\d49\d47" "{\\<99>\\<121>}" % r+ya
+
+"\d49\d49" "\\<228>" % R+Ra
+"\d49\d77" "\\<192>" % R+virama
+
+"\d50\d77" "\\<194>" % l+virama
+"\d50\d50" "\\<195>" % l+la
+
+"\d51\d51" "\\<197>" % L+La
+"\d51\d77" "\\<196>" % L+virama
+
+"\d53\d53" "\\<198>" % v+va
+
+"\d54\d54" "\\<200>" % sh+sha
+"\d54\d50" "\\<199>" % sh+la
+"\d54\d26" "\\<221>" % sh+ca
+
+"\d55\d31" "\\<227>" % S+Ta
+
+"\d56\d56" "\\<202>" % s+sa
+"\d56\d50" "\\<201>" % s+la
+"\d56\d37" "\\<216>" % s+tha
+"\d56\d49\d49" "\\<204>" % s+RRa
+
+"\d57\d40" "\\<211>" % h+na
+"\d57\d50" "\\<203>" % h+la
+"\d57\d46" "\\<210>" % h+ma
+
+% cillu/non-cillu variants of $k$ $y$ $n$, $N$, $m$, $t$ $l$ $L$
+
+
+"\d35\d127\d77" "{\\<87>\\<118>}" % Na
+"\d40\d127\d77" "{\\<92>\\<118>}" % na
+"\d46\d127\d77" "{\\<97>\\<118>}" % ma
+"\d48\d127\d77" "{\\<99>\\<118>}" % ra
+"\d49\d127\d77" "{\\<100>\\<118>}" % Ra
+"\d50\d127\d77" "{\\<101>\\<118>}" % la
+"\d51\d127\d77" "{\\<102>\\<118>}" % La
+
+@secondary
+% secondary shapes of characters: <codes, glyphs, glyphs> the first set of
+% glyphs (TeX commands) comes in front of the cluster that is being build,
+% the second set comes after it.
+
+% vowels
+
+"\d05" "" "" % a
+"\d06" "" "\\<109>" % aa
+"\d07" "" "\\<110>" % i
+"\d08" "" "\\<111>" % ii
+"\d09" "" "\\<112>" % u
+"\d10" "" "\\<113>" % uu
+"\d11" "" "\\<114>" % vocalic r
+"\d14" "\\<115>" "" % e
+"\d15" "\\<116>" "" % ee
+"\d16" "\\<115>{\\<115>}" "" % ai
+"\d18" "\\<115>" "\\<109>" % o
+"\d19" "\\<116>" "\\<109>" % oo
+"\d20" "" "\\<117>" % au
+"\d87" "\\<115>" "\\<117>" % au length mark
+"\d77" "" "\\<118>" % virama
+
+% secondary shapes of the consonants
+
+"\d47" "" "\\<121>" % secondary ya
+"\d48" "\\<123>" "" % secondary ra
+%"\d50" "\\M{" "}{\\<85>}" % secondary la
+"\d53" "" "\\<122>" % secondary va
+
+@primary
+% primary shapes of characters, occurs only with "ra"
+%
+% @reepham "\\T{\\<76>}{" "}"
+%
+% "\d48" "\\T{\\<76>}{" "}" % ra
+
+"\d48" "{\\<99>\\<118>}" "" % ra
+
+@end
+% end of file
diff --git a/language/malayalam/cfg/mmr_keli.trs b/language/malayalam/cfg/mmr_keli.trs
new file mode 100644
index 0000000000..3226075fab
--- /dev/null
+++ b/language/malayalam/cfg/mmr_keli.trs
@@ -0,0 +1,171 @@
+% mmr_keli.trs --- Malayalam transcription definition for TeX pre-processor
+%
+% 21 May 2004 Alex AJ (0.9a Update)
+% November 2002 Alex A.J.
+% $Id$
+
+@atbegin "<malayalam>" "<m>" % this starts Malayalam text in ASCII
+@atend "</malayalam>" "</m>" % this ends Malayalam text in ASCII
+
+% @table format:
+% <pattern> <space> <command> <space> [ <parameter> ][ <comment> ]
+
+@table
+
+% vowels
+
+"a" = "\d05" % a
+"aa" = "\d06" % aa
+"A" = "\d06"
+"i" = "\d07" % i
+"ii" = "\d08" % ii
+"I" = "\d08"
+"u" = "\d09"
+"uu" = "\d10"
+"U" = "\d10"
+".r" = "\d11" % vocalic r
+".r.r" = "\d96" % vocalic rr
+".R" = "\d96"
+".l" = "\d12" % vocalic l
+".l.l" = "\d97" % vocalic ll
+".L" = "\d97"
+"e" = "\d14"
+"ee" = "\d15"
+"E" = "\d15"
+"ai" = "\d16"
+"o" = "\d18"
+"oo" = "\d19"
+"O" = "\d19"
+"au" = "\d20"
+"au\"" = "\d87" % au length mark
+
+% modifiers
+
+"M" = "\d02" % anusvara
+"H" = "\d03" % visarga
+
+% consonants will be print in cillu form if no vowel follows
+
+"k" = "\d21"
+"kh" = "\d22"
+"g" = "\d23"
+"gh" = "\d24"
+"n\"" = "\d25" % nga
+
+"c" = "\d26"
+"ch" = "\d27"
+"j" = "\d28"
+"jh" = "\d29"
+"n~" = "\d30" % nya
+
+"T" = "\d31"
+"Th" = "\d32"
+"D" = "\d33"
+"Dh" = "\d34"
+"N" = "\d35"
+
+"t" = "\d36"
+"th" = "\d37"
+"d" = "\d38"
+"dh" = "\d39"
+"n" = "\d40"
+%"n_" = "\d40"
+
+"p" = "\d42"
+"ph" = "\d43"
+"f" = "\d43"
+"b" = "\d44"
+"bh" = "\d45"
+"m" = "\d46"
+
+"y" = "\d47"
+"r" = "\d48"
+"R" = "\d49"
+"t_" = "\d49"
+"l" = "\d50"
+"L" = "\d51"
+"zh" = "\d52"
+"v" = "\d53"
+"sh" = "\d54"
+"S" = "\d55"
+"s" = "\d56"
+"h" = "\d57"
+
+"+" = "\d77" % virama
+"u+" = "\d77" % half u
+
+% digits
+
+"0" = "\d102"
+"1" = "\d103"
+"2" = "\d104"
+"3" = "\d105"
+"4" = "\d106"
+"5" = "\d107"
+"6" = "\d108"
+"7" = "\d109"
+"8" = "\d110"
+"9" = "\d111"
+
+% special (arbitrary code positions)
+
+"<<" = "\d127" % join
+">>" = "\d126" % non join
+"[]" = "\d125" % dotted circle
+" " = "\d124" % space
+"\t" = "\d124" % tab = space
+
+% interpunction
+
+% non malayalam things
+
+">" f % eliminate ambiguities
+"\\" t % copy TeX command
+"^" f % forget about capital letters
+"\\$" p "\\$"
+"%" s % skip comment
+"{" p "{"
+"}" p "}"
+"\n" p "\n" % newline
+
+% things borrowed from roman
+
+"." p "."
+"," p ","
+":" p ":"
+";" p ";"
+"`" p "\\K{-.1}{\\RMF`}"
+"``" p "\\K{-.1}{\\RMF``}"
+"'" p "\\K{.1}{\\RMF'}"
+"''" p "\\K{.1}{\\RMF''}"
+"-" p "{\\RMF-}"
+"--" p "{\\RMF--}"
+"---" p "\\K{.1}{\\RMF---}"
+"?" p "\\K{.1}{?}"
+"!" p "!"
+"(" p "("
+")" p "\\K{.1}{)}"
+"[" p "{\\RMF[}"
+"]" p "\\K{.1}{\\RMF]}"
+"/" p "/"
+"\\%" p "{\\RMF\\%}"
+"~" p "~"
+
+"\\mm" p "\\mm"
+"\\part{" p "\\part{\\mm "
+"\\part*{" p "\\part*{\\mm "
+"\\chapter{" p "\\chapter{\\mm "
+"\\chapter*{" p "\\chapter*{\\mm "
+"\\section{" p "\\section{\\mm "
+"\\section*{" p "\\section*{\\mm "
+"\\subsection{" p "\\subsection{\\mm "
+"\\subsection*{" p "\\subsection*{\\mm "
+"\\subsubsection{" p "\\subsubsection{\\mm "
+"\\subsubsection*{" p "\\subsubsection*{\\mm "
+"\\abstract{" p "\\abstract{\\mm "
+"\\itshape" p "\\itshape"
+"\\it" p "\\it\\mm "
+"\\bfseries" p "\\bfseries"
+"\\bf" p "\\bf\\mm "
+
+@end
diff --git a/language/malayalam/cfg/mmr_rch.scr b/language/malayalam/cfg/mmr_rch.scr
new file mode 100644
index 0000000000..e59f447b4c
--- /dev/null
+++ b/language/malayalam/cfg/mmr_rch.scr
@@ -0,0 +1,281 @@
+% mmr_rch.scr --- Malayalam reformed script file for Rachana font
+% 25 Feb 2003 Alex A.J.
+% $Id$
+%
+
+@malayalam
+% script type
+
+@atbegin "{\\mm "
+@atend "}"
+% to be placed at the begin respectively end of malayalam text
+
+@atbeginsyllabe "\\-\\X{"
+@atendsyllabe "}"
+%@atbeginsyllabe "\\-"
+%@atendsyllabe ""
+% to be placed at the begin repectively end of every syllabe
+
+@prebuild
+% prebuild characters: <codes, glyphs>.
+% We start with a list mapping all single characters to glyphs (i.e. TeX
+% codes to typeset them), they need to be here!
+
+"\d02" "\\<119>" % anusvara
+"\d03" "\\<120>" % visarga
+
+% vowels
+
+"\d05" "\\<65>" % a
+"\d06" "\\<66>" % aa
+"\d07" "\\<67>" % i
+"\d08" "\\<164>" % ii
+"\d09" "\\<68>" % u
+"\d10" "\\<165>" % uu
+"\d11" "\\<69>" % vocalic r
+"\d96" "\\<161>" % vocalic rr
+"\d12" "\\<162>" % vocalic l
+"\d97" "\\<163>" % vocalic ll
+"\d14" "\\<70>" % e
+"\d15" "\\<71>" % ee
+"\d16" "\\<166>" % ai
+"\d18" "\\<72>" % o
+"\d19" "\\<168>" % oo
+"\d20" "\\<169>" % au
+"\d87" "\\<118>" % au length mark
+
+% consonants
+
+"\d21" "\\<73>" % ka
+"\d22" "\\<74>" % kha
+"\d23" "\\<75>" % ga
+"\d24" "\\<76>" % gha
+"\d25" "\\<77>" % nga
+
+"\d26" "\\<78>" % ca
+"\d27" "\\<79>" % cha
+"\d28" "\\<80>" % ja
+"\d29" "\\<81>" % jha
+"\d30" "\\<82>" % nya
+
+"\d31" "\\<83>" % Ta
+"\d32" "\\<84>" % Tha
+"\d33" "\\<85>" % Da
+"\d34" "\\<86>" % Dha
+"\d35" "\\<87>" % Na
+
+"\d36" "\\<88>" % ta
+"\d37" "\\<89>" % tha
+"\d38" "\\<90>" % da
+"\d39" "\\<91>" % dha
+"\d40" "\\<92>" % na
+
+"\d42" "\\<93>" % pa
+"\d43" "\\<94>" % pha, fa
+"\d44" "\\<95>" % ba
+"\d45" "\\<245>" % bha
+"\d46" "\\<97>" % ma
+
+"\d47" "\\<98>" % ya
+"\d48" "\\<99>" % ra
+"\d49" "\\<108>" % Ra
+"\d50" "\\<100>" % la
+"\d51" "\\<106>" % La
+"\d52" "\\<107>" % zha
+"\d53" "\\<101>" % va
+"\d54" "\\<102>" % sha
+"\d55" "\\<103>" % Sa
+"\d56" "\\<104>" % sa
+"\d57" "\\<105>" % ha
+
+% digits
+
+"\d102" "\\<48>" % 0
+"\d103" "\\<49>" % 1
+"\d104" "\\<50>" % 2
+"\d105" "\\<51>" % 3
+"\d106" "\\<52>" % 4
+"\d107" "\\<53>" % 5
+"\d108" "\\<54>" % 6
+"\d109" "\\<55>" % 7
+"\d110" "\\<56>" % 8
+"\d111" "\\<57>" % 9
+
+% specials
+
+
+"\d77" "\\<109>" % virama
+
+"\d127" "\\hbox{}" % join (dissapears)
+"\d126" "\\hbox{}" % non-join (dissapears)
+"\d125" "\\<35>" % dotted circle
+"\d125\d127" "\\<35>" % dotted circle + join
+"\d124" " " % space
+"\d124\d127" "\\hbox{}" % space + join (dissapears)
+
+% then we have a list of all conjuncts and consonant vowel combinations
+% that cannot be build by the standard algorithm, i.e. we need a ligature.
+
+"\d21\d21" "\\<183>" % k+ka
+"\d21\d55" "\\<184>" % k+Sa
+"\d21\d36" "{\\B\\<50>}" % k+ta
+%"\d21\d31" "{\\<74>\\<233>}" % k+Ta
+"\d21\d50" "{\\B\\<66>}" % k+la
+
+"\d23\d23" "{\\B\\<92>}" % g+ga
+"\d23\d38" "{\\B\\<97>}" % g+da
+%"\d23\d38\d39" "\\<146>" % g+d+dha
+"\d23\d40" "{\\B\\<108>}" % g+na
+"\d23\d46" "{\\B\\<111>}" % g+ma
+"\d23\d50" "{\\B\\<117>}" % g+la
+
+"\d25\d25" "\\<186>" % ng+nga
+"\d25\d21" "\\<185>" % ng+ka
+
+"\d26\d26" "\\<187>" % c+ca
+"\d26\d27" "{\\B\\<177>}" % c+cha
+
+"\d28\d28" "{\\B\\<195>}" % j+ja
+"\d28\d30" "{\\B\\<199>}" % j+n~a
+
+"\d30\d26" "{\\B\\<213>}" % n~+ca
+"\d30\d28" "{\\B\\<221>}" % n~+ja
+"\d30\d30" "\\<188>" % n~+nya
+
+"\d31\d31" "\\<189>" % T+Ta
+
+"\d33\d33" "{\\B\\<239>}" % D+Da
+
+"\d35\d31" "\\<190>" % N+Ta
+"\d35\d33" "{\\C\\<55>}" % N+Da
+"\d35\d34" "{\\C\\<62>}" % N+Dha
+"\d35\d35" "{\\C\\<66>}" % N+Na
+%"\d35\d46" "\\<195>" % N+ma
+"\d35\d77" "\\<174>" % N+virama
+
+"\d36\d36" "\\<191>" % t+ta
+"\d36\d37" "{\\C\\<81>}" % t+tha
+"\d36\d40" "{\\C\\<85>}" % t+na
+"\d36\d46" "{\\C\\<90>}" % t+ma
+"\d36\d56" "{\\C\\<101>}" % t+sa
+"\d36\d45" "{\\C\\<86>}" % t+bha
+
+"\d38\d38" "{\\C\\<165>}" % d+da
+"\d38\d39" "{\\C\\<170>}" % d+dha
+"\d38\d48\d47" "{\\<125>\\<90>\\<121>}" % d+r+ya
+
+"\d40\d36" "{\\C\\<208>}" % n+ta
+"\d40\d38" "\\<192>" % n+da
+"\d40\d40" "\\<193>" % n+na
+"\d40\d46" "{\\C\\<238>}" % n+ma
+"\d40\d77" "\\<176>" % n+virama
+
+"\d40\d49" "\\<194>" % n+Ra
+"\d40\d42" "\\<196>" % n+pa
+"\d40\d37" "{\\C\\<215>}" % n+tha
+"\d40\d39" "{\\C\\<225>}" % n+dha
+"\d40\d36\d48" "{\\<125>{\\C\\<208>}}" % n+t+ra
+
+"\d42\d42" "\\<195>" % p+pa
+"\d42\d50" "{\\D\\<56>}" % p+la
+
+"\d44\d44" "{\\D\\<123>}" % b+ba
+"\d44\d50" "{\\D\\<163>}" % b+la
+%"\d44\d38" "{\\<102>\\<239>}" % b+da
+%"\d44\d39" "{\\<102>\\<232>}" % b+dha
+
+"\d46\d46" "\\<197>" % m+ma
+"\d46\d42" "\\<196>" % m+pa
+"\d46\d77" "\\<119>" % m+virama (=anusvara)
+"\d46\d50" "{\\D\\<195>}" % m+la
+
+"\d47\d47" "\\<199>" % y+ya
+
+"\d49\d47" "{\\<99>\\<121>}" % r+ya
+
+"\d49\d49" "\\<202>" % R+Ra
+"\d49\d77" "\\<177>" % R+virama
+
+"\d50\d77" "\\<178>" % l+virama
+"\d50\d50" "\\<200>" % l+la
+
+"\d51\d51" "\\<201>" % L+La
+"\d51\d77" "\\<179>" % L+virama
+
+"\d53\d53" "{\\E\\<70>}" % v+va
+
+"\d54\d54" "{\\E\\<98>}" % sh+sha
+"\d54\d50" "{\\E\\<94>}" % sh+la
+"\d54\d26" "{\\E\\<76>}" % sh+ca
+
+"\d55\d31" "{\\E\\<119>}" % S+Ta
+
+"\d56\d56" "{\\E\\<244>}" % s+sa
+"\d56\d50" "{\\E\\<241>}" % s+la
+"\d56\d37" "{\\E\\<217>}" % s+tha
+"\d56\d49\d49" "{\\F\\<36>}" % s+RRa
+
+"\d57\d40" "{\\F\\<46>}" % h+na
+"\d57\d50" "{\\F\\<56>}" % h+la
+"\d57\d46" "{\\F\\<49>}" % h+ma
+
+% cillu/non-cillu variants of $k$ $y$ $n$, $N$, $m$, $t$ $l$ $L$
+
+
+"\d35\d127\d77" "{\\<87>\\<109>}" % Na
+"\d40\d127\d77" "{\\<92>\\<109>}" % na
+"\d46\d127\d77" "{\\<97>\\<109>}" % ma
+"\d48\d127\d77" "{\\<99>\\<109>}" % ra
+"\d49\d127\d77" "{\\<108>\\<109>}" % Ra
+"\d50\d127\d77" "{\\<100>\\<109>}" % la
+"\d51\d127\d77" "{\\<106>\\<109>}" % La
+
+% Additional chars from Ra1
+
+%"\d47\d21\d21" "\\<198>" % y+kka
+
+@secondary
+% secondary shapes of characters: <codes, glyphs, glyphs> the first set of
+% glyphs (TeX commands) comes in front of the cluster that is being build,
+% the second set comes after it.
+
+% vowels
+
+"\d05" "" "" % a
+"\d06" "" "\\<110>" % aa
+"\d07" "" "\\<111>" % i
+"\d08" "" "\\<112>" % ii
+"\d09" "" "\\<113>" % u
+"\d10" "" "\\<114>" % uu
+"\d11" "" "\\<115>" % vocalic r
+%"\d96" "\\M{" "}{\\<68>}" % vocalic rr
+%"\d12" "" "\\<12>" % vocalic l
+%"\d97" "" "\\<97>" % vocalic ll
+"\d14" "\\<116>" "" % e
+"\d15" "\\<117>" "" % ee
+"\d16" "\\<116>{\\<116>}" "" % ai
+"\d18" "\\<116>" "\\<110>" % o
+"\d19" "\\<117>" "\\<110>" % oo
+"\d20" "" "\\<118>" % au
+"\d87" "\\<116>" "\\<118>" % au length mark
+"\d77" "" "\\<109>" % virama
+
+% secondary shapes of the consonants
+
+"\d47" "" "\\<121>" % secondary ya
+%"\d47\d09" "" "\\<122>" % secondary yu
+%"\d47\d10" "" "\\<123>" % secondary yU
+"\d48" "\\<125>" "" % secondary ra
+"\d53" "" "\\<124>" % secondary va
+
+@primary
+% primary shapes of characters, occurs only with "ra"
+%
+% @reepham "\\T{\\<76>}{" "}"
+%
+% "\d48" "\\T{\\<76>}{" "}" % ra
+
+"\d48" "{\\<99>\\<109>}" "" % ra
+
+@end
+% end of file
diff --git a/language/malayalam/cfg/vim_ildc_cdac b/language/malayalam/cfg/vim_ildc_cdac
new file mode 100644
index 0000000000..4cdc071950
--- /dev/null
+++ b/language/malayalam/cfg/vim_ildc_cdac
@@ -0,0 +1,12 @@
+:1,$s/\ \\-/\ /g
+:1,$s/^\\-//g
+:1,$s/(\\-/(/g
+:1,$s/`}\\-/`}/g
+:1,$s/{\\-/{/g
+:1,$s/\\-\\X{\\<172/\\X{\\<172/g
+:1,$s/\\-\\X{\\<179/\\X{\\<179/g
+:1,$s/\\-\\X{\\<192/\\X{\\<192/g
+:1,$s/\\-\\X{\\<240/\\X{\\<240/g
+:1,$s/\\-\\X{\\<196/\\X{\\<196/g
+:w
+:q
diff --git a/language/malayalam/cfg/vim_ism b/language/malayalam/cfg/vim_ism
new file mode 100644
index 0000000000..0b80c1f857
--- /dev/null
+++ b/language/malayalam/cfg/vim_ism
@@ -0,0 +1,12 @@
+:1,$s/\ \\-/\ /g
+:1,$s/^\\-//g
+:1,$s/(\\-/(/g
+:1,$s/`}\\-/`}/g
+:1,$s/{\\-/{/g
+:1,$s/\\-\\X{\\<172/\\X{\\<172/g
+:1,$s/\\-\\X{\\<179/\\X{\\<179/g
+:1,$s/\\-\\X{\\<192/\\X{\\<192/g
+:1,$s/\\-\\X{\\<194/\\X{\\<194/g
+:1,$s/\\-\\X{\\<196/\\X{\\<196/g
+:w
+:q
diff --git a/language/malayalam/cfg/vim_keli b/language/malayalam/cfg/vim_keli
new file mode 100644
index 0000000000..0b80c1f857
--- /dev/null
+++ b/language/malayalam/cfg/vim_keli
@@ -0,0 +1,12 @@
+:1,$s/\ \\-/\ /g
+:1,$s/^\\-//g
+:1,$s/(\\-/(/g
+:1,$s/`}\\-/`}/g
+:1,$s/{\\-/{/g
+:1,$s/\\-\\X{\\<172/\\X{\\<172/g
+:1,$s/\\-\\X{\\<179/\\X{\\<179/g
+:1,$s/\\-\\X{\\<192/\\X{\\<192/g
+:1,$s/\\-\\X{\\<194/\\X{\\<194/g
+:1,$s/\\-\\X{\\<196/\\X{\\<196/g
+:w
+:q
diff --git a/language/malayalam/cfg/vim_rch b/language/malayalam/cfg/vim_rch
new file mode 100644
index 0000000000..0dbd6b6321
--- /dev/null
+++ b/language/malayalam/cfg/vim_rch
@@ -0,0 +1,12 @@
+:1,$s/\ \\-/\ /g
+:1,$s/^\\-//g
+:1,$s/(\\-/(/g
+:1,$s/`}\\-/`}/g
+:1,$s/{\\-/{/g
+:1,$s/\\-\\X{\\<174/\\X{\\<174/g
+:1,$s/\\-\\X{\\<176/\\X{\\<176/g
+:1,$s/\\-\\X{\\<177/\\X{\\<177/g
+:1,$s/\\-\\X{\\<178/\\X{\\<178/g
+:1,$s/\\-\\X{\\<179/\\X{\\<179/g
+:w
+:q
diff --git a/language/malayalam/cfg/vim_tmp b/language/malayalam/cfg/vim_tmp
new file mode 100644
index 0000000000..4444d7608f
--- /dev/null
+++ b/language/malayalam/cfg/vim_tmp
@@ -0,0 +1,3 @@
+:1,$s/.mm/.tex/g
+:w
+:q