From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- language/tamil/wntamil/README | 1 + language/tamil/wntamil/readme.doc | 91 ++ language/tamil/wntamil/tamdict.tex | 313 ++++++ language/tamil/wntamil/tamdict.txt | 313 ++++++ language/tamil/wntamil/tamil.mf | 2020 +++++++++++++++++++++++++++++++++++ language/tamil/wntamil/tamilize.c | 323 ++++++ language/tamil/wntamil/tamilmax.mf | 446 ++++++++ language/tamil/wntamil/tamilmax.tex | 369 +++++++ language/tamil/wntamil/tmilize.c | 324 ++++++ language/tamil/wntamil/wntamil.mf | 16 + language/tamil/wntamil/wntml10.mf | 76 ++ 11 files changed, 4292 insertions(+) create mode 120000 language/tamil/wntamil/README create mode 100644 language/tamil/wntamil/readme.doc create mode 100644 language/tamil/wntamil/tamdict.tex create mode 100644 language/tamil/wntamil/tamdict.txt create mode 100644 language/tamil/wntamil/tamil.mf create mode 100644 language/tamil/wntamil/tamilize.c create mode 100644 language/tamil/wntamil/tamilmax.mf create mode 100644 language/tamil/wntamil/tamilmax.tex create mode 100644 language/tamil/wntamil/tmilize.c create mode 100644 language/tamil/wntamil/wntamil.mf create mode 100644 language/tamil/wntamil/wntml10.mf (limited to 'language/tamil/wntamil') diff --git a/language/tamil/wntamil/README b/language/tamil/wntamil/README new file mode 120000 index 0000000000..ca39038b92 --- /dev/null +++ b/language/tamil/wntamil/README @@ -0,0 +1 @@ +readme.doc \ No newline at end of file diff --git a/language/tamil/wntamil/readme.doc b/language/tamil/wntamil/readme.doc new file mode 100644 index 0000000000..631aaea674 --- /dev/null +++ b/language/tamil/wntamil/readme.doc @@ -0,0 +1,91 @@ +\input tamilmax +4/20/90 + +** Brief notes on the use of the wntml Tamil-in-METAFONT font ** + +Wntml was developed for a bilingual dictionary project which +has now been in development for some six years. The project +was begun on PCs using a romanized transcription with no +attempts to represent Tamil script interactively. Existing +facilities for producing Tamil output are based entirely on this +less than optimal transcription of Tamil. + +Someone at liberty to begin anew, could use a much cleaner solution. +The transcription scheme we are using is illustrated by the following chart. +To view this chart in a meaningful way, run + tamilize readme.doc readme.tex +then TeX and print the results. (You will need to have +run METAFONT on wntml first, of course.) + + +~ a aa i ii u uu e ee o oo ai au + +ka kaa ki kii ku kuu ke kee ko koo kai kau + +nga ngaa ngi ngii ngu nguu nge ngee ngo ngoo ngai ngau + +ca caa ci cii cu cuu ce cee co coo cai cau + +5a 5aa 5i 5ii 5u 5uu 5e 5ee 5o 5oo 5ai 5au + +8a 8aa 8i 8ii 8u 8uu 8e 8ee 8o 8oo 8ai 8au + +3a 3aa 3i 3ii 3u 3uu 3e 3ee 3o 3oo 3ai 3au + +ta taa ti tii tu tuu te tee to too tai tau + +na naa ni nii nu nuu ne nee no noo nai nau + +pa paa pi pii pu puu pe pee po poo pai pau + +ma maa mi mii mu muu me mee mo moo mai mau + +ya yaa yi yii yu yuu ye yee yo yoo yai yau + +ra raa ri rii ru ruu re ree ro roo rai rau + +la laa li lii lu luu le lee lo loo lai lau + +va vaa vi vii vu vuu ve vee vo voo vai vau + +7a 7aa 7i 7ii 7u 7uu 7e 7ee 7o 7oo 7ai 7au + +9a 9aa 9i 9ii 9u 9uu 9e 9ee 9o 9oo 9ai 9au + +6a 6aa 6i 6ii 6u 6uu 6e 6ee 6o 6oo 6ai 6au + +2a 2aa 2i 2ii 2u 2uu 2e 2ee 2o 2oo 2ai 2au + +~ + +Tamilize converts the transcribed tamil (using the tilde +character as a delimiter for strings in Tamil script --- +text is assumed in Roman until the first tilde; the vertical +bar character is used to delimit strings which should be +output as romanized Tamil using the usual dots-under-letters +and other customary diacritics for Indic) into a series of +TeX macros, each of which prints a single +Tamil grapheme. Tamil graphemes generally correspond to +syllables, so essentially Tamilize is scanning its input +for syllables and invoking a predetermined macro for +each syllable. The current version of Tamilmax, in +which the syllable macros are defined, catcodes Ctrl-A +as equivalent to backslash, and Tamilize uses Ctrl-A as +the command character for all the Tamil syllable macros. +With an editor which can hide control characters, the +tamilized transliteration is still somewhat readable, +and is useful for debugging output. Extensive editing of text +should always take place in the un-tamilized transcription, +with subsequent tamilizing before running TeX --- otherwise +errors will almost certainly be introduced in the editing +process. + + +IF YOUR COPY OF WNTML INCLUDES A TAMDICT.TXT OR TAMDICT.TEX SAMPLE +FILE, PLEASE BE AWARE THAT THE SAMPLE IS FROM A WORK IN PROGRESS: +DO NOT QUOTE THE SAMPLE TEXT. + + +7/10/91 Some TeXs on PCs gag when they see the control-As which tamilize +introduces; users of such TeXs will prefer tmilize, which is just like +tamilize but uses '\' instead of '^A'. diff --git a/language/tamil/wntamil/tamdict.tex b/language/tamil/wntamil/tamdict.tex new file mode 100644 index 0000000000..f3275447cc --- /dev/null +++ b/language/tamil/wntamil/tamdict.tex @@ -0,0 +1,313 @@ +\input tamilmax +\hsize=4in +\font\norm=cmr10 +\font\roman=cmr10 +\font\vclass=cmr7 +\font\glossy=cmti10 +\font\emphatic=cmb10 +\font\transcribe=cmss10 +\norm +\newif\ifnewentry +\def\hw#1{\par\medskip{\emphatic #1\hfil\break\newentrytrue}} +\def\md#1#2{{\emphatic\ifnewentry\hbox to 25pt{\hfil}\newentryfalse\fi(#1)} #2} +\def\rt#1{,\ {\transcribe #1}} +\def\vc#1{,\ {\vclass #1}} +\def\eg#1{,\ {\glossy #1}} +\def\syn#1#2{\ $\mapsto$ #1: #2} +\def\wtvc#1{,\ {\vclass #1}} +\hw{fascinated, be} + \md{1}{{\btam sokku}\etam }\rt{|sokku|}\vc{3 intr} + \eg{be charmed, enchanted or absorbed in} + \syn{1}{{\btam mayangku}\etam }\wtvc{3 i} + \md{2}{{\btam mayangku}\etam }\rt{|mayangu|}\vc{3 intr} + \eg{be charmed or enchanted; be enamoured; be confused} + \md{3}{{\btam vasappaTu}\etam }\rt{|vasa-pa8u|}\vc{4 intr} + \eg{be captivated or enchanted; come under the power or influence of; lose oneself in} + \syn{1}{{\btam vayappaTu}\etam }\wtvc{4i}. +\hw{fashion} + \md{1}{{\btam sey}\etam }\wtvc{1t}\rt{|seyyi|}\vc{2b tr} + \eg{make; form; shape s.t. out of s.t. else} + \syn{1}{{\btam puNai}\etam }\wtvc{2t} + \md{2}{{\btam amaittukkoL}\etam }\wtvc{1t}\rt{|a8p8 pa33u|}\vc{3 tr} + \eg{adapt}. +\hw{fashionable, be} + \md{1}{{\btam naakarikamaaka iru}\etam }\wtvc{7i} + \eg{be stylish, conforming to the fashion; be liked by people of fashion} + \syn{1}{{\btam xpaaSaNaaka iru}\etam }\rt{|fae4anaa iru|}\vc{7 intr} + \syn{2}{{\btam sTailaaka iru}\etam }\rt{|s8aylaa iru|}\vc{7 intr}. +\hw{fast} + \md{1}{{\btam saappiTaamal iru}\etam }\rt{|saappi8aame iru|}\vc{7 intr} + \eg{deliberately go without food; fast temporarily} + \md{2}{{\btam paTTiNi keTa}\etam }\rt{|pa8ni ke8a|}\vc{7 intr} + \eg{go without food; abstain from food} + \md{3}{{\btam uNNNNaaviratam iru}\etam }\rt{|u33aaviradam iru|}\vc{7 intr} + \eg{abstain from food, as a religious duty or for political and other reasons} + \md{4}{{\btam nooNpu iru}\etam }\wtvc{7i} + \eg{go without any or certain kinds of food, as a religious duty} + \syn{1}{{\btam upavaacam iru}\etam }\wtvc{7i}. +\hw{fast, be} + \md{1}{{\btam veekamaaka iru}\etam }\rt{|veehamaa iru|}\vc{7 intr} + \eg{be rapid, quick, speedy} + \syn{1}{{\btam virai}\etam }\wtvc{2i} + \md{2}{{\btam veekamaaka ooTu}\etam }\rt{|veehamaa oo8u|}\vc{3 intr} + \eg{(of a watch, clock) be in advance; be ahead of time; run rapidly or quickly} + \md{3}{{\btam uRutiyaaka iru}\etam }\wtvc{7i} + \eg{be firm; be firmly tied, as a knot; be strong or secure} + \md{4}{{\btam uutaariyaaka iru}\etam }\rt{|uudaariyaa iru|}\vc{7 intr} + \eg{be a spendthrift; lead a carefree, wild life}. +\hw{fast, become} + \md{1}{{\btam uRutiyaaku}\etam }\wtvc{3i} + \eg{become firm, strong or secure}. +\hw{fasten} + \md{1}{{\btam kaTTu}\etam }\rt{|ka88u|}\vc{3 tr} + \eg{bind; pack; tie up, as an animal to a peg} + \md{2}{{\btam muuTu}\etam }\rt{|muu8u|}\vc{3 tr} + \eg{close, as a window, a door, a box} + \md{3}{{\btam aTai}\etam }\rt{|a8e|}\vc{6 tr} + \eg{shut, as a window or door; shut animals up in a fold; put s.t. or s.o. in a cage or enclosure} + \md{4}{{\btam puuTTu}\etam }\rt{|puu88u|}\vc{3 tr} + \eg{lock up, as a door or a box} + \md{5}{{\btam pooTu}\etam }\rt{|poo8u|}\vc{4 tr} + \eg{make secure, as a shirt with buttons, a door with a bolt} + \syn{1}{{\btam maaTTu}\etam }\rt{|maa88u|}\vc{3 tr} + \eg{hook s.t.} + \md{6}{{\btam taaZ iTu}\etam }\wtvc{4t} + \eg{bolt, as the door, window, etc.} + \md{7}{{\btam poruttu}\etam }\wtvc{3t} + \eg{fix; attach firmly; attach s.t. to s.t. else, as sewing buttons on to a shirt, fixing a lock to a door, etc.; fix (one's eyes) on s.t. or s.o.} + \md{8}{{\btam toTuttuvai}\etam }\rt{|to8uttu vayyi|}\vc{6b tr} + \eg{tie or fasten lightly; string together, as garlands, flowers, etc.}. +\hw{fasten down} + \md{1}{{\btam kaTTu}\etam }\rt{|ka88u|}\vc{3 tr} + \eg{fasten to a horizontal surface; bind; tie; batten down}. +\hw{fasten off} + \md{1}{{\btam piNNai}\etam }\rt{|po3e, po3e|}\vc{6 tr} + \eg{tie, as two pieces of thread by knotting} + \syn{1}{{\btam muTi}\etam }\rt{|mu8i|}\vc{6b tr} + \eg{tie as two pieces of thread by rolling the ends together}. +\hw{fasten on} + \md{1}{{\btam piTittuk koL}\etam }\wtvc{1}\rt{|pi8iccikkoo|}\vc{4 tr} + \eg{seize; take a firm hold of; single s.t. or s.o. out for attack} + \st{{\btam naaN coNNataiyee avaN piTittuk koNNTaaN}\etam } + \sr{|naan sonnadayee aven pi{\d d}iccikki{\d t}{\d t}aan|} + \se{He fastened (or) seized upon what I said.}. +\hw{fasten one's eyes on} + \md{1}{{\btam veRittup paar}\etam }\rt{|vericci paaru|}\vc{6 tr} + \eg{gaze at; focus on; stare at} + \syn{1}{{\btam veRi}\etam }\wtvc{6t} + \md{2}{{\btam kaNNkaNNaip pa{\roman d}i}\etam }\rt{|ka33e padi|}\vc{6b ta} + \eg{fix one's eyes, as on s.o. or s.t.} + \st{{\btam avaN eN miitu kaNNkaNNaip patittaaN}\etam } + \sr{|avan en meele ka{\d n}{\d n}e padiccaan|} + \se{He fixed his eyes on me.}. +\hw{fasten up} + \md{1}{{\btam maaTTu}\etam }\rt{|maa88u|}\vc{3 tr} + \eg{fasten s.t. to a vertical surface} + \st{{\btam intap paTattai angkee maaTTu}\etam } + \sr{|indap pa{\d d}atte ange maa{\d t}{\d t}u|} + \se{Fasten this picture up there.}. +\hw{fasten upon} + \md{1}{{\btam pattikkoL}\etam }\wtvc{1t} + \eg{sieze; take hold of} + \st{cf. fasten on}. +\hw{fastened, be} + \md{1}{{\btam pati}\etam }\rt{|padi|}\vc{2b intr} + \eg{be fixed, as one's sight or attention upon s.t.; be coupled firmly, as two planks of wood in joining} + \md{2}{{\btam poruntu}\etam }\wtvc{3i} + \eg{be attached firmly; dovetail} + \md{3}{{\btam iNNai}\etam }\wtvc{2i} + \eg{be attached or joined; be tied or made fast}. +\hw{fat} + \md{1}{{\btam paruttuviTu}\etam }\rt{|paruttu8u|}\vc{4 intr} + \eg{become fleshy, stout or heavy} + \syn{1}{{\btam paru}\etam }\wtvc{6i} + \md{2}{{\btam cataipiTittiru}\etam }\rt{|sade pi8icc-iru|}\vc{7 intr + dat} + \eg{put on flesh; become plump or heavy} + \syn{1}{{\btam catai pooTTiru}\etam }\rt{|sade poo88iru|}\vc{7 intr} + \md{3}{{\btam eTai kuuTu}\etam }\rt{|e8e kuu8u|}\vc{3 intr + dat} + \eg{gain weight} + \md{4}{{\btam taTittuviTu}\etam }\rt{|ta8icc-i8u|}\vc{4 ta} + \eg{become heavy or stout} + \syn{1}{{\btam taTi}\etam }\wtvc{6i} + \md{5}{{\btam koZuttiru}\etam }\rt{|ko7utt-iru|}\vc{7 intr} + \eg{be very fat; be fattened, as a animal, etc.; be thick or well-filled as a purse} + \syn{1}{{\btam koZa}\etam }\wtvc{6i}. +\hw{fatal, be} + \md{1}{{\btam uyirukku aapattaaka iru}\etam }\rt{|uyirukku aabattaa iru|}\vc{7 intr} + \eg{be a danger or risk to one's life; cause danger to one's life} + \syn{1}{{\btam uyirukku aapattaaku}\etam }\rt{|uyirukku aabatt-aahu|}\vc{3b intr} + \syn{2}{{\btam  uyirukku apaayam viNNaivi}\etam }\wtvc{6ta} + \syn{3}{{\btam  uyirukku aapattu viNNaivi}\etam }\wtvc{6ta} + \md{2}{{\btam caavukkuk kaaraNNamaaka iru}\etam }\rt{|saavukku kaara3amaa iru|}\vc{7 intr} + \eg{bring about death; be the cause of s.o.'s death.} + \md{3}{{\btam naacamaakku}\etam }\rt{|naasam aakku|}\vc{3 tr} + \eg{destroy, ruin, cause misfortune} + \syn{1}{{\btam naacappaTuttu}\etam }\rt{|naasa-pa8uttu|}\vc{3 tr} + \syn{2}{{\btam naasamuTTu}\etam }\wtvc{3ta} + \md{4}{{\btam paaZaakku}\etam }\rt{|paa7-aakku|}\vc{3 tr} + \eg{cause ruin, destruction or failure} + \syn{1}{{\btam paaZpaTuttu}\etam }\rt{|paa7 pa8uttu|}\vc{3 tr} + \syn{2}{{\btam naasamaakku}\etam }\wtvc{3t} + \md{5}{{\btam vitivasamaaku}\etam }\rt{|vidivasam-aahu|}\vc{3b intr 3 pn} + \eg{be connected with fate or destiny; be fateful, as a meeting, an occurrence, a period} + \st{{\btam anta cantippu vitivacamaaNatu}\etam } + \sr{|anda sandippu vidivasamaanadu|} + \se{That meeting (or) encounter was fatal (fateful).} + \md{6}{{\btam talaivitiyaaku}\etam }\rt{|talevidi aahu|}\vc{3b intr 3pn} + \eg{be fated or destined; be so written} + \st{{\btam anta vipattu avaN talaiviti {\roman (}yaakum{\roman )}}\etam } + \sr{|anda vibattu avan talevidi (aahum)|} + \se{That accident occurred because of his fate; That accident was fated to occur to him. (both used usually in an unfavourable sense)} + \md{7}{{\btam keeTukaalam piTittiru}\etam }\rt{|kee8ukaalam pi8icc-iru|}\vc{7 intr + dat} + \eg{be in for a bad time; be on the road to ruin; be under bad stars} + \st{{\btam avaNukku keeTukaalam piTittirukkiRatu}\etam } + \sr{|avanukku kee{\d d}ukaalam pi{\d d}iccirukku|} + \se{Misfortune has caught up with him; (or) He is in for a bad time; he is jinxed.}. +\hw{fatalistic, be} + \md{1}{{\btam vitiyee eNRu iru}\etam }\rt{|vidiyee-33u iru|}\vc{7 intr} + \eg{hold the attitude of fatality or the doctrine of fatalism; be resigned; have a negative attitude about s.t.} + \syn{1}{{\btam uuZvali eNRu iru}\etam }\wtvc{7i} + \md{2}{{\btam naTappatu naTakkaTTum eNRu iru}\etam }\rt{|na8appadu na8akka88um-33u iru|}\vc{7 intr} + \eg{hold the attitude that whatever will be will be; submit to circumstances as inevitable; submit passively to misfortune, calamity, etc.} + \syn{1}{{\btam {\roman (}kaTavuL{\roman )} viTTavaZi eNRu iru}\etam }\rt{|(ka8avu9) vi88ava7i-33u iru|}\vc{7 intr}. +\hw{fateful, be} + \md{1}{{\btam vitivacamaaku}\etam }\rt{|vidivasam-aahu|}\vc{3b intr 3pn (pres \& fut only)} + \eg{be connected with fate or destiny; be fatal, as an event, a period, etc.} + \st{{\btam avaL taRkolai vitivacamaaTum}\etam } + \sr{|ava9 tarkolai vidivasam aahum|} + \se{Hers was a fateful suicide.} + \syn{1}{{\btam uuviNaiyaaku}\etam }\wtvc{3 3pn} + \md{2}{{\btam mukkiyamaaku}\etam }\rt{|mukkiyam aahu|}\vc{3b intr 3pn} + \eg{be important; be momentous} + \syn{1}{{\btam siRappaaku}\etam }\wtvc{3 3pn} + \syn{2}{{\btam viseevimaaku}\etam }\wtvc{3 3pn}. +\hw{father} + \md{1}{{\btam uruvaakku}\etam }\rt{|uruvakku|}\vc{3 tr} + \eg{found, originate, as a doctrine, a sect, etc.; propound as a theory, a practice, a way of life} + \syn{1}{{\btam tooRRuvi}\etam }\wtvc{6t} + \syn{2}{{\btam uNNTaakku}\etam }\rt{|u38-aakku|}\vc{3 tr}. +\hw{fathom} + \md{1}{{\btam aaZam kaNNTupiTi}\etam }\rt{|aa7am ka38u-pi8i|}\vc{6b ta} + \eg{find or measure the depth of river, sea, well, pit, crater, etc.} + \syn{1}{{\btam aaZam {\roman (}aaZattaik{\roman )} kaNNakkiTu}\etam }\wtvc{4ta} + \md{2}{{\btam aaZam paar}\etam }\rt{|aa7am paaru|}\vc{6 tr} + \eg{find or measure the depth of river, pit, etc.; test or examine s.o.'s learning, qualification, sincerity, etc.} + \md{3}{{\btam parintukoL}\etam }\wtvc{1t}\rt{|purinjikkoo|}\vc{4 tr} + \eg{understand, comprehend; get to the bottom of, as an event, a person's motive, etc.} + \syn{1}{{\btam aRi}\etam (or)? {\btam aaZankaRi}\etam }\wtvc{2t}. +\hw{fatigue} + \md{1}{{\btam kaLaippu uNNTaakku}\etam }\rt{|ka9eppe u38-aakku|}\vc{3 ta} + \eg{cause fatigue; cause to feel fatigued} + \syn{1}{{\btam coorvu uNNTaakku}\etam }\wtvc{3ta} + \md{2}{{\btam kaLaippaTaiyac cey}\etam }\wtvc{1t} + \eg{cause to fatigue; cause to feel tired or weary} + \syn{1}{{\btam coorvaTaiyac cey}\etam (or) {\btam coorv}\etam }\wtvc{1t}. % synonym truncated? +\hw{fatigued, be} + \md{1}{{\btam aluttup poo}\etam }\rt{|aluttup poo|}\vc{3b intr 3pn (usu + past only)} + \eg{become weary; become discouraged} + \st{{\btam eNakku aluttup pooyiRRu}\etam } + \sr{|enakku aluttu pooccu|} + \se{I am tired, fed up.} + \syn{1}{{\btam salittup poo}\etam }\wtvc{w. dat.}\rt{|saliccu poo|}\vc{3b intr (usu + past only)} + \syn{2}{{\btam aluttuviTu}\etam }\wtvc{4i 3 pn} + \syn{3}{{\btam salittuviTu}\etam }\wtvc{4i 3 pn} + \md{2}{{\btam kaLaittup poo}\etam }\rt{|ka9eccip poo|}\vc{3b intr 3pn + dat (usu + past} + \eg{become tired or wearied; become exhausted} + \syn{1}{{\btam soorntu poo}\etam }\rt{|soondu poo|}\vc{3 intr 3pn + dat (usu + past} + \syn{2}{{\btam ayarntu poo}\etam }\rt{|asandu poo|}\vc{3 intr 3pn + dat (usu past onl} + \md{3}{{\btam kaLaippaay iru}\etam }\rt{|ka9eppaa iru|}\vc{7 intr + dat} + \eg{be tired or exhausted; look or feel tired and weary} + \st{{\btam avaN kaLaippaay iruntaaN}\etam , {\btam avaNukku kaLaippaay iruntatu}\etam } + \sr{|avan ka9eppaa irundaan, avanukku ka9eppaa irundadu|} + \se{He was (or felt) fatigued.} + \syn{1}{{\btam coorvaay iru}\etam }\rt{|soorvaa iru|}\vc{7 intr + dat} + \md{4}{{\btam coorntuviTi}\etam }\rt{|soondu8u|}\vc{4 intr} + \eg{grow weary or exhausted; be tired and worn out} + \syn{1}{{\btam kaLaittuviTu}\etam }\rt{|ka9ecc-i8u|}\vc{4 ta} + \syn{2}{{\btam ayarntuviTu}\etam }\rt{|asandu8u|}\vc{4 intr} + \md{5}{{\btam ayarvuRu}\etam }\wtvc{1i} + \eg{be tired or weary} + \syn{1}{{\btam ayarvaTai}\etam }\wtvc{2i} + \syn{2}{{\btam kaLappaTai}\etam }\wtvc{2i} + \syn{3}{{\btam coorvaTai}\etam }\wtvc{2i} + \syn{4}{{\btam coorvuRu}\etam }\wtvc{1i} + \md{6}{{\btam iNaippaay iru}\etam }\wtvc{7i} + \eg{be short of breath or gasp because of over exhaustion; be weak and worn out}. +\hw{fatten} + \md{1}{{\btam koZu}\etam }\rt{|ko7u|}\vc{6 intr} + \eg{grow fat; become plump} + \syn{1}{{\btam paruttuviTu}\etam }\rt{|paattu8u|}\vc{4 intr} + \md{2}{{\btam koZukka vai}\etam }\rt{|ko7ukka vayyi|}\vc{6b tr} + \eg{make fat; fatten up, as sheep for slaughter} + \md{3}{{\btam seZikkas sey}\etam }\wtvc{1t} + \eg{help grow better; nourish, as crop, people, etc.; enrich, as soil, ideas, etc.} + \syn{1}{{\btam seZikka vai}\etam }\wtvc{6t}. +\hw{fatty, be} + \md{1}{{\btam kooZuppaay iru}\etam }\rt{|ko7uppaa iru|}\vc{7 intr} + \eg{contain excessive fat, as muscle, food, meat, soup, etc.} + \md{2}{{\btam koZuppas sattu uTaiyataay iru}\etam }\wtvc{7i} + \eg{contain nutrative fat, as foods etc.} + \syn{1}{{\btam koZuppus sattu noNNTiru }\etam }\wtvc{7i}. +\hw{fatuous, be} + \md{1}{{\btam maTattaNamaaka iru}\etam }\rt{|ma8attanamaa iru|}\vc{7 intr} + \eg{be silly; be inane} + \syn{1}{{\btam peetaitataNamaaka iru}\etam }\wtvc{7i} + \md{2}{{\btam muTTaaLtaNamaaka iru}\etam }\rt{|mu88aa9tanamaa iru|}\vc{7 intr} + \eg{be foolish; be silly} + \syn{1}{{\btam maTattaNamaaka iru}\etam }\wtvc{7i}. +\hw{fault} + \md{1}{{\btam tappu sol}\etam }\rt{|tappu sollu|}\vc{3c tr} + \eg{censure; blame; find fault with} + \syn{1}{{\btam tavaRu sol}\etam }\wtvc{3t} + \syn{2}{{\btam piZai sol}\etam }\wtvc{3t} + \md{2}{{\btam kuRRam sol}\etam }\rt{|kuttam sollu|}\vc{3c tr, ta} + \eg{find fault with; blame; criticise} + \syn{1}{{\btam kuRai sol}\etam }\rt{|kore sollu|}\vc{3c tr} + \syn{2}{{\btam piZai sol}\etam }\wtvc{3t}. +\hw{faulty, be} + \md{1}{{\btam tappaaka iru}\etam }\rt{|tappaa iru|}\vc{7 intr 3pn} + \eg{be wrong; contain faults, mistakes or errors} + \syn{1}{{\btam piZaiyaay iru}\etam (and) {\btam tavaruk}\etam }\wtvc{7 3pn} + \md{2}{{\btam piZaiyaaka iru}\etam }\wtvc{7i 3pn} + \eg{be full of faults or defects} + \md{3}{{\btam kuRaipaaTu koNNTiru}\etam }\wtvc{7i} + \eg{contain faults or blemishes; be defective}. +\hw{favour} + \md{1}{{\btam aatari}\etam }\rt{|aadari|}\vc{6b tr} + \eg{support, show favour to} + \syn{1}{{\btam aataravu kaaTTu}\etam }\rt{|aadaruvu kaa88u|}\vc{3 tr + dat} + \syn{2}{{\btam aataravu taa}\etam }\rt{|aadaravu taa|}\vc{2c ta + dat} + \st{{\btam avarkaL avaNai aakarittaarkaL}\etam , {\btam avarkaL avarukku aataravu koTuttaarkaL}\etam (or) {\btam tantaarkaL}\etam } + \sr{|avanga avane aadariccaanga, avanga avanukku aadaravu ku{\d d}uttaanga (or) tandaanga|} + \se{They gave him the benefit of the doubt; they favoured him.} + \md{2}{{\btam virumpu}\etam }\rt{|virumbu|}\vc{3 tr} + \eg{prefer; like; choose} + \st{{\btam naaN avaNai virumpukiReeN}\etam } + \sr{|naan avane virumbureen|} + \se{I like him.} + \syn{1}{{\btam piTi}\etam }\rt{|pi8i|}\vc{6b tr 3pn + dat} + \st{{\btam eNakku avaNNaip piTikkiRatu}\etam } + \sr{|enakku avane pi{\d d}ikkidu|} + \se{I like him.} + \md{3}{{\btam salukai kaaTTu}\etam }\rt{|saluhe kaa88u|}\vc{3 tr} + \eg{show partiality to; give unfair help or advantages to; give s.o. the benefit of the doubt} + \syn{1}{{\btam paTsa paatam kaaTTu}\etam }\rt{|pa8ca paadam kaa88u|}\vc{3 tr} + \syn{2}{{\btam ooravancaNai kaTTu}\etam }\wtvc{3ta} + \eg{act with partiality} + \syn{3}{{\btam ooravancaNai sey}\etam }\wtvc{1}\rt{|ooravanjane pa33u|}\vc{3 tr} + \md{4}{{\btam nalku}\etam }\wtvc{3t} + \eg{bestow, grant, give} + \syn{1}{{\btam aruL}\etam }\wtvc{3t} + \md{5}{{\btam aruLpuri}\etam }\wtvc{2ta} + \eg{patronise; grace; grant, as a prayer} + \syn{1}{{\btam aruL sey}\etam }\wtvc{1ta} + \md{6}{{\btam ottiru}\etam }\rt{|ott-iru|}\vc{7 tr} + \eg{resemble; be like or similar to} + \md{7}{{\btam caayalaaka iru}\etam }\rt{|saayalaa iru|}\vc{7 intr} + \eg{have the likeness of; show the same features of} + \syn{1}{{\btam caaTaiyaaka iru}\etam }\rt{|jaa8eyaa iru|}\vc{7 intr} + \st{{\btam antak kuZantai ammaaviN caayalaaka}\etam (or) {\btam caaTaiyaaka irukkiRatu}\etam } + \sr{|anda ko7ende ammaa(voo{\d d}a) saayalaa (or) jaadayaa irukku|} + \se{The baby favours her mother} +\bye + diff --git a/language/tamil/wntamil/tamdict.txt b/language/tamil/wntamil/tamdict.txt new file mode 100644 index 0000000000..caec2ed8fc --- /dev/null +++ b/language/tamil/wntamil/tamdict.txt @@ -0,0 +1,313 @@ +\input tamilmax +\hsize=4in +\font\norm=cmr10 +\font\roman=cmr10 +\font\vclass=cmr7 +\font\glossy=cmti10 +\font\emphatic=cmb10 +\font\transcribe=cmss10 +\norm +\newif\ifnewentry +\def\hw#1{\par\medskip{\emphatic #1\hfil\break\newentrytrue}} +\def\md#1#2{{\emphatic\ifnewentry\hbox to 25pt{\hfil}\newentryfalse\fi(#1)} #2} +\def\rt#1{,\ {\transcribe #1}} +\def\vc#1{,\ {\vclass #1}} +\def\eg#1{,\ {\glossy #1}} +\def\syn#1#2{\ $\mapsto$ #1: #2} +\def\wtvc#1{,\ {\vclass #1}} +\hw{fascinated, be} + \md{1}{~sokku~}\rt{|sokku|}\vc{3 intr} + \eg{be charmed, enchanted or absorbed in} + \syn{1}{~mayangku~}\wtvc{3 i} + \md{2}{~mayangku~}\rt{|mayangu|}\vc{3 intr} + \eg{be charmed or enchanted; be enamoured; be confused} + \md{3}{~vasappa8u~}\rt{|vasa-pa8u|}\vc{4 intr} + \eg{be captivated or enchanted; come under the power or influence of; lose oneself in} + \syn{1}{~vayappa8u~}\wtvc{4i}. +\hw{fashion} + \md{1}{~sey~}\wtvc{1t}\rt{|seyyi|}\vc{2b tr} + \eg{make; form; shape s.t. out of s.t. else} + \syn{1}{~pu2ai~}\wtvc{2t} + \md{2}{~amaittukko9~}\wtvc{1t}\rt{|a8p8 pa33u|}\vc{3 tr} + \eg{adapt}. +\hw{fashionable, be} + \md{1}{~naakarikamaaka iru~}\wtvc{7i} + \eg{be stylish, conforming to the fashion; be liked by people of fashion} + \syn{1}{~xpaa4a2aaka iru~}\rt{|fae4anaa iru|}\vc{7 intr} + \syn{2}{~s8ailaaka iru~}\rt{|s8aylaa iru|}\vc{7 intr}. +\hw{fast} + \md{1}{~saappi8aamal iru~}\rt{|saappi8aame iru|}\vc{7 intr} + \eg{deliberately go without food; fast temporarily} + \md{2}{~pa88i2i ke8a~}\rt{|pa8ni ke8a|}\vc{7 intr} + \eg{go without food; abstain from food} + \md{3}{~u33aaviratam iru~}\rt{|u33aaviradam iru|}\vc{7 intr} + \eg{abstain from food, as a religious duty or for political and other reasons} + \md{4}{~noo2pu iru~}\wtvc{7i} + \eg{go without any or certain kinds of food, as a religious duty} + \syn{1}{~upavaacam iru~}\wtvc{7i}. +\hw{fast, be} + \md{1}{~veekamaaka iru~}\rt{|veehamaa iru|}\vc{7 intr} + \eg{be rapid, quick, speedy} + \syn{1}{~virai~}\wtvc{2i} + \md{2}{~veekamaaka oo8u~}\rt{|veehamaa oo8u|}\vc{3 intr} + \eg{(of a watch, clock) be in advance; be ahead of time; run rapidly or quickly} + \md{3}{~u6utiyaaka iru~}\wtvc{7i} + \eg{be firm; be firmly tied, as a knot; be strong or secure} + \md{4}{~uutaariyaaka iru~}\rt{|uudaariyaa iru|}\vc{7 intr} + \eg{be a spendthrift; lead a carefree, wild life}. +\hw{fast, become} + \md{1}{~u6utiyaaku~}\wtvc{3i} + \eg{become firm, strong or secure}. +\hw{fasten} + \md{1}{~ka88u~}\rt{|ka88u|}\vc{3 tr} + \eg{bind; pack; tie up, as an animal to a peg} + \md{2}{~muu8u~}\rt{|muu8u|}\vc{3 tr} + \eg{close, as a window, a door, a box} + \md{3}{~a8ai~}\rt{|a8e|}\vc{6 tr} + \eg{shut, as a window or door; shut animals up in a fold; put s.t. or s.o. in a cage or enclosure} + \md{4}{~puu88u~}\rt{|puu88u|}\vc{3 tr} + \eg{lock up, as a door or a box} + \md{5}{~poo8u~}\rt{|poo8u|}\vc{4 tr} + \eg{make secure, as a shirt with buttons, a door with a bolt} + \syn{1}{~maa88u~}\rt{|maa88u|}\vc{3 tr} + \eg{hook s.t.} + \md{6}{~taa7 i8u~}\wtvc{4t} + \eg{bolt, as the door, window, etc.} + \md{7}{~poruttu~}\wtvc{3t} + \eg{fix; attach firmly; attach s.t. to s.t. else, as sewing buttons on to a shirt, fixing a lock to a door, etc.; fix (one's eyes) on s.t. or s.o.} + \md{8}{~to8uttuvai~}\rt{|to8uttu vayyi|}\vc{6b tr} + \eg{tie or fasten lightly; string together, as garlands, flowers, etc.}. +\hw{fasten down} + \md{1}{~ka88u~}\rt{|ka88u|}\vc{3 tr} + \eg{fasten to a horizontal surface; bind; tie; batten down}. +\hw{fasten off} + \md{1}{~pi3ai~}\rt{|po3e, po3e|}\vc{6 tr} + \eg{tie, as two pieces of thread by knotting} + \syn{1}{~mu8i~}\rt{|mu8i|}\vc{6b tr} + \eg{tie as two pieces of thread by rolling the ends together}. +\hw{fasten on} + \md{1}{~pi8ittuk ko9~}\wtvc{1}\rt{|pi8iccikkoo|}\vc{4 tr} + \eg{seize; take a firm hold of; single s.t. or s.o. out for attack} + \st{~naa2 co22ataiyee ava2 pi8ittuk ko38aa2~} + \sr{|naan sonnadayee aven pi{\d d}iccikki{\d t}{\d t}aan|} + \se{He fastened (or) seized upon what I said.}. +\hw{fasten one's eyes on} + \md{1}{~ve6ittup paar~}\rt{|vericci paaru|}\vc{6 tr} + \eg{gaze at; focus on; stare at} + \syn{1}{~ve6i~}\wtvc{6t} + \md{2}{~ka3ka3aip padi~}\rt{|ka33e padi|}\vc{6b ta} + \eg{fix one's eyes, as on s.o. or s.t.} + \st{~ava2 e2 miitu ka3ka3aip patittaa2~} + \sr{|avan en meele ka{\d n}{\d n}e padiccaan|} + \se{He fixed his eyes on me.}. +\hw{fasten up} + \md{1}{~maa88u~}\rt{|maa88u|}\vc{3 tr} + \eg{fasten s.t. to a vertical surface} + \st{~intap pa8attai angkee maa88u~} + \sr{|indap pa{\d d}atte ange maa{\d t}{\d t}u|} + \se{Fasten this picture up there.}. +\hw{fasten upon} + \md{1}{~pattikko9~}\wtvc{1t} + \eg{sieze; take hold of} + \st{cf. fasten on}. +\hw{fastened, be} + \md{1}{~pati~}\rt{|padi|}\vc{2b intr} + \eg{be fixed, as one's sight or attention upon s.t.; be coupled firmly, as two planks of wood in joining} + \md{2}{~poruntu~}\wtvc{3i} + \eg{be attached firmly; dovetail} + \md{3}{~i3ai~}\wtvc{2i} + \eg{be attached or joined; be tied or made fast}. +\hw{fat} + \md{1}{~paruttuvi8u~}\rt{|paruttu8u|}\vc{4 intr} + \eg{become fleshy, stout or heavy} + \syn{1}{~paru~}\wtvc{6i} + \md{2}{~cataipi8ittiru~}\rt{|sade pi8icc-iru|}\vc{7 intr + dat} + \eg{put on flesh; become plump or heavy} + \syn{1}{~catai poo88iru~}\rt{|sade poo88iru|}\vc{7 intr} + \md{3}{~e8ai kuu8u~}\rt{|e8e kuu8u|}\vc{3 intr + dat} + \eg{gain weight} + \md{4}{~ta8ittuvi8u~}\rt{|ta8icc-i8u|}\vc{4 ta} + \eg{become heavy or stout} + \syn{1}{~ta8i~}\wtvc{6i} + \md{5}{~ko7uttiru~}\rt{|ko7utt-iru|}\vc{7 intr} + \eg{be very fat; be fattened, as a animal, etc.; be thick or well-filled as a purse} + \syn{1}{~ko7a~}\wtvc{6i}. +\hw{fatal, be} + \md{1}{~uyirukku aapattaaka iru~}\rt{|uyirukku aabattaa iru|}\vc{7 intr} + \eg{be a danger or risk to one's life; cause danger to one's life} + \syn{1}{~uyirukku aapattaaku~}\rt{|uyirukku aabatt-aahu|}\vc{3b intr} + \syn{2}{~ uyirukku apaayam vi3aivi~}\wtvc{6ta} + \syn{3}{~ uyirukku aapattu vi3aivi~}\wtvc{6ta} + \md{2}{~caavukkuk kaara3amaaka iru~}\rt{|saavukku kaara3amaa iru|}\vc{7 intr} + \eg{bring about death; be the cause of s.o.'s death.} + \md{3}{~naacamaakku~}\rt{|naasam aakku|}\vc{3 tr} + \eg{destroy, ruin, cause misfortune} + \syn{1}{~naacappa8uttu~}\rt{|naasa-pa8uttu|}\vc{3 tr} + \syn{2}{~naasamu88u~}\wtvc{3ta} + \md{4}{~paa7aakku~}\rt{|paa7-aakku|}\vc{3 tr} + \eg{cause ruin, destruction or failure} + \syn{1}{~paa7pa8uttu~}\rt{|paa7 pa8uttu|}\vc{3 tr} + \syn{2}{~naasamaakku~}\wtvc{3t} + \md{5}{~vitivasamaaku~}\rt{|vidivasam-aahu|}\vc{3b intr 3 pn} + \eg{be connected with fate or destiny; be fateful, as a meeting, an occurrence, a period} + \st{~anta cantippu vitivacamaa2atu~} + \sr{|anda sandippu vidivasamaanadu|} + \se{That meeting (or) encounter was fatal (fateful).} + \md{6}{~talaivitiyaaku~}\rt{|talevidi aahu|}\vc{3b intr 3pn} + \eg{be fated or destined; be so written} + \st{~anta vipattu ava2 talaiviti (yaakum)~} + \sr{|anda vibattu avan talevidi (aahum)|} + \se{That accident occurred because of his fate; That accident was fated to occur to him. (both used usually in an unfavourable sense)} + \md{7}{~kee8ukaalam pi8ittiru~}\rt{|kee8ukaalam pi8icc-iru|}\vc{7 intr + dat} + \eg{be in for a bad time; be on the road to ruin; be under bad stars} + \st{~ava2ukku kee8ukaalam pi8ittirukki6atu~} + \sr{|avanukku kee{\d d}ukaalam pi{\d d}iccirukku|} + \se{Misfortune has caught up with him; (or) He is in for a bad time; he is jinxed.}. +\hw{fatalistic, be} + \md{1}{~vitiyee e26u iru~}\rt{|vidiyee-33u iru|}\vc{7 intr} + \eg{hold the attitude of fatality or the doctrine of fatalism; be resigned; have a negative attitude about s.t.} + \syn{1}{~uu7vali e26u iru~}\wtvc{7i} + \md{2}{~na8appatu na8akka88um e26u iru~}\rt{|na8appadu na8akka88um-33u iru|}\vc{7 intr} + \eg{hold the attitude that whatever will be will be; submit to circumstances as inevitable; submit passively to misfortune, calamity, etc.} + \syn{1}{~(ka8avu9) vi88ava7i e26u iru~}\rt{|(ka8avu9) vi88ava7i-33u iru|}\vc{7 intr}. +\hw{fateful, be} + \md{1}{~vitivacamaaku~}\rt{|vidivasam-aahu|}\vc{3b intr 3pn (pres \& fut only)} + \eg{be connected with fate or destiny; be fatal, as an event, a period, etc.} + \st{~ava9 ta6kolai vitivacamaa8um~} + \sr{|ava9 tarkolai vidivasam aahum|} + \se{Hers was a fateful suicide.} + \syn{1}{~uuvi2aiyaaku~}\wtvc{3 3pn} + \md{2}{~mukkiyamaaku~}\rt{|mukkiyam aahu|}\vc{3b intr 3pn} + \eg{be important; be momentous} + \syn{1}{~si6appaaku~}\wtvc{3 3pn} + \syn{2}{~viseevimaaku~}\wtvc{3 3pn}. +\hw{father} + \md{1}{~uruvaakku~}\rt{|uruvakku|}\vc{3 tr} + \eg{found, originate, as a doctrine, a sect, etc.; propound as a theory, a practice, a way of life} + \syn{1}{~too66uvi~}\wtvc{6t} + \syn{2}{~u38aakku~}\rt{|u38-aakku|}\vc{3 tr}. +\hw{fathom} + \md{1}{~aa7am ka38upi8i~}\rt{|aa7am ka38u-pi8i|}\vc{6b ta} + \eg{find or measure the depth of river, sea, well, pit, crater, etc.} + \syn{1}{~aa7am (aa7attaik) ka3akki8u~}\wtvc{4ta} + \md{2}{~aa7am paar~}\rt{|aa7am paaru|}\vc{6 tr} + \eg{find or measure the depth of river, pit, etc.; test or examine s.o.'s learning, qualification, sincerity, etc.} + \md{3}{~parintuko9~}\wtvc{1t}\rt{|purinjikkoo|}\vc{4 tr} + \eg{understand, comprehend; get to the bottom of, as an event, a person's motive, etc.} + \syn{1}{~a6i~ (or)? ~aa7anka6i~}\wtvc{2t}. +\hw{fatigue} + \md{1}{~ka9aippu u38aakku~}\rt{|ka9eppe u38-aakku|}\vc{3 ta} + \eg{cause fatigue; cause to feel fatigued} + \syn{1}{~coorvu u38aakku~}\wtvc{3ta} + \md{2}{~ka9aippa8aiyac cey~}\wtvc{1t} + \eg{cause to fatigue; cause to feel tired or weary} + \syn{1}{~coorva8aiyac cey~ (or) ~coorv~}\wtvc{1t}. % synonym truncated? +\hw{fatigued, be} + \md{1}{~aluttup poo~}\rt{|aluttup poo|}\vc{3b intr 3pn (usu + past only)} + \eg{become weary; become discouraged} + \st{~e2akku aluttup pooyi66u~} + \sr{|enakku aluttu pooccu|} + \se{I am tired, fed up.} + \syn{1}{~salittup poo~}\wtvc{w. dat.}\rt{|saliccu poo|}\vc{3b intr (usu + past only)} + \syn{2}{~aluttuvi8u~}\wtvc{4i 3 pn} + \syn{3}{~salittuvi8u~}\wtvc{4i 3 pn} + \md{2}{~ka9aittup poo~}\rt{|ka9eccip poo|}\vc{3b intr 3pn + dat (usu + past} + \eg{become tired or wearied; become exhausted} + \syn{1}{~soorntu poo~}\rt{|soondu poo|}\vc{3 intr 3pn + dat (usu + past} + \syn{2}{~ayarntu poo~}\rt{|asandu poo|}\vc{3 intr 3pn + dat (usu past onl} + \md{3}{~ka9aippaay iru~}\rt{|ka9eppaa iru|}\vc{7 intr + dat} + \eg{be tired or exhausted; look or feel tired and weary} + \st{~ava2 ka9aippaay iruntaa2~, ~ava2ukku ka9aippaay iruntatu~} + \sr{|avan ka9eppaa irundaan, avanukku ka9eppaa irundadu|} + \se{He was (or felt) fatigued.} + \syn{1}{~coorvaay iru~}\rt{|soorvaa iru|}\vc{7 intr + dat} + \md{4}{~coorntuvi8i~}\rt{|soondu8u|}\vc{4 intr} + \eg{grow weary or exhausted; be tired and worn out} + \syn{1}{~ka9aittuvi8u~}\rt{|ka9ecc-i8u|}\vc{4 ta} + \syn{2}{~ayarntuvi8u~}\rt{|asandu8u|}\vc{4 intr} + \md{5}{~ayarvu6u~}\wtvc{1i} + \eg{be tired or weary} + \syn{1}{~ayarva8ai~}\wtvc{2i} + \syn{2}{~ka9appa8ai~}\wtvc{2i} + \syn{3}{~coorva8ai~}\wtvc{2i} + \syn{4}{~coorvu6u~}\wtvc{1i} + \md{6}{~i2aippaay iru~}\wtvc{7i} + \eg{be short of breath or gasp because of over exhaustion; be weak and worn out}. +\hw{fatten} + \md{1}{~ko7u~}\rt{|ko7u|}\vc{6 intr} + \eg{grow fat; become plump} + \syn{1}{~paruttuvi8u~}\rt{|paattu8u|}\vc{4 intr} + \md{2}{~ko7ukka vai~}\rt{|ko7ukka vayyi|}\vc{6b tr} + \eg{make fat; fatten up, as sheep for slaughter} + \md{3}{~se7ikkas sey~}\wtvc{1t} + \eg{help grow better; nourish, as crop, people, etc.; enrich, as soil, ideas, etc.} + \syn{1}{~se7ikka vai~}\wtvc{6t}. +\hw{fatty, be} + \md{1}{~koo7uppaay iru~}\rt{|ko7uppaa iru|}\vc{7 intr} + \eg{contain excessive fat, as muscle, food, meat, soup, etc.} + \md{2}{~ko7uppas sattu u8aiyataay iru~}\wtvc{7i} + \eg{contain nutrative fat, as foods etc.} + \syn{1}{~ko7uppus sattu no38iru ~}\wtvc{7i}. +\hw{fatuous, be} + \md{1}{~ma8atta2amaaka iru~}\rt{|ma8attanamaa iru|}\vc{7 intr} + \eg{be silly; be inane} + \syn{1}{~peetaitata2amaaka iru~}\wtvc{7i} + \md{2}{~mu88aa9ta2amaaka iru~}\rt{|mu88aa9tanamaa iru|}\vc{7 intr} + \eg{be foolish; be silly} + \syn{1}{~ma8atta2amaaka iru~}\wtvc{7i}. +\hw{fault} + \md{1}{~tappu sol~}\rt{|tappu sollu|}\vc{3c tr} + \eg{censure; blame; find fault with} + \syn{1}{~tava6u sol~}\wtvc{3t} + \syn{2}{~pi7ai sol~}\wtvc{3t} + \md{2}{~ku66am sol~}\rt{|kuttam sollu|}\vc{3c tr, ta} + \eg{find fault with; blame; criticise} + \syn{1}{~ku6ai sol~}\rt{|kore sollu|}\vc{3c tr} + \syn{2}{~pi7ai sol~}\wtvc{3t}. +\hw{faulty, be} + \md{1}{~tappaaka iru~}\rt{|tappaa iru|}\vc{7 intr 3pn} + \eg{be wrong; contain faults, mistakes or errors} + \syn{1}{~pi7aiyaay iru~ (and) ~tavaruk~}\wtvc{7 3pn} + \md{2}{~pi7aiyaaka iru~}\wtvc{7i 3pn} + \eg{be full of faults or defects} + \md{3}{~ku6aipaa8u ko38iru~}\wtvc{7i} + \eg{contain faults or blemishes; be defective}. +\hw{favour} + \md{1}{~aatari~}\rt{|aadari|}\vc{6b tr} + \eg{support, show favour to} + \syn{1}{~aataravu kaa88u~}\rt{|aadaruvu kaa88u|}\vc{3 tr + dat} + \syn{2}{~aataravu taa~}\rt{|aadaravu taa|}\vc{2c ta + dat} + \st{~avarka9 ava2ai aakarittaarka9~, ~avarka9 avarukku aataravu ko8uttaarka9~ (or) ~tantaarka9~} + \sr{|avanga avane aadariccaanga, avanga avanukku aadaravu ku{\d d}uttaanga (or) tandaanga|} + \se{They gave him the benefit of the doubt; they favoured him.} + \md{2}{~virumpu~}\rt{|virumbu|}\vc{3 tr} + \eg{prefer; like; choose} + \st{~naa2 ava2ai virumpuki6ee2~} + \sr{|naan avane virumbureen|} + \se{I like him.} + \syn{1}{~pi8i~}\rt{|pi8i|}\vc{6b tr 3pn + dat} + \st{~e2akku ava3aip pi8ikki6atu~} + \sr{|enakku avane pi{\d d}ikkidu|} + \se{I like him.} + \md{3}{~salukai kaa88u~}\rt{|saluhe kaa88u|}\vc{3 tr} + \eg{show partiality to; give unfair help or advantages to; give s.o. the benefit of the doubt} + \syn{1}{~pa8sa paatam kaa88u~}\rt{|pa8ca paadam kaa88u|}\vc{3 tr} + \syn{2}{~ooravanca2ai ka88u~}\wtvc{3ta} + \eg{act with partiality} + \syn{3}{~ooravanca2ai sey~}\wtvc{1}\rt{|ooravanjane pa33u|}\vc{3 tr} + \md{4}{~nalku~}\wtvc{3t} + \eg{bestow, grant, give} + \syn{1}{~aru9~}\wtvc{3t} + \md{5}{~aru9puri~}\wtvc{2ta} + \eg{patronise; grace; grant, as a prayer} + \syn{1}{~aru9 sey~}\wtvc{1ta} + \md{6}{~ottiru~}\rt{|ott-iru|}\vc{7 tr} + \eg{resemble; be like or similar to} + \md{7}{~caayalaaka iru~}\rt{|saayalaa iru|}\vc{7 intr} + \eg{have the likeness of; show the same features of} + \syn{1}{~caa8aiyaaka iru~}\rt{|jaa8eyaa iru|}\vc{7 intr} + \st{~antak ku7antai ammaavi2 caayalaaka~ (or) ~caa8aiyaaka irukki6atu~} + \sr{|anda ko7ende ammaa(voo{\d d}a) saayalaa (or) jaadayaa irukku|} + \se{The baby favours her mother} +\bye + diff --git a/language/tamil/wntamil/tamil.mf b/language/tamil/wntamil/tamil.mf new file mode 100644 index 0000000000..d2c30d5314 --- /dev/null +++ b/language/tamil/wntamil/tamil.mf @@ -0,0 +1,2020 @@ +boolean dodraw; +dodraw=true; +boolean goleft; +goleft=false; +def tthinnest=max(hair,2) enddef; +def tthinner=max(1.4hair,2) enddef; +def tthin=max(1.8hair,2) enddef; +def tmed=max(.75curve,2) enddef; +def tthick=curve enddef; +def tthicker=1.2curve enddef; +def tthickest=1.4curve enddef; + +string callchar; +numeric oldh; numeric oldw; numeric oldd; + +def charspec(expr c, w_sharp, h_sharp, d_sharp) = + oldh:=h; oldw:=w; oldd:=d; + w:=hround(w_sharp*hppp); h:=vround(h_sharp*hppp); d:=vround(d_sharp*hppp); +enddef; + +input tamilmax; + +def cloney(suffix $,@) = + y$=y@; y$r=y@r; y$l=y@l; +enddef; + +def clonex(suffix $,@) = + x$=x@; x$r=x@r; x$l=x@l; +enddef; + +def small_iito (suffix @,$)(expr iheight) = +x$99=x@; y$99=y@; pos$99(tthin,180); +x$100=x$99-2.5u; y$100=.5[y$99,y$1]; pos$100(tthin,135); +x$1=x@+.5u; top y$1r=iheight; pos$1(tthick,90); +x$2=x$1+u; y$2=y$1-.5u; pos$2(.7tthick,60); +x$3=x$2; y$3=y$2-2u; pos$3(tthin,-90); +x$4=x$4l=x$4r=x$2; y$4=y$2; y$4r=y$4+1; y$4l=y$4-1; +filldraw stroke z$99e{left}...{up}z$100e...{right}z$1e...z$2e...{left}z$3e...{right}z$4e; +penlabels($1,$2,$3,$4); +enddef; + +def help_uu = +charspec("9",x_height#,.75x_height#,0); +x181=x101=u; x106=x107=x108=x109=.55w; x111=x112=.8w; x110=w; +x103=x105=.5[x101,x106]; x102=x104=.5[x101,x103]; +bot y104r=y106=y107=y111=0; top y105r=y108=top y109r=top y110r=y112=h; +y101=y181=y103=.5y102; y102=.6h; +pos101(.8tthinner,180); pos102(.8tthin,90); pos103(.8tmed,0); +pos104(.8tthin,-90); pos181(.8tthinner,-180); pos105(.8tthick,-270); +pos106(.8tthin,-360); pos107(.8tthin,0); pos108(.8tthin,0); +pos109(.8tthin,90); pos110(.8tthin,90); pos111(.8tthick,0); pos112(.8tthick,0); +if dodraw: +filldraw stroke z101e...{right}z102e...{down}z103e...{left}z104e..z181e...{right}z105e...{down}z106e; +filldraw stroke z107e---z108e; filldraw stroke z109e---z110e; +filldraw stroke z111e---z112e; +fi +enddef; + + +cmchar "Tamil vii"; +beginchar(115,1.5x_height#+u#,body_height#,0); +adjust_fit(0,0); +callchar:="v"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x21r=x10l; x21l=x10r; x21=x10; cloney(21,10); small_iito(21,s,h); +endchar; + +cmchar "tamil a"; +beginchar(0,2x_height#,x_height#,.6desc_depth#); +adjust_fit(0,0); +x3=.5[x9,x11]; top y1r=h; y5=y12=h; y2=y4=y6=.5[y3,y1]; y3=.8bar_height; x1=x3; +x4=x8=.4[x9,x11]; x2=.6[x9,x11]; x5=.6[x9,x11]; x6=.7[x9,x11]; x7=.8[x9,x11]; x11=x12=x13=w-u; +x9=u; x10=.15[x9,x11]; y8=-.8d; y13=-d; y7=bar_height; y9=.2bar_height; y10=y11=.25bar_height; +z20=z1; +pos1(tthinnest,90); pos2(tthin,0); pos3(tthinnest,-90); pos4(tthinnest,-180); +pos5(hair,90); pos6(curve,0); pos7(tthick,-360); pos8(tthinner,-450); +pos9(tthinnest,-580); pos10(tthinnest,-630); pos11(tthinnest,-630); pos12(tthick,0); +pos13(tthick,0);pos20(tthinner,-270); +filldraw stroke z1e...z2e...z3e...z4e...z20e...{down}z7e...{left}z8e...{up}z9e...z10e---z11e; +filldraw stroke z12e---z13e; +penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13); endchar; + +cmchar "tamil aa"; +beginchar(1,2.5x_height#,x_height#,1.4desc_depth#); +adjust_fit(0,0); +x3=.5[x9,x11]; top y1r=h; y5=y12=h; y2=y4=y6=.5[y3,y1]; y3=.8bar_height; x1=x3; +x4=x8=.4[x9,x11]; x2=.6[x9,x11]; x5=.6[x9,x11]; x6=.7[x9,x11]; x7=.8[x9,x11]; x11=x12=x13=2x_height-u; +x9=u; x10=.15[x9,x11]; y8=-.48desc_depth; y13=-.6desc_depth; y7=bar_height; y9=.2bar_height; y10=y11=.25bar_height; +z20=z1; x31=x31r=x31l=x11+u; cloney(31,11); +x32r=x13r; y32=y13; pos32(tthinner,0); x34=w-u; y34=y32; pos34(tthinner,-720); +x33=.5[x32,x34]; y33=0; pos33(tthin,-90); x35=.1[x13,x8]; y35=-1.2d; %bot y35l=-d; +pos35(.8tthick,-810); x36=.2[x8,x13]; y36=-desc_depth; pos36(tthin,-900); +x37=.5[x8,x13]; y37=y13; pos37(tthinner,-990); +pos1(tthinnest,90); pos2(tthin,0); pos3(tthinnest,-90); pos4(tthinnest,-180); +pos5(hair,90); pos6(curve,0); pos7(tthick,-360); pos8(tthinner,-450); +pos9(tthinnest,-580); pos10(tthinnest,-630); pos11(tthinnest,-630); pos12(tthick,0); +pos13(tthick,0);pos20(tthinner,-270); +filldraw stroke z1e...z2e...z3e...z4e...z20e...{down}z7e...{left}z8e...{up}z9e...z10e---z31e{right} + ...{down}z34e...{left}z35e...{up}z36e...{right}z37e; +filldraw stroke z12e---z13e; +penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,31,32,33,34,35,36,37); +endchar; + +cmchar "tamil i"; +beginchar(2,2x_height#,asc_height#,desc_depth#); +adjust_fit(0,0); +pickup crisp.nib; +x6=.6w; x11=x13=x15=.5w; x16=x17=.9w; x12=.75w; +x5=x7=.55w; x4=.3w; x3=.4w; x2=.5w; x1=.35w; +x8=x10=x14=.15w; x9=.1w; +y15=h; y5=x_height; y14=y11=.1h; y10=0; y16=.8x_height; +y7=-.1d; y8=y13=y17=-d; y9=y12=-.6d; +y2=y4=y6=.6x_height; y1=.8x_height; y3=.4x_height; +z20=z1; pos20(tthinnest,-200); +z65=.5[z6,z7]; pos65(tthicker,-370); +pos1(tmed,45); pos2(tmed,0); pos3(tthin,-90); pos4(tthinnest,-180); +pos5(tmed,-270); pos6(tthick,-360); pos7(tthicker,-380); pos8(tmed,-450); +pos9(tthinner,-540); pos10(tthinnest,-585); pos11(tthin,-630); +pos12(tthick,-720); pos13(tthin,-810); pos14(tthinner,-880); +pos15(tthick,-990); pos16(tthin,-1060); pos17(tthin,-1060); +filldraw stroke z1e..z2e..z3e..z4e..z20e..z5e..z65e..z8e..z9e..z10e..z11e..z12e..z13e..z14e..z15e...{down}z16e---z17e; +penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17); endchar; + +cmchar "Tamil ii"; +beginchar(3,1.125x_height#+2u#,x_height#,0); +adjust_fit(0,0); +callchar:="r"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x7=.5[x1,x6]; x8=x4-.5dot_size; +top y77r=top y88r=bar_height+.375dot_size; +y7=y8=.5[y77r,y77l]; +x77=x7; x88=x8; pos7(.75dot_size,0); pos77(.75dot_size,90); +pos8(.75dot_size,0); pos88(.75dot_size,90); +dot(7,77); dot(8,88); +penlabels(7,8); endchar; + +cmchar "tamil u"; +beginchar(4,2x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="u"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + + +cmchar "tamil uu"; +beginchar(5,2.8x_height#,x_height#,0); +adjust_fit(0,0); +help_uu; +picture V; transform t; +t=identity shifted(1.4x_height,.25x_height); +V=currentpicture transformed t; currentpicture:=V; +h:=oldh; w:=oldw; d:=oldd; +callchar:="u"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x12=w-u; y12=y11; pos12(tthin,-290); +filldraw stroke z11e--z12e; +endchar; + +cmchar "tamil e"; +beginchar(6,1.6x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="e"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "tamil ai"; +beginchar(7,1.75x_height#,x_height#,.8x_height#); +adjust_fit(0,0); +pickup crisp.nib; +y7=y10=h; y4=y8=y9=.2h; y15=y19=-d; y12=.9bar_height; +y21=.25h; y13=-.2d; y14=-.6d; y16=-.8d; y17=y18=-.3d; y20=-.2d; +y1=y3=.4h; y2=.7h; y11=.75h; y85=0; +% +x14=x1=u; x11=x12=w-u; x8=x9=x17=x18=.55[x1,x11]; x85=x8; +x7=.6[x1,x8]; x10=.5[x9,x11]; x3=.6[x1,x8]; x2=x4=.5[x1,x3]; +x13=x2; x15=x7-.7u; x16=x17; x19=.5[x18,x11]; x20=.95x11; x21=.9x11; +% +x77=x8; y77=.6h; z99=z77; +pos77(tthick,-360); pos99(tthick,0); +pos1(tthinner,180); pos2(tmed,90); pos3(tthick,0); pos4(tmed,-90); +z55=z1; pos55(tthinner,-180); +%pos6 ? +pos7(tthick,-270); pos8(tthick,-405); +pos9(tthick,-45); pos10(tthin,-90); pos11(tthick,-180); pos12(tthick,-200); +pos21(tthin,-240); pos13(tthin,-240); pos14(tmed,-180); +pos15(tthick,-90); pos16(tthick,-45); pos17(tthick,-45); +pos18(tthick,-45); pos19(tthick,90); pos20(tmed,225); +pos85(tthin,-270); +%pickup pencircle scaled .2pt +filldraw stroke z1e..z2e{right}..z3e{down}..z4e{left}..z55e...{right}z7e...{down}z77e---z8e; +%pickup crisp.nib +%filldraw stroke z9e---z99e{up}...z10e{right}...{down}z12e..z21e---z13e..z14e{down}...z15e{right}...z16e...{up}z17e; +filldraw stroke z9e---z99e{up}...z10e{right}...{down}z12e...{left}z85e{left}..z14e{down}...z15e{right}...z16e...{up}z17e; +filldraw stroke z18e{down}...z19e{right}...z20e; +%pickup pencircle scaled .2pt +%draw stroke z18e{down}...z19e{right}...z20e; +penlabels(1,2,3,4,55,7,8,9,10,11,12,21,13,14,15,16,17,19,20); endchar; + +cmchar "Tamil k"; +beginchar(8,1.5x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="k"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "Tamil o"; +beginchar(9,1.6x_height#,x_height#,.8x_height#); +adjust_fit(0,0); +x1=x5=x16=u; x7=rt x12r=rt x13r=w-u; +x6=.5[x1,x7]; x15=.5[x16,x12]; x17=.1[x16,x12]; x14=.85[x16,x12]; +x11=x9; x8=.4[x9,x7]; x9=x10=.7[x1,x7]; +x3=.3[x1,x7]; x2=x4=.5[x1,x3]; +top y6r=h; bot y15r=-d; +y2=.5h; y1=y5=y3=.5y2; +bot y4r=bot y8r=0; +y9=y10=y2; y7=.3h; y11=-.1d; y12=y13=-.3d; +y14=-.6d; y16=-.5d; y17=-.2d; +pos1(tthin,180); pos2(tthin,90); pos3(tthick,0); pos4(tthin,-90); +pos5(tthin,-180); pos6(tmed,-270); pos7(tthick,-360); pos8(tmed,-450); +pos9(tthin,-540); pos10(tthin,0); pos11(tmed,5); pos12(tthin,10); +pos13(tthick,10); pos14(tthick,0); pos15(tmed,-90); pos16(tthinner,-180); +pos17(tmed,-250); +filldraw stroke z1e...{right}z2e...{down}z3e...{left}z4e...z5e...{right}z6e + ...{down}z7e...{left}z8e...z9e; +% pickup pencircle scaled .2pt; +filldraw stroke z10e..z11e...{right}z12e; +filldraw stroke z13e...z14e...{left}z15e...{up}z16e...z17e; +penlabels(1,2,3,4,6,7,8,9,11,12,14,15,16,17); +endchar; + + +cmchar "Tamil ki"; +beginchar(10,1.8x_height#,asc_height#,0); +adjust_fit(0,0); +callchar:="k"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +z45=z21; x46=x3; top y46r=h; x47=x48=w-u; y47=y4; y48=0; +pos45(tthinnest,270); pos46(tthick,90); pos47(tthinner,0); +x48l=x48-.5; x48r=x48+.5; y48l=y48r=0; +filldraw stroke z45e{left}...{right}z46e...z47e{down}---z48e; +penlabels(46,47,48); +endchar; + +cmchar "Tamil kii"; +beginchar(11,1.5x_height#,body_height#,0); +adjust_fit(0,0); +callchar:="k"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +z45=z21; x46=x3; top y46r=h; +pos45(tthinnest,270); pos46(tmed,90); +x47=.6[x3,x4]; y47=.9[y3,y46]; x48=x4; y48=.5[y3,y46]; +y49=.3[y3,y46]; x49=x47; x50=.2[x3,x4]; y50=y48; z51=z47; +pos47(.7tmed,45); pos48(tthinner,0); pos49(tthinnest,-90); +pos50(tthinnest,-180); pos51(tthinnest,-225); +filldraw stroke z45e{left}...{right}z46e...z47e...{down}z48e...{left}z49e...{up}z50e...z51e; +penlabels(46,47,48,49,50); +endchar; + +cmchar "Tamil ku"; +beginchar(12,2x_height#,asc_height#,desc_depth#); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x45=x5; bot y45r=-d; pos45(tthick,-450); +x46=x46r=x46l=x2; y46=y2; y46r=y46+1; y46l=y46-1; +y26=y25; y26l=y25l; y26r=y25r; x26=x26l=x26r=.7[x3,x4]; +x47=-.25x_height; y47=y8; pos47(tthin,-540); +filldraw stroke z25e---z26e{right}...z45e...{up}z47e...{right}z46e; +picture V; transform t; t=identity shifted(.4x_height,0); +V=currentpicture transformed t; currentpicture:=V; +penlabels(26,45,46,47); +endchar; + +cmchar "Tamil kuu"; +beginchar(13,2.1x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +cloney(26,25); x26=x26l=x26r=.6[x3,x4]; +x28=x4; y28=0; x30=x28+(x4-x3); y30=0; top y29l=bar_height; x29=.5[x28,x30]; +x31=x30; bot y31l=0; pos31(tthin,90); x32=w-u; bot y32l=0; pos32(tthin,90); +pos28(tthin,0); pos29(tthinner,-90); pos30(tthin,-180); +filldraw stroke z25e--z26e{right}...{down}z28e; +filldraw stroke z28e{up}...{right}z29e...{down}z30e; +filldraw stroke z31e--z32e; +penlabels(26,28,29,30,31); endchar; + +cmchar "Tamil long o"; +beginchar(14,1.6x_height#,x_height#,.8x_height#); +adjust_fit(0,0); +x1=x5=x16=u; x7=rt x12r=rt x13r=w-u; +x6=.5[x1,x7]; x15=.5[x16,x12]; x17=.25[x16,x12]; x14=.85[x16,x12]; +x11=x9; x8=.4[x9,x7]; x9=x10=.7[x1,x7]; +x3=.3[x1,x7]; x2=x4=.5[x1,x3]; +top y6r=h; bot y15r=-d; +y2=.5h; y1=y5=y3=.5y2; +bot y4r=bot y8r=0; +y9=y10=y2; y7=.3h; y11=-.1d; y12=y13=-.3d; +y14=-.6d; y16=-.5d; y17=-.2d; +x18=.4[x16,x12]; y18=-.5d; pos18(tthinner,-360); +pos1(tthin,180); pos2(tthin,90); pos3(tthick,0); pos4(tthin,-90); +pos5(tthin,-180); pos6(tmed,-270); pos7(tthick,-360); pos8(tmed,-450); +pos9(tthin,-540); pos10(tthin,0); pos11(tmed,5); pos12(tthin,10); +pos13(tthick,10); pos14(tthick,0); pos15(tmed,-90); pos16(tthinner,-180); +pos17(tmed,-250); +filldraw stroke z1e...{right}z2e...{down}z3e...{left}z4e...z5e...{right}z6e + ...{down}z7e...{left}z8e...z9e; +% pickup pencircle scaled .2pt; +filldraw stroke z10e..z11e...{right}z12e; +filldraw stroke z13e...z14e...{left}z15e...{up}z16e...{right}z17e...{down}z18e; +penlabels(1,2,3,4,6,7,8,9,11,12,14,15,16,17,18); +endchar; + +cmchar "tamil long e"; +beginchar(15,1.6x_height#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="e"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x10=x4; bot y10r=-d; pos10(tthick,-90); +x11=x9; bot y11r=0; pos11(tthick,-90); +filldraw stroke z11e--z10e; +penlabels(10); +endchar; + +cmchar "tamil ng"; +beginchar(16,1.5x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="g"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "Tamil ai matra"; +beginchar(17,2x_height#,x_height#,0); +adjust_fit(0,0); +w:=3x_height; +x1=x81=u; x6=.6x10; x8=.6[x1,x6]; x7=.5[x8,x6]; +x5=.5[x1,x6]; x3=.5[x1,x8]; x4=x2=.5[x1,x3]; +x9=.5[x8,x10]; x10=.7w; x12=.6[x8,x10]; x11=.5[x12,x10]; +top y5r=top y9r=h; +bot y4r=bot y7r=bot y11r=0; +y2=y8=y6=y12=y10=.5h; +y81=y1=y3=.5y2; +pos1(tthinner,180); pos2(tthin,90); pos3(tthick,0); pos4(tthin,-90); +pos81(tthinner,-180); pos5(tmed,-270); pos6(tthicker,-360); +pos7(tmed,-450); pos8(tthin,-540); pos9(tmed,-630); pos10(tthicker,-720); +pos11(tmed,-810); pos12(tthin,-900); +x30=x11; y30=y10; x31=x12; bot y31r=0; pos30(tthick,-720); pos31(tmed,-790); +filldraw stroke z1e...{right}z2e...{down}z3e...{left}z4e..z81e...{right}z5e + ...{down}z6e...{left}z7e...{up}z8e...{right}z9e...{down}z30e...z31e; +penlabels(1,2,3,4,5,6,7,8,9,30,31); +endchar; + +cmchar "tamil ngi"; +beginchar(18,1.85x_height#,asc_height#,0); +adjust_fit(0,0); +callchar:="g"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x40=x13; y40=y13; pos40(tthin,0); x41=x40; top y41l=h; pos41(tthick,-90); +x50=x40-2u; y50=.5[y40,y41]; pos50(tmed,-30); +x42=w-u; y42=x_height; x43=x42; y43=y43l=y43r=0; pos42(tthin,-180); +x43r=x43-.6; x43l=x43+.6; +filldraw stroke z40e{left}...{right}z41e...{down}z42e--z43e; +penlabels(41,42,43,44); +endchar; + + + +cmchar "tamil ngii"; +beginchar(19,1.75x_height#,body_height#,0); +adjust_fit(0,0); +callchar:="g"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +small_iito(13,s,h); +endchar; + +cmchar "tamil ngu"; +beginchar(20,1.5x_height#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="g"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +clonex(40,12); y40=y40l=y40r=-d; +filldraw stroke z12e--z40e; +endchar; + +cmchar "tamil nguu"; +beginchar(21,1.85x_height#,x_height#,1.5desc_depth#); +adjust_fit(0,0); +callchar:="g"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +clonex(40,12); y40=y40l=y40r=-.5d; +filldraw stroke z12e--z40e; +x22=w-u; y22=.5y40; x21=.6[x12,x22]; y21=.25d; +pos21(tthinner,-90); pos22(tthin,-180); +x23=.7[x1,x12]; bot y23l=-d; pos23(tthick,-270); +x24=x2; y24=-.5d; pos24(tthin,-360); x25=x7; y25=-.25d; pos25(tthinner,-450); +x26=.5[x1,x12]; y26=-.5d; pos26(tthinnest,-540); +filldraw stroke z40e{up}...{right}z21e...{down}z22e...{left}z23e...{up}z24e + ...{right}z25e...{down}z26e; +penlabels(40,21,22,23,24,25,26); +endchar; + +cmchar "tamil e matra"; +beginchar(22,1.4x_height#,body_height#,0); +adjust_fit(0,0); +x1=x3=x5=.6w; x2=x1-1.5u; x4=x1+1.5u; top y3l=bar_height; +pos3(1.2tthin,-90); y2=y4=.5[y1,y3]; bot y1l=.25u; pos1(tthin,90); +pos2(tthin,0); pos4(tmed,-180); y5=y1; pos5(tthin,-270); +x6=u; y6=.5h; pos6(tthinner,-360); top y7l=h; x7=.5w; pos7(1.2tmed,-450); +x8=w-u; y8=x_height; pos8(tthin,-540); x9=x8; y9=0; x9r=x9-.6; x9l=x9+.6; +y9r=y9l=y9; x75=x7; bot y75l=0; pos75(tthin,-280); +filldraw stroke z1e...{up}z2e...{right}z3e...{down}z4e...z5e...{left}z75e + ...{up}z6e...{right}z7e...z8e--z9e; +penlabels(1,2,3,4,5,75,6,7,8,9); +endchar; + +cmchar "tamil long e matra"; +beginchar(23,1.4x_height#,body_height#,0); +adjust_fit(0,0); +x1=x3=x5=x10=x8=x12=w-2.5u; x2=x11=x1-1.5u; x4=x9=x1+1.5u; top y3l=bar_height; +pos3(1.2tthin,-90); y2=y4=.5[y1,y3]; bot y1l=.25u; pos1(tthin,90); +pos2(tthin,0); pos4(tmed,-180); y5=y1; pos5(tthin,-270); +x6=u; y6=.5h; pos6(tthinner,-360); top y7l=h; x7=.55w; pos7(1.2tmed,-450); +x75=x7; bot y75l=0; pos75(tthin,-280); +top y8l=h-.25u; pos8(.8tmed,-460); y9=y11=.5[y8,y10]; y10=y8-y3+y1; +y12=y8; pos9(tthin,-540); pos10(tthin,-630); pos11(tthinner,-720); +pos12(tthinnest,-810); +filldraw stroke z1e...{up}z2e...{right}z3e...{down}z4e...z5e...{left}z75e + ...{up}z6e...{right}z7e...z8e...{down}z9e...{left}z10e...{up}z11e...z12e; +penlabels(1,2,3,4,5,75,6,7,8,9,10,11,12); +endchar; + +cmchar "Tamil c"; +beginchar(24,1.5x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +y26=y25; y26l=y25l; y26r=y25r; x26=x26l=x26r=w-u; +filldraw stroke z25e---z26e; +penlabels(26); +endchar; + +cmchar "Tamil ci"; +beginchar(26,1.7x_height#,asc_height#,0); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +y26=y25; y26l=y25l; y26r=y25r; x26=x26l=x26r=w-u-.2x_height; +filldraw stroke z25e---z26e; +z45=z21; x46=x3; top y46r=h; x47=x48=w-u; y47=y4; y48=0; +pos45(tthinnest,270); pos46(tthick,90); pos47(tthinner,0); +x48l=x48-.5; x48r=x48+.5; y48l=y48r=0; +filldraw stroke z45e{left}...{right}z46e...z47e{down}---z48e; +penlabels(26,46,47,48); +endchar; + +cmchar "Tamil cii"; +beginchar(27,1.6x_height#,body_height#,0); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +y26=y25; y26l=y25l; y26r=y25r; x26=x26l=x26r=w-u-.1x_height; +filldraw stroke z25e---z26e; +z45=z21; x46=x3; top y46r=h; +pos45(tthinnest,270); pos46(tmed,90); +x47=.6[x3,x4]; y47=.9[y3,y46]; x48=x4; y48=.5[y3,y46]; +y49=.3[y3,y46]; x49=x47; x50=.2[x3,x4]; y50=y48; z51=z47; +pos47(.7tmed,45); pos48(tthinner,0); pos49(tthinnest,-90); +pos50(tthinnest,-180); pos51(tthinnest,-225); +filldraw stroke z45e{left}...{right}z46e...z47e...{down}z48e...{left}z49e...{up}z50e...z51e; +penlabels(26,46,47,48,49,50); +endchar; + +cmchar "Tamil cu"; +beginchar(28,1.65x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +y26=y25; y26l=y25l; y26r=y25r; x26=x26l=x26r=w-u; +filldraw stroke z25e---z26e; +x27=x28=.5[x25,x26]; y27=y26; y28=0; pos27(tmed,0); pos28(tmed,0); +filldraw stroke z27e--z28e; +penlabels(26,27,28); +endchar; + +cmchar "Tamil cuu"; +beginchar(29,2x_height#,x_height#,desc_depth#); +adjust_fit(0,0); +w:=1.65x_height; +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +y26=y25; y26l=y25l; y26r=y25r; x26=x26l=x26r=w-u; +filldraw stroke z25e---z26e; +x27=x28=.5[x25,x26]; y27=y26; y28=0; pos27(tmed,0); pos28(tmed,0); +filldraw stroke z27e--z28e; +x40=x6; bot y40r=-d; pos40(tthick,-90); +x41=-.25x_height; y41=y8; x42=x42l=x42r=x2; y42=y2; y42r=y42+.6; y42l=y42-.6; +pos41(tthinner,-180); +x48=x28; y48=0; pos48(tthinner,180); x49=w-u; y49=0; pos49(tthin,0); +filldraw stroke z48e{up}...{down}z49e...{left}z40e...{up}z41e...{right}z42e; +picture V; transform t; t=identity shifted(.35x_height,0); +V=currentpicture transformed t; currentpicture:=V; +penlabels(26,27,28,40,41); +endchar; + +cmchar "tamil ny"; +beginchar(32,2x_height#+2u#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +w:=1.7x_height; +callchar:="e"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; x99=x9; y99=0; pos99(tthin,0); +x11=x9+4u; x10=.5[x9,x11]; top y10l=bar_height; pos10(tmed,-90); +y11=.2bar_height; pos11(tthin,-180); x12=.5[x4,x9]; bot y12l=-d; pos12(tthick,-270); +x13=-.2x_height; y13=.3bar_height; pos13(tthin,-360); x14=x5-.75u; y14=y5; pos14(tthinner,-400); +filldraw stroke z99e{up}...{right}z10e...{down}z11e...{left}z12e...{up}z13e...z14e; +picture V; transform t; t=identity shifted(.3x_height,0); +V=currentpicture transformed t; currentpicture:=V; +endchar; + +cmchar "tamil nyi"; +beginchar(34,2.2x_height#+2u#,asc_height#,1.2desc_depth#); +adjust_fit(0,0); +w:=1.7x_height; +callchar:="e"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; x99=x9; y99=0; pos99(tthin,0); +x11=x9+4u; x10=.5[x9,x11]; top y10l=bar_height; pos10(tmed,-90); +y11=.2bar_height; pos11(tthin,-180); x12=.5[x4,x9]; bot y12l=-d; pos12(tthick,-270); +x13=-.2x_height; y13=.3bar_height; pos13(tthin,-360); x14=x5-.75u; y14=y5; pos14(tthinner,-400); +filldraw stroke z99e{up}...{right}z10e...{down}z11e...{left}z12e...{up}z13e...z14e; +x30=x8; y30=x_height; pos30(tthin,0); x31=x30; top y31l=h; pos31(tthick,-90); +x33=x32=x11+2u; y32=x_height; y33=y33l=y33r=0; pos32(tthin,-180); x33l=x33+.6; +x33r=x33-.6; filldraw stroke z30e{left}...{right}z31e...{down}z32e--z33e; +picture V; transform t; t=identity shifted(.3x_height,0); +V=currentpicture transformed t; currentpicture:=V; +endchar; + +cmchar "tamil nyii"; +beginchar(35,2x_height#+2u#,body_height#,1.2desc_depth#); +adjust_fit(0,0); +w:=1.7x_height; +callchar:="e"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; x99=x9; y99=0; pos99(tthin,0); +x11=x9+4u; x10=.5[x9,x11]; top y10l=bar_height; pos10(tmed,-90); +y11=.2bar_height; pos11(tthin,-180); x12=.5[x4,x9]; bot y12l=-d; pos12(tthick,-270); +x13=-.2x_height; y13=.3bar_height; pos13(tthin,-360); x14=x5-.75u; y14=y5; pos14(tthinner,-400); +filldraw stroke z99e{up}...{right}z10e...{down}z11e...{left}z12e...{up}z13e...z14e; +small_iito(8,s,h); +picture V; transform t; t=identity shifted(.3x_height,0); +V=currentpicture transformed t; currentpicture:=V; +endchar; + +cmchar "tamil nyu"; +beginchar(36,2x_height#+u#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +w:=1.7x_height; +callchar:="e"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; x99=x9; y99=0; pos99(tthin,0); +x11=x9+4u; x10=.5[x9,x11]; top y10l=bar_height; pos10(tmed,-90); +y11=.2bar_height; pos11(tthin,-180); x12=.5[x4,x9]; y12=-d; pos12(tthick,-270); +x13=0; y13=-.3d; pos13(tthin,-360); x14=x13+.2u; y14=y13+.2u; pos14(tthin,-450); +x15=x11+1.5u; y15=y14; pos15(tthin,-450); +x16=x15; y16=y15r; pos16(tthick,0); x17=x16; y17=x_height; pos17(tthick,0); +filldraw stroke z99e{up}...{right}z10e...{down}z11e...{left}z12e...{up}z13e...{right}z14e--z15e; +filldraw stroke z16e--z17e; +penlabels(10,11,12,13,14,15,16,17); +endchar; + + +cmchar "tamil nyuu"; +beginchar(37,2.4x_height#+2u#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +w:=1.7x_height; +callchar:="e"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; x99=x9; y99=0; pos99(tthin,0); +x11=x9+4u; x10=.5[x9,x11]; top y10l=bar_height; pos10(tmed,-90); +y11=.2bar_height; pos11(tthin,-180); x12=.5[x4,x9]; y12=-d; pos12(tthick,-270); +x13=0; y13=-.3d; pos13(tthin,-360); x14=x13+.2u; y14=y13+.2u; pos14(tthin,-450); +x15=x11+2u; y15=y14; pos15(tthin,-450); +x16=x15; y16=y15r; pos16(tthin,0); x17=x16; y17=x_height; pos17(tthin,0); +filldraw stroke z99e{up}...{right}z10e...{down}z11e...{left}z12e...{up}z13e...{right}z14e--z15e; +filldraw stroke z16e--z17e; +w:=2.4x_height+2u; +top y18r=y17; x18=x17l; pos18(tmed,90); y19=y18; x19=w-u; x40r=x19-u; +y40=y17; x21=x40; y21=0; pos19(tmed,90); pos40(tmed,0); pos21(tmed,0); +filldraw stroke z18e--z19e; filldraw stroke z40e--z21e; +penlabels(10,11,12,13,14,15,16,17,18,19,40,21); +endchar; + +cmchar "Tamil t dot"; +beginchar(40,1.75x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="T"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "Tamil t dot i"; +beginchar(42,1.75x_height#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="T"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x5=.7[x3,x4]; bot y5r=0; pos5(tthin,270); x6=x5-1.5u; top y6r=h; pos6(tthick,90); +x7=x5; y7=bar_height; pos7(tthin,0); x8=x7; y8=-d; pos8(tthinnest,0); +x40=x1; y40=.6[y1,y2]; +filldraw stroke z5e{z40-z5}...{right}z6e...{down}z7e--z8e; +penlabels(5,6,7,8); endchar; + +cmchar "Tamil t dot ii"; +beginchar(43,1.75x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="T"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x5=.7[x3,x4]; y5=0; pos5(tmed,180); +small_iito(5,s,x_height); +penlabels(5,6,7,8); endchar; + +cmchar "tamil t dot u"; +beginchar(44,1.6x_height#,body_height#,desc_depth#); +adjust_fit(0,0); +x1=x2=.45w; y1=x_height; y2=0; pos1(tmed,0); pos2(tmed,0); +x3r=x2r; y3=y2; pos3(tthinner,0); x5l=w-2.5u; y5=.5[y4,y6]; pos5(tthinner,-180); +x4=.5[x3,x5]; y4=bar_height; pos4(tthin,-90); +x6=x3; bot y6l=-d; pos6(tthick,-270); x7=u; y7=.5[y6,y8]; pos7(tthinner,-360); +x8=x1+u; top y8l=h; pos8(tmed,-450); x9=x10=w-u; y9=y1; pos9(tthin,-540); +y10=y10r=y10l=0; x10l=x10+.6; x10r=x10-.6; +filldraw stroke z1e--z2e; +filldraw stroke z3e{up}...{right}z4e...{down}z5e...{left}z6e...{up}z7e...{right}z8e...{down}z9e--z10e; +penlabels(1,2,4,5,6,7,8,9,10); +endchar; + +cmchar "tamil t dot uu"; +beginchar(45,1.6x_height#,body_height#,desc_depth#); +adjust_fit(0,0); +x1=x2=.45w; y1=x_height; y2=0; pos1(tmed,0); pos2(tmed,0); +x3r=x2r; y3=y2; pos3(tthinner,0); x5l=w-2.5u; y5=.5[y4,y6]; pos5(tthinner,-180); +x4=.5[x3,x5]; y4=bar_height; pos4(tthin,-90); +x6=x3; bot y6l=-d; pos6(tthick,-270); x7=u; y7=.5[y6,y8]; pos7(tthinner,-360); +x8=x1+u; top y8l=h; pos8(tmed,-450); x9=w-3.5u; y9=asc_height-.25u; +x10=x9+1.5u; y10=.5[y9,y11]; x11=x9; y11=y9-4u; x12=x9-1.5u; y12=y10; +x13=x9; y13=y9; pos9(tthin,-470); pos10(tthin,-540); pos11(tthinner,-630); +pos12(tthinnest,-720); x13l=x13r=x13; y13l=y13+.6; y13r=y13-.6; +filldraw stroke z1e--z2e; +filldraw stroke z3e{up}...{right}z4e...{down}z5e...{left}z6e...{up}z7e...{right}z8e + ...z9e...{down}z10e...{left}z11e...{up}z12e...{right}z13e; +penlabels(1,2,4,5,6,7,8,9,10,11,12,13); +endchar; + +cmchar "Tamil n dot"; +beginchar(48,2.8x_height#+u#,x_height#,0); +adjust_fit(0,0); +callchar:="1"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +filldraw stroke z13e---z14e; +filldraw stroke z15e---z16e; +endchar; + +cmchar "Tamil n.aa"; +beginchar(49,2.8x_height#+3u#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +callchar:="1"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x21=x16; y21=y6; +y22=-d; x22=.4[x1,x21]; +x23=x1; y23=.8x_height; +pos21(tthick,-1080); pos22(tthin,-1170); +y23l+.5=y23r-.5=y23; x23l=x23; x23r=x23-1; +filldraw stroke z13e{right}...{down}z21e...{left}z22e...{right}z23e; +picture V; transform t; t=identity shifted(3u,0); +V=currentpicture transformed t; currentpicture:=V; +%penlabels(21,22,23); +endchar; + +cmchar "Tamil n.i"; +beginchar(50,3x_height#+u#,asc_height#,0); +adjust_fit(0,0); +callchar:="1"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +filldraw stroke z13e---z14e; +filldraw stroke z15e---z16e; +x17=.5[x13,x14]; top y17l=x_height; x18=x17; top y18r=h; +pos17(tthin,270); pos18(tthick,90); +x20=x19=x14+u; y19=x_height; y20=y20r=y20l=0; +pos19(tthin,0); x20l=x20-.6; x20r=x20+.6; +filldraw stroke z17e{left}...{right}z18e...{down}z19e--z20e; +penlabels(17,18,19,20); +endchar; + +cmchar "Tamil n.ii"; +beginchar(51,3x_height#,body_height#,0); +adjust_fit(0,0); +callchar:="1"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +filldraw stroke z13e---z14e; +filldraw stroke z15e---z16e; +x17=.5[x13,x14]; top y17l=x_height; pos17(tthin,270); +small_iito(17,s,h); +penlabels(17); +endchar; + +cmchar "Tamil n.u"; +beginchar(52,2.8x_height#+3u#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +callchar:="1"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x21=x16+u; y21=y6; +y22=-d; x22=.6[x1,x21]; +x23=x1; y23=-.3d; x24=x23+.2u; y24=y23+.2u; x25=w-u; y25=y24; +x27r=x26r=x25; y27=x_height; y26=y25r; +pos21(tthin,-1080); pos22(tthick,-1170); +pos23(tthin,-1260); pos24(tthin,-1350); pos25(tthin,-1350); +filldraw stroke z13e{right}...{down}z21e...{left}z22e...{up}z23e...{right}z24e--z25e; +pos26(tmed,0); pos27(tmed,0); filldraw stroke z26e--z27e; +penlabels(21,22,23,24,25,27); +endchar; + +cmchar "Tamil n.uu"; +beginchar(53,3.6x_height#+u#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +w:=3x_height+u; +callchar:="1"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x21=x16+u; y21=y6; +y22=-d; x22=.6[x1,x21]; +x23=x1; y23=-.3d; x24=x23+.2u; y24=y23+.2u; x25=w-u; y25=y24; +x27r=x26r=x25; y27=x_height; y26=y25r; +pos21(tthin,-1080); pos22(tthick,-1170); +pos23(tthin,-1260); pos24(tthin,-1350); pos25(tthin,-1350); +filldraw stroke z13e{right}...{down}z21e...{left}z22e...{up}z23e...{right}z24e--z25e; +pos26(tmed,0); pos27(tmed,0); filldraw stroke z26e--z27e; +w:=3.6x_height+u; x28=x27l; top y28r=y27; y29=y28; y30=y27; x29=w-u; x30=x29-2u; +x31=x30; y31=0; +pos28(tthin,90); pos29(tthin,90); pos30(tthin,0); pos31(tthin,0); +filldraw stroke z28e--z29e; filldraw stroke z30e--z31e; +penlabels(21,22,23,24,25,27,28,29,30,31); +endchar; + + + +cmchar "Tamil n dot ai"; +beginchar(54,3.8x_height#+u#,asc_height#,0); +adjust_fit(0,0); +callchar:="1"; +dodraw:=false; +tspecs; +dodraw:=true; +h:=oldh; w:=oldw; d:=oldd; +aipoints; +z211=.5[z210,z2]; pos211(tthin,135); +filldraw stroke z201e...{down}z202e...{left}z203e...{up}z204e...z205e...{right}z206e + ...{down}z207e...z208e...{down}z209e...{right}z210e...z211e + ...{right}z2e...{down}z3e...{left}z4e..z81e...{right}z5e + ...{down}z6e...{left}z7e...{up}z8e...{right}z9e...{down}z10e + ...{left}z11e...{up}z12e...{right}z13e---z14e; +filldraw stroke z15e---z16e; +picture V; transform t; t=identity shifted(x_height,0); +V=currentpicture transformed t; currentpicture:=V; +endchar; + +cmchar "Tamil t"; +beginchar(56,1.7x_height#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +% +% finish with tail for t shape +cloney(61,25); x61r=x61l=x61=.5[x3,x4]; +rt x62r=w-u; y62=.5y61; pos62(tthick,0); +y63=y64=-.3d; lft y66l=-d; y65=.4[y64,y66]; +x63=x61; x64=x2; x65=u; x66=.7[x65,x64]; +pos63(tthin,-90); pos64(tthin,-90); pos65(tthinner,0); +pos66(tthick,45); +%filldraw stroke z25e--z61e{right}...{down}z62e...{left}z63e---z64e{left}...{down}z65e..z66e; +filldraw stroke z66e...{up}z65e...{right}z64e---z63e{right}...{up}z62e...{left}z61e---z25e; +penlabels(45,47,48,61,62,63,64,65,66); +endchar; + + +cmchar "Tamil ti"; +beginchar(58,1.85x_height#,asc_height#,1.2desc_depth#); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +% +% draw the i loop +z45=z21; x46=x3; top y46r=h; x47=x48=w-u; y47=y4; y48=0; +pos45(tthinnest,270); pos46(tthick,90); pos47(tthinner,0); +x48l=x48-.5; x48r=x48+.5; y48l=y48r=0; +filldraw stroke z45e{left}...{right}z46e...z47e{down}---z48e; +% +% finish with tail for t shape +cloney(61,25); x61r=x61l=x61=.5[x3,x4]; +rt x62r=.5[x4,x48]; % note this is based on position of i-loop +y62=.5y61; pos62(tthick,0); +y63=y64=-.3d; lft y66l=-d; y65=.4[y64,y66]; +x63=x61; x64=x2; x65=u; x66=.7[x65,x64]; +pos63(tthinner,-90); pos64(tthinner,-90); pos65(tthinner,0); +pos66(tthick,45); +%filldraw stroke z25e--z61e{right}...{down}z62e...{left}z63e---z64e{left}...{down}z65e..z66e; +filldraw stroke z66e...{up}z65e...{right}z64e---z63e{right}...{up}z62e...{left}z61e---z25e; +penlabels(45,47,48,61,62,63,64,65,66); +endchar; + +cmchar "Tamil tii"; +beginchar(59,1.65x_height#,asc_height#,1.2desc_depth#); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +% +% do the upper loop for ii +z45=z21; x46=x3; top y46r=h; +pos45(tthinnest,270); pos46(tmed,90); +x47=.6[x3,x4]; y47=.9[y3,y46]; x48=x4; y48=.5[y3,y46]; +y49=.3[y3,y46]; x49=x47; x50=.2[x3,x4]; y50=y48; z51=z47; +pos47(.7tmed,45); pos48(tthinner,0); pos49(tthinnest,-90); +pos50(tthinnest,-180); pos51(tthinnest,-225); +filldraw stroke z45e{left}...{right}z46e...z47e...{down}z48e...{left}z49e...{up}z50e...z51e; +% +% finish with tail for t shape +cloney(61,25); x61r=x61l=x61=.5[x3,x4]; +rt x62r=w-u; y62=.5y61; pos62(tthick,0); +y63=y64=-.3d; lft y66l=-d; y65=.4[y64,y66]; +x63=x61; x64=x2; x65=u; x66=.7[x65,x64]; +pos63(tthin,-90); pos64(tthin,-90); pos65(tthinner,0); +pos66(tthick,45); +%filldraw stroke z25e--z61e{right}...{down}z62e...{left}z63e---z64e{left}...{down}z65e..z66e; +filldraw stroke z66e...{up}z65e...{right}z64e---z63e{right}...{up}z62e...{left}z61e---z25e; +penlabels(45,47,48,49,50,61,62,63,64,65,66); +endchar; + +cmchar "Tamil tu"; +beginchar(60,2.2x_height#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +w:=w-2u; +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +% +% finish with tail for t shape +cloney(61,25); x61r=x61l=x61=.5[x3,x4]; +rt x62r=.35[x4,x90]; y62=.5y61; pos62(tthick,0); +x63=x7; y63=-d; x64=x8-2u; y64=.85[y63,y65]; y66=y65=-.3d; +x65=.25[x64,x8]; x66=w-u;rt x67r=x66; y67=bot y66l; x90=x67; y90=x_height; +pos63(tthin,-90); pos64(tthinner,-180); pos65(tthinner,-270); +pos66(tthinner,-270); pos67(.8tthick,0); pos90(.8tthick,0); +filldraw stroke z25e--z61e{right}...{down}z62e...{left}z63e...{up}z64e + ...{right}z65e---z66e; +filldraw stroke z67e---z90e; +picture V; transform t; t= identity shifted(2u,0); +V=currentpicture transformed t; currentpicture:=V; +penlabels(61,62,63,64,65,66,90); +endchar; + +cmchar "Tamil tuu"; +beginchar(61,2.6x_height#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +w:=2.2x_height-2u; +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +% +% finish with tail for t shape +cloney(61,25); x61r=x61l=x61=.5[x3,x4]; +rt x62r=.35[x4,x90]; y62=.5y61; pos62(tthick,0); +x63=x7; y63=-d; x64=x8-2u; y64=.85[y63,y65]; y66=y65=-.3d; +x65=.25[x64,x8]; x66=w-u;rt x67r=x66; y67=bot y66l; x90=x67; y90=x_height; +pos63(tthin,-90); pos64(tthinner,-180); pos65(tthinner,-270); +pos66(tthinner,-270); pos67(tthin,0); pos90(tthin,0); +filldraw stroke z25e--z61e{right}...{down}z62e...{left}z63e...{up}z64e + ...{right}z65e---z66e; +filldraw stroke z67e---z90e; +w:=2.6x_height-2u; +x201=x90l; top y201r=x_height; y202=y201; x202=w-u; pos201(tthin,90); +pos202(tthin,90); x203=.6[x201,x202]; y203=x_height; x204=x203; +y204=0; pos203(tmed,0); pos204(tmed,0); +filldraw stroke z201e--z202e; filldraw stroke z203e--z204e; +picture V; transform t; t= identity shifted(2u,0); +V=currentpicture transformed t; currentpicture:=V; +penlabels(61,62,63,64,65,66,90); +endchar; + +cmchar "Tamil n"; +beginchar(64,1.5x_height#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +callchar:="n"; +tspecs; h:= oldh; w:=oldw; d:=oldd; +%draw the end loop +filldraw stroke z7e{up}...{right}z8e...{down}z9e...{left}z10e...{left}z11e...{down}z12e..z13e; +endchar; + +cmchar "Tamil ni"; +beginchar(66,1.75x_height#,asc_height#,1.2desc_depth#); +adjust_fit(0,0); +callchar:="n"; +tspecs; h:= oldh; w:=oldw; d:=oldd; +%draw the end loop +filldraw stroke z7e{up}...{right}z8e...{down}z9e...{left}z10e...{left}z11e...{down}z12e..z13e; +% draw the i loop +x45=.8[x5,x4]; top y45r=x_height; x46=x45; top y46l=h; x47=x48=w-u; y47=y4; y48=0; +pos45(tthinnest,90); pos46(tthick,-90); pos47(tthinner,-180); +x48l=x48+.65; x48r=x48-.65; y48l=y48r=0; +filldraw stroke z45e{left}...{right}z46e...z47e{down}---z48e; +penlabels(45,46,47,48); +endchar; + +cmchar "Tamil nii"; +beginchar(67,1.65x_height#,body_height#,1.2desc_depth#); +adjust_fit(0,0); +callchar:="n"; +tspecs; h:= oldh; w:=oldw; d:=oldd; +%draw the end loop +filldraw stroke z7e{up}...{right}z8e...{down}z9e...{left}z10e...{left}z11e...{down}z12e..z13e; +x31=x9l; y31=x_height; small_iito(31,s,h); +endchar; + +cmchar "Tamil nu"; +beginchar(68,1.8x_height#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +callchar:="n"; +tspecs; h:= oldh; w:=oldw; d:=oldd; +%draw the end loop +x70=.5[x1,x6]; y70=-d; x72=w-u; y72=y82; rt x73r=x72; +y73=y72; x74=x73; y74=x_height; +z81=z12; z82=z11; pos70(tthinner,-90); pos81(tthinner,-180); +pos82(tthinner,-270); pos72(tthinner,-270); +pos73(.8tthick,0); pos74(.8tthick,0); +filldraw stroke z7e{up}...{right}z8e...{down}z9e...{left}z70e...{up}z81e + ...{right}z82e---z72e; +filldraw stroke z73e--z74e; +penlabels(70,72,73,74,81,82); +endchar; + +cmchar "Tamil nuu"; +beginchar(69,2.1x_height#,x_height#,.5x_height#); +adjust_fit(0,0); +callchar:="n"; +tspecs; h:= oldh; w:=oldw; d:=oldd; +%draw the end loop +x70=.5[x1,x6]; y70=-d; x72=w-3u; y72=y82; rt x73r=x72; +y73=y72; x74=x73; y74=x_height; +z81=z12; z82=z11; pos70(tthinner,-90); pos81(tthinner,-180); +pos82(tthinner,-270); pos72(tthinner,-270); +pos73(tthinner,0); pos74(tthinner,0); +filldraw stroke z7e{up}...{right}z8e...{down}z9e...{left}z70e...{up}z81e + ...{right}z82e---z72e; +filldraw stroke z73e--z74e; +top y90r=x_height; x90=lft x73l; x91=w-u; y91=y90; +pos90(tthinner,90); pos91(tthinner,90); filldraw stroke z90e--z91e; +rt x92r=x91; y92=x_height; y93=0; x93=x92; +pos92(.8tthick,0); pos93(.8tthick,0); filldraw stroke z92e--z93e; +penlabels(70,72,73,74,81,82,90,91,92,93); +endchar; + +cmchar "Tamil p"; +beginchar(72,1.4x_height#+u#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="p"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "Tamil pi"; +beginchar(74,1.5x_height#+2u#,asc_height#,0); +adjust_fit(0,0); +callchar:="p"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x7=x6; top y7l=h; pos7(tthick,-90); x8=x9=w-u; y8=x_height; y9=y9r=y9l=0; +x9r=x9-.6; x9l=x9+.6; pos8(tthin,-180); +filldraw stroke z6e{left}...{right}z7e...{down}z8e--z9e; +penlabels(7,8,9); endchar; + +cmchar "Tamil pii"; +beginchar(75,1.4x_height#+u#,body_height#,0); +adjust_fit(0,0); +callchar:="p"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x7=x6; x7r=x6l; x7l=x6r; cloney(7,6); +small_iito(7,s,h); +endchar; + +cmchar "Tamil pu"; +beginchar(76,1.4x_height#+u#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="p"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +clonex(7,5); y7r=y7l=y7=-d; filldraw stroke z5e--z7e; +endchar; + +cmchar "Tamil puu"; +beginchar(77,1.4x_height#+4u#,x_height#,1.4desc_depth#); +adjust_fit(0,0); +callchar:="p"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +clonex(7,5); y7r=y7l=y7=-.5d; filldraw stroke z5e--z7e; +x8=x7; y8=y7; pos8(tthin,0); x10=w-u; y10=.5[y9,y11]; pos10(tthin,-180); +x9=.5[x8,x10]; top y9l=0; pos9(tthin,-90); x11=.5[x1,x10]; y11=-d; +x12=x1; y12=-.4d; x13=.25[x1,x4]; y13=-.2d; x14=.5[x1,x4]; y14=-.45d; +pos11(tthick,-270); pos12(tthin,-360); pos13(tthin,-450); pos14(tthinner,-540); +filldraw stroke z8e{up}...{right}z9e...{down}z10e...{left}z11e...{up}z12e + ...{right}z13e...{down}z14e; +endchar; + +cmchar "Tamil m"; +beginchar(80,1.6x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="m"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "Tamil mi"; +beginchar(82,1.85x_height#,asc_height#,0); +adjust_fit(0,0); +callchar:="m"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x10=x6; top y10l=h; y11=x_height; x12=x11=w-u; y12=0; +pos10(tthick,-90); pos11(tthin,-180); y12r=y12l=y12; +x12r=x12-.6; x12l=x12+.6; +filldraw stroke z6e{left}...{right}z10e...{down}z11e--z12e; +penlabels(10,11,12); endchar; + +cmchar "Tamil mii"; +beginchar(83,1.6x_height#,body_height#,0); +adjust_fit(0,0); +callchar:="m"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x10=x6; y10l=x_height; x10r=x10-.6; x10l=x10+.6; y10=y10l-.6; y10r=y10-.6; +small_iito(10,s,h); +endchar; + +cmchar "Tamil mu"; +beginchar(84,2.2x_height#,x_height#,desc_depth#); +adjust_fit(0,0); +w:=1.6x_height; +callchar:="m"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x9=x8; y9=0; pos9(tthick,-180); +x10=.25[x2,x8]; bot y10l=-d; pos10(tmed,-270); +x11=-.6x_height+u; y11=.5bar_height; x12=x1-.5u; y12l=h; +pos11(tthin,-360); x12l=x12r=x12; y12=y12l-.6; y12r=y12-.6; +filldraw stroke z9e{down}...{left}z10e...{up}z11e...{right}z12e; +picture V; transform t; t=identity shifted(.6x_height,0); +V=currentpicture transformed t; currentpicture:= V; +endchar; + + +cmchar "Tamil muu"; +beginchar(85,2.2x_height#,x_height#,desc_depth#); +adjust_fit(0,0); +w:=1.6x_height; +callchar:="m"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x9=x8; y9=0; pos9(tthick,-180); +x10=.25[x2,x8]; bot y10l=-d; pos10(tmed,-270); +x11=-.6x_height+u; y11=.5bar_height; x12=x1-2.5u; y12l=h; +pos11(tthin,-360); pos12(tthinnest,-450); +x13=x12+u; y14=y12-u; x14=x13-2u; y14=y13; +pos13(tthinnest,-540); x14l=x14-.6; x14r=x14+.6; y14r=y14l=y14; +filldraw stroke z9e{down}...{left}z10e...{up}z11e...{right}z12e...{down}z13e...{z14-z2}z14e; +picture V; transform t; t=identity shifted(.6x_height,0); +V=currentpicture transformed t; currentpicture:= V; +endchar; + +cmchar "Tamil y"; +beginchar(88,1.5x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="y"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "Tamil yi"; +beginchar(90,1.9x_height#,asc_height#,0); +adjust_fit(0,0); +callchar:="y"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x20=x9; y20l=h; pos20(tthick,-90); x21=w-u; y21=x_height; pos21(tthin,-180); +x22=x21; y22=y22l=y22r=0; x22r=x22-.6; x22l=x22+.6; +filldraw stroke z9e{left}...{right}z20e...{down}z21e--z22e; +penlabels(20,21,22); endchar; + +cmchar "Tamil yii"; +beginchar(91,1.65x_height#,body_height#,0); +adjust_fit(0,0); +callchar:="y"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x20=x9; y20=y9; pos20(tthin,180); +small_iito(20,s,h); +endchar; + +cmchar "Tamil yu"; +beginchar(92,1.5x_height#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="y"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +clonex(20,10); y20=y20l=y20r=-d; +filldraw stroke z10e--z20e; +penlabels(20); endchar; + +cmchar "Tamil yuu"; +beginchar(93,1.75x_height#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="y"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +clonex(20,10); y20=y20l=y20r=-.5d; +filldraw stroke z10e--z20e; +x22=w-u; y22=0; x21=.6[x10,x22]; y21=.25d; +pos21(tthinner,-90); pos22(tthin,-180); +x23=.7[x7,x8]; y23=-1.2d; pos23(tthick,-270); +x24=x2; y24=-.5d; pos24(tthin,-360); x25=x7; y25=-.25d; pos25(tthinner,-450); +x26=.5[x7,x8]; y26=-.5d; pos26(tthinnest,-540); +filldraw stroke z20e{up}...{right}z21e...{down}z22e...{left}z23e...{up}z24e + ...{right}z25e...{down}z26e; +penlabels(20,21,22,23,24,25,26); endchar; + +cmchar "Tamil r"; +beginchar(96,.9x_height#+2u#,x_height#,.75desc_depth#); +adjust_fit(0,0); +callchar:="r2"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x7=x6; bot y7l=y6; x8=x1; bot y8l=-d; +pos7(tthin,90); pos8(tthin,90); +filldraw stroke z7e--z8e; +penlabels(7,8); endchar; + +cmchar "Tamil aa matra"; +beginchar(97,.9x_height#+2u#,x_height#,0); +adjust_fit(0,0); +callchar:="r2"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "Tamil ri"; +beginchar(98,.9x_height#+3.5u#,asc_height#,0); +adjust_fit(0,0); +callchar:="r2"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x7=.5[x5,x4]; y7=y5; x8=x7; top y8r=h; x9=x10=w-u; y9=x_height; y10=0; +pos7(tthinner,-90); pos8(tthick,90); pos9(tthin,0); +x10l=x10-.6; x10r=x10+.6; y10r=y10l=0; +filldraw stroke z7e{left}...{right}z8e...{down}z9e--z10e; +penlabels(7,8,9,10); endchar; + +cmchar "Tamil rii"; +beginchar(99,.9x_height#+2.5u#,body_height#,0); +adjust_fit(0,0); +callchar:="r2"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x7=.5[x5,x4]; y7=x_height; pos7(tthinner,-90); +small_iito(7,s,body_height); +penlabels(7,8,9,10); endchar; + +cmchar "Tamil ru"; +beginchar(100,.9x_height#+7u#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +callchar:="r2"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x7=x6; y7=y6; x8=.7[x5,x4]; top y8l=bar_height; pos8(tthick,-90); +pos7(tthin,0); x9=1.4[x5,x4]; y9=0; pos9(tthin,-180); +x10=.7[x1,x6]; bot y10l=-d; pos10(tthinner,-270); x11=x1-4u; y11=.5bar_height; +pos11(tthinner,-360); x12=x2-u; top y12l=x_height; pos12(tthinnest,-450); +filldraw stroke z7e{up}...{right}z8e...{down}z9e...{left}z10e...{up}z11e...{right}z12e; +picture V; transform t; t=identity shifted(3.75u,0); +V=currentpicture transformed t; currentpicture:= V; +penlabels(7,8,9,10,11,12); endchar; + + +cmchar "Tamil ruu"; +beginchar(101,.9x_height#+9u#,x_height#,1.2desc_depth#); +adjust_fit(0,0); +callchar:="r2"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x7=x6; y7=y6; x8=.7[x5,x4]; top y8l=bar_height; pos8(tthick,-90); +pos7(tthin,0); x9=1.4[x5,x4]; y9=0; pos9(tthin,-180); +x10=.7[x1,x6]; bot y10l=-d; pos10(tthinner,-270); x11=x1-6u; y11=.5bar_height; +pos11(tthinner,-360); x12=.5[x11,x2]; top y12l=x_height; pos12(tthin,-450); +x13=.8[x11,x2]; y13=y12-1.5u; x14=.3[x11,x2]; y14=y12-3u; +pos13(tthin,-540); pos14(tthinner,-600); +filldraw stroke z7e{up}...{right}z8e...{down}z9e...{left}z10e...{up}z11e...{right}z12e + ...{down}z13e...z14e; +picture V; transform t; t=identity shifted(5.75u,0); +V=currentpicture transformed t; currentpicture:= V; +penlabels(7,8,9,10,11,12); endchar; + + +cmchar "Tamil l"; +beginchar(104,1.4x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="l"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x11=x9; top y11r=h; x12=x11+.5u; y12=y11-.25u; pos11(tthick,90); pos12(.7tthick,60); +x13=x12; y13=x12-2u; pos13(tthin,-90); x14r=x14l=x14=x12; y14=y12; y14r=y14+1; y14l=y14-1; +filldraw stroke z4e...z1e..z2e..z3e..z4e...{up}z81e..z5e...{down}z6e--z7e{down}...{right}z8e...{up}z9e + ...{left}z10e; +endchar; + +cmchar "Tamil li"; +beginchar(106,1.6x_height#+2u#,body_height#,0); +adjust_fit(0,0); +callchar:="l"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x11=x10; top y11r=h; pos11(tthick,90); x13=x12=w-u; y12=x_height; +y13r=y13l=y13=0; x13l=x13-.6; x13r=x13+.6; pos12(tthin,0); +filldraw stroke z4e...z1e..z2e..z3e..z4e...{up}z81e..z5e...{down}z6e--z7e{down}...{right}z8e...{up}z9e + ...{left}z10e...{right}z11e...{down}z12e--z13e; +%filldraw stroke z10e...{right}z11e...{down}z12e--z13e; +penlabels(11,12,13); +endchar; + +cmchar "Tamil lii"; +beginchar(107,1.5x_height#,asc_height#,0); +adjust_fit(0,0); +callchar:="l"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x11=x9; top y11r=h; x12=x11+.5u; y12=y11-.25u; pos11(tthick,90); pos12(.7tthick,60); +x13=x12; y13=x12-2u; pos13(tthin,-90); x14r=x14l=x14=x12; y14=y12; y14r=y14+1; y14l=y14-1; +filldraw stroke z4e...z1e..z2e..z3e..z4e...{up}z81e..z5e...{down}z6e--z7e{down}...{right}z8e...{up}z9e + ...{left}z10e...{right}z11e..z12e...{left}z13e...{right}z14e; +%small_iito(10,s,h); +endchar; + +cmchar "Tamil lu"; +beginchar(108,2x_height#,x_height#,1.4desc_depth#); +adjust_fit(0,0); +callchar:="l"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +filldraw stroke z4e...z1e..z2e..z3e..z4e...{up}z81e..z5e...{down}z6e--z7e{down}...{right}z8e...{up}z9e + ...{left}z10e; +z21=z8; pos21(tthin,0); x22=.15[x5,x21]; bot y22r=-d; pos22(tthick,-90); +x23=x81-u; y23=-.4d; x24=x23+.5u; y24=y23+.5u; pos23(tthin,-180); pos24(tthin,-270); +x25=w-u; y25=y24; pos25(tthin,-270); x26r=x25; x27=x26; pos26(tmed,0); +y26=y25l; y27=x_height; pos27(tmed,0); +filldraw stroke z21e{down}...{left}z22e...{up}z23e...{right}z24e--z25e; +filldraw stroke z26e--z27e; +penlabels(21,22,23,24,25,26,27); +endchar; + +cmchar "Tamil luu"; +beginchar(109,2.4x_height#,x_height#,1.4desc_depth#); +adjust_fit(0,0); +w:=1.9x_height; +callchar:="l"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +filldraw stroke z4e...z1e..z2e..z3e..z4e...{up}z81e..z5e...{down}z6e--z7e{down}...{right}z8e...{up}z9e + ...{left}z10e; +z21=z8; pos21(tthin,0); x22=.15[x5,x21]; bot y22r=-d; pos22(tthick,-90); +x23=x81-u; y23=-.4d; x24=x23+.5u; y24=y23+.5u; pos23(tthin,-180); pos24(tthin,-270); +x25=w-u; y25=y24; pos25(tthin,-270); x26r=x25; x27=x26; pos26(tthin,0); +y26=y25l; y27=x_height; pos27(tthin,0); +filldraw stroke z21e{down}...{left}z22e...{up}z23e...{right}z24e--z25e; +filldraw stroke z26e--z27e; +w:=2.4x_height; +x28=x27l; y28r=y27; y29=y28; x29=w-u; pos28(tthin,90); pos29(tthin,90); +filldraw stroke z28e--z29e; +x31=x30=.65[x28,x29]; y30=y27; y31=0; pos30(tmed,0); pos31(tmed,0); +filldraw stroke z30e--z31e; +penlabels(21,22,23,24,25,26,27,28,29,30); +endchar; + +cmchar "Tamil lai"; +beginchar(110,2.8x_height#,asc_height#,0); +adjust_fit(0,0); +callchar:="l"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; aipoints; +z211=.5[z210,z2]; pos211(tthin,135); +filldraw stroke z201e...{down}z202e...{left}z203e...{up}z204e...z205e...{right}z206e + ...{down}z207e...z208e...{down}z209e...{right}z210e...z211e + ...{right}z2e...{down}z3e...{left}z4e...{up}z81e...{right}z5e...{down}z6e--z7e{down}...{right}z8e...{up}z9e...{left}z10e; +picture V; transform t; t=identity shifted(x_height,0); +V=currentpicture transformed t; currentpicture:=V; +endchar; + + + +cmchar "Tamil v"; +beginchar(112,1.4x_height#+2u#,x_height#,0); +adjust_fit(0,0); +callchar:="v"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "Tamil vi"; +beginchar(114,1.65x_height#+2u#,asc_height#,0); +adjust_fit(0,0); +callchar:="v"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; x21r=x10l; x21l=x10r; x21=x10; cloney(21,10); +x11=x10; top y11r=h; pos11(tthick,90); x13=x12=w-u; y12=x_height; +y13r=y13l=y13=0; x13l=x13-.6; x13r=x13+.6; pos12(tthin,0); +filldraw stroke z21e{left}...{right}z11e...{down}z12e--z13e; +penlabels(11,12,13); +endchar; + +cmchar "Tamil vii"; +beginchar(115,1.5x_height#+u#,body_height#,0); +adjust_fit(0,0); +callchar:="v"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x21r=x10l; x21l=x10r; x21=x10; cloney(21,10); small_iito(21,s,h); +endchar; + +cmchar "Tamil vu"; +beginchar(116,1.5x_height#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="v"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +clonex(11,9); y11r=y11l=y11=-d; filldraw stroke z9e--z11e; +penlabels(11); endchar; + +cmchar "Tamil vuu"; +beginchar(117,1.5x_height#+3u#,x_height#,1.4desc_depth#); +adjust_fit(0,0); +callchar:="v"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +clonex(11,9); y11r=y11l=y11=-.5d; filldraw stroke z9e--z11e; +x18=x11; y18=y11; pos18(tthin,0); x20=w-u; y20=.5[y19,y21]; pos20(tthin,-180); +x19=.5[x18,x20]; top y19l=0; pos19(tthin,-90); x21=.5[x1,x20]; y21=-d; +x22=x1; y22=-.4d; x23=.25[x1,x9]; y23=-.2d; x24=.5[x1,x9]; y24=-.45d; +pos21(tthick,-270); pos22(tthin,-360); pos23(tthin,-450); pos24(tthinner,-540); +filldraw stroke z18e{up}...{right}z19e...{down}z20e...{left}z21e...{up}z22e + ...{right}z23e...{down}z24e; +penlabels(11); endchar; + +cmchar "Tamil z"; +beginchar(120,1.6x_height#,x_height#,1.4desc_depth#); +adjust_fit(0,0); +callchar:="m"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x9=x9r=x9l=x5; y9=-.3d; y9l=y9+.6;y9r=y9-.6; filldraw stroke z8e{down}...{right}z9e; +x90l=x9l; y90l=y9l; pos90(tthin,-170); +x10=.4[x1,x5]; bot y10r=-d; x11=x1; y11=.3[y9,y10]; pos10(tthick,-90); pos11(tthin,-180); +x12=.25[x2,x5]; y12=.5[y2,y11]; pos12(tthinner,40); +filldraw stroke z9e{left}...{left}z10e...{up}z11e...z12e; +penlabels(9,10,11,12); +endchar; + +cmchar "Tamil zi"; +beginchar(122,1.9x_height#,asc_height#,1.4desc_depth#); +adjust_fit(0,0); +callchar:="m"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x9=x9r=x9l=x5; y9=-.3d; y9l=y9+.6;y9r=y9-.6; filldraw stroke z8e{down}...{right}z9e; +x90l=x9l; y90l=y9l; pos90(tthin,-170); +x10=.4[x1,x5]; bot y10r=-d; x11=x1; y11=.3[y9,y10]; pos10(tthick,-90); pos11(tthin,-180); +x12=.25[x2,x5]; y12=.5[y2,y11]; pos12(tthinner,40); +filldraw stroke z9e{left}...{left}z10e...{up}z11e...z12e; +x30=x6; top y30l=h; y31=x_height; x32=x31=w-u; y32=0; +pos30(tthick,-90); pos31(tthin,-180); y32r=y32l=y32; +x32r=x32-.6; x32l=x32+.6; +filldraw stroke z6e{left}...{right}z30e...{down}z31e--z32e; +penlabels(9,10,11,12,30,31,32); +endchar; + +cmchar "Tamil zii"; +beginchar(123,1.6x_height#,body_height#,1.4desc_depth#); +adjust_fit(0,0); +callchar:="m"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x9=x9r=x9l=x5; y9=-.3d; y9l=y9+.6;y9r=y9-.6; filldraw stroke z8e{down}...{right}z9e; +x90l=x9l; y90l=y9l; pos90(tthin,-170); +x10=.4[x1,x5]; bot y10r=-d; x11=x1; y11=.3[y9,y10]; pos10(tthick,-90); pos11(tthin,-180); +x12=.25[x2,x5]; y12=.5[y2,y11]; pos12(tthinner,40); +filldraw stroke z9e{left}...{left}z10e...{up}z11e...z12e; +small_iito(6,s,h); +penlabels(9,10,11,12); +endchar; + +cmchar "Tamil zu"; +beginchar(124,2.2x_height#,x_height#,1.4desc_depth#); +adjust_fit(0,0); +callchar:="m"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +clonex(88,8); y88r=y88l=y88=-.5d; filldraw stroke z8e--z88e; +x9=x88; y9=y88; pos9(tthin,-360); x99=x4; y99=y9; pos99(tthin,-180); +x10=.25[x2,x8]; bot y10l=-d; pos10(tmed,-270); +x11=-.6x_height+u; y11=.5bar_height; x12=x1-.5u; y12l=h; +pos11(tthin,-360); x12l=x12r=x12; y12=y12l-.6; y12r=y12-.6; +filldraw stroke z9e{up}...{down}z99e...{left}z10e...{up}z11e...{right}z12e; +picture V; transform t; t=identity shifted(.6x_height,0); +V=currentpicture transformed t; currentpicture:= V; +endchar; + +cmchar "Tamil zuu"; +beginchar(125,2.2x_height#,x_height#,1.4desc_depth#); +adjust_fit(0,0); +callchar:="m"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +clonex(88,8); y88r=y88l=y88=-.5d; filldraw stroke z8e--z88e; +x9=x88; y9=y88; pos9(tthin,-360); x99=x4; y99=y9; pos99(tthin,-180); +x10=.25[x2,x8]; bot y10l=-d; pos10(tmed,-270); +x11=-.6x_height+u; y11=.5bar_height; x12=.5[x11,x1]; top y12l=h; +pos11(tthin,-360); pos12(tthin,-450); x13=.8[x11,x1]; y13=y12-1.5u; +pos13(tthin,-540); x14=.3[x11,x1]; y14=y13-1.5u; pos14(tthinner,-600); +filldraw stroke z9e{up}...{down}z99e...{left}z10e...{up}z11e...{right}z12e + ...{down}z13e...z14e; +picture V; transform t; t=identity shifted(.6x_height,0); +V=currentpicture transformed t; currentpicture:= V; +endchar; + + + +cmchar "Tamil l dot"; +beginchar(128,1.75x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="L"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "Tamil l dot i"; +beginchar(130,1.75x_height#+2u#,asc_height#,0); +adjust_fit(0,0); +callchar:="L"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +y13=y12; x13=x12r; x14=x13; top y14r=h; x15=x16=w-u; y15=y12; y16l=y16r=y16=0; +x16l=x16-.6; x16r=x16+.6; pos13(tthin,180); pos14(tthick,90); pos15(tthin,0); +filldraw stroke z13e{left}...{right}z14e...{down}z15e--z16e; +penlabels(14,15,16); endchar; + +cmchar "Tamil l dot ii"; +beginchar(131,1.75x_height#+u#,body_height#,0); +adjust_fit(0,0); +callchar:="L"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +y13=y12; x13=x12r; +pos13(tthin,0); +small_iito(13,s,h); +endchar; + +cmchar "Tamil l dot u"; +beginchar(132,2.05x_height#+3u#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="L"; +tspecs; +h:=oldh; w:=2.05x_height; d:=oldd; +x31=x11; y31=0; pos31(tthin,0); x33=w-u; y33=.5[y32,y34]; pos33(tthin,-180); +x32=.5[x31,x33]; y32=bar_height; pos32(tthin,-90); +x35=x1-3u; y35=.5[y1,y2]; pos35(tthin,-360); x34=.5[x35,x33]; bot y34l=-d; +pos34(tthick,-270); x36=x1; y36=y5; x36r=x36+.6; x36l=x36-.6; +y36r=y36-.6; y36l=y36+.6; +filldraw stroke z31e{up}...{right}z32e...{down}z33e...{left}z34e...{up}z35e..{right}z36e; +picture V; transform t; t=identity shifted(3u,0); V=currentpicture transformed t; +currentpicture:=V; +endchar; + +cmchar "Tamil l dot uu"; +beginchar(133,2.05x_height#+3u#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="L"; +tspecs; +h:=oldh; w:=2.05x_height; d:=oldd; +x31=x11; y31=0; pos31(tthin,0); x33=w-u; y33=.5[y32,y34]; pos33(tthin,-180); +x32=.5[x31,x33]; y32=bar_height; pos32(tthin,-90); +x35=x1-3u; y35=.5[y1,y2]; pos35(tthin,-360); x34=.5[x35,x33]; bot y34l=-d; +pos34(tthick,-270); x36=.5[x35,x1]; top y36l=h; pos36(tthin,-450); +x37=.9[x35,x1]; y37=y36-u; pos37(tthin,-540); x38=.3[x35,x1]; y38=y37-u; +pos38(tthinner,-600); +filldraw stroke z31e{up}...{right}z32e...{down}z33e...{left}z34e...{up}z35e..{right}z36e + ...{down}z37e...z38e; +picture V; transform t; t=identity shifted(3u,0); V=currentpicture transformed t; +currentpicture:=V; +endchar; + +cmchar "Tamil l dot ai"; +beginchar(134,2.75x_height#,asc_height#,0); +adjust_fit(0,0); +callchar:="L"; +dodraw:=false; +tspecs; +dodraw:=true; +h:=oldh; w:=oldw; d:=oldd; +aipoints; +z211=.5[z210,z2]; pos211(tthin,135); +filldraw stroke z201e...{down}z202e...{left}z203e...{up}z204e...z205e...{right}z206e + ...{down}z207e...z208e...{down}z209e...{right}z210e...z211e + ...{right}z2e...{down}z3e...{left}z4e...{up}z1e...{right}z5e...{down}z6e; +filldraw stroke z7e---z8e; filldraw stroke z9e---z10e; +filldraw stroke z11e---z12e; +picture V; transform t; t=identity shifted(x_height,0); +V=currentpicture transformed t; currentpicture:=V; +endchar; + +cmchar "Tamil alv. r"; +beginchar(136,1.3x_height#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="R"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +filldraw stroke z4e{up}...{right}z6e...{down}z7e..z8e..z9e...{down}z12e..z10e; +endchar; + +cmchar "Tamil alv. raa"; +beginchar(137,1.3x_height#+3u#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="R"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x77=x7; y77=.4[y6,y7]; pos77(tthin,-180); +x7:=x7-u; x7r:=x7r-u; x7l:=x7l-u; +x88=x77; y88=0; pos88(tthin,-180); +x31=x5; bot y31l=-d; x32=-2u; y32=.3bar_height; +pos31(tthick,-270); pos32(tthin,-360); +x33=x33r=x33l=x11-.5u; y33=y11; y33l=y33+.6; y33r=y33-.6; +filldraw stroke z4e{up}...{right}z6e...{down}z77e...{down}z7e...{down}z88e...{left}z31e...{up}z32e...z33e; +picture V; transform t; t=identity shifted(3u,0); +V=currentpicture transformed t; currentpicture:=V; +endchar; + +cmchar "Tamil alv. ri"; +beginchar(138,1.7x_height#,asc_height#,desc_depth#); +adjust_fit(0,0); +callchar:="R"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +filldraw stroke z4e{up}...{right}z6e...{down}z7e..z8e..z9e...{down}z12e..z10e; +x77=x6; top y77r=h; pos77(tthick,-270); +x78=w-u; y78=x_height; x79=x78; y79=y79r=y79l=0; +x79r=x79+.6; x79l=x79-.6; pos78(tthin,-360); +filldraw stroke z6e{left}...{right}z77e...{down}z78e--z79e; +endchar; + +cmchar "Tamil alv. rii"; +beginchar(139,1.3x_height#,body_height#,desc_depth#); +adjust_fit(0,0); +callchar:="R"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +filldraw stroke z4e{up}...{right}z6e...{down}z7e..z8e..z9e...{down}z12e..z10e; +small_iito(6,s,h); +endchar; + +cmchar "Tamil alv. ru"; +beginchar(140,1.75x_height#,x_height#,1.4desc_depth#); +adjust_fit(0,0); +callchar:="R"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x77=x7; y77=y7; pos77(tthin,-180); +x31=x5; bot y31l=-d; x32=x1; y32=-.5d; y33=y32+.5u; x33=x32+.5u; x34=w-u; y34=y33; +pos31(tthick,-270); pos32(tthin,-360); pos33(tthin,-450); pos34(tthin,-450); +filldraw stroke z4e{up}...{right}z6e...{down}z77e...{left}z31e...{up}z32e...{right}z33e--z34e; +x35r=x34; y35=y34r; x36=x35; y36=x_height; pos35(tthick,0); pos36(tthick,0); +filldraw stroke z35e--z36e; +endchar; + +cmchar "Tamil alv. ruu"; +beginchar(141,2x_height#,x_height#,1.4desc_depth#); +adjust_fit(0,0); +callchar:="R"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x77=x7; y77=y7; pos77(tthin,-180); +x31=x5; bot y31l=-d; x32=x1; y32=-.5d; y33=y32+.5u; x33=x32+.5u; x34=w-3.3u; y34=y33; +pos31(tthick,-270); pos32(tthin,-360); pos33(tthin,-450); pos34(tthin,-450); +filldraw stroke z4e{up}...{right}z6e...{down}z77e...{left}z31e...{up}z32e...{right}z33e--z34e; +x35r=x34; y35=y34r; x36=x35; y36=x_height; pos35(tthin,0); pos36(tthin,0); +filldraw stroke z35e--z36e; +x37=x36l; top y37r=x_height; x38=w-.3u; y38=y37; pos37(tthin,90); pos38(tthin,90); +filldraw stroke z37e--z38e; +x39r=x38-.7u; y39=x_height; x40=x39; y40=0; pos39(tthick,0); pos40(tthick,0); +filldraw stroke z39e--z40e; +endchar; + + +cmchar "Tamil 2loop n"; +beginchar(144,2x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="N"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +filldraw stroke z13e---z14e; +filldraw stroke z15e---z16e; +endchar; + +cmchar "Tamil 2loop naa"; +beginchar(145,2x_height#+3u#,x_height#,desc_depth#); +adjust_fit(0,0); +w:=2x_height; +callchar:="N"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x21=x16+u; y21=y6; +y22=-d; x22=.4[x1,x21]; +x23=x1; y23=.8x_height; +pos21(tthick,-1080); pos22(tthin,-1170); +y23l+.5=y23r-.5=y23; x23l=x23; x23r=x23-1; +filldraw stroke z13e{right}...{down}z21e...{left}z22e...{right}z23e; +picture V; transform t; t=identity shifted(3u,0); +V=currentpicture transformed t; currentpicture:=V; +endchar; + + + +cmchar "Tamil 2loop ni"; +beginchar(146,2.25x_height#,asc_height#,0); +adjust_fit(0,0); +callchar:="N"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +filldraw stroke z13e---z14e; +filldraw stroke z15e---z16e; +x21=x16; y21=x_height; pos21(tthin,0); x22=x21; top y22l=h; pos22(tthick,-90); +x23=w-u; y23=x_height; x24=x23; y24=y24l=y24r=0; x24r=x24-.6; x24l=x24+.6; +pos23(tthin,-180); +filldraw stroke z21e{left}...{right}z22e...{down}z23e--z24e; +penlabels(22,23,24); +endchar; + +cmchar "Tamil 2loop nii"; +beginchar(147,2x_height#,body_height#,0); +adjust_fit(0,0); +callchar:="N"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +filldraw stroke z13e---z14e; +filldraw stroke z15e---z16e; +small_iito(16,s,h); +endchar; + +cmchar "Tamil 2loop nu"; +beginchar(148,2.5x_height#+3u#,x_height#,desc_depth#); +adjust_fit(0,0); +w:=2x_height; +callchar:="N"; +tspecs; +h:=oldh; w:=2.5x_height; d:=oldd; +x21=x16+u; y21=y6; +y22=-d; x22=.4[x1,x21]; +x23=x1-3u; y23=-.43d; x24=x23+u; y24=-.25d; +pos21(tthick,-1080); pos22(tthin,-1170); +pos23(tthin,-1260); pos24(tthin,-1350); +y25=y24; x25=w-2u; pos25(tthin,-1350); +rt x26r=x25; y26=y25; pos26(tthick,0); x27=x26; y27=h; pos27(tthick,0); +filldraw stroke z13e{right}...{down}z21e...{left}z22e...{up}z23e{up}...{right}z24e--z25e; +filldraw stroke z26e--z27e; +picture V; transform t; t=identity shifted(3u,0); +V=currentpicture transformed t; currentpicture:=V; +endchar; + +cmchar "Tamil 2loop nuu"; +beginchar(149,2.8x_height#+3u#,x_height#,desc_depth#); +adjust_fit(0,0); +w:=2x_height; +callchar:="N"; +tspecs; +h:=oldh; w:=2.5x_height; d:=oldd; +x21=x16+u; y21=y6; +y22=-d; x22=.4[x1,x21]; +x23=x1-3u; y23=-.43d; x24=x23+u; y24=-.25d; +pos21(tthick,-1080); pos22(tthin,-1170); +pos23(tthin,-1260); pos24(tthin,-1350); +y25=y24; x25=w-3u; pos25(tthin,-1350); +rt x26r=x25; y26=y25; pos26(tthin,0); x27=x26; y27=h; pos27(tthin,0); +filldraw stroke z13e{right}...{down}z21e...{left}z22e...{up}z23e{up}...{right}z24e--z25e; +filldraw stroke z26e--z27e; +w:=2.8x_height; +x28=lft x27l; top y28r=h; x29=w-u; y29=y28; pos28(tthin,90); pos29(tthin,90); +rt x30r=x29-.7u; y30=h; x31=x30; y31=0; pos30(tthick,0); pos31(tthick,0); +filldraw stroke z28e--z29e; filldraw stroke z30e--z31e; +picture V; transform t; t=identity shifted(3u,0); +V=currentpicture transformed t; currentpicture:=V; +endchar; + +cmchar "Tamil 2loop n ai"; +beginchar(150,3x_height#,asc_height#,0); +adjust_fit(0,0); +callchar:="N"; +dodraw:=false; +tspecs; +dodraw:=true; +h:=oldh; w:=oldw; d:=oldd; +aipoints; +z211=.5[z210,z2]; pos211(tthin,135); +filldraw stroke z201e...{down}z202e...{left}z203e...{up}z204e...z205e...{right}z206e + ...{down}z207e...z208e...{down}z209e...{right}z210e...z211e + ...{right}z2e...{down}z3e...{left}z4e..z81e...{right}z5e + ...{down}z6e...{left}z7e...{up}z8e...{right}z13e---z14e; +filldraw stroke z15e---z16e; +picture V; transform t; t=identity shifted(x_height,0); +V=currentpicture transformed t; currentpicture:=V; +endchar; + +cmchar "grantha s dot"; +beginchar(176,2.2x_height#,asc_height#,desc_depth#); +adjust_fit(0,0); +callchar:="S"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "grantha s dot i"; +beginchar(178,2.5x_height#,body_height#+2u#,desc_depth#); +adjust_fit(0,0); +callchar:="S"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x50=x44; y50=y44; pos50(tthin,90); +x51=x50; top y51l=h; pos51(tthick,-90); +x52=x53=w-u; y52=x_height; y53=y53r=y53l=0; pos52(tthin,-180); +x53r=x53-.6; x53l=x53+.6; +filldraw stroke z50e{left}...{right}z51e...{down}z52e--z53e; +penlabels(50,51,52,53); +endchar; + +cmchar "grantha s dot ii"; +beginchar(179,2.4x_height#,body_height#+4u#,desc_depth#); +adjust_fit(0,0); +callchar:="S"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x50=x44; y50=y44; pos50(tthin,0); +small_iito(50,s,h); +endchar; + +cmchar "grantha s"; +beginchar(184,2.4x_height#,x_height#,0); +adjust_fit(0,0); +callchar:="s"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + +cmchar "grantha si"; +beginchar(186,2.6x_height#,asc_height#,0); +adjust_fit(0,0); +callchar:="s"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +z82=z16; x83=x16; top y83l=h; pos82(tthin,45); pos83(tthick,-90); +x85=x84=w-u; y84=x_height; y85=y85r=y85l=0; x85r=x85-.6; x85l=x85+.6; +pos84(tthin,-180); +filldraw stroke z82e{left}...{right}z83e...{down}z84e--z85e; +penlabels(83,84,85); +endchar; + +cmchar "grantha sii"; +beginchar(187,2.4x_height#,body_height#,0); +adjust_fit(0,0); +callchar:="s"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +x100=x16-2.5u; x101=x16+.5u; top y101l=h; pos101(tthick,-90); +y100=.5[y16,y101]; pos100(tthin,0); +x102=x101+u; y102=y101-.5u; pos102(.7tthick,-135); x103=x102; +y103=y102-2u; pos103(tthin,-270); x104=x104r=x104l=x102; +y104=y101; y104r=y104-.6; y104l=y104+.6; +filldraw stroke z16e{left}...{up}z100e...{right}z101e...z102e...{left}z103e...{right}z104e; +endchar; + +cmchar "grantha j"; +beginchar(192,1.75x_height#,x_height#,.8x_height#); +adjust_fit(0,0); +callchar:="j"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + + +cmchar "grantha ji"; +beginchar(194,2.05x_height#,asc_height#,.8x_height#); +adjust_fit(0,0); +callchar:="j"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +z182=z10; x183=x10; top y183l=h; pos182(tthin,90); pos183(tthick,-90); +x185=x184=w-u; y184=x_height; y185=y185r=y185l=0; x185r=x185-.6; x185l=x185+.6; +pos184(tthin,-180); +filldraw stroke z182e{left}...{right}z183e...{down}z184e--z185e; +penlabels(183,184,185); +endchar; + +cmchar "grantha jii"; +beginchar(195,1.75x_height#,body_height#,.8x_height#); +adjust_fit(0,0); +callchar:="j"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +z82=z10; pos82(tthinner,0); small_iito(82,s,h); +endchar; + + + + + +cmchar "grantha h"; +beginchar(200,3x_height#,x_height#,desc_depth#); +adjust_fit(0,0); +callchar:="h"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +endchar; + + +cmchar "grantha hi"; +beginchar(202,3.2x_height#,asc_height#,desc_depth#); +adjust_fit(0,0); +callchar:="h"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +z180=z106; pos180(tthin,90); x181=x180; top y181l=h; pos181(tthick,-90); +x182=x183=w-u; y182=x_height; y183=y183r=y183l=0; pos182(tthin,-180); +x183r=x183-.6; x183l=x183+.6; +filldraw stroke z180e{left}...{right}z181e...{down}z182e--z183e; +penlabels(180,181,182,183); +endchar; + +cmchar "grantha hii"; +beginchar(203,3x_height#,body_height#,desc_depth#); +adjust_fit(0,0); +callchar:="h"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +small_iito(106,s,h); +endchar; + +cmchar "grantha ksh"; +beginchar(208,3.6x_height#,asc_height#,desc_depth#); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +y202=y25; x202=x4+2.5u; pos202(tthin,90); x241r=w-u; +x206=.4[x202,x241]; x207=.3[x202,x241]; x205=.2[x202,x241]; +top y205r=x_height; pos205(tthin,-270); y206=.5[y205,y207]; pos206(tthick,-360); +bot y207r=0; pos207(tmed,-450); x240=.8[x207,x241]; bot y240r=0; +pos240(tmed,-450); y241=.5bar_height; pos241(tthick,-360); +x243=.5[x207,x240]; y243=h-y241; z242=.5[z241,z243]; +pos242(.5(tthick+tthin),-315); pos243(tthin,-360); +x244=.5[x243,x245]; top y244l=h; pos244(tmed,-450); x245=x243+4u; y245=y243; +pos245(tthin,-540); x246=.5[x207,x243]; bot y246l=-d; pos246(tthinner,-585); +x203=.4[x202,x207]; y203=.5[y202,y204]; pos203(tthick,0); x204=x202; +bot y204r=0; pos204(tthin,-90); x201=2x202-x203; y201=y203; pos201(tthin,-180); +filldraw stroke z25e--z202e{right}...{down}z203e...{left}z204e...z201e...{right}z205e + ...{down}z206e...{left}z207e; +filldraw stroke z207e--z240e{right}...{up}z241e...{z243-z241}z242e...{up}z243e + ...{right}z244e...z245e--z246e; +endchar; + +cmchar "grantha kshi"; +beginchar(210,3.6x_height#+2.6u#,body_height#+2u#,desc_depth#); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=3.6x_height; d:=oldd; +y202=y25; x202=x4+2.5u; pos202(tthin,90); x241r=w-u; +x206=.4[x202,x241]; x207=.3[x202,x241]; x205=.2[x202,x241]; +top y205r=x_height; pos205(tthin,-270); y206=.5[y205,y207]; pos206(tthick,-360); +bot y207r=0; pos207(tmed,-450); x240=.8[x207,x241]; bot y240r=0; +pos240(tmed,-450); y241=.5bar_height; pos241(tthick,-360); +x243=.5[x207,x240]; y243=asc_height-y241; z242=.5[z241,z243]; +pos242(.5(tthick+tthin),-315); pos243(tthin,-360); +x244=.5[x243,x245]; top y244l=asc_height; pos244(tmed,-450); x245=x243+4u; y245=y243; +pos245(tthin,-540); x246=.5[x207,x243]; bot y246l=-d; pos246(tthinner,-585); +x203=.4[x202,x207]; y203=.5[y202,y204]; pos203(tthick,0); x204=x202; +bot y204r=0; pos204(tthin,-90); x201=2x202-x203; y201=y203; pos201(tthin,-180); +filldraw stroke z25e--z202e{right}...{down}z203e...{left}z204e...z201e...{right}z205e + ...{down}z206e...{left}z207e; +filldraw stroke z207e--z240e{right}...{up}z241e...{z243-z241}z242e...{up}z243e + ...{right}z244e...z245e--z246e; +w:=oldw; +x250=x244; top y250l=asc_height; pos250(tthin,-90); x251=x245; top y251=h; +pos251(tthick,90); x252=w-u; y252=x_height; pos252(tthin,0); x253=x252; +y253=y253r=y253l=0; x253l=x253-.6; x253r=x253+.6; +filldraw stroke z250e{left}...{right}z251e...{down}z252e--z253e; +endchar; + +cmchar "grantha kshii"; +beginchar(211,3.6x_height#,body_height#+4u#,desc_depth#); +adjust_fit(0,0); +callchar:="c"; +tspecs; +h:=oldh; w:=oldw; d:=oldd; +y202=y25; x202=x4+2.5u; pos202(tthin,90); x241r=w-u; +x206=.4[x202,x241]; x207=.3[x202,x241]; x205=.2[x202,x241]; +top y205r=x_height; pos205(tthin,-270); y206=.5[y205,y207]; pos206(tthick,-360); +bot y207r=0; pos207(tmed,-450); x240=.8[x207,x241]; bot y240r=0; +pos240(tmed,-450); y241=.5bar_height; pos241(tthick,-360); +x243=.5[x207,x240]; y243=asc_height-y241; z242=.5[z241,z243]; +pos242(.5(tthick+tthin),-315); pos243(tthin,-360); +x244=.5[x243,x245]; top y244l=asc_height; pos244(tmed,-450); x245=x243+4u; y245=y243; +pos245(tthin,-540); x246=.5[x207,x243]; bot y246l=-d; pos246(tthinner,-585); +x203=.4[x202,x207]; y203=.5[y202,y204]; pos203(tthick,0); x204=x202; +bot y204r=0; pos204(tthin,-90); x201=2x202-x203; y201=y203; pos201(tthin,-180); +filldraw stroke z25e--z202e{right}...{down}z203e...{left}z204e...z201e...{right}z205e + ...{down}z206e...{left}z207e; +filldraw stroke z207e--z240e{right}...{up}z241e...{z243-z241}z242e...{up}z243e + ...{right}z244e...z245e--z246e; +small_iito(244,s,h) +endchar; + +cmchar "Tamil ayyatham"; +beginchar(240,asc_height#+2u#,asc_height#,0); +adjust_fit(0,0); pickup light_rule.nib; autorounded; +lft x6=hround u; x2=5u-x6; bot y4=0; y2=2u; circle_points; draw_circle; +transform ta; ta=identity shifted(w-5u,0); transform tb; tb=identity shifted(.5w-2.5u,h-6u); +picture VA; VA=currentpicture transformed ta; +picture VB; VB=currentpicture transformed tb; +addto currentpicture also VA; addto currentpicture also VB; +endchar; + +% following taken directly from cmr's accent.mf +cmchar "Dot accent"; +numeric dot_diam#; dot_diam#=max(dot_size#,cap_curve#); +beginchar(241,5u#,min(asc_height#,10/7x_height#+.5dot_diam#),0); +define_whole_blacker_pixels(dot_diam); +italcorr h#*slant+.5dot_diam#-2u#; +adjust_fit(0,0); +pickup tiny.nib; pos1(dot_diam,0); pos2(dot_diam,90); +x1=x2=.5w; top y2r=h+1; +if bot y2l +#include + + +/* globally accessible variables */ + +int tamilflag,t_errors,true,false,errorcount,transflag; +char switcher,tdelim; +char tspace[2]; +void changestate(); +FILE *input,*output; +char filename[128]; + + + +/* functions */ + +/* void bracket_err() +{ + printf("\nCharacter '}' read while scanning Tamil; need to edit file.\n"); + printf("Examine end of the output file to find location of problem."); + fclose(input); + fclose(output); + abort(); +} */ + +void haccbox() +{ + puts("Tamilize: Tamil to TeX converter v:0.97 of 4/24/90"); + puts("Humanities And Arts Computing Center, DR-10"); + puts("University of Washington"); + puts("Seattle, Washington, 98195 USA"); + puts("phone (206)-543-4218"); + puts("ridgeway@blake.u.washington.edu"); + puts("Copyright 1990 Humanities and Arts Computing Center"); + puts("You are welcome to use this work-in-progress, but please do not"); + puts("redistribute: rather, refer other interested parties to us."); + puts("Since this is a work in progress, we do not want uncontrolled"); + puts("proliferation of pre-release versions."); + return; +} + +FILE *getopen(char *access) +{ + int temp; + FILE *handle; + gets(filename); + handle=fopen(filename,access); + if (handle == (FILE *) NULL) { + printf("Can't open file %s",filename); + errorcount++; + if (errorcount > 9) { + printf("\n\n\n\n\nToo many errors!\n"); + abort(); + } + } + return handle; +} +FILE *get_file(char *access,char *prompt) +{ + puts(prompt); + return getopen(access); +} + +int isvowel(char thischar) +{ + switch (thischar) { + case 'a' : + case 'e' : + case 'i' : + case 'o' : + case 'u' : return true; + default : return false; + } +} + +void stringout(char *string) +{ + fputs(string,output); +} + +void charout(char thischar) +{ + putc(thischar,output); +} + +void romanout(char thischar) +{ + stringout("{\\roman "); + charout(thischar); + charout('}'); +} + +void transcribe_err(char thischar) +{ + printf("Character %c encountered in Tamil environment.\n",thischar); + romanout(thischar); +} + +void pushback(char thischar) +{ + ungetc(thischar,input); +} + +void processtamil() +{ + char ch; + int newsyl; + newsyl=true; + for (tamilflag=true; tamilflag==true; ) { + ch = getc(input); + if (ch == EOF) abort(); + if (ch == switcher) changestate(); + else if (isspace(ch)) { + stringout(tspace); + charout(ch); + for ( ch=getc(input); isspace(ch); ch=getc(input)) charout(ch); + pushback(ch); + newsyl=true; + } + else if (ispunct(ch) ) { + if (ch == 125) printf("\nCharacter } encountered while scanning tamil -- probable error.\n"); + romanout(ch); + newsyl=true; + } + else { + switch (ch) { + case 'a': + case 'e': + case 'i': + case 'o': + case 'u': if (newsyl==true) { + charout(tdelim); + newsyl=false; + } + charout(ch); + break; + case 'c': + case 't': + case 'p': + case 'm': + case 'y': + case 'r': + case 'l': + case 'v': + case 's': + case 'j': + case 'x': + case 'h': charout(tdelim); + charout(ch); + newsyl=false; + break; + case 'k': charout(tdelim); + ch=getc(input); + if (ch=='4') charout('X'); + else { + charout('k'); + pushback(ch); + } + newsyl=false; + break; + case '2': charout(tdelim); + charout('N'); + newsyl=false; + break; + case '3': charout(tdelim); + stringout("NN"); + newsyl=false; + break; + case '4': charout(tdelim); + charout('S'); + newsyl=false; + break; + case '5': charout(tdelim); + stringout("NY"); + newsyl=false; + break; + case '6': charout(tdelim); + charout('R'); + newsyl=false; + break; + case '7': charout(tdelim); + charout('Z'); + newsyl=false; + break; + case '8': charout(tdelim); + charout('T'); + newsyl=false; + break; + case '9': charout(tdelim); + charout('L'); + newsyl=false; + break; + case 'n': charout(tdelim); + ch=getc(input); + if (ch=='g') stringout("ng"); + else { + charout('n'); + pushback(ch); + } + newsyl=false; + break; + default : transcribe_err(ch); + newsyl=true; + } /* endcase */ + } /* endif */ + } /* endfor*/ +} + +void starttamil() +{ + stringout("{\\btam "); /* stringout("{\\starttamil\%\n"); */ + processtamil(); +} + +void endtamil() +{ + stringout("}\\etam{}"); /* stringout("}\\endtamil\%\n"); */ + tamilflag=false; +} + +void changestate() +{ + if (tamilflag==true) endtamil(); + else starttamil(); +} + +main(int argc, char *argv[]) +{ + int ch,err,notdone,vowflag,initflag; + errorcount=0; + switcher='~'; + true=1; + false=0; + tamilflag=false; + tdelim=1; /* i.e. control-a ::: if yah don't like it, change it */ + tspace[0]=tdelim; + tspace[1]=' '; + haccbox(); + vowflag=0; + if (argc > 1) input = fopen(argv[1],"rb"); + if (input == (FILE *) NULL) { + /* prompt for and open input file */ + for ( ; input == (FILE *) NULL ; input=get_file("rb","Enter name of input file: ")) ; + } + /* we are making these binary, as we have no guarantee what kind */ + /* of character may be in the transcription: we don't care about */ + /* ends of lines, as we are reading character by character */ + if (argc > 2) output = fopen(argv[2],"wb"); + if (output == (FILE *) NULL) { + for ( ; output == (FILE *) NULL ; output=get_file("wb","Enter name of output file: ")) ; + /* prompt for and open output file */ + } + while ((ch = getc(input)) != EOF) { + if (ch == switcher) changestate(); + else { + if (ch == '|') { + vowflag=1; + notdone=1; + initflag=2; + while (notdone) { + ch=getc(input); + if (isalnum(ch)) { + initflag--; + if (vowflag==0) { + if (! isvowel(ch)) stringout("\\-"); + } + if (isvowel(ch)) vowflag=1; + else vowflag=0; + } + else { + vowflag=1; + initflag=2; + } + if (ch==EOF) notdone=0; + else { + switch(ch) { + case '2': stringout("\\ndot{}"); + break; + case '3': stringout("\\nndot{}"); + break; + case '4': stringout("\\skts{}"); + break; + case '5': stringout("\\paln{}"); + break; + case '6': stringout("\\rdot{}"); + break; + case '7': stringout("\\rdotdot{}"); + break; + case 'T': stringout("\\tdot{}"); + break; + case 'D': stringout("\\dotd{}"); + break; + case '8': + if ( initflag > 0 ) stringout("\\tdot{}"); + else { + err=getc(input); + if (err == '8') stringout("\\tdot{}\\tdot{}"); + else { + stringout("\\dotd{}"); + pushback(err); + } + } + break; + case '9': stringout("\\dotl{}"); + break; + case '|': notdone=0; + break; + default: putc(ch,output); + } /* endcase */ + } /* end else */ + } /* endwhile */ + } /* endif */ + else putc(ch,output); + } /* endelse */ + } /* endwhile */ + fclose(input); + fclose(output); + puts("Tamilize is done."); +} diff --git a/language/tamil/wntamil/tamilmax.mf b/language/tamil/wntamil/tamilmax.mf new file mode 100644 index 0000000000..bfa7b49106 --- /dev/null +++ b/language/tamil/wntamil/tamilmax.mf @@ -0,0 +1,446 @@ +def tspecs = +if callchar = "k": +% cmchar "Tamil k"; +charspec("k",1.5x_height#,x_height#,0); +top y2r=top y3r=top y4r=h; +bot y7=bot y11=0; +y1=y9=y5=.6x_height; +y8=.5y1; y10=.5y1; +y6=.3x_height; +y22=h; +x10=w-u; x8=w-x10; +x3=x5=.6[x8,x10]; +x1=x2-.5hair=x22=.2[x8,x10]; x7=.25[x8,x10]; +x6=x5; +x4=.9[x8,x10]; x11=.75[x8,x10]; x9=.65[x8,x10]; +z21=z1; x101=x10+.6u; y101=y10; +%pickup crisp.nib; +pos1(tthinner,30); pos22(tthinner,30); pos2(.8tmed,90); pos4(.8tmed,90); +pos3(tthick,0); pos5(tthick,0); pos6(tthick,-10); +pos7(tthin,-60); pos8(tthinner,-180);pos21(tmed,-210); +pos9(tmed,-210); pos10(tthick,-340); pos11(tthin,-450); +pos101(tthickest,-340); +% show z1,z1r,z1l,z22,z22r,z22l; +filldraw stroke z1e--z22e; +filldraw stroke z2e--z4e; +x65=x11-.075w; y65=y11+.075h; pos65(tthinnest,-540); +filldraw stroke z3e...z5e...z6e{down}...{left}z7e...{up}z8e...{right}z21e + ...z9e{right}...z10e{down}...{left}z11e...z65e; +penlabels(1,2,3,4,5,6,7,8,9,10,11,21); +% endchar; + +elseif callchar = "c": +charspec("c",1.5x_height#,x_height#,0); +top y2r=top y3r=top y4r=h; +bot y7=bot y11=0; +y1=y9=y5=.6x_height; +y8=.5y1; y10=.5y1; +y6=.3x_height; +y22=h; +x10=w-u; x8=w-x10; +x3=x5=.6[x8,x10]; +x1=x2-.5hair=x22=.2[x8,x10]; x7=.25[x8,x10]; +x6=x5; +x4=.9[x8,x10]; x11=.75[x8,x10]; x9=.65[x8,x10]; +z21=z1; x101=x10+.6u; y101=y10; +%pickup crisp.nib; +pos1(tthinner,30); pos22(tthinner,30); pos2(.8tmed,90); pos4(.8tmed,90); +pos3(tthick,0); pos5(tthick,0); pos6(tthick,-10); +pos7(tthin,-60); pos8(tthinner,-180);pos21(tmed,-210); +pos9(tmed,-210); pos10(tthick,-340); pos11(tthin,-450); +pos101(tthickest,-340); +% show z1,z1r,z1l,z22,z22r,z22l; +filldraw stroke z1e--z22e; +filldraw stroke z2e--z4e; +x25=x25r=x25l=x5; y25=y21; y25r=y21r; y25l=y21l; +filldraw stroke z3e...z5e...z6e{down}...{left}z7e...{up}z8e...{right}z21e---z25e; +penlabels(1,2,3,4,5,6,7,8,21,25); +% endchar; + +elseif callchar = "1": + +%cmchar "Tamil n dot"; +charspec("1",3x_height#,x_height#,0); +%adjust_fit(0,0); +x1=x81=u; x6=.6x10; x8=.6[x1,x6]; x7=.5[x8,x6]; +x5=.5[x1,x6]; x3=.5[x1,x8]; x4=x2=.5[x1,x3]; +x9=.5[x8,x10]; x10=.7w; x12=.6[x8,x10]; x11=.5[x12,x10]; +x13=rt x10r; x14=w-u; x15=x16=.5[x13,x14]; +top y5r=top y9r=top y13r=y16=top y14r=h; +bot y4r=bot y7r=bot y11r=y15=0; +y2=y8=y6=y12=y10=.5h; +y81=y1=y3=.5y2; +pos1(tthinner,180); pos2(tthin,90); pos3(tthick,0); pos4(tthin,-90); +pos81(tthinner,-180); pos5(tmed,-270); pos6(tthicker,-360); +pos7(tmed,-450); pos8(tthin,-540); pos9(tmed,-630); pos10(tthicker,-720); +pos11(tmed,-810); pos12(tthin,-900); pos13(tthin,-990); +pos14(tthin,-990); pos15(tthicker,0); pos16(tthicker,0); +if dodraw: +filldraw stroke z1e...{right}z2e...{down}z3e...{left}z4e..z81e...{right}z5e + ...{down}z6e...{left}z7e...{up}z8e...{right}z9e...{down}z10e + ...{left}z11e...{up}z12e...{right}z13e; %---z14e; +fi +%filldraw stroke z15e---z16e; +penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); + +elseif callchar = "p": + +charspec("p",1.4x_height#,x_height#,0); +y1=y6=h; y2=y5=bot y3l=bot y4l=0; +lft x1l=lft x2l=x3=u; +rt x5r=rt x6r=x4=w-u; +pos1(tthick,0); pos2(tthick,0); pos3(tthin,90); pos4(tthin,90); +pos5(tthick,0); pos6(tthick,0); +filldraw stroke z1e---z2e; +filldraw stroke z3e---z4e; +filldraw stroke z5e---z6e; +penlabels(1,2,4,6); + +elseif callchar = "n": + +charspec("n",1.5x_height#,x_height#,.5x_height#); +x12=u; x11=x1=x2=x3=3u; x4=rt x9r=w-u; +x7=x5=x6=.4[x1,x9]; x8=.6[x7,x9]; x13=.6[x12,x11]; x10=.5[x7,x8]; +y1=y6=y7=0; top y3r=top y4r=y2=y5=h; +y8=.55h; y9=.5y8; bot y13l=-d; y10=y11=-.3d; y12=.4[y10,y13]; +pos1(tthinner,0); pos2(tthinner,0); pos3(tmed,90); pos4(tmed,90); +pos5(tthick,0); pos6(tthick,0); pos7(tthin,180); pos8(tthin,90); +pos9(tthick,0); pos10(tthin,-90); pos11(tthin,-90); pos12(tthinner,0); +pos13(tthick,45); +filldraw stroke z1e--z2e; filldraw stroke z3e--z4e; filldraw stroke z5e--z6e; +%filldraw stroke z7e{up}...{right}z8e...{down}z9e...{left}z10e...{left}z11e...{down}z12e..z13e; +penlabels(1,2,4,5,6,8,9,10,11,12,13); +%endchar; + +elseif callchar = "r": + +charspec("?",1.125x_height#+2u#,x_height#,0); +lft x1l=lft x2l=x3=u; x4=w-u; x5=x6=.6w; +y1=y6=0; y2=y3=y4=y5=h; +pos1(tthinnest,0); pos2(tthinnest,0); pos3(tthin,90); pos4(tthin,90); +pos5(tthick,0); pos6(tthick,0); +filldraw stroke z1e---z2e; filldraw stroke z3e---z4e; filldraw stroke z5e---z6e; +penlabels(1,2,3,4,5,6); + +elseif callchar = "r2": + +charspec("?",.9x_height#+2u#,x_height#,0); +lft x1l=lft x2l=x3=u; x4=w-u; x5=x6=.6w; +y1=y6=0; y2=y3=y4=y5=h; +pos1(tthinnest,0); pos2(tthinnest,0); pos3(tthin,90); pos4(tthin,90); +pos5(tthick,0); pos6(tthick,0); +filldraw stroke z1e---z2e; filldraw stroke z3e---z4e; filldraw stroke z5e---z6e; +penlabels(1,2,3,4,5,6); + +elseif callchar="y": + +charspec("y",1.5x_height#,x_height#,0); +x1=x2=u; x8=x9=x10=w-u; x7=x4=x5=x6=.35[x1,x9]; x3=.35[x1,x5]; +y9=y5=y1=h; y2=.3h; y4=.5h; bot y7l=bot y8l=bot y3l=y6=y10=0; +pos1(.8tmed,0); pos2(.8tmed,0); pos3(tthin,90); pos4(tthinner,180); +pos5(tthick,0); pos6(tthick,0); pos7(tthin,90); pos8(tthin,90); +pos9(tthick,0); pos10(tthick,0); +filldraw stroke z1e--z2e{down}...{right}z3e...{up}z4e; +filldraw stroke z5e--z6e; filldraw stroke z7e--z8e; filldraw stroke z9e--z10e; +penlabels(1,2,3,4,5,6,7,8,9,10); +%endchar; + +elseif callchar="a": + +charspec("a",2x_height#,x_height#,desc_depth#); +%adjust_fit(0,0); +x3=.5[x9,x11]; y1=.8h; y5=y12=h; y2=y4=y6=.6h; y3=.2h; x1=.45[x9,x11]; +x4=x8=.4[x9,x11]; x2=.6[x9,x11]; x5=.6[x9,x11]; x6=.7[x9,x11]; x7=.8[x9,x11]; x11=x12=x13=w-u; +x9=u; x10=.15[x9,x11]; y8=y13=-d; y7=y3; y9=-.1d; y10=y11=0; +z20=z1; +pos1(hair,70); pos2(.8curve,0); pos3(hair,-90); pos4(hair,190); +pos5(hair,90); pos6(curve,0); pos7(tthickest,-20); pos8(tmed,-90); +pos9(hair,-180); pos10(hair,90); pos11(hair,90); pos12(.8curve,20); +pos13(.8curve,20);pos20(hair,135); +filldraw stroke z1e...z2e...z3e...z4e...z20e...z5e...{down}z7e...{left}z8e...{up}z9e...z10e---z11e; +filldraw stroke z12e---z13e; +penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13); + +elseif callchar="v": + +charspec("v",1.5x_height#,x_height#,0); +x1=x81=u; x6=.6[x1,x9]; x8=x9=x10=w-u; x7=.4[x5,x6]; +x5=.5[x1,x6]; x3=.4[x1,x6]; x2=x4=.5[x1,x3]; +y2=.5h; y1=y3=y81=.5y2; bot y4r=bot y7r=bot y8r=0; +top y5r=y10=h; y9=0; y6=.5h; +pos1(tthinner,180); pos2(tthin,90); pos3(tthick,0); pos4(tthin,-90); +pos81(tthin,-180); pos5(tmed,-270); pos6(tthick,-360); pos7(tthick,-450); +pos8(tthick,-450); pos9(tthick,0); pos10(tthick,0); +filldraw stroke z1e..z2e..z3e..z4e..z81e..z5e...{down}z6e...{left}z7e; +filldraw stroke z7e--z8e; filldraw stroke z9e--z10e; +penlabels(1,2,3,4,5,6,7,8,9,10); + + +elseif callchar="l": + +charspec("l",1.5x_height#,x_height#,0); +x81=u; x9=w-u; x6=x7=.55[x81,x9]; x8=x10=.5[x6,x9]; x1=.1[x81,x6]; +x5=.5[x81,x6]; x3=.4[x1,x6]; x2=x4=.5[x1,x3]; +y81=y2=.5h; y1=y3=.5y2; bot y4r=bot y8l=0; +top y5r=h; top y10l=h; y9=.5h; y6=.6h; y7=.4h; +pos1(tthinner,180); pos2(tthin,90); pos3(tmed,0); pos4(tthin,-90); +pos81(tthin,-180); pos5(tmed,-270); pos6(tthick,-360); pos7(tthick,-360); +pos8(tmed,-270); pos9(tthin,-180); pos10(tmed,-120); +%filldraw stroke z4e...z1e..z2e..z3e..z4e...{up}z81e..z5e...{down}z6e--z7e{down}...{right}z8e...{up}z9e..z10e; +penlabels(1,2,3,4,5,6,7,8,9,10); + +elseif callchar="m": + +charspec("m",1.6x_height#,x_height#,0); +lft x1l=lft x2l=x3=u; +rt x5r=w-u; x8=x7=.5w; +x6=.3[x8,x5]; x4=.8[x8,x5]; +y1=top y6r=h; +y2=bot y3r=bot y4r=y8=0; +y5=.5h; y7=.8h; +pos1(tthick,0); pos2(tthick,0); +pos3(tthin,-90); pos4(tthin,-90); +pos5(tthinner,0); pos6(tmed,90); +pos7(tthick,180); pos8(tthick,180); +filldraw stroke z1e---z2e; +filldraw stroke z3e---z4e...{up}z5e...{left}z6e...{down}z7e---z8e; +penlabels(1,2,4,5,6,7,8); + +elseif callchar="T": + +charspec("7",1.75x_height#,x_height#,0); +lft x1l=lft x2l=x3=u; x4=w-u; +y1=h; y2=bot y3l=bot y4l=0; +pos1(tthick,0); pos2(tthick,0); +pos3(tthin,90); pos4(tthin,90); +filldraw stroke z1e---z2e; +filldraw stroke z3e---z4e; +penlabels(1,2,4); + +elseif callchar="L": + +charspec("9",1.75x_height#,x_height#,0); +x81=x1=u; x6=x7=x8=x9=.55w; x11=x12=.8w; x10=w-u; +x3=x5=.5[x1,x6]; x2=x4=.5[x1,x3]; +bot y4r=y6=y7=y11=0; top y5r=y8=top y9r=top y10r=y12=h; +y1=y81=y3=.5y2; y2=.6h; +pos1(tthinner,180); pos2(tthin,90); pos3(tmed,0); +pos4(tthin,-90); pos81(tthinner,-180); pos5(tthick,-270); +pos6(tthin,-360); pos7(tthin,0); pos8(tthin,0); +pos9(tthin,90); pos10(tthin,90); pos11(tthick,0); pos12(tthick,0); +if dodraw: +filldraw stroke z1e...{right}z2e...{down}z3e...{left}z4e..z81e...{right}z5e...{down}z6e; +filldraw stroke z7e---z8e; filldraw stroke z9e---z10e; +filldraw stroke z11e---z12e; +fi +penlabels(1,2,3,4,5,6,8,10,11,12); + +elseif callchar="N": + +charspec("N",2x_height#,x_height#,0); +x81=u; x1=.05[x81,x6]; x6=.6w; x8=.6[x81,x6]; x7=.5[x8,x6]; +x5=.5[x81,x6]; x3=.5[x1,x8]; x4=x2=.5[x1,x3]; +x13=rt x6r; x14=w-u; x15=x16=.5[x13,x14]; +top y5r=top y13r=y16=top y14r=h; +bot y4r=bot y7r=y15=0; +y8=y6=.5h; y2=bar_height; y81=y2; +y1=y3=.5y2; +pos1(tthinner,180); pos2(tthin,90); pos3(tmed,0); pos4(tthin,-90); +pos81(tthinner,-180); pos5(tmed,-270); pos6(tthicker,-360); +pos7(tmed,-450); pos8(tthin,-540); +pos13(tthin,-630); +pos14(tthin,-630); pos15(tthicker,0); pos16(tthicker,0); +if dodraw: +filldraw stroke z4e...{up}z1e...{right}z2e...{down}z3e...{left}z4e...{up}z81e...{right}z5e + ...{down}z6e...{left}z7e...{up}z8e...{right}z13e; %---z14e; +%filldraw stroke z15e---z16e; +fi +penlabels(1,2,3,4,5,6,7,8,13,14,15,16); + +elseif callchar="R": + +charspec("R",1.3x_height#,x_height#,desc_depth#); +x1=x11=u; x7=w-u; x3=x5=.4[x1,x7]; x2=.5[x1,x3]; x6=.5[x4,x7]; x8=.9[x1,x7]; +rt x12r=.5u; x9=x10=.05[x1,x7]; x4r=x3l; +top y2l=top y6l=h; y8=y1=y5=.05h; y9=-.4d; y10=-.8d; y12=-.6d; +y11=y3=y4=.7h; y7=.4h; +pos1(tthin,0); pos11(tthin,0); pos2(tmed,-90); pos3(tthick,-180); +pos4(tthinnest,0); pos5(tthick,-180); pos6(tthin,-90); pos7(tthick,-180); +pos8(tthin,-245); pos9(tthin,-245); pos12(tthin,-180); pos10(tthin,-135); +filldraw stroke z1e--z11e{up}...{right}z2e...{down}z3e--z5e; +%filldraw stroke z4e{up}...{right}z6e...{down}z7e..z8e..z9e...{down}z12e..z10e; +penlabels(1,2,3,5,6,7,8,9,10,11,12); + +elseif callchar="g": + +charspec("2",1.5x_height#,x_height#,0); +lft x1l=lft x2l=x3=u; x11=x12=x13=w-u; +x8=.7[x1,x12]; x5=x6=x7=x10=.4[x1,x8]; x9=.5[x1,x12]; % x7=x6r; will line up +x4=.8[x1,x13]; x77=.6[x7,x8]; +y1=bot y10l=y9=bot y11l=y12=0; +y2=top y3r=top y4r=y5=y13=h; +y6=.35h; y8=.4h; y77=.65h; +pos1(tthinnest,0); pos2(tthinnest,0); +pos3(tthin,90); pos4(tthin,90); +pos5(tthick,0); +% pos6(tthick,45); +x6l+.5tthick=x6=x6r-.5tthick; y6l+.5tthick=y6=y6r-.5tthick; +y7l=y6r; +pos77(tthin,90); +pos7(tthinner,90); pos8(tthicker,45); pos9(tthick,0); +pos10(tthin,90); pos11(tthin,90); +pos12(tthick,0); pos13(tthick,0); +filldraw stroke z1e---z2e; +filldraw stroke z3e---z4e; +filldraw stroke z5e---z6e; +filldraw stroke z7e..z77e{right}...z8e{down}...z9e; +filldraw stroke z10e---z11e; +filldraw stroke z12e---z13e; +penlabels(1,2,4,5,6,8,9,10,11,13); + + +elseif callchar = "e": + +charspec(6,1.6x_height#,x_height#,0); +y6=y7=y8=h; y9=bot y4r=0; y2=.6h; y1=.3h; y3=.3h; y5=y2; %y5=.85h; +x5=u; x7=w-u; x8=x9=x7-2u; x6=x3=x1+3u; x1=x5+hair; x2=x4=x1+1.5u; +z20=z1; +pos1(tthinnest,180); pos2(tmed,90); pos3(tthick,0); pos4(tmed,-90); pos20(tthin,-160); +pos5(tthinner,-180); pos6(tthin,-270); pos7(tthin,-270); +pos8(tthick,0); pos9(tthick,0); +filldraw stroke z1e..z2e..z3e..z4e..z20e...{right}z6e---z7e; +filldraw stroke z8e---z9e; +penlabels(1,2,3,4,5,6,7,8,9); + +elseif callchar = "u": + +charspec(4,2x_height#,x_height#,0); +x6=.55w; x4=x9=.1w; x1=x8=x10=.15w; x3=.2w; x2=.3w; x5=x7=.4w; x11=.9w; +y10=y11=0; y5=h; y1=.85h; y2=y4=y6=.65h; y3=.45h; +y7=y8=.25h; y9=.125h; +z20=z1; +pos1(tmed,45); pos2(tmed,0); pos3(tthinner,-90); pos4(tthinnest,-180); +pos20(tthinnest,-225); pos5(tthinner,-270); pos6(tthick,-360); pos7(tmed,-430); +pos8(tthin,-450); pos9(tthinnest,-360); pos10(tthin,-290); +pos11(tthin,-290); +filldraw stroke z1e..z2e..z3e..z4e..z20e...{right}z5e; +filldraw stroke z5e{right}...{down}z6e...{left}z7e; +filldraw stroke z7e{left}...{left}z8e...{down}z9e; +filldraw stroke z9e{down}...{right}z10e---z11e; +penlabels(1,2,3,4,5,6,7,8,9,10,11); + +elseif callchar = "S": + +charspec("S",2.2x_height#,asc_height#,desc_depth#); +x1=x81=u; x6=.45[x1,x9]; x8=x9=x10=w-u; x7=.4[x5,x6]; +x5=.5[x1,x6]; x3=.4[x1,x6]; x2=x4=.5[x1,x3]; +y2=.5x_height; y1=y3=y81=.5y2; bot y4r=bot y7r=bot y8r=0; +top y5r=y10=x_height; y9=0; y6=y2; +pos1(tthinner,180); pos2(tthin,90); pos3(tthick,0); pos4(tthin,-90); +pos81(tthin,-180); pos5(tmed,-270); pos6(tthick,-360); pos7(tmed,-450); +pos8(tthick,-450); pos9(tthick,0); pos10(tthick,0); +filldraw stroke z1e..z2e..z3e..z4e..z81e..z5e...{down}z6e...{left}z7e; +x40=w-3.5u; y40=y7; pos40(tmed,-450); y41=.5bar_height; x41=w-u; +pos41(tthick,-360); x43=.5[x7,x40]; y43=h-y41; z42=.5[z41,z43]; +pos42(.5(tthick+tthin),-315); pos43(tthin,-360); +x44=.5[x43,x45]; top y44l=h; pos44(tmed,-450); x45=x43+4u; y45=y43; +pos45(tthin,-540); x46=.5[x7,x43]; bot y46l=-d; pos46(tthinner,-585); +filldraw stroke z7e--z40e{right}...{up}z41e...{z43-z41}z42e...{up}z43e + ...{right}z44e...z45e--z46e; +penlabels(1,2,3,4,5,6,7,40,41,42,43,45,46); + +elseif callchar = "s": + +charspec("s",2.4x_height#,x_height#,0); +x6=u; y6=.5h; x8=x9=.43w; x12=x13=.7w; x15=w-u; +x7=x3=x1=.5[x6,x9]; x2=x1-1.5u; x4=x1+1.5u; y2=y4=.5[y1,y3]; +top y3l=bar_height; bot y1l=0; z5=z1; top y7l=top y11l=top y16r=h; +y8=.65h; y9=0; bot y14r=0; x11=.5[x9,x14]; x14=.4[x13,x15]; x16=.65[x13,x15]; +y15=y6; y12=y8; y13=1.5u; z10=z8; +pos1(tthin,90); pos2(tthin,0); pos3(tthin,-90); pos4(tmed,-180); +pos5(tthin,-270); pos6(tthin,-360); pos7(1.2tthin,-450); pos8(tmed,-540); +pos9(tmed,-540); pos10(tthin,0); pos11(tthin,-90); pos12(tmed,-180); +pos13(tmed,-180); pos14(.8tmed,-90); pos15(tthin,0); pos16(tthinner,45); +filldraw stroke z1e...{up}z2e...{right}z3e...{down}z4e...{left}z5e + ...{up}z6e...{right}z7e...{down}z8e--z9e; +filldraw stroke z10e{up}...{right}z11e...{down}z12e--z13e...{right}z14e + ...{up}z15e...{left}z16e; +penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); + +elseif callchar = "j": +%cmchar "grantha j"; +charspec("j",1.75x_height#,x_height#,.8x_height#); +top y7r=y10l=h; y4=y8=y9=.2h; bot y15r=bot y19l=-d; y12=.9bar_height; +y21=.25h; y13=-.2d; y14=-.6d; y16=-.8d; y17=y18=-.3d; y20=-.2d; +y1=y3=.4h; y2=.7h; y11=.75h; y85=0; +x14r=x1r=u; x11=x12l=w-u; x8=x9=x17=x18=.55[x1,x11]; x85=x8; +x7=.6[x1,x8]; x10=.5[x9,x11]; x3=.6[x1,x8]; x2=x4=.5[x1,x3]; +x13=x2; x15=x7-.7u; x16=x17; x19=.5[x18,x11]; x20=.95x11; x21=.9x11; +x77=x8; y77=.6h; z99=z77; +pos77(tthick,-360); pos99(tthick,0); +pos1(tthinner,180); pos2(tthin,90); pos3(tmed,0); pos4(tthin,-90); +z55=z1; pos55(tthinner,-180); +pos7(tthick,-270); pos8(tmed,-405); +pos9(tmed,-45); pos10(tthin,-90); pos11(tthick,-180); pos12(tthick,-200); +pos21(tthin,-240); pos13(tthinner,-240); pos14(tthin,-180); +pos15(tthick,-90); pos16(tthick,-45); pos17(tthick,-45); +pos18(tthick,-45); pos19(tthin,-270); pos20(tmed,225); +pos85(tthin,-270); +x65=x19; y65=y17; pos65(tthin,-90); x66=x12; y66=.5[y65,y19]; pos66(tmed,-180); +z67=.5[z15,z65]; pos67(tthin,-315); +filldraw stroke z1e..z2e{right}..z3e{down}..z4e{left}..z55e...{right}z7e...{down}z77e---z8e; +filldraw stroke z9e---z99e{up}...z10e{right}...{down}z12e...{left}z85e{left}..z14e{down}...z15e{right} + ...{right}z65e...{down}z66e...{left}z19e...z67e; +penlabels(1,2,3,4,55,7,8,9,10,11,12,21,13,14,15,65,66,19,67); + +elseif callchar="h": + +charspec("h",3x_height#,x_height#,desc_depth#); +x1=x81=u; x6=.6[x1,x8]; x8=1.5x_height-u; x7=.4[x5,x6]; +x5=.5[x1,x6]; x3=.4[x1,x6]; x2=x4=.5[x1,x3]; +y2=.5h; y1=y3=y81=.5y2; bot y4r=bot y7r=bot y8r=0; +top y5r=h; y6=.5h; +pos1(tthinner,180); pos2(tthin,90); pos3(tthick,0); pos4(tthin,-90); +pos81(tthin,-180); pos5(tmed,-270); pos6(tthick,-360); pos7(tthick,-450); +pos8(tthick,-450); +filldraw stroke z1e..z2e..z3e..z4e..z81e..z5e...{down}z6e...{left}z7e; +filldraw stroke z7e--z8e; + +x101=x111=x8; x107=w-2u; x103=x105=.4[x101,x107]; x102=.5[x101,x103]; +x106=.5[x104,x107]; x108=.9[x101,x107]; +rt x112r=u; x109=x110=x112+.75u; x104r=x103l; +top y102l=top y106l=h; y108=y101=y105=0; y109=-.4d; y110=-.8d; y112=-.6d; +y111=y103=y104=.7h; y107=.4h; y131=y109+.2u; x131=.3[x108,x109]; pos131(tthinner,-270); +pos101(tthin,0); pos111(tthin,0); pos102(tmed,-90); pos103(tthick,-180); +pos104(tthinnest,0); pos105(tthick,-180); pos106(tthin,-90); pos107(tthick,-180); +pos108(tthin,-245); pos109(tthin,-245); pos112(tthin,-180); pos110(tthin,-135); +filldraw stroke z101e--z111e{up}...{right}z102e...{down}z103e--z105e; +filldraw stroke z104e{up}...{right}z106e...{down}z107e..z108e...{left}z131e...z109e...{down}z112e..z110e; +penlabels(101,102,103,104,105,106,107,108,109,110); + + + + +fi + +enddef; + +def aipoints = +x209=x204=-x_height+u; x201=x203=x205=x204+1.5u; x202=x201+1.5u; x207=0; +y209=.9bar_height; y207=asc_height-y209; +y208=.5[y209,y207]; x206=x208=x210=-.5x_height+.5u; +y201=y205=y206-.5u; y204=y202=y201-1.5u; y203=y202-1.5u; +if goleft: +top y206l=asc_height; bot y210r=0; +pos201(tthin,-90); pos202(tmed,-180); pos203(tthin,-270); +pos204(tthin,-360); pos205(tthin,-450); pos206(tthin,-450); +pos207(tthick,-540); pos208(tthin,-585); pos209(tthin,-540); +pos210(tthin,-450); +else: +top y206r=asc_height; bot y210l=0; +pos201(tthin,90); pos202(tmed,0); pos203(tthin,-90); +pos204(tthin,-180); pos205(tthin,-270); pos206(tthin,-270); +pos207(tthick,-360); pos208(tthin,-405); pos209(tthin,-360); +pos210(tthin,-270); +fi +enddef; diff --git a/language/tamil/wntamil/tamilmax.tex b/language/tamil/wntamil/tamilmax.tex new file mode 100644 index 0000000000..4d1ca5039f --- /dev/null +++ b/language/tamil/wntamil/tamilmax.tex @@ -0,0 +1,369 @@ +\font\tmlfnt=wntml10 +\catcode`^^A=0 +\def\starttamil{\tmlfnt} +\def\endtamil{} +\def\thyph{\discretionary{}{}{}} +\def\btam{\starttamil} +\def\etam{\endtamil} +\def\viram{\accent241} +\def\C{\char} +\def\zaa{\C97} +\def\ze{\C22} +\def\zee{\C23} +\def\zai{\C17} +\def\zo#1{\ze#1\zaa} +\def\zoo#1{\zee#1\zaa} +\def\zau#1{\ze#1\La} +\def\a{\C0} +\def\aa{\C1} +\def\i{\C2} +\def\ii{\C3} +\def\u{\C4} +\def\uu{\C5} +\def\e{\C6} +\def\ai{\C7} +\def\au{\o\La} +\def\k{\viram\C8\thyph} +\def\ka{\C8} +\def\kaa{\C8\zaa} +\def\o{\C9} +\def\ki{\C10} +\def\kii{\C11} +\def\ku{\C12} +\def\kuu{\C13} +\def\ke{\ze\C8} +\def\kee{\zee\C8} +\def\kai{\zai\C8} +\def\ko{\zo{\C8}} +\def\koo{\zoo{\C8}} +\def\kau{\zau{\C8}} +\def\oo{\C14} +\def\ee{\C15} +\def\ng{\viram\C16\thyph} +\def\nga{\C16} +\def\ngaa{\C16\zaa} +\def\ngi{\C18} +\def\ngii{\C19} +\def\ngu{\C20} +\def\nguu{\C21} +\def\nge{\ze\C16} +\def\ngee{\zee\C16} +\def\ngai{\zai\C16} +\def\ngo{\zo{\C16}} +\def\ngoo{\zoo{\C16}} +\def\ngau{\zau{\C16}} +% +\def\c{\viram\C24\thyph} +\def\ca{\C24} +\def\caa{\C24\zaa} +\def\ci{\C26} +\def\cii{\C27} +\def\cu{\C28} +\def\cuu{\C29} +\def\ce{\ze\C24} +\def\cee{\zee\C24} +\def\cai{\zai\C24} +\def\co{\zo{\C24}} +\def\coo{\zoo{\C24}} +\def\cau{\zau{\C24}} +% +\def\NY{\viram\C32\thyph} +\def\NYa{\C32} +\def\NYaa{\C32\zaa} +\def\NYi{\C34} +\def\NYii{\C35} +\def\NYu{\C36} +\def\NYuu{\C37} +\def\NYe{\ze\C32} +\def\NYee{\zee\C32} +\def\NYai{\zai\C32} +\def\NYo{\zo{\C32}} +\def\NYoo{\zoo{\C32}} +\def\NYau{\zau{\C32}} +% +\def\T{\viram\C40\thyph} +\def\Ta{\C40} +\def\Taa{\C40\zaa} +\def\Ti{\C42} +\def\Tii{\C43} +\def\Tu{\C44} +\def\Tuu{\C45} +\def\Te{\ze\C40} +\def\Tee{\zee\C40} +\def\Tai{\zai\C40} +\def\To{\zo{\C40}} +\def\Too{\zoo{\C40}} +\def\Tau{\zau{\C40}} +% +\def\NN{\viram\C48\thyph} +\def\NNa{\C48} +\def\NNaa{\C49} +\def\NNi{\C50} +\def\NNii{\C51} +\def\NNu{\C52} +\def\NNuu{\C53} +\def\NNe{\ze\C48} +\def\NNee{\zee\C48} +\def\NNai{\C54} +\def\NNo{\ze{\C49}} +\def\NNoo{\zee{\C49}} +\def\NNau{\zau{\C48}} +% +\def\t{\viram\C56\thyph} +\def\ta{\C56} +\def\taa{\C56\zaa} +\def\ti{\C58} +\def\tii{\C59} +\def\tu{\C60} +\def\tuu{\C61} +\def\te{\ze\C56} +\def\tee{\zee\C56} +\def\tai{\zai\C56} +\def\to{\zo{\C56}} +\def\too{\zoo{\C56}} +\def\tau{\zau{\C56}} +% +\def\n{\viram\C64\thyph} +\def\na{\C64} +\def\naa{\C64\zaa} +\def\ni{\C66} +\def\nii{\C67} +\def\nu{\C68} +\def\nuu{\C69} +\def\ne{\ze\C64} +\def\nee{\zee\C64} +\def\nai{\zai\C64} +\def\no{\zo{\C64}} +\def\noo{\zoo{\C64}} +\def\nau{\zau{\C64}} +% +\def\p{\viram\C72\thyph} +\def\pa{\C72} +\def\paa{\C72\zaa} +\def\pi{\C74} +\def\pii{\C75} +\def\pu{\C76} +\def\puu{\C77} +\def\pe{\ze\C72} +\def\pee{\zee\C72} +\def\pai{\zai\C72} +\def\po{\zo{\C72}} +\def\poo{\zoo{\C72}} +\def\pau{\zau{\C72}} +% +\def\m{\viram\C80\thyph} +\def\ma{\C80} +\def\maa{\C80\zaa} +\def\mi{\C82} +\def\mii{\C83} +\def\mu{\C84} +\def\muu{\C85} +\def\me{\ze\C80} +\def\mee{\zee\C80} +\def\mai{\zai\C80} +\def\mo{\zo{\C80}} +\def\moo{\zoo{\C80}} +\def\mau{\zau{\C80}} +% +\def\y{\viram\C88\thyph} +\def\ya{\C88} +\def\yaa{\C88\zaa} +\def\yi{\C90} +\def\yii{\C91} +\def\yu{\C92} +\def\yuu{\C93} +\def\ye{\ze\C88} +\def\yee{\zee\C88} +\def\yai{\zai\C88} +\def\yo{\zo{\C88}} +\def\yoo{\zoo{\C88}} +\def\yau{\zau{\C88}} +% +\def\r{\viram\C96\thyph} +\def\ra{\C96} +\def\raa{\C96\zaa} +\def\ri{\C98} +\def\rii{\C99} +\def\ru{\C100} +\def\ruu{\C101} +\def\re{\ze\C96} +\def\ree{\zee\C96} +\def\rai{\zai\C96} +\def\ro{\zo{\C96}} +\def\roo{\zoo{\C96}} +\def\rau{\zau{\C96}} +% +\def\l{\viram\C104\thyph} +\def\la{\C104} +\def\laa{\C104\zaa} +\def\li{\C106} +\def\lii{\C107} +\def\lu{\C108} +\def\luu{\C109} +\def\le{\ze\C104} +\def\lee{\zee\C104} +\def\lai{\C110} +\def\lo{\zo{\C104}} +\def\loo{\zoo{\C104}} +\def\lau{\zau{\C104}} +% +\def\v{\viram\C112\thyph} +\def\va{\C112} +\def\vaa{\C112\zaa} +\def\vi{\C114} +\def\vii{\C115} +\def\vu{\C116} +\def\vuu{\C117} +\def\ve{\ze\C112} +\def\vee{\zee\C112} +\def\vai{\zai\C112} +\def\vo{\zo{\C112}} +\def\voo{\zoo{\C112}} +\def\vau{\zau{\C112}} +% +\def\Z{\viram\C120\thyph} +\def\Za{\C120} +\def\Zaa{\C120\zaa} +\def\Zi{\C122} +\def\Zii{\C123} +\def\Zu{\C124} +\def\Zuu{\C125} +\def\Ze{\ze\C120} +\def\Zee{\zee\C120} +\def\Zai{\zai\C120} +\def\Zo{\zo{\C120}} +\def\Zoo{\zoo{\C120}} +\def\Zau{\zau{\C120}} +% +\def\L{\viram\C128\thyph} +\def\La{\C128} +\def\Laa{\C128\zaa} +\def\Li{\C130} +\def\Lii{\C131} +\def\Lu{\C132} +\def\Luu{\C133} +\def\Le{\ze\C128} +\def\Lee{\zee\C128} +\def\Lai{\C134} +\def\Lo{\zo{\C128}} +\def\Loo{\zoo{\C128}} +\def\Lau{\zau{\C128}} +% +\def\R{\viram\C136\thyph} +\def\Ra{\C136} +\def\Raa{\C137} +\def\Ri{\C138} +\def\Rii{\C139} +\def\Ru{\C140} +\def\Ruu{\C141} +\def\Re{\ze\C136} +\def\Ree{\zee\C136} +\def\Rai{\zai\C136} +\def\Ro{\ze{\C137}} +\def\Roo{\zee{\C137}} +\def\Rau{\zau{\C136}} +% +\def\N{\viram\C144\thyph} +\def\Na{\C144} +\def\Naa{\C145} +\def\Ni{\C146} +\def\Nii{\C147} +\def\Nu{\C148} +\def\Nuu{\C149} +\def\Ne{\ze\C144} +\def\Nee{\zee\C144} +\def\Nai{\C150} +\def\No{\ze{\C145}} +\def\Noo{\zee{\C145}} +\def\Nau{\zau{\C144}} +% +\def\S{\viram\C176\thyph} +\def\Sa{\C176} +\def\Saa{\C176\zaa} +\def\Si{\C178} +\def\Sii{\C179} +\def\Su{\C176\C242} +\def\Suu{\C176\C243} +\def\Se{\ze\C176} +\def\See{\zee\C176} +\def\Sai{\zai\C176} +\def\So{\zo{\C176}} +\def\Soo{\zoo{\C176}} +\def\Sau{\zau{\C176}} +% +\def\s{\viram\C184\thyph} +\def\sa{\C184} +\def\saa{\C184\zaa} +\def\si{\C186} +\def\sii{\C187} +\def\su{\C184\C242} +\def\suu{\C184\C243} +\def\se{\ze\C184} +\def\see{\zee\C184} +\def\sai{\zai\C184} +\def\so{\zo{\C184}} +\def\soo{\zoo{\C184}} +\def\sau{\zau{\C184}} +% +\def\j{\viram\C192\thyph} +\def\ja{\C192} +\def\jaa{\C192\zaa} +\def\ji{\C194} +\def\jii{\C195} +\def\ju{\C192\C242} +\def\juu{\C192\C243} +\def\je{\ze\C192} +\def\jee{\zee\C192} +\def\jai{\zai\C192} +\def\jo{\zo{\C192}} +\def\joo{\zoo{\C192}} +\def\jau{\zau{\C192}} +% +\def\h{\viram\C200\thyph} +\def\ha{\C200} +\def\haa{\C200\zaa} +\def\hi{\C202} +\def\hii{\C203} +\def\hu{\C200\C242} +\def\huu{\C200\C243} +\def\he{\ze\C200} +\def\hee{\zee\C200} +\def\hai{\zai\C200} +\def\ho{\zo{\C200}} +\def\hoo{\zoo{\C200}} +\def\hau{\zau{\C200}} +% +\def\x{\viram\C208\thyph} +\def\xa{\C208} +\def\xaa{\C208\zaa} +\def\xi{\C210} +\def\xii{\C211} +\def\xu{\C208\C242} +\def\xuu{\C208\C243} +\def\xe{\ze\C208} +\def\xee{\zee\C208} +\def\xai{\zai\C208} +\def\xo{\zo{\C208}} +\def\xoo{\zoo{\C208}} +\def\xau{\zau{\C208}} +% +\newbox\wnbox +\newdimen\wndimen +\def\wnalign#1{\leavevmode\vtop to0pt{\baselineskip0pt\lineskip.25ex% + \ialign{##\crcr#1\crcr}}} % put characters over each other +\def\pstack#1#2{\leavevmode\setbox\wnbox=\hbox{#2}{\wnalign{#1\crcr\hidewidth\wndimen=\ht\wnbox\advance\wndimen by .25ex\lower\wndimen\hbox{\unhbox\wnbox}\hidewidth}}} +% +\def\ndot{n} +\def\nndot{\d n} +\def\skts{\'s} +\def\rdot{\d r} +\def\rdotdot{\pstack{r}{\char127}} +\def\tdot{\d t} +\def\dotd{\d d} +\def\dotl{\d l} +\def\paln{\~n} +% +% temporary place holders +\def\sr{\relax} +\def\st{\relax} +% end of file tamilmax diff --git a/language/tamil/wntamil/tmilize.c b/language/tamil/wntamil/tmilize.c new file mode 100644 index 0000000000..f717699a17 --- /dev/null +++ b/language/tamil/wntamil/tmilize.c @@ -0,0 +1,324 @@ +/* Convert transliterated Tamil text to codes known to the Tamilmax.tex */ +/* set of macros using the wntml fonts */ + +#include +#include + + +/* globally accessible variables */ + +int tamilflag,t_errors,true,false,errorcount,transflag; +char switcher,tdelim; +char tspace[2]; +void changestate(); +FILE *input,*output; +char filename[128]; + + + +/* functions */ + +/* void bracket_err() +{ + printf("\nCharacter '}' read while scanning Tamil; need to edit file.\n"); + printf("Examine end of the output file to find location of problem."); + fclose(input); + fclose(output); + abort(); +} */ + +void haccbox() +{ + puts("Tamilize: Tamil to TeX converter v:0.97 of 4/24/90"); + puts("Humanities And Arts Computing Center, DR-10"); + puts("University of Washington"); + puts("Seattle, Washington, 98195 USA"); + puts("phone (206)-543-4218"); + puts("ridgeway@blake.u.washington.edu"); + puts("Copyright 1990 Humanities and Arts Computing Center"); + puts("You are welcome to use this work-in-progress, but please do not"); + puts("redistribute: rather, refer other interested parties to us."); + puts("Since this is a work in progress, we do not want uncontrolled"); + puts("proliferation of pre-release versions."); + return; +} + +FILE *getopen(char *access) +{ + int temp; + FILE *handle; + gets(filename); + handle=fopen(filename,access); + if (handle == (FILE *) NULL) { + printf("Can't open file %s",filename); + errorcount++; + if (errorcount > 9) { + printf("\n\n\n\n\nToo many errors!\n"); + abort(); + } + } + return handle; +} +FILE *get_file(char *access,char *prompt) +{ + puts(prompt); + return getopen(access); +} + +int isvowel(char thischar) +{ + switch (thischar) { + case 'a' : + case 'e' : + case 'i' : + case 'o' : + case 'u' : return true; + default : return false; + } +} + +void stringout(char *string) +{ + fputs(string,output); +} + +void charout(char thischar) +{ + putc(thischar,output); +} + +void romanout(char thischar) +{ + stringout("{\\roman "); + charout(thischar); + charout('}'); +} + +void transcribe_err(char thischar) +{ + printf("Character %c encountered in Tamil environment.\n",thischar); + romanout(thischar); +} + +void pushback(char thischar) +{ + ungetc(thischar,input); +} + +void processtamil() +{ + char ch; + int newsyl; + newsyl=true; + for (tamilflag=true; tamilflag==true; ) { + ch = getc(input); + if (ch == EOF) abort(); + if (ch == switcher) changestate(); + else if (isspace(ch)) { + stringout(tspace); + charout(ch); + for ( ch=getc(input); isspace(ch); ch=getc(input)) charout(ch); + pushback(ch); + newsyl=true; + } + else if (ispunct(ch) ) { + if (ch == 125) printf("\nCharacter } encountered while scanning tamil -- probable error.\n"); + romanout(ch); + newsyl=true; + } + else { + switch (ch) { + case 'a': + case 'e': + case 'i': + case 'o': + case 'u': if (newsyl==true) { + charout(tdelim); + newsyl=false; + } + charout(ch); + break; + case 'c': + case 't': + case 'p': + case 'm': + case 'y': + case 'r': + case 'l': + case 'v': + case 's': + case 'j': + case 'x': + case 'h': charout(tdelim); + charout(ch); + newsyl=false; + break; + case 'k': charout(tdelim); + ch=getc(input); + if (ch=='4') charout('X'); + else { + charout('k'); + pushback(ch); + } + newsyl=false; + break; + case '2': charout(tdelim); + charout('N'); + newsyl=false; + break; + case '3': charout(tdelim); + stringout("NN"); + newsyl=false; + break; + case '4': charout(tdelim); + charout('S'); + newsyl=false; + break; + case '5': charout(tdelim); + stringout("NY"); + newsyl=false; + break; + case '6': charout(tdelim); + charout('R'); + newsyl=false; + break; + case '7': charout(tdelim); + charout('Z'); + newsyl=false; + break; + case '8': charout(tdelim); + charout('T'); + newsyl=false; + break; + case '9': charout(tdelim); + charout('L'); + newsyl=false; + break; + case 'n': charout(tdelim); + ch=getc(input); + if (ch=='g') stringout("ng"); + else { + charout('n'); + pushback(ch); + } + newsyl=false; + break; + default : transcribe_err(ch); + newsyl=true; + } /* endcase */ + } /* endif */ + } /* endfor*/ +} + +void starttamil() +{ + stringout("{\\btam "); /* stringout("{\\starttamil\%\n"); */ + processtamil(); +} + +void endtamil() +{ + stringout("}\\etam{}"); /* stringout("}\\endtamil\%\n"); */ + tamilflag=false; +} + +void changestate() +{ + if (tamilflag==true) endtamil(); + else starttamil(); +} + +main(int argc, char *argv[]) +{ + int ch,err,notdone,vowflag,initflag; + errorcount=0; + switcher='~'; + true=1; + false=0; + tamilflag=false; + tdelim=92; /* if we are in ASCII, that is a backslash */ + /* if we aren't in ASCII, we just bought the farm probably */ + tspace[0]=tdelim; + tspace[1]=' '; + haccbox(); + vowflag=0; + if (argc > 1) input = fopen(argv[1],"rb"); + if (input == (FILE *) NULL) { + /* prompt for and open input file */ + for ( ; input == (FILE *) NULL ; input=get_file("rb","Enter name of input file: ")) ; + } + /* we are making these binary, as we have no guarantee what kind */ + /* of character may be in the transcription: we don't care about */ + /* ends of lines, as we are reading character by character */ + if (argc > 2) output = fopen(argv[2],"wb"); + if (output == (FILE *) NULL) { + for ( ; output == (FILE *) NULL ; output=get_file("wb","Enter name of output file: ")) ; + /* prompt for and open output file */ + } + while ((ch = getc(input)) != EOF) { + if (ch == switcher) changestate(); + else { + if (ch == '|') { + vowflag=1; + notdone=1; + initflag=2; + while (notdone) { + ch=getc(input); + if (isalnum(ch)) { + initflag--; + if (vowflag==0) { + if (! isvowel(ch)) stringout("\\-"); + } + if (isvowel(ch)) vowflag=1; + else vowflag=0; + } + else { + vowflag=1; + initflag=2; + } + if (ch==EOF) notdone=0; + else { + switch(ch) { + case '2': stringout("\\ndot{}"); + break; + case '3': stringout("\\nndot{}"); + break; + case '4': stringout("\\skts{}"); + break; + case '5': stringout("\\paln{}"); + break; + case '6': stringout("\\rdot{}"); + break; + case '7': stringout("\\rdotdot{}"); + break; + case 'T': stringout("\\tdot{}"); + break; + case 'D': stringout("\\dotd{}"); + break; + case '8': + if ( initflag > 0 ) stringout("\\tdot{}"); + else { + err=getc(input); + if (err == '8') stringout("\\tdot{}\\tdot{}"); + else { + stringout("\\dotd{}"); + pushback(err); + } + } + break; + case '9': stringout("\\dotl{}"); + break; + case '|': notdone=0; + break; + default: putc(ch,output); + } /* endcase */ + } /* end else */ + } /* endwhile */ + } /* endif */ + else putc(ch,output); + } /* endelse */ + } /* endwhile */ + fclose(input); + fclose(output); + puts("Tamilize is done."); +} diff --git a/language/tamil/wntamil/wntamil.mf b/language/tamil/wntamil/wntamil.mf new file mode 100644 index 0000000000..48fb61b9c3 --- /dev/null +++ b/language/tamil/wntamil/wntamil.mf @@ -0,0 +1,16 @@ +% This is WNTAMIL as of July 21, 1988 +% Washington Tamil is designed for use with +% the Computer Modern Roman family of fonts (by D. E. Knuth, 1979--1985) + + +mode_setup; font_setup; + +input tamil + + font_slant slant; + font_x_height x_height#; + font_normal_space 9u#+2letter_fit#; + font_normal_stretch 3u#; font_normal_shrink 2u#; + font_quad 18u#+4letter_fit#; + font_extra_space 2u#; +bye. diff --git a/language/tamil/wntamil/wntml10.mf b/language/tamil/wntamil/wntml10.mf new file mode 100644 index 0000000000..dfa6ee08e9 --- /dev/null +++ b/language/tamil/wntamil/wntml10.mf @@ -0,0 +1,76 @@ +% This is WNTML10.MF (Washington Tamil 10pt) as of July 21, 1988. +% This is based on CMR10.MF in text format, as of May 5, 1986. +if unknown cmbase: input cmbase fi + +font_identifier:="WNTML"; font_size 10pt#; + +u#:=20/36pt#; % unit width +width_adj#:=0pt#; % width adjustment for certain characters +serif_fit#:=0pt#; % extra sidebar near lowercase serifs +cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs +letter_fit#:=0pt#; % extra space added to all sidebars + +body_height#:=270/36pt#; % height of tallest characters +asc_height#:=250/36pt#; % height of lowercase ascenders +cap_height#:=246/36pt#; % height of caps +fig_height#:=232/36pt#; % height of numerals +x_height#:=155/36pt#; % height of lowercase without ascenders +math_axis#:=90/36pt#; % axis of symmetry for math symbols +bar_height#:=87/36pt#; % height of crossbar in lowercase e +comma_depth#:=70/36pt#; % depth of comma below baseline +desc_depth#:=70/36pt#; % depth of lowercase descenders + +crisp#:=0pt#; % diameter of serif corners +tiny#:=8/36pt#; % diameter of rounded corners +fine#:=7/36pt#; % diameter of sharply rounded corners +thin_join#:=7/36pt#; % width of extrafine details +hair#:=9/36pt#; % lowercase hairline breadth +stem#:=25/36pt#; % lowercase stem breadth +curve#:=30/36pt#; % lowercase curve breadth +ess#:=27/36pt#; % breadth in middle of lowercase s +flare#:=33/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=38/36pt#; % diameter of dots +cap_hair#:=11/36pt#; % uppercase hairline breadth +cap_stem#:=32/36pt#; % uppercase stem breadth +cap_curve#:=37/36pt#; % uppercase curve breadth +cap_ess#:=35/36pt#; % breadth in middle of uppercase s +rule_thickness#:=.4pt#; % thickness of lines in math symbols + +dish#:=1/36pt#; % amount erased at top or bottom of serifs +bracket#:=20/36pt#; % vertical distance from serif base to tangent +jut#:=28/36pt#; % protrusion of lowercase serifs +cap_jut#:=37/36pt#; % protrusion of uppercase serifs +beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs +beak#:=70/36pt#; % vertical protrusion of beak serifs +vair#:=8/36pt#; % vertical diameter of hairlines +notch_cut#:=10pt#; % maximum breadth above or below notches +bar#:=11/36pt#; % lowercase bar thickness +slab#:=11/36pt#; % serif and arm thickness +cap_bar#:=11/36pt#; % uppercase bar thickness +cap_band#:=11/36pt#; % uppercase thickness above/below lobes +cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches +serif_drop#:=4/36pt#; % vertical drop of sloped serifs +stem_corr#:=1/36pt#; % for small refinements of stem breadth +vair_corr#:=1/36pt#; % for small refinements of hairline height +apex_corr#:=0pt#; % extra width at diagonal junctions + +o#:=8/36pt#; % amount of overshoot for curves +apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions + +slant:=0; % tilt ratio $(\Delta x/\Delta y)$ +fudge:=1; % factor applied to weights of heavy characters +math_spread:=0; % extra openness of math symbols +superness:=1/sqrt2; % parameter for superellipses +superpull:=1/6; % extra openness inside bowls +beak_darkness:=11/30; % fraction of triangle inside beak serifs +ligs:=2; % level of ligatures to be included + +square_dots:=false; % should dots be square? +hefty:=false; % should we try hard not to be overweight? +serifs:=true; % should serifs and bulbs be attached? +monospace:=false; % should all characters have the same width? +variant_g:=false; % should an italic-style g be used? +low_asterisk:=false; % should the asterisk be centered at the axis? +math_fitting:=false; % should math-mode spacing be used? + +generate wntamil % switch to the driver file -- cgit v1.2.3