summaryrefslogtreecommitdiff
path: root/macros/xetex/generic/itrans
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/xetex/generic/itrans
Initial commit
Diffstat (limited to 'macros/xetex/generic/itrans')
-rw-r--r--macros/xetex/generic/itrans/README144
-rw-r--r--macros/xetex/generic/itrans/brh-kan.map339
-rw-r--r--macros/xetex/generic/itrans/brh-kan.tecbin0 -> 1591 bytes
-rw-r--r--macros/xetex/generic/itrans/itrans-dvn.map327
-rw-r--r--macros/xetex/generic/itrans/itrans-dvn.tecbin0 -> 1713 bytes
-rw-r--r--macros/xetex/generic/itrans/itrans-iast.map409
-rw-r--r--macros/xetex/generic/itrans/itrans-iast.tecbin0 -> 1585 bytes
-rw-r--r--macros/xetex/generic/itrans/itrans-kan.map414
-rw-r--r--macros/xetex/generic/itrans/itrans-kan.tecbin0 -> 2557 bytes
-rw-r--r--macros/xetex/generic/itrans/itrans-sankan.map423
-rw-r--r--macros/xetex/generic/itrans/itrans-sankan.tecbin0 -> 2563 bytes
-rw-r--r--macros/xetex/generic/itrans/itrans-santel.map450
-rw-r--r--macros/xetex/generic/itrans/itrans-santel.tecbin0 -> 2755 bytes
-rw-r--r--macros/xetex/generic/itrans/itrans-sdvn.map341
-rw-r--r--macros/xetex/generic/itrans/itrans-sdvn.tecbin0 -> 1968 bytes
-rw-r--r--macros/xetex/generic/itrans/itrans-tamil-sample.pdfbin0 -> 19150 bytes
-rw-r--r--macros/xetex/generic/itrans/itrans-tamil-sample.tex29
-rw-r--r--macros/xetex/generic/itrans/itrans-tamil.map355
-rw-r--r--macros/xetex/generic/itrans/itrans-tamil.tecbin0 -> 1516 bytes
-rw-r--r--macros/xetex/generic/itrans/itrans-tel.map358
-rw-r--r--macros/xetex/generic/itrans/itrans-tel.tecbin0 -> 1724 bytes
21 files changed, 3589 insertions, 0 deletions
diff --git a/macros/xetex/generic/itrans/README b/macros/xetex/generic/itrans/README
new file mode 100644
index 0000000000..a86cbe457a
--- /dev/null
+++ b/macros/xetex/generic/itrans/README
@@ -0,0 +1,144 @@
+% README for ITRANS and Baraha mapping files to be used with XeLaTeX.
+% Copyright (C) 2010-2014, Abhinandan S. Prasad and Shrisha Rao.
+%
+% Version 4.2, Time-stamp: <2014-09-01 11:47:23 shrao>
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Shrisha Rao.
+%
+% This work consists of the files brh-kan.map, brh-kan.tec,
+% itrans-dvn.map, itrans-dvn.tec, itrans-sdvn.map, itrans-sdvn.tec,
+% itrans-iast.map, itrans-iast.tec, itrans-kan.map, itrans-kan.tec,
+% itrans-sankan.map, itrans-sankan.tec, itrans-santel.map,
+% itrans-santel.tec, itrans-tamil.map, itrans-tamil.tec,
+% itrans-tamil-sample.pdf, itrans-tamil-sample.tex, itrans-tel.map,
+% itrans-tel.tec, and README.
+
+The following files are mappings that can be used with XeLaTeX for
+codings done in the ITRANS and Baraha formats. In each instance, the
+*.map file is the actual (ASCII) mapping, while the *.tec file is the
+compiled version used by the software.
+
+The itrans-tel mapping is by Kattamuri Ekanadham.
+
+brh-kan: This mapping should be used with codings done in Baraha,
+ where the output is desired in Kannada script.
+
+itrans-dvn: This mapping should be used with codings done in ITRANS,
+ where the output is desired in Devanagari script. The
+ codings are typically, but not necessarily, of Sanskrit
+ texts (they could also be, e.g., Hindi or Marathi).
+
+itrans-sdvn: This mapping is very similar to the above, but does not
+ need the use of a vowel `a' at the ends of words; thus,
+ `rAm' can be used rather than `rAma'.
+
+itrans-iast: This mapping should be used with codings done in ITRANS,
+ where the output is desired in accented Roman (IAST)
+ script.
+
+itrans-kan: This mapping should be used with codings done in ITRANS
+ of Kannada texts, where the output is desired in Kannada
+ script.
+
+itrans-sankan: This mapping should be used with codings done in ITRANS
+ of Sanskrit texts, where the output is desired in Kannada
+ script.
+
+itrans-santel: This mapping should be used with codings done in ITRANS
+ of Sanskrit texts, where the output is desired in Telugu
+ script.
+
+itrans-tamil: This mapping should be used with codings done in ITRANS
+ of Tamil texts, where the output is desired in Tamil
+ script.
+
+itrans-tel: This mapping should be used with codings done in ITRANS
+ of Telugu texts, where the output is desired in Telugu
+ script.
+
+Note that `e' and `o' get mapped to the long-vowels with itrans-sankan
+and in itrans-santel, but to the short vowels in itrans-kan and
+itrans-tel (where `E' and `O' are needed for the long vowels).
+
+To use these mappings, insert one or more of the following sets of
+lines in your *.tex files after the \documentclass command and
+appropriate other includes and settings.
+
+\newcommand\abc{\catcode`\^=11
+ \catcode`\~=11
+ \fontspec[Script=Kannada,Mapping=brh-kan]{<fontname>}}
+
+\newcommand\abc{\catcode`\^=11
+ \catcode`\~=11
+ \fontspec[Script=Devanagari,Mapping=itrans-dvn]{<fontname>}}
+
+\newcommand\abc{\catcode`\^=11
+ \catcode`\~=11
+ \fontspec[Script=Devanagari,Mapping=itrans-sdvn]{<fontname>}}
+
+\newcommand\abc{\catcode`\^=11
+ \catcode`\~=11
+ \fontspec[Script=Roman,Mapping=itrans-iast]{<fontname>}}
+
+\newcommand\abc{\catcode`\^=11
+ \catcode`\~=11
+ \fontspec[Script=Kannada,Mapping=itrans-kan]{<fontname>}}
+
+\newcommand\abc{\catcode`\^=11
+ \catcode`\~=11
+ \fontspec[Script=Kannada,Mapping=itrans-sankan]{<fontname>}}
+
+\newcommand\abc{\catcode`\^=11
+ \catcode`\~=11
+ \fontspec[Mapping=itrans-santel]{<fontname>}}
+
+\newcommand\abc{\catcode`\^=11
+ \catcode`\~=11
+ \fontspec[Script=Tamil,Mapping=itrans-tamil]{<fontname>}}
+
+\newcommand\abc{\catcode`\^=11
+ \catcode`\~=11
+ \fontspec[Mapping=itrans-tel]{<fontname>}}
+
+Replace `abc' by the desired macro name, and <fontname> by the name of
+an appropriate Unicode font in that script (e.g., Sanskrit 2003 for
+Devanagari, Kedage for Kannada, Pothana for Telugu).
+
+The following is a small example using the Kannada `Kedage' font.
+Save the following as a *.tex file; if your installation and settings
+(including fonts) are correct, it will compile and produce a proper
+PDF output. (See itrans-tamil-sample.tex and itrans-tamil-sample.pdf
+for a Tamil usage example.)
+
+\documentclass[a4paper,11pt]{article}
+
+\usepackage{ifxetex}
+\RequireXeTeX
+\usepackage{xltxtra}
+
+\setlength{\parindent}{0mm}
+
+\newcommand\ked{\catcode`\^=11
+ \catcode`\~=11
+ \fontspec[Script=Kannada,Mapping=itrans-sankan]{Kedage}}
+
+\begin{document}
+
+{\ked
+OM || nArAyaNaM suraguruM jagadekanAthaM \\
+bhaktapriyaM sakalalokanamaskR^itaM cha | \\
+traiguNyavarjitamajaM vibhumAdyamIshaM \\
+vande bhavaghnamamarAsurasiddhavandyam.h ||
+}
+
+\end{document}
diff --git a/macros/xetex/generic/itrans/brh-kan.map b/macros/xetex/generic/itrans/brh-kan.map
new file mode 100644
index 0000000000..e226f8fe1c
--- /dev/null
+++ b/macros/xetex/generic/itrans/brh-kan.map
@@ -0,0 +1,339 @@
+; TECkit mapping for Baraha input scheme for writing Unicode Kannada (0C80-0CFF)
+; by Abhinandan S.P. <abhinandan.sp@iiitb.net> and Shrisha Rao <shrao@acm.org>,
+; based on harvardkyoto.map written by Daniel Stender
+;
+; Updated 2009-12-04
+
+LHSName "brh-kan"
+RHSName "Unicode"
+LHSDescription "Baraha input method for Unicode Kannada"
+Version "0.91b"
+
+Define dot U+002E
+
+Define a U+0061
+Define A U+0041
+Define i U+0069
+Define I U+0049
+Define u U+0075
+Define U U+0055
+Define R U+0052
+Define L U+004C
+
+Define e U+0065
+Define E U+0045
+Define o U+006F
+Define H U+0048
+
+Define k U+006B
+Define h U+0068
+Define g U+0067
+Define G U+0047
+
+Define c U+0063
+Define C U+0043
+Define j U+006A
+Define J U+004A
+
+Define T U+0054
+Define D U+0044
+Define N U+004E
+
+Define t U+0074
+Define d U+0064
+Define n U+006E
+
+Define p U+0070
+Define b U+0062
+Define m U+006D
+
+Define y U+0079
+Define r U+0072
+Define l U+006C
+Define v U+0076
+Define w U+0077
+
+Define z U+007A
+Define S U+0053
+Define s U+0073
+Define Y U+0059
+Define O U+004F
+Define K U+004B
+Define B U+0042
+Define P U+0050
+
+Define anudatta U+002D ; -
+Define svarita U+0021 ; !
+Define tlde U+007E
+Define cret U+005E
+Define M U+004D
+
+Define q U+0071
+Define f U+0066
+Define x U+0078
+
+
+Define anunasika U+0901
+Define anusvara U+0C82
+Define visarga U+0C83
+
+Define asvara U+0C85
+Define Asvara U+0C86
+Define isvara U+0C87
+Define Isvara U+0C88
+Define usvara U+0C89
+Define Usvara U+0C8A
+Define rvoc U+0C8B
+Define Rvoc U+0CE0
+Define lvoc U+0C8C
+Define Lvoc U+0CE1
+Define esvara U+0C8E
+Define Esvara U+0C8F
+Define aisvara U+0C90
+Define osvara U+0C92
+Define Osvara U+0C93
+Define ausvara U+0C94
+
+Define Amatra U+0CBE
+Define imatra U+0CBF
+Define Imatra U+0CC0
+Define umatra U+0CC1
+Define Umatra U+0CC2
+Define rmatra U+0CC3
+Define Rmatra U+0CC4
+Define lmatra U+0CE2
+Define Lmatra U+0CE3
+Define ematra U+0CC6
+Define Ematra U+0CC7
+Define aimatra U+0CC8
+Define omatra U+0CCA
+Define Omatra U+0CCB
+Define aumatra U+0CCC
+
+Define ka U+0C95
+Define kha U+0C96
+Define ga U+0C97
+Define gha U+0C98
+Define Ga U+0C99
+Define cha U+0C9A
+Define Cha U+0C9B
+Define ja U+0C9C
+Define jha U+0C9D
+Define Ja U+0C9E
+Define Ta U+0C9F
+Define Tha U+0CA0
+Define Da U+0CA1
+Define Dha U+0CA2
+Define Na U+0CA3
+Define ta U+0CA4
+Define tha U+0CA5
+Define da U+0CA6
+Define dha U+0CA7
+Define na U+0CA8
+Define pa U+0CAA
+Define pha U+0CAB
+Define ba U+0CAC
+Define bha U+0CAD
+Define ma U+0CAE
+Define ya U+0CAF
+Define ra U+0CB0
+Define rra U+0CB1
+Define la U+0CB2
+Define va U+0CB5
+Define wa U+0CB5
+Define sha U+0CB6
+Define Sha U+0CB7
+Define sa U+0CB8
+Define ha U+0CB9
+
+;Define hka U+0958
+;Define hkha U+0959
+;Define hga U+095A
+;Define hja U+095B
+;Define hDa U+095C
+;Define hda U+095D
+;Define hna U+0929
+;Define hpha U+095E
+;Define hya U+095F
+;Define hra U+0931
+;Define hla U+0934
+
+Define rla U+0CB3
+;Define vstroke U+0951
+;Define hstroke U+0952
+
+Define danda U+0964
+Define ddanda U+0965
+Define virama U+0CCD
+Define avagraha U+0CBD
+Define lcb U+007B
+Define rcb U+007D
+
+;Define om U+0950
+
+
+pass(Unicode)
+
+a > asvara
+a a > Asvara
+A > Asvara
+tlde A > Asvara
+i > isvara
+e e > Isvara
+I > Isvara
+u > usvara
+o o > Usvara
+U > Usvara
+R u > rvoc
+R U > Rvoc
+
+e > esvara
+E > Esvara
+
+a i > aisvara
+o > osvara
+O > Osvara
+a u > ausvara
+o u > ausvara
+
+k > ka
+k h > kha
+K > kha
+g > ga
+g h > gha
+G > gha
+tlde g > Ga
+
+c > cha
+c h > cha
+C h > Cha
+C > Cha
+j > ja
+J > jha
+j h > jha
+tlde j > Ja
+
+T > Ta
+T h > Tha
+D > Da
+D h > Dha
+N > Na
+
+t > ta
+t h > tha
+d > da
+d h > dha
+n > na
+
+p > pa
+p h > pha
+P > pha
+b > ba
+b h > bha
+B > bha
+m > ma
+
+y > ya
+Y > ya
+r > ra
+R > ra
+r x > rra
+L x > rra
+l > la
+L > rla
+v > va
+w > wa
+s h > sha
+S > sha
+S h > Sha
+s > sa
+h > ha
+tlde h > ha
+k S h > ka virama Sha
+j tlde n > ja virama Ja
+
+dot > dot
+
+;A U M > om
+
+
+;q > hka
+;x > hkha
+;dot g > hga
+;dot z > hja
+;f > hpha
+
+;svarita > vstroke
+;anudatta > hstroke
+
+;L > rla
+dot m > anunasika
+
+U+004D > anusvara
+;a n > anusvara
+dot n > anusvara
+;N cret > anusvara
+U+0048 > visarga
+;dot a > avagraha
+U+0026 > avagraha
+U+002C > virama
+
+U+007C > danda
+U+007C U+007C > ddanda
+
+;O M > om
+
+U+0030 > U+0CE6 ; Numerals
+U+0031 > U+0CE7
+U+0032 > U+0CE8
+U+0033 > U+0CE9
+U+0034 > U+0CEA
+U+0035 > U+0CEB
+U+0036 > U+0CEC
+U+0037 > U+0CED
+U+0038 > U+0CEE
+U+0039 > U+0CEF
+
+;; Second pass: converting vowels + a few simple rules
+pass (Unicode)
+
+;; Classes
+UniClass [vyanjana] = (ka .. ha rla rra)
+UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc esvara Esvara aisvara \
+ osvara Osvara ausvara)
+UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra ematra Ematra \
+ aimatra omatra Omatra aumatra)
+
+[vyanjana] [svara] <> [vyanjana] [matra]
+danda danda <> ddanda
+
+;; Third pass: making conjuncts
+pass (Unicode)
+
+;; Classes
+UniClass [vyanjana] = (ka .. ha rla rra)
+
+[vyanjana]=v1 [vyanjana]=v2 <> @v1 virama @v2
+
+;; Fourth pass: making remaining conjuncts (for groups of two or more consonants)
+;; and adding viramas to the end of the words in Sanskrit
+pass (Unicode)
+
+;; Classes
+UniClass [vyanjana] = (ka .. ha rla rra)
+UniClass [spacepunct] = (U+0009 .. U+0040 U+005B .. U+0060 U+007B .. U+007D danda ddanda \
+ U+2013 U+2014 U+2018 U+2019 U+201C U+201D)
+
+[vyanjana]=v1 [vyanjana]=v2 <> @v1 virama @v2
+[vyanjana] / _ [spacepunct] <> [vyanjana] virama / _ [spacepunct]
+[vyanjana] / _ # <> [vyanjana] virama / _ #
+
+;; Fifth pass: removing inherent "a"
+pass (Unicode)
+
+;; Classes
+UniClass [vyanjana] = (ka .. ha rla rra)
+
+[vyanjana] asvara <> [vyanjana]
+
+
diff --git a/macros/xetex/generic/itrans/brh-kan.tec b/macros/xetex/generic/itrans/brh-kan.tec
new file mode 100644
index 0000000000..44aa29de5e
--- /dev/null
+++ b/macros/xetex/generic/itrans/brh-kan.tec
Binary files differ
diff --git a/macros/xetex/generic/itrans/itrans-dvn.map b/macros/xetex/generic/itrans/itrans-dvn.map
new file mode 100644
index 0000000000..238368ccb5
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-dvn.map
@@ -0,0 +1,327 @@
+; TECkit mapping for ITRANS input scheme for writing Unicode Devanagari (0900-097F)
+; by Abhinandan S.P. <abhinandan.sp@iiitb.net> and Shrisha Rao <shrao@acm.org>,
+; based on harvardkyoto.map written by Daniel Stender.
+;
+; Updated 2014-09-01
+
+LHSName "itrans-dvn"
+RHSName "Unicode"
+LHSDescription "ITRANS input method for Unicode Devanagari"
+Version "1.00"
+
+Define dot U+002E
+
+Define a U+0061
+Define A U+0041
+Define i U+0069
+Define I U+0049
+Define u U+0075
+Define U U+0055
+Define R U+0052
+Define L U+004C
+
+Define e U+0065
+Define o U+006F
+
+Define k U+006B
+Define h U+0068
+Define g U+0067
+Define G U+0047
+
+Define c U+0063
+Define C U+0043
+Define j U+006A
+Define J U+004A
+
+Define T U+0054
+Define D U+0044
+Define N U+004E
+
+Define t U+0074
+Define d U+0064
+Define n U+006E
+
+Define p U+0070
+Define b U+0062
+Define m U+006D
+
+Define y U+0079
+Define r U+0072
+Define l U+006C
+Define v U+0076
+Define w U+0077
+
+Define z U+007A
+Define S U+0053
+Define s U+0073
+Define Y U+0059
+Define O U+004F
+
+Define anudatta U+002D ; -
+Define svarita U+0021 ; !
+Define tlde U+007E
+Define cret U+005E
+Define M U+004D
+
+Define q U+0071
+Define f U+0066
+Define x U+0078
+
+
+Define anunasika U+0901
+Define anusvara U+0902
+Define visarga U+0903
+
+Define asvara U+0905
+Define Asvara U+0906
+Define isvara U+0907
+Define Isvara U+0908
+Define usvara U+0909
+Define Usvara U+090A
+Define rvoc U+090B
+Define Rvoc U+0960
+Define lvoc U+090C
+Define Lvoc U+0961
+Define esvara U+090F
+Define aisvara U+0910
+Define osvara U+0913
+Define ausvara U+0914
+
+Define Amatra U+093E
+Define imatra U+093F
+Define Imatra U+0940
+Define umatra U+0941
+Define Umatra U+0942
+Define rmatra U+0943
+Define Rmatra U+0944
+Define lmatra U+0962
+Define ematra U+0947
+Define aimatra U+0948
+Define omatra U+094B
+Define aumatra U+094C
+
+Define ka U+0915
+Define kha U+0916
+Define ga U+0917
+Define gha U+0918
+Define Ga U+0919
+Define cha U+091A
+Define Cha U+091B
+Define ja U+091C
+Define jha U+091D
+Define Ja U+091E
+Define Ta U+091F
+Define Tha U+0920
+Define Da U+0921
+Define Dha U+0922
+Define Na U+0923
+Define ta U+0924
+Define tha U+0925
+Define da U+0926
+Define dha U+0927
+Define na U+0928
+Define pa U+092A
+Define pha U+092B
+Define ba U+092C
+Define bha U+092D
+Define ma U+092E
+Define ya U+092F
+Define ra U+0930
+Define la U+0932
+Define va U+0935
+Define wa U+0935
+Define sha U+0936
+Define Sha U+0937
+Define sa U+0938
+Define ha U+0939
+
+Define hka U+0958
+Define hkha U+0959
+Define hga U+095A
+Define hja U+095B
+Define hDa U+095C
+Define hda U+095D
+Define hna U+0929
+Define hpha U+095E
+Define hya U+095F
+Define hra U+0931
+Define hla U+0934
+
+Define rla U+0933
+Define vstroke U+0951
+Define hstroke U+0952
+
+Define danda U+0964
+Define ddanda U+0965
+Define virama U+094D
+Define avagraha U+093D
+
+Define om U+0950
+
+
+pass(Unicode)
+
+a > asvara
+a a > Asvara
+A > Asvara
+i > isvara
+i i > Isvara
+I > Isvara
+u > usvara
+u u > Usvara
+U > Usvara
+R R i > rvoc
+R cret i > rvoc
+R R I > Rvoc
+R cret I > Rvoc
+L L i > lvoc
+L cret i > lvoc
+L L I > Lvoc
+L cret I > Lvoc
+
+e > esvara
+a i > aisvara
+o > osvara
+a u > ausvara
+
+k > ka
+k h > kha
+k dot h > ka virama
+k h dot h > kha virama
+g > ga
+g dot h > ga virama
+g h > gha
+g h dot h > gha virama
+tlde N > Ga
+N cret > Ga
+G G > Ga
+tlde N dot h > Ga virama
+N cret dot h > Ga virama
+c h > cha
+c h h > Cha
+c h dot h > cha virama
+C h > Cha
+C h dot h > Cha virama
+c h h dot h > Cha virama
+j > ja
+j dot h > ja virama
+j h > jha
+j h dot h > jha virama
+tlde n > Ja
+tlde n dot h > Ja virama
+J N > Ja
+T > Ta
+T dot h > Ta virama
+T h > Tha
+T h dot h > Tha virama
+D > Da
+D dot h > Da virama
+D h > Dha
+D h dot h > Dha virama
+N > Na
+N dot h > Na virama
+t > ta
+t dot h > ta virama
+t h > tha
+t h dot h > tha virama
+d > da
+d dot h > da virama
+d h > dha
+d h dot h > dha virama
+n > na
+n dot h > na virama
+p > pa
+p dot h > pa virama
+p h > pha
+p h dot h > pha virama
+b > ba
+b dot h > ba virama
+b h > bha
+b h dot h > bha virama
+m > ma
+m dot h > ma virama
+y > ya
+y dot h > ya virama
+r > ra
+r dot h > ra virama
+l > la
+l dot h > la virama
+v > va
+v dot h > va virama
+w > wa
+w dot h > wa virama
+s h > sha
+s h dot h > sha virama
+s h h > Sha
+s h h dot h > Sha virama
+S h > Sha
+S h dot h > Sha virama
+s > sa
+s dot h > sa virama
+h > ha
+h dot h > ha virama
+x > ka virama Sha
+x dot h > ka virama Sha virama
+k S h > ka virama Sha
+k S h dot h > ka virama Sha virama
+G Y > ja virama Ja
+A U M > om
+
+
+q > hka
+x > hkha
+dot g > hga
+dot z > hja
+f > hpha
+
+svarita > vstroke
+anudatta > hstroke
+
+L > rla
+dot m > anunasika
+
+U+004D > anusvara
+dot n > anusvara
+U+0048 > visarga
+dot a > avagraha
+U+002C > virama
+
+U+007C > danda
+U+007C U+007C > ddanda
+
+O M > om
+
+U+0030 > U+0966 ; Numerals
+U+0031 > U+0967
+U+0032 > U+0968
+U+0033 > U+0969
+U+0034 > U+096A
+U+0035 > U+096B
+U+0036 > U+096C
+U+0037 > U+096D
+U+0038 > U+096E
+U+0039 > U+096F
+
+
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha rla hka .. hpha)
+UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc lvoc esvara aisvara osvara ausvara)
+UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra lmatra ematra aimatra omatra aumatra)
+[vyanjana] [svara] > [vyanjana] [matra]
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+pass(Unicode)
+
+Uniclass [vyanjana] = (ka .. ha rla hka .. hpha)
+[vyanjana] asvara > [vyanjana]
diff --git a/macros/xetex/generic/itrans/itrans-dvn.tec b/macros/xetex/generic/itrans/itrans-dvn.tec
new file mode 100644
index 0000000000..89d0d00523
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-dvn.tec
Binary files differ
diff --git a/macros/xetex/generic/itrans/itrans-iast.map b/macros/xetex/generic/itrans/itrans-iast.map
new file mode 100644
index 0000000000..f95e3725d6
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-iast.map
@@ -0,0 +1,409 @@
+; TECkit mapping for ITRANS input scheme for writing Unicode IAST (0000-200D)
+; by Abhinandan S.P. <abhinandan.sp@iiitb.net> and Shrisha Rao <shrao@acm.org>,
+; based on harvardkyoto.map written by Daniel Stender.
+;
+; Updated 2014-09-01
+
+LHSName "itrans-iast"
+RHSName "Unicode"
+LHSDescription "Devanagari-ITRANS input method for Unicode Roman (IAST)"
+Version "2.00"
+
+Define dot U+002E
+
+Define a U+0061
+Define A U+0041
+Define i U+0069
+Define I U+0049
+Define u U+0075
+Define U U+0055
+Define R U+0052
+Define L U+004C
+
+Define e U+0065
+Define E U+0045
+Define o U+006F
+Define H U+0048
+
+Define k U+006B
+Define h U+0068
+Define g U+0067
+Define G U+0047
+
+Define c U+0063
+Define C U+0043
+Define j U+006A
+Define J U+004A
+
+Define T U+0054
+Define D U+0044
+Define N U+004E
+
+Define t U+0074
+Define d U+0064
+Define n U+006E
+
+Define p U+0070
+Define b U+0062
+Define m U+006D
+
+Define y U+0079
+Define r U+0072
+Define l U+006C
+Define v U+0076
+Define w U+0077
+
+Define z U+007A
+Define S U+0053
+Define s U+0073
+Define Y U+0059
+Define O U+004F
+
+Define anudatta U+002D ; -
+Define svarita U+0021 ; !
+Define tlde U+007E
+Define cret U+005E
+Define M U+004D
+
+Define q U+0071
+Define f U+0066
+Define x U+0078
+
+Define zwj U+200D
+Define zwn U+200C
+
+Define anunasika U+0901
+Define anusvara U+0C82
+Define visarga U+0C83
+
+
+Define mdot U+1E43
+Define ndot U+1E47
+Define ntilde U+00F1
+Define tdot U+1E6D
+Define ddot U+1E0D
+Define ndota U+1E45
+Define sacute U+015B
+Define sdot U+1E63
+Define lbelow U+1E3B
+Define ldot U+1E37
+
+Define asvara a
+Define Asvara U+0101
+Define isvara i
+Define Isvara U+012B
+Define usvara u
+Define Usvara U+016B
+Define rvoc U+1E5B
+Define Rvoc U+1E5D
+Define lvoc U+1E37
+Define Lvoc U+1E38
+Define Esvara e
+Define aisvara a i
+Define Osvara o
+Define ausvara a u
+
+Define ka k
+Define kha k h
+Define ga g
+Define gha g h
+Define Ga ndota
+Define cha c
+Define Cha c h
+Define ja j
+Define jha j h
+Define Ja ntilde
+Define Ta tdot
+Define Tha tdot h
+Define Da ddot
+Define Dha ddot h
+Define Na ndot
+Define ta t
+Define tha t h
+Define da d
+Define dha d h
+Define na n
+Define pa p
+Define pha p h
+Define ba b
+Define bha b h
+Define ma m
+Define ya y
+Define ra r
+Define la l
+Define va v
+;Define wa U+0CB5
+Define sha sacute
+Define Sha sdot
+Define sa s
+Define ha h
+
+Define rla ldot
+
+Define danda U+0964
+Define ddanda U+0965
+;Define U+0CCD
+Define avagraha U+2019
+Define lcb U+007B
+Define rcb U+007D
+Define zero U+0CE6
+Define cbindu U+0901
+Define ksha ka Sha
+
+
+pass(Unicode)
+
+a > asvara
+a a > Asvara
+A > Asvara
+i > isvara
+i i > Isvara
+I > Isvara
+u > usvara
+u u > Usvara
+U > Usvara
+R R i > rvoc
+R cret i > rvoc
+R R I > Rvoc
+R cret I > Rvoc
+L L i > lvoc
+L cret i > lvoc
+L L I > Lvoc
+L cret I > Lvoc
+
+e > Esvara
+
+a i > aisvara
+a M > a mdot
+o > Osvara
+o o > Osvara
+O > Osvara
+a u > ausvara
+a dot N > a m cbindu
+k > ka
+k h > kha
+k dot h > ka
+k x > ka ksha
+k h dot h > kha
+k h x > kha ksha
+g > ga
+g dot h > ga
+g x > ga ksha
+g a dot n > ga anusvara
+g h > gha
+g h dot h > gha
+g h x > gha ksha
+tlde N > Ga
+N cret > Ga
+N tlde > Ga
+G G > Ga
+tlde N dot h > Ga
+N cret dot h > Ga
+tlde N x > Ga ksha
+N cret dot h > Ga
+;N cret x > zero ksha
+;N cret g > zero ga
+;N cret g h > zero gha
+n g > na ga
+c > cha
+c h > cha
+c h h > Cha
+;c h dot h > cha
+;c h x > Cha ksha
+;c h h x > Cha ksha
+C h > Cha
+C h x > Cha ksha
+;C h dot h > Cha
+;c h h dot h > Cha
+j > ja
+j dot h > ja
+j x > ja ksha
+j h > jha
+j h x > jha ksha
+j h dot h > jha
+tlde n > ntilde
+tlde n a > Ja
+tlde n x > Ja ksha
+tlde n dot h > Ja
+J N > Ja
+J N x > Ja ksha
+T > Ta
+T x > Ta ksha
+T dot h > Ta
+T h > Tha
+T h dot h > Tha
+T h x > Tha ksha
+D > Da
+D x > Da ksha
+D dot h > Da
+D h > Dha
+D h dot h > Dha
+D h x > Dha ksha
+N > Na
+N dot h > Na
+N x > Na ksha
+;N N > Na Na
+t > ta
+t dot h > ta
+t x > ta ksha
+t h > tha
+t h x > tha ksha
+t h dot h > tha
+d > da
+d x > da ksha
+d dot h > da
+d h > dha
+d h x > dha ksha
+d h dot h > dha
+n > na
+n x > na ksha
+n dot h > na
+p > pa
+p x > pa ksha
+p dot h > pa
+p h x > pha ksha
+p h dot h > pha
+b > ba
+b x > ba ksha
+b dot h > ba
+b h > bha
+b h x > bha ksha
+b h dot h > bha
+m > ma
+m dot h > ma
+m x > ma ksha
+y > ya
+y dot h > ya
+y x > ya ksha
+r > ra
+r x > ra ksha
+r dot h > ra
+l > la
+l x > la ksha
+L > rla
+L x > rla ksha
+l dot h > la
+L dot h > rla
+v > va
+v x > va ksha
+v dot h > va
+w > va
+w x > va ksha
+w dot h > va
+s h > sha
+s h x > sha ksha
+s h dot h > sha
+s h h > Sha
+s h h x > Sha ksha
+s h h dot h > Sha
+S h > Sha
+S h x > Sha ksha
+S h dot h > Sha
+s > sa
+s x > sa ksha
+s dot h > sa
+h > ha
+h x > ha ksha
+h dot h > ha
+N cret x > zero ksha
+x > ksha
+x dot h > ksha
+k S h > ksha
+k S h dot h > ksha
+G Y > ja Ja
+j tlde n > ja Ja
+v a cret cret r > va ra
+m lcb rcb > ma
+lcb rcb > zwn
+H > U+1E25
+M > mdot
+dot n > mdot
+L > ldot
+
+;dot m > anunasika
+
+
+;U+004D > anusvara
+;U+0029 M > U+0029 U+0CE6
+;dot a M > avagraha zero
+;dot n > anusvara
+;U+0048 > visarga
+dot a > avagraha
+dot a lcb rcb > avagraha
+;dot a N cret > avagraha U+0CE6
+
+;U+002C >
+;dot N > na
+
+;U+002F dot > dot
+;U+007C > danda
+;U+007C U+007C > ddanda
+;U+002D > U+002D
+;U+005C dot > dot
+;U+0022 > U+201D
+;U+0027 > U+0027
+;U+0028 > U+0028
+;U+0029 > U+0029
+;U+0060 > U+2018
+;U+0060 U+0060 > U+201C
+
+;U+0030 > U+0CE6 ; Numerals
+;U+0031 > U+0CE7
+;U+0032 > U+0CE8
+;U+0033 > U+0CE9
+;U+0034 > U+0CEA
+;U+0035 > U+0CEB
+;U+0036 > U+0CEC
+;U+0037 > U+0CED
+;U+0038 > U+0CEE
+;U+0039 > U+0CEF
+
+;pass(Unicode)
+
+;UniClass [vyanjana] = (ka..dha pha..ba ra..la)
+;UniClass [mvyanjana] = (pa ba bha)
+
+;UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc lvoc Esvara aisvara Osvara ausvara)
+;UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra lmatra Ematra aimatra Omatra aumatra)
+;UniClass [naletter] = (na)
+;UniClass [anusvaraletter] = (zero)
+;UniClass [avaletter] = (avagraha)
+;UniClass [maletter] = (ma)
+;UniClass [Naletter] = (Na)
+;UniClass [galetter] = (Ga)
+;UniClass [jaletter] = (Ja)
+;UniClass [osvaraletter] = (Osvara)
+;UniClass [omatra] = (Omatra)
+
+;UniClass [vletter] = ( )
+
+;[naletter] [vyanjana] > [anusvaraletter] [vyanjana]
+;[maletter] [mvyanjana] > [anusvaraletter] [mvyanjana]
+;[maletter] [maletter] [osvaraletter] > [anusvaraletter] [maletter] [omatra]
+;[galetter] [vyanjana] > [anusvaraletter] [vyanjana]
+;[jaletter] [vyanjana] > [anusvaraletter] [vyanjana]
+;[Naletter] [vyanjana] > [anusvaraletter] [vyanjana]
+;[anusvaraletter] [vyanjana] [svara] > [anusvaraletter] [vyanjana][matra]
+
+;pass(Unicode)
+
+;UniClass [vyanjana] = (ka .. ha rla)
+;UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc lvoc Esvara aisvara Osvara ausvara)
+;UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra lmatra Ematra aimatra Omatra aumatra)
+;[vyanjana] [svara] > [vyanjana] [matra]
+
+
+;pass(Unicode)
+
+;UniClass [vyanjana] = (ka .. ha)
+;[vyanjana]=v1 [vyanjana]=v2 > @v1 @v2
+
+;pass(Unicode)
+
+;UniClass [vyanjana] = (ka .. ha)
+;[vyanjana]=v1 [vyanjana]=v2 > @v1 @v2
+
+;pass(Unicode)
+
+;Uniclass [vyanjana] = (ka .. ha rla)
+;[vyanjana] asvara > [vyanjana]
diff --git a/macros/xetex/generic/itrans/itrans-iast.tec b/macros/xetex/generic/itrans/itrans-iast.tec
new file mode 100644
index 0000000000..805249d9ec
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-iast.tec
Binary files differ
diff --git a/macros/xetex/generic/itrans/itrans-kan.map b/macros/xetex/generic/itrans/itrans-kan.map
new file mode 100644
index 0000000000..48ebf0dd4e
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-kan.map
@@ -0,0 +1,414 @@
+; TECkit mapping for ITRANS input scheme for writing Unicode Kannada (0900-097F)
+; by Abhinandan S.P. <abhinandan.sp@iiitb.net> and Shrisha Rao <shrao@acm.org>,
+; based on harvardkyoto.map written by Daniel Stender.
+;
+; Updated 2014-09-01
+
+LHSName "itrans-kan"
+RHSName "Unicode"
+LHSDescription "ITRANS input method for Unicode Kannada"
+Version "2.00"
+
+Define dot U+002E
+
+Define a U+0061
+Define A U+0041
+Define i U+0069
+Define I U+0049
+Define u U+0075
+Define U U+0055
+Define R U+0052
+Define L U+004C
+
+Define e U+0065
+Define E U+0045
+Define o U+006F
+Define H U+0048
+
+Define k U+006B
+Define h U+0068
+Define g U+0067
+Define G U+0047
+
+Define c U+0063
+Define C U+0043
+Define j U+006A
+Define J U+004A
+
+Define T U+0054
+Define D U+0044
+Define N U+004E
+
+Define t U+0074
+Define d U+0064
+Define n U+006E
+
+Define p U+0070
+Define b U+0062
+Define m U+006D
+
+Define y U+0079
+Define r U+0072
+Define l U+006C
+Define v U+0076
+Define w U+0077
+
+Define z U+007A
+Define S U+0053
+Define s U+0073
+Define Y U+0059
+Define O U+004F
+
+Define anudatta U+002D ; -
+Define svarita U+0021 ; !
+Define tlde U+007E
+Define cret U+005E
+Define M U+004D
+
+Define q U+0071
+Define f U+0066
+Define x U+0078
+
+Define zwj U+200D
+Define zwn U+200C
+
+Define anunasika U+0901
+Define anusvara U+0C82
+Define visarga U+0C83
+
+Define asvara U+0C85
+Define Asvara U+0C86
+Define isvara U+0C87
+Define Isvara U+0C88
+Define usvara U+0C89
+Define Usvara U+0C8A
+Define rvoc U+0C8B
+Define Rvoc U+0CE0
+Define lvoc U+0C8C
+Define Lvoc U+0CE1
+Define esvara U+0C8E
+Define Esvara U+0C8F
+Define aisvara U+0C90
+Define osvara U+0C92
+Define Osvara U+0C93
+Define ausvara U+0C94
+
+Define Amatra U+0CBE
+Define imatra U+0CBF
+Define Imatra U+0CC0
+Define umatra U+0CC1
+Define Umatra U+0CC2
+Define rmatra U+0CC3
+Define Rmatra U+0CC4
+Define lmatra U+0CE2
+Define Lmatra U+0CE3
+Define ematra U+0CC6
+Define Ematra U+0CC7
+Define aimatra U+0CC8
+Define omatra U+0CCA
+Define Omatra U+0CCB
+Define aumatra U+0CCC
+
+Define ka U+0C95
+Define kha U+0C96
+Define ga U+0C97
+Define gha U+0C98
+Define Ga U+0C99
+Define cha U+0C9A
+Define Cha U+0C9B
+Define ja U+0C9C
+Define jha U+0C9D
+Define Ja U+0C9E
+Define Ta U+0C9F
+Define Tha U+0CA0
+Define Da U+0CA1
+Define Dha U+0CA2
+Define Na U+0CA3
+Define ta U+0CA4
+Define tha U+0CA5
+Define da U+0CA6
+Define dha U+0CA7
+Define na U+0CA8
+Define pa U+0CAA
+Define pha U+0CAB
+Define ba U+0CAC
+Define bha U+0CAD
+Define ma U+0CAE
+Define ya U+0CAF
+Define ra U+0CB0
+Define la U+0CB2
+Define va U+0CB5
+Define wa U+0CB5
+Define sha U+0CB6
+Define Sha U+0CB7
+Define sa U+0CB8
+Define ha U+0CB9
+
+Define rla U+0CB3
+
+Define danda U+0964
+Define ddanda U+0965
+Define virama U+0CCD
+Define avagraha U+0CBD
+Define lcb U+007B
+Define rcb U+007D
+Define zero U+0CE6
+Define cbindu U+0901
+Define ksha ka virama Sha
+
+
+pass(Unicode)
+
+a > asvara
+a a > Asvara
+A > Asvara
+i > isvara
+i i > Isvara
+I > Isvara
+u > usvara
+u u > Usvara
+U > Usvara
+R R i > rvoc
+R cret i > rvoc
+R R I > Rvoc
+R cret I > Rvoc
+L L i > lvoc
+L cret i > lvoc
+L L I > Lvoc
+L cret I > Lvoc
+
+e > esvara
+E > Esvara
+
+a i > aisvara
+o > osvara
+o o > Osvara
+O > Osvara
+a u > ausvara
+a m s > U+0CE6 sa
+
+k > ka
+k h > kha
+
+k dot h > ka virama
+k x > ka virama zwn ksha
+k h dot h > kha virama
+k h x > kha virama zwn ksha
+g > ga
+g dot h > ga virama
+g x > ga virama zwn ksha
+g a dot n > ga anusvara
+g h > gha
+g h dot h > gha virama
+g h x > gha virama zwn ksha
+tlde N > Ga
+N cret > Ga
+G G > Ga
+tlde N dot h > Ga virama
+N cret dot h > Ga virama
+tlde N x > Ga virama zwn ksha
+N cret dot h > Ga virama
+N cret x > zero zwn ksha
+N cret g > zero zwn ga
+N cret g h > zero zwn gha
+n g > na virama ga
+c h > cha
+c h h > Cha
+c h dot h > cha virama
+c h x > cha virama zwn ksha
+c h h x > Cha virama zwn ksha
+C h > Cha
+C h x > Cha virama zwn ksha
+C h dot h > Cha virama
+c h h dot h > Cha virama
+j > ja
+j dot h > ja virama
+j x > ja virama zwn ksha
+j h > jha
+j h dot h > jha virama
+j h x > jha virama zwn ksha
+tlde n a > Ja
+tlde n x > Ja virama zwn ksha
+tlde n dot h > Ja virama
+J N > Ja
+J N x > Ja virama zwn ksha
+T > Ta
+T dot h > Ta virama
+T x > Ta virama zwn ksha
+T h > Tha
+T h dot h > Tha virama
+T h x > Tha virama zwn ksha
+D > Da
+D dot h > Da virama
+D x > Da virama zwn ksha
+D h > Dha
+D h x > Dha virama zwn ksha
+D h dot h > Dha virama
+N > Na
+N x > Na virama zwn ksha
+N dot h > Na virama
+N N > Na virama Na
+t > ta
+t dot h > ta virama
+t x > ta virama zwn ksha
+t h > tha
+t h dot h > tha virama
+t h x > tha virama zwn ksha
+d > da
+d dot h > da virama
+d x > da virama zwn ksha
+d h > dha
+d h dot h > dha virama
+d h x > dha virama zwn ksha
+n > na
+n dot h > na virama
+n x > na virama zwn ksha
+p > pa
+p dot h > pa virama
+p x > pa virama zwn ksha
+p h > pha
+p h dot h > pha virama
+p h x > pha virama zwn ksha
+b > ba
+b dot h > ba virama
+b x > ba virama zwn ksha
+b h > bha
+b h dot h > bha virama
+b h x > bha virama zwn ksha
+m > ma
+m dot h > ma virama
+m x > ma virama zwn ksha
+y > ya
+y x > ya virama zwn ksha
+y dot h > ya virama
+r > ra
+r x > ra virama zwn ksha
+r dot h > ra virama
+l > la
+l x > la virama zwn ksha
+L > rla
+L x > rla virama zwn ksha
+l dot h > la virama
+L dot h > rla virama
+v > va
+v x > va virama zwn ksha
+v dot h > va virama
+w > wa
+w x > wa virama zwn ksha
+w dot h > wa virama
+s h > sha
+s h x > sha virama zwn ksha
+s h dot h > sha virama
+s h h > Sha
+s h h x > Sha virama zwn ksha
+s h h dot h > Sha virama
+S h > Sha
+S h dot h > Sha virama
+S h x > Sha virama zwn ksha
+s > sa
+s dot h > sa virama
+s x > sa virama zwn ksha
+h > ha
+h dot h > ha virama
+h x > ha virama zwn ksha
+x > ksha
+x dot h > ksha virama
+k S h > ksha
+k S h dot h > ksha virama
+G Y > ja virama Ja
+j tlde n > ja virama Ja
+v a cret cret r > va ra virama
+m lcb rcb > ma virama
+lcb rcb > zwn
+
+
+dot m > anunasika
+
+
+U+004D > anusvara
+U+0029 M > U+0029 U+0CE6
+dot a M > avagraha zero
+dot n > anusvara
+U+0048 > visarga
+dot a > avagraha
+dot a lcb rcb > avagraha
+dot a N cret > avagraha U+0CE6
+
+U+002C > virama
+dot N > na
+
+U+002F dot > dot
+U+007C > danda
+U+007C U+007C > ddanda
+U+002D > U+002D
+U+005C dot > dot
+U+0022 > U+201D
+U+0027 > U+0027
+U+0028 > U+0028
+U+0029 > U+0029
+U+0060 > U+2018
+U+0060 U+0060 > U+201C
+
+U+0030 > U+0CE6 ; Numerals
+U+0031 > U+0CE7
+U+0032 > U+0CE8
+U+0033 > U+0CE9
+U+0034 > U+0CEA
+U+0035 > U+0CEB
+U+0036 > U+0CEC
+U+0037 > U+0CED
+U+0038 > U+0CEE
+U+0039 > U+0CEF
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka..dha pha..ba ra..la)
+UniClass [mvyanjana] = (pa ba bha sa)
+UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc lvoc esvara Esvara aisvara osvara Osvara ausvara)
+UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra lmatra ematra Ematra aimatra omatra Omatra aumatra)
+UniClass [naletter] = (na)
+Uniclass [galetter] = (ga)
+UniClass [anusvaraletter] = (zero)
+UniClass [avaletter] = (avagraha)
+UniClass [maletter] = (ma)
+UniClass [Naletter] = (Na)
+UniClass [Galetter] = (Ga)
+UniClass [jaletter] = (Ja)
+UniClass [Oletter] = (Omatra)
+UniClass [vletter] = (virama)
+UniClass [osvaraletter] = (Osvara)
+
+[naletter] [vyanjana] > [anusvaraletter] [vyanjana]
+[galetter] [vyanjana] > [anusvaraletter] [vyanjana]
+[maletter] [mvyanjana] > [anusvaraletter] [mvyanjana]
+[maletter] [maletter] [osvaraletter] > [anusvaraletter] [maletter] [Oletter]
+[Galetter] [vyanjana] > [anusvaraletter] [vyanjana]
+[jaletter] [vyanjana] > [anusvaraletter] [vyanjana]
+[Naletter] [vyanjana] > [anusvaraletter] [vyanjana]
+[anusvaraletter] [vyanjana] [svara] > [anusvaraletter] [vyanjana][matra]
+
+pass(Unicode)
+
+Uniclass [vyanjana] = (ka .. ha rla)
+[vyanjana] asvara > [vyanjana]
+
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha rla)
+UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc lvoc esvara Esvara aisvara osvara Osvara ausvara)
+UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra lmatra ematra Ematra aimatra omatra Omatra aumatra)
+[vyanjana] [svara] > [vyanjana] [matra]
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+
+
diff --git a/macros/xetex/generic/itrans/itrans-kan.tec b/macros/xetex/generic/itrans/itrans-kan.tec
new file mode 100644
index 0000000000..6577f19ab7
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-kan.tec
Binary files differ
diff --git a/macros/xetex/generic/itrans/itrans-sankan.map b/macros/xetex/generic/itrans/itrans-sankan.map
new file mode 100644
index 0000000000..111fe999b3
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-sankan.map
@@ -0,0 +1,423 @@
+; TECkit mapping for ITRANS input scheme for writing Unicode Kannada (0C80-0CFF)
+; by Abhinandan S.P. <abhinandan.sp@iiitb.net> and Shrisha Rao <shrao@acm.org>,
+; based on harvardkyoto.map written by Daniel Stender.
+;
+; Updated 2014-09-01
+
+LHSName "itrans-sankan"
+RHSName "Unicode"
+LHSDescription "Devanagari-ITRANS input method for Unicode Kannada"
+Version "3.00"
+
+Define dot U+002E
+
+Define a U+0061
+Define A U+0041
+Define i U+0069
+Define I U+0049
+Define u U+0075
+Define U U+0055
+Define R U+0052
+Define L U+004C
+
+Define e U+0065
+Define E U+0045
+Define o U+006F
+Define H U+0048
+
+Define k U+006B
+Define h U+0068
+Define g U+0067
+Define G U+0047
+
+Define c U+0063
+Define C U+0043
+Define j U+006A
+Define J U+004A
+
+Define T U+0054
+Define D U+0044
+Define N U+004E
+
+Define t U+0074
+Define d U+0064
+Define n U+006E
+
+Define p U+0070
+Define b U+0062
+Define m U+006D
+
+Define y U+0079
+Define r U+0072
+Define l U+006C
+Define v U+0076
+Define w U+0077
+
+Define z U+007A
+Define S U+0053
+Define s U+0073
+Define Y U+0059
+Define O U+004F
+
+Define anudatta U+002D ; -
+Define svarita U+0021 ; !
+Define tlde U+007E
+Define cret U+005E
+Define M U+004D
+
+Define q U+0071
+Define f U+0066
+Define x U+0078
+
+Define zwj U+200D
+Define zwn U+200C
+
+Define anunasika U+0901
+Define anusvara U+0C82
+Define visarga U+0C83
+
+Define asvara U+0C85
+Define Asvara U+0C86
+Define isvara U+0C87
+Define Isvara U+0C88
+Define usvara U+0C89
+Define Usvara U+0C8A
+Define rvoc U+0C8B
+Define Rvoc U+0CE0
+Define lvoc U+0C8C
+Define Lvoc U+0CE1
+Define Esvara U+0C8F
+Define aisvara U+0C90
+Define Osvara U+0C93
+Define ausvara U+0C94
+
+Define Amatra U+0CBE
+Define imatra U+0CBF
+Define Imatra U+0CC0
+Define umatra U+0CC1
+Define Umatra U+0CC2
+Define rmatra U+0CC3
+Define Rmatra U+0CC4
+Define lmatra U+0CE2
+Define Lmatra U+0CE3
+Define Ematra U+0CC7
+Define aimatra U+0CC8
+Define Omatra U+0CCB
+Define aumatra U+0CCC
+
+Define ka U+0C95
+Define kha U+0C96
+Define ga U+0C97
+Define gha U+0C98
+Define Ga U+0C99
+Define cha U+0C9A
+Define Cha U+0C9B
+Define ja U+0C9C
+Define jha U+0C9D
+Define Ja U+0C9E
+Define Ta U+0C9F
+Define Tha U+0CA0
+Define Da U+0CA1
+Define Dha U+0CA2
+Define Na U+0CA3
+Define ta U+0CA4
+Define tha U+0CA5
+Define da U+0CA6
+Define dha U+0CA7
+Define na U+0CA8
+Define pa U+0CAA
+Define pha U+0CAB
+Define ba U+0CAC
+Define bha U+0CAD
+Define ma U+0CAE
+Define ya U+0CAF
+Define ra U+0CB0
+Define la U+0CB2
+Define va U+0CB5
+Define wa U+0CB5
+Define sha U+0CB6
+Define Sha U+0CB7
+Define sa U+0CB8
+Define ha U+0CB9
+
+Define rla U+0CB3
+
+Define danda U+0964
+Define ddanda U+0965
+Define virama U+0CCD
+Define avagraha U+0CBD
+Define lcb U+007B
+Define rcb U+007D
+Define zero U+0CE6
+Define cbindu U+0901
+Define ksha ka virama Sha
+Define knukta ka U+0CBC
+
+
+pass(Unicode)
+
+a > asvara
+a a > Asvara
+A > Asvara
+i > isvara
+i i > Isvara
+I > Isvara
+u > usvara
+u u > Usvara
+U > Usvara
+R R i > rvoc
+R cret i > rvoc
+R R I > Rvoc
+R cret I > Rvoc
+L L i > lvoc
+L cret i > lvoc
+L L I > Lvoc
+L cret I > Lvoc
+
+e > Esvara
+
+a i > aisvara
+o > Osvara
+o o > Osvara
+O > Osvara
+a u > ausvara
+a m s > U+0CE6 sa
+k > ka
+k h > kha
+k dot h > ka virama
+k x > ka virama zwn ksha
+k h dot h > kha virama
+k h x > kha virama zwn ksha
+g > ga
+g dot h > ga virama
+g x > ga virama zwn ksha
+g a dot n > ga anusvara
+g h > gha
+g h dot h > gha virama
+g h x > gha virama zwn ksha
+tlde N > Ga
+N cret > Ga
+G G > Ga
+tlde N dot h > Ga virama
+N cret dot h > Ga virama
+tlde N x > Ga virama zwn ksha
+N cret dot h > Ga virama
+N cret x > zero zwn ksha
+N cret g > zero zwn ga
+N cret g h > zero zwn gha
+n g > na virama ga
+c h > cha
+c h h > Cha
+c h dot h > cha virama
+c h x > cha virama zwn ksha
+c h h x > Cha virama zwn ksha
+C h > Cha
+C h x > Cha virama zwn ksha
+C h dot h > Cha virama
+c h h dot h > Cha virama
+j > ja
+j dot h > ja virama
+j x > ja virama zwn ksha
+j h > jha
+j h x > jha virama zwn ksha
+j h dot h > jha virama
+tlde n a > Ja
+tlde n > Ja
+tlde n x > Ja virama zwn ksha
+tlde n dot h > Ja virama
+J N > Ja
+J N x > Ja virama zwn ksha
+T > Ta
+T x > Ta virama zwn ksha
+T dot h > Ta virama
+T h > Tha
+T h dot h > Tha virama
+T h x > Tha virama zwn ksha
+D > Da
+D x > Da virama zwn ksha
+D dot h > Da virama
+D h > Dha
+D h dot h > Dha virama
+D h x > Dha virama zwn ksha
+N > Na
+N dot h > Na virama
+N x > Na virama zwn ksha
+N N > Na virama Na
+t > ta
+t dot h > ta virama
+t x > ta virama zwn ksha
+t h > tha
+t h x > tha virama zwn ksha
+t h dot h > tha virama
+d > da
+d x > da virama zwn ksha
+d dot h > da virama
+d h > dha
+d h x > dha virama zwn ksha
+d h dot h > dha virama
+n > na
+n x > na virama zwn ksha
+n dot h > na virama
+p > pa
+p x > pa virama zwn ksha
+p dot h > pa virama
+p h > pha
+p h x > pha virama zwn ksha
+p h dot h > pha virama
+b > ba
+b x > ba virama zwn ksha
+b dot h > ba virama
+b h > bha
+b h x > bha virama zwn ksha
+b h dot h > bha virama
+m > ma
+m dot h > ma virama
+m x > ma virama zwn ksha
+y > ya
+y dot h > ya virama
+y x > ya virama zwn ksha
+r > ra
+r x > ra virama zwn ksha
+r dot h > ra virama
+l > la
+l x > la virama zwn ksha
+L > rla
+L x > rla virama zwn ksha
+l dot h > la virama
+L dot h > rla virama
+v > va
+v x > va virama zwn ksha
+v dot h > va virama
+w > wa
+w x > va virama zwn ksha
+w dot h > wa virama
+s h > sha
+s h x > sha virama zwn ksha
+s h dot h > sha virama
+s h h > Sha
+s h h x > Sha virama zwn ksha
+s h h dot h > Sha virama
+S h > Sha
+S h x > Sha virama zwn ksha
+S h dot h > Sha virama
+s > sa
+s x > sa virama zwn ksha
+s dot h > sa virama
+h > ha
+h x > ha virama zwn ksha
+h dot h > ha virama
+N cret x > zero ksha
+x > ksha
+x dot h > ksha virama
+k S h > ksha
+k S h dot h > ksha virama
+G Y > ja virama Ja
+j tlde n > ja virama Ja
+v a cret cret r > va ra virama
+m lcb rcb > ma virama
+lcb rcb > zwn
+
+
+dot m > anunasika
+q > knukta
+
+U+004D > anusvara
+U+0029 M > U+0029 U+0CE6
+dot a M > avagraha zero
+dot n > anusvara
+U+0048 > visarga
+dot a > avagraha
+dot a lcb rcb > avagraha
+dot a N cret > avagraha U+0CE6
+
+U+002C > virama
+dot N > na
+
+U+002F dot > dot
+U+007C > danda
+U+007C U+007C > ddanda
+U+002D > U+002D
+U+005C dot > dot
+U+0022 > U+201D
+U+0027 > U+0027
+U+0028 > U+0028
+U+0029 > U+0029
+U+0060 > U+2018
+U+0060 U+0060 > U+201C
+
+U+0030 > U+0CE6 ; Numerals
+U+0031 > U+0CE7
+U+0032 > U+0CE8
+U+0033 > U+0CE9
+U+0034 > U+0CEA
+U+0035 > U+0CEB
+U+0036 > U+0CEC
+U+0037 > U+0CED
+U+0038 > U+0CEE
+U+0039 > U+0CEF
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka..dha pha..ba ra..la)
+UniClass [mvyanjana] = (pa ba bha)
+
+UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc lvoc Esvara aisvara Osvara ausvara)
+UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra lmatra Ematra aimatra Omatra aumatra)
+UniClass [naletter] = (na)
+UniClass [anusvaraletter] = (zero)
+UniClass [avaletter] = (avagraha)
+UniClass [maletter] = (ma)
+UniClass [Naletter] = (Na)
+UniClass [galetter] = (Ga)
+UniClass [jaletter] = (Ja)
+UniClass [osvaraletter] = (Osvara)
+UniClass [omatra] = (Omatra)
+
+UniClass [vletter] = (virama)
+
+[naletter] [vyanjana] > [anusvaraletter] [vyanjana]
+[maletter] [mvyanjana] > [anusvaraletter] [mvyanjana]
+[maletter] [maletter] [osvaraletter] > [anusvaraletter] [maletter] [omatra]
+[galetter] [vyanjana] > [anusvaraletter] [vyanjana]
+[jaletter] [vyanjana] > [anusvaraletter] [vyanjana]
+[Naletter] [vyanjana] > [anusvaraletter] [vyanjana]
+[anusvaraletter] [vyanjana] [svara] > [anusvaraletter] [vyanjana][matra]
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha rla)
+UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc lvoc Esvara aisvara Osvara ausvara)
+UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra lmatra Ematra aimatra Omatra aumatra)
+[vyanjana] [svara] > [vyanjana] [matra]
+
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+;; In this mapping, target language is kannada and generally Kannada words does not
+;; end with virama. Also, this causes buggy output in Kannada. Hence, commenting fourth pass
+;; Fourth pass: making remaining conjuncts (for groups of two or more consonants)
+;; and adding viramas to the end of the words in Sanskrit
+
+;;pass (Unicode)
+
+;; Classes
+;;UniClass [vyanjana] = (ka .. ha rla)
+;;UniClass [spacepunct] = (U+0009 .. U+0040 U+005B .. U+0060 U+007B .. U+007D danda ddanda \
+;; U+2013 U+2014 U+2018 U+2019 U+201C U+201D)
+
+;;[vyanjana]=v1 [vyanjana]=v2 <> @v1 virama @v2
+;;[vyanjana] / _ [spacepunct] <> [vyanjana] virama / _ [spacepunct]
+;;[vyanjana] / _ # <> [vyanjana] virama / _ #
+
+pass(Unicode)
+
+Uniclass [vyanjana] = (ka .. ha rla)
+[vyanjana] asvara > [vyanjana]
diff --git a/macros/xetex/generic/itrans/itrans-sankan.tec b/macros/xetex/generic/itrans/itrans-sankan.tec
new file mode 100644
index 0000000000..bea0998a09
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-sankan.tec
Binary files differ
diff --git a/macros/xetex/generic/itrans/itrans-santel.map b/macros/xetex/generic/itrans/itrans-santel.map
new file mode 100644
index 0000000000..7b185e5f03
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-santel.map
@@ -0,0 +1,450 @@
+; TECkit mapping for ITRANS input scheme for writing Unicode Kannada (0C80-0CFF)
+; by Shrisha Rao <shrao@acm.org> and Abhinandan S.P.,
+; based on harvardkyoto.map written by Daniel Stender.
+;
+; Updated 2014-09-01
+
+LHSName "itrans-santel"
+RHSName "Unicode"
+LHSDescription "Devanagari-ITRANS input method for Unicode Telugu"
+Version "1.00"
+
+Define dot U+002E
+
+Define a U+0061
+Define A U+0041
+Define i U+0069
+Define I U+0049
+Define u U+0075
+Define U U+0055
+Define R U+0052
+Define L U+004C
+
+Define e U+0065
+Define E U+0045
+Define o U+006F
+Define O U+004F
+
+Define k U+006B
+Define h U+0068
+Define g U+0067
+Define G U+0047
+
+Define c U+0063
+Define C U+0043
+Define j U+006A
+Define J U+004A
+
+Define T U+0054
+Define D U+0044
+Define N U+004E
+
+Define t U+0074
+Define d U+0064
+Define n U+006E
+
+Define p U+0070
+Define b U+0062
+Define m U+006D
+
+Define y U+0079
+Define r U+0072
+Define l U+006C
+Define v U+0076
+Define w U+0077
+
+Define z U+007A
+Define S U+0053
+Define s U+0073
+Define Y U+0059
+
+Define Q U+0051 ;;;eknath
+Define Z U+005A ;;;eknath
+
+;;;;;Define anudatta U+002D ; - allow -
+;;;;;Define svarita U+0021 ; ! allow !
+Define tlde U+007E
+Define cret U+005E
+Define M U+004D
+
+Define q U+0071
+Define f U+0066
+Define x U+0078
+
+Define X U+007C
+
+Define zwj U+200D
+Define zwn U+200C
+
+Define anunasika U+0C01
+Define anusvara U+0C02
+Define visarga U+0C03
+
+Define asvara U+0C05
+Define Asvara U+0C06
+Define isvara U+0C07
+Define Isvara U+0C08
+Define usvara U+0C09
+Define Usvara U+0C0A
+Define rvoc U+0C0B
+Define Rvoc U+0C60
+Define lvoc U+0C0C
+Define Lvoc U+0C61
+Define esvara U+0C0E
+Define Esvara U+0C0F
+Define aisvara U+0C10
+Define osvara U+0C12
+Define Osvara U+0C13
+Define ausvara U+0C14
+
+Define Msvara U+0C02
+
+Define Amatra U+0C3E
+Define imatra U+0C3F
+Define Imatra U+0C40
+Define umatra U+0C41
+Define Umatra U+0C42
+Define rmatra U+0C43
+Define Rmatra U+0C44
+Define lmatra U+0C62
+Define ematra U+0C46
+Define Ematra U+0C47
+Define aimatra U+0C48
+Define omatra U+0C4A
+Define Omatra U+0C4B
+Define aumatra U+0C4C
+
+
+
+Define ka U+0C15
+Define kha U+0C16
+Define ga U+0C17
+Define gha U+0C18
+Define Ga U+0C19
+Define cha U+0C1A
+Define Cha U+0C1B
+Define ja U+0C1C
+Define jha U+0C1D
+Define Ja U+0C1E
+Define Ta U+0C1F
+Define Tha U+0C20
+Define Da U+0C21
+Define Dha U+0C22
+Define Na U+0C23
+Define ta U+0C24
+Define tha U+0C25
+Define da U+0C26
+Define dha U+0C27
+Define na U+0C28
+Define pa U+0C2A
+Define pha U+0C2B
+Define ba U+0C2C
+Define bha U+0C2D
+Define ma U+0C2E
+Define ya U+0C2F
+Define ra U+0C30
+Define Ra U+0C31 ;;eknath
+Define la U+0C32
+Define va U+0C35
+Define wa U+0C35
+Define sha U+0C36
+Define Sha U+0C37
+Define sa U+0C38
+Define ha U+0C39
+
+Define hka U+0C58
+Define hkha U+0C59
+Define hga U+0C5A
+Define hja U+0C5B
+Define hDa U+0C5C
+Define hda U+0C5D
+Define hna U+0C29
+Define hpha U+0C5E
+Define hya U+0C5F
+Define hra U+0C31
+Define hla U+0C34
+
+Define rla U+0C33
+;;;;Define vstroke U+0C51 ;;dont know what this is
+Define hstroke U+0C52
+
+Define danda U+0C64
+Define ddanda U+0C65
+Define virama U+0C4D
+Define avagraha U+093D
+
+Define lcb U+007B
+Define rcb U+007D
+Define zero U+0C02
+Define cbindu U+0901
+Define ksha ka virama Sha
+Define knukta ka U+0CBC
+
+
+
+
+pass(Unicode)
+
+a > asvara
+a a > Asvara
+A > Asvara
+i > isvara
+i i > Isvara
+I > Isvara
+u > usvara
+u u > Usvara
+U > Usvara
+R R i > rvoc
+R cret i > rvoc
+R R I > Rvoc
+R cret I > Rvoc
+L L i > lvoc
+L cret i > lvoc
+L L I > Lvoc
+L cret I > Lvoc
+
+e > Esvara
+
+a i > aisvara
+o > Osvara
+o o > Osvara
+O > Osvara
+a u > ausvara
+
+k > ka
+k h > kha
+k dot h > ka virama
+k x > ka virama zwn ksha
+k h dot h > kha virama
+k h x > kha virama zwn ksha
+g > ga
+g dot h > ga virama
+g x > ga virama zwn ksha
+g a dot n > ga anusvara
+g h > gha
+g h dot h > gha virama
+g h x > gha virama zwn ksha
+tlde N > Ga
+N cret > Ga
+G G > Ga
+tlde N dot h > Ga virama
+N cret dot h > Ga virama
+tlde N x > Ga virama zwn ksha
+N cret dot h > Ga virama
+N cret x > zero zwn ksha
+N cret g > zero zwn ga
+N cret g h > zero zwn gha
+n g > na virama ga
+c h > cha
+c h h > Cha
+c h dot h > cha virama
+c h x > cha virama zwn ksha
+c h h x > Cha virama zwn ksha
+C h > Cha
+C h x > Cha virama zwn ksha
+C h dot h > Cha virama
+c h h dot h > Cha virama
+j > ja
+j dot h > ja virama
+j x > ja virama zwn ksha
+j h > jha
+j h x > jha virama zwn ksha
+j h dot h > jha virama
+tlde n a > Ja
+tlde n > Ja
+tlde n x > Ja virama zwn ksha
+tlde n dot h > Ja virama
+J N > Ja
+J N x > Ja virama zwn ksha
+T > Ta
+T x > Ta virama zwn ksha
+T dot h > Ta virama
+T h > Tha
+T h dot h > Tha virama
+T h x > Tha virama zwn ksha
+D > Da
+D x > Da virama zwn ksha
+D dot h > Da virama
+D h > Dha
+D h dot h > Dha virama
+D h x > Dha virama zwn ksha
+N > Na
+N dot h > Na virama
+N x > Na virama zwn ksha
+N N > Na virama Na
+t > ta
+t dot h > ta virama
+t x > ta virama zwn ksha
+t h > tha
+t h x > tha virama zwn ksha
+t h dot h > tha virama
+d > da
+d x > da virama zwn ksha
+d dot h > da virama
+d h > dha
+d h x > dha virama zwn ksha
+d h dot h > dha virama
+n > na
+n x > na virama zwn ksha
+n dot h > na virama
+p > pa
+p x > pa virama zwn ksha
+p dot h > pa virama
+p h > pha
+p h x > pha virama zwn ksha
+p h dot h > pha virama
+b > ba
+b x > ba virama zwn ksha
+b dot h > ba virama
+b h > bha
+b h x > bha virama zwn ksha
+b h dot h > bha virama
+m > ma
+m dot h > ma virama
+m x > ma virama zwn ksha
+y > ya
+y dot h > ya virama
+y x > ya virama zwn ksha
+r > ra
+r x > ra virama zwn ksha
+r dot h > ra virama
+l > la
+l x > la virama zwn ksha
+L > rla
+L x > rla virama zwn ksha
+l dot h > la virama
+L dot h > rla virama
+v > va
+v x > va virama zwn ksha
+v dot h > va virama
+w > wa
+w x > va virama zwn ksha
+w dot h > wa virama
+s h > sha
+s h x > sha virama zwn ksha
+s h dot h > sha virama
+s h h > Sha
+s h h x > Sha virama zwn ksha
+s h h dot h > Sha virama
+S h > Sha
+S h x > Sha virama zwn ksha
+S h dot h > Sha virama
+s > sa
+s x > sa virama zwn ksha
+s dot h > sa virama
+h > ha
+h x > ha virama zwn ksha
+h dot h > ha virama
+N cret x > zero ksha
+x > ksha
+x dot h > ksha virama
+k S h > ksha
+k S h dot h > ksha virama
+G Y > ja virama Ja
+j tlde n > ja virama Ja
+v a cret cret r > va ra virama
+m lcb rcb > ma virama
+lcb rcb > zwn
+
+
+dot m > anunasika
+q > knukta
+
+U+004D > anusvara
+U+0029 M > U+0029 U+0CE6
+dot a M > avagraha zero
+dot n > anusvara
+U+0048 > visarga
+dot a > avagraha
+dot a lcb rcb > avagraha
+dot a N cret > avagraha U+0CE6
+
+U+002C > virama
+dot N > na
+
+U+002F dot > dot
+;U+007C > danda
+;U+007C U+007C > ddanda
+U+002D > U+002D
+U+005C dot > dot
+U+0022 > U+201D
+U+0027 > U+0027
+U+0028 > U+0028
+U+0029 > U+0029
+U+0060 > U+2018
+U+0060 U+0060 > U+201C
+
+U+0030 > U+0C66 ; Numerals
+U+0031 > U+0C67
+U+0032 > U+0C68
+U+0033 > U+0C69
+U+0034 > U+0C6A
+U+0035 > U+0C6B
+U+0036 > U+0C6C
+U+0037 > U+0C6D
+U+0038 > U+0C6E
+U+0039 > U+0C6F
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka..dha pha..ba ra..la)
+UniClass [mvyanjana] = (pa ba bha)
+
+UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc lvoc Esvara aisvara Osvara ausvara)
+UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra lmatra Ematra aimatra Omatra aumatra)
+UniClass [naletter] = (na)
+UniClass [anusvaraletter] = (zero)
+UniClass [avaletter] = (avagraha)
+UniClass [maletter] = (ma)
+UniClass [Naletter] = (Na)
+UniClass [galetter] = (Ga)
+UniClass [jaletter] = (Ja)
+UniClass [osvaraletter] = (Osvara)
+UniClass [xomatra] = (Omatra)
+;UniClass [omatra] = (Omatra)
+
+UniClass [vletter] = (virama)
+
+[naletter] [vyanjana] > [anusvaraletter] [vyanjana]
+[maletter] [mvyanjana] > [anusvaraletter] [mvyanjana]
+[maletter] [maletter] [osvaraletter] > [anusvaraletter] [maletter] [xomatra]
+[galetter] [vyanjana] > [anusvaraletter] [vyanjana]
+[jaletter] [vyanjana] > [anusvaraletter] [vyanjana]
+[Naletter] [vyanjana] > [anusvaraletter] [vyanjana]
+[anusvaraletter] [vyanjana] [svara] > [anusvaraletter] [vyanjana][matra]
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha rla)
+UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc lvoc Esvara aisvara Osvara ausvara)
+UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra lmatra Ematra aimatra Omatra aumatra)
+[vyanjana] [svara] > [vyanjana] [matra]
+
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+;; Fourth pass: making remaining conjuncts (for groups of two or more consonants)
+;; and adding viramas to the end of the words in Sanskrit
+pass (Unicode)
+
+;; Classes
+UniClass [vyanjana] = (ka .. ha rla)
+UniClass [spacepunct] = (U+0009 .. U+0040 U+005B .. U+0060 U+007B .. U+007D danda ddanda \
+ U+2013 U+2014 U+2018 U+2019 U+201C U+201D)
+
+[vyanjana]=v1 [vyanjana]=v2 <> @v1 virama @v2
+[vyanjana] / _ [spacepunct] <> [vyanjana] virama / _ [spacepunct]
+[vyanjana] / _ # <> [vyanjana] virama / _ #
+
+pass(Unicode)
+
+Uniclass [vyanjana] = (ka .. ha rla)
+[vyanjana] asvara > [vyanjana]
diff --git a/macros/xetex/generic/itrans/itrans-santel.tec b/macros/xetex/generic/itrans/itrans-santel.tec
new file mode 100644
index 0000000000..dc963c6067
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-santel.tec
Binary files differ
diff --git a/macros/xetex/generic/itrans/itrans-sdvn.map b/macros/xetex/generic/itrans/itrans-sdvn.map
new file mode 100644
index 0000000000..2140c4ca3c
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-sdvn.map
@@ -0,0 +1,341 @@
+; TECkit mapping for ITRANS input scheme for writing Unicode Devanagari (0900-097F)
+; by Abhinandan S.P. <abhinandan.sp@iiitb.net> and Shrisha Rao <shrao@acm.org>,
+; based on harvardkyoto.map written by Daniel Stender.
+;
+; Updated 2014-09-01
+
+LHSName "itrans-sdvn"
+RHSName "Unicode"
+LHSDescription "ITRANS input method for Unicode Devanagari"
+Version "1.00"
+
+Define dot U+002E
+
+Define a U+0061
+Define A U+0041
+Define i U+0069
+Define I U+0049
+Define u U+0075
+Define U U+0055
+Define R U+0052
+Define L U+004C
+
+Define e U+0065
+Define o U+006F
+
+Define k U+006B
+Define h U+0068
+Define g U+0067
+Define G U+0047
+
+Define c U+0063
+Define C U+0043
+Define j U+006A
+Define J U+004A
+
+Define T U+0054
+Define D U+0044
+Define N U+004E
+
+Define t U+0074
+Define d U+0064
+Define n U+006E
+
+Define p U+0070
+Define b U+0062
+Define m U+006D
+
+Define y U+0079
+Define r U+0072
+Define l U+006C
+Define v U+0076
+Define w U+0077
+
+Define z U+007A
+Define S U+0053
+Define s U+0073
+Define Y U+0059
+Define O U+004F
+
+Define anudatta U+002D ; -
+Define svarita U+0021 ; !
+Define tlde U+007E
+Define cret U+005E
+Define M U+004D
+
+Define q U+0071
+Define f U+0066
+Define x U+0078
+
+
+Define anunasika U+0901
+Define anusvara U+0902
+Define visarga U+0903
+
+Define asvara U+0905
+Define Asvara U+0906
+Define isvara U+0907
+Define Isvara U+0908
+Define usvara U+0909
+Define Usvara U+090A
+Define rvoc U+090B
+Define Rvoc U+0960
+Define lvoc U+090C
+Define Lvoc U+0961
+Define esvara U+090F
+Define aisvara U+0910
+Define osvara U+0913
+Define ausvara U+0914
+
+Define Amatra U+093E
+Define imatra U+093F
+Define Imatra U+0940
+Define umatra U+0941
+Define Umatra U+0942
+Define rmatra U+0943
+Define Rmatra U+0944
+Define lmatra U+0962
+Define ematra U+0947
+Define aimatra U+0948
+Define omatra U+094B
+Define aumatra U+094C
+
+Define ka U+0915
+Define kha U+0916
+Define ga U+0917
+Define gha U+0918
+Define Ga U+0919
+Define cha U+091A
+Define Cha U+091B
+Define ja U+091C
+Define jha U+091D
+Define Ja U+091E
+Define Ta U+091F
+Define Tha U+0920
+Define Da U+0921
+Define Dha U+0922
+Define Na U+0923
+Define ta U+0924
+Define tha U+0925
+Define da U+0926
+Define dha U+0927
+Define na U+0928
+Define pa U+092A
+Define pha U+092B
+Define ba U+092C
+Define bha U+092D
+Define ma U+092E
+Define ya U+092F
+Define ra U+0930
+Define la U+0932
+Define va U+0935
+Define wa U+0935
+Define sha U+0936
+Define Sha U+0937
+Define sa U+0938
+Define ha U+0939
+
+Define hka U+0958
+Define hkha U+0959
+Define hga U+095A
+Define hja U+095B
+Define hDa U+095C
+Define hda U+095D
+Define hna U+0929
+Define hpha U+095E
+Define hya U+095F
+Define hra U+0931
+Define hla U+0934
+
+Define rla U+0933
+Define vstroke U+0951
+Define hstroke U+0952
+
+Define danda U+0964
+Define ddanda U+0965
+Define virama U+094D
+Define avagraha U+093D
+
+Define om U+0950
+
+
+pass(Unicode)
+
+a > asvara
+a a > Asvara
+A > Asvara
+i > isvara
+i i > Isvara
+I > Isvara
+u > usvara
+u u > Usvara
+U > Usvara
+R R i > rvoc
+R cret i > rvoc
+R R I > Rvoc
+R cret I > Rvoc
+L L i > lvoc
+L cret i > lvoc
+L L I > Lvoc
+L cret I > Lvoc
+
+e > esvara
+a i > aisvara
+o > osvara
+a u > ausvara
+
+k > ka
+k h > kha
+k dot h > ka virama
+k h dot h > kha virama
+g > ga
+g dot h > ga virama
+g h > gha
+g h dot h > gha virama
+tlde N > Ga
+N cret > Ga
+G G > Ga
+tlde N dot h > Ga virama
+N cret dot h > Ga virama
+c h > cha
+c h h > Cha
+c h dot h > cha virama
+C h > Cha
+C h dot h > Cha virama
+c h h dot h > Cha virama
+j > ja
+j dot h > ja virama
+j h > jha
+j h dot h > jha virama
+tlde n > Ja
+tlde n dot h > Ja virama
+J N > Ja
+T > Ta
+T dot h > Ta virama
+T h > Tha
+T h dot h > Tha virama
+D > Da
+D dot h > Da virama
+D h > Dha
+D h dot h > Dha virama
+N > Na
+N dot h > Na virama
+t > ta
+t dot h > ta virama
+t h > tha
+t h dot h > tha virama
+d > da
+d dot h > da virama
+d h > dha
+d h dot h > dha virama
+n > na
+n dot h > na virama
+p > pa
+p dot h > pa virama
+p h > pha
+p h dot h > pha virama
+b > ba
+b dot h > ba virama
+b h > bha
+b h dot h > bha virama
+m > ma
+m dot h > ma virama
+y > ya
+y dot h > ya virama
+r > ra
+r dot h > ra virama
+l > la
+l dot h > la virama
+v > va
+v dot h > va virama
+w > wa
+w dot h > wa virama
+s h > sha
+s h dot h > sha virama
+s h h > Sha
+s h h dot h > Sha virama
+S h > Sha
+S h dot h > Sha virama
+s > sa
+s dot h > sa virama
+h > ha
+h dot h > ha virama
+x > ka virama Sha
+x dot h > ka virama Sha virama
+k S h > ka virama Sha
+k S h dot h > ka virama Sha virama
+G Y > ja virama Ja
+A U M > om
+
+
+q > hka
+x > hkha
+dot g > hga
+dot z > hja
+f > hpha
+
+svarita > vstroke
+anudatta > hstroke
+
+L > rla
+dot m > anunasika
+
+U+004D > anusvara
+dot n > anusvara
+U+0048 > visarga
+dot a > avagraha
+U+002C > virama
+
+U+007C > danda
+U+007C U+007C > ddanda
+
+O M > om
+
+U+0030 > U+0966 ; Numerals
+U+0031 > U+0967
+U+0032 > U+0968
+U+0033 > U+0969
+U+0034 > U+096A
+U+0035 > U+096B
+U+0036 > U+096C
+U+0037 > U+096D
+U+0038 > U+096E
+U+0039 > U+096F
+
+
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha rla hka .. hpha)
+UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc lvoc esvara aisvara osvara ausvara)
+UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra lmatra ematra aimatra omatra aumatra)
+[vyanjana] [svara] > [vyanjana] [matra]
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+;; Fourth pass: making remaining conjuncts (for groups of two or more consonants)
+;; and adding viramas to the end of the words in Sanskrit
+pass (Unicode)
+
+;; Classes
+UniClass [vyanjana] = (ka .. ha rla hka..hpha)
+UniClass [spacepunct] = (U+0009 .. U+0040 U+005B .. U+0060 U+007B .. U+007D danda ddanda \
+ U+2013 U+2014 U+2018 U+2019 U+201C U+201D)
+
+[vyanjana]=v1 [vyanjana]=v2 <> @v1 virama @v2
+[vyanjana] / _ [spacepunct] <> [vyanjana] virama / _ [spacepunct]
+[vyanjana] / _ # <> [vyanjana] virama / _ #
+
+
+pass(Unicode)
+
+Uniclass [vyanjana] = (ka .. ha rla hka .. hpha)
+[vyanjana] asvara > [vyanjana]
diff --git a/macros/xetex/generic/itrans/itrans-sdvn.tec b/macros/xetex/generic/itrans/itrans-sdvn.tec
new file mode 100644
index 0000000000..5043c9b3be
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-sdvn.tec
Binary files differ
diff --git a/macros/xetex/generic/itrans/itrans-tamil-sample.pdf b/macros/xetex/generic/itrans/itrans-tamil-sample.pdf
new file mode 100644
index 0000000000..3c00a78376
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-tamil-sample.pdf
Binary files differ
diff --git a/macros/xetex/generic/itrans/itrans-tamil-sample.tex b/macros/xetex/generic/itrans/itrans-tamil-sample.tex
new file mode 100644
index 0000000000..43b5be1956
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-tamil-sample.tex
@@ -0,0 +1,29 @@
+\documentclass[12pt]{article}
+\usepackage{ifxetex}
+\RequireXeTeX
+\usepackage{fontspec}
+\newcommand\dn{\catcode`\^=11
+ \catcode`\~=11
+ \fontspec[Script=Tamil,Mapping=itrans-tamil]{JanaTamil}}
+
+\obeylines
+
+\begin{document}
+
+{\dn
+
+a aa A i ii I u uu U e E ai o O au q
+
+ka ga ~Na N^a cha ~na Ta Tha Na ta tha na ^na pa ba
+
+ma ya ra la va wa Ja za La Ra Sha sa ja ha xa
+
+1 2 3 4 5 6 7 8 9 10 100 1000
+
+ka kaa kA ki kii kI ku kuu kU ke kE kai ko kO kau kq
+
+na^nRi
+
+}
+\end{document}
+
diff --git a/macros/xetex/generic/itrans/itrans-tamil.map b/macros/xetex/generic/itrans/itrans-tamil.map
new file mode 100644
index 0000000000..872f3a4c78
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-tamil.map
@@ -0,0 +1,355 @@
+; TECkit mapping for ITRANS input scheme for writing Unicode Tamil (0B80-0BFF)
+; by Abhinandan S.P. <abhinandan.sp@iiitb.net> and Shrisha Rao <shrao@acm.org>,
+; based on harvardkyoto.map written by Daniel Stender.
+;
+; Updated 2010-10-19
+
+LHSName "itrans-tamil"
+RHSName "Unicode"
+LHSDescription "Itrans input method for Unicode Tamil"
+Version "1.00"
+
+Define dot U+002E
+
+Define a U+0061
+Define A U+0041
+Define i U+0069
+Define I U+0049
+Define u U+0075
+Define U U+0055
+Define R U+0052
+Define L U+004C
+
+Define e U+0065
+Define E U+0045
+Define o U+006F
+
+Define k U+006B
+Define h U+0068
+Define g U+0067
+Define G U+0047
+
+Define c U+0063
+Define C U+0043
+Define j U+006A
+Define J U+004A
+
+Define T U+0054
+Define D U+0044
+Define N U+004E
+
+Define t U+0074
+Define d U+0064
+Define n U+006E
+
+Define p U+0070
+Define b U+0062
+Define m U+006D
+
+Define y U+0079
+Define r U+0072
+Define l U+006C
+Define v U+0076
+Define w U+0077
+
+Define z U+007A
+Define S U+0053
+Define s U+0073
+Define Y U+0059
+Define O U+004F
+
+Define anudatta U+002D ; -
+Define svarita U+0021 ; !
+Define tlde U+007E
+Define cret U+005E
+Define M U+004D
+
+Define q U+0071
+Define f U+0066
+Define x U+0078
+
+
+;Define anunasika U+0901
+Define anusvara U+0B82
+Define visarga U+0B83
+
+Define asvara U+0B85
+Define Asvara U+0B86
+Define isvara U+0B87
+Define Isvara U+0B88
+Define usvara U+0B89
+Define Usvara U+0B8A
+;Define rvoc U+0C8B
+;Define Rvoc U+0CE0
+;Define lvoc U+0C8C
+;Define Lvoc U+0CE1
+Define esvara U+0B8E
+Define Esvara U+0B8F
+Define aisvara U+0B90
+Define osvara U+0B92
+Define Osvara U+0B93
+Define ausvara U+0B94
+
+Define Amatra U+0BBE
+Define imatra U+0BBF
+Define Imatra U+0BC0
+Define umatra U+0BC1
+Define Umatra U+0BC2
+;Define rmatra U+0CC3
+;Define Rmatra U+0CC4
+;Define lmatra U+0CE2
+;Define Lmatra U+0CE3
+Define ematra U+0BC6
+Define Ematra U+0BC7
+Define aimatra U+0BC8
+Define omatra U+0BCA
+Define Omatra U+0BCB
+Define aumatra U+0BCC
+
+Define ka U+0B95
+;Define kha U+0C96
+Define ga U+0B95
+;Define gha U+0C98
+Define Ga U+0B99
+Define cha U+0B9A
+;Define Cha U+0C9B
+Define ja U+0B9C
+;Define jha U+0C9D
+Define Ja U+0B9E
+Define Ta U+0B9F
+Define Tha U+0B9F
+;Define Da U+0CA1
+;Define Dha U+0CA2
+Define Na U+0BA3
+Define ta U+0BA4
+Define tha U+0BA4
+;Define da U+0CA6
+;Define dha U+0CA7
+Define na U+0BA8
+Define nnaa U+0BA9
+Define pa U+0BAA
+;Define pha U+0CAB
+Define ba U+0BAA
+;Define bha U+0CAD
+Define ma U+0BAE
+Define ya U+0BAF
+Define ra U+0BB0
+Define rra U+0BB1
+Define la U+0BB2
+Define lla U+0BB3
+Define llla U+0BB4
+Define va U+0BB5
+Define wa U+0BB5
+Define sha U+0BB6
+Define Sha U+0BB7
+Define sa U+0BB8
+Define ha U+0BB9
+
+;Define hka U+0958
+;Define hkha U+0959
+;Define hga U+095A
+;Define hja U+095B
+;Define hDa U+095C
+;Define hda U+095D
+;Define hna U+0929
+;Define hpha U+095E
+;Define hya U+095F
+;Define hra U+0931
+;Define hla U+0934
+
+;Define rla U+0CB3
+;Define vstroke U+0951
+;Define hstroke U+0952
+
+Define danda U+0964
+Define ddanda U+0965
+Define virama U+0BCD
+Define avagraha U+0CBD
+
+Define om U+0BD0
+
+
+pass(Unicode)
+
+a > asvara
+a a > Asvara
+A > Asvara
+i > isvara
+i i > Isvara
+I > Isvara
+u > usvara
+u u > Usvara
+U > Usvara
+;R R i > rvoc
+;R cret i > rvoc
+;R R I > Rvoc
+;R cret I > Rvoc
+;L L i > lvoc
+;L cret i > lvoc
+;L L I > Lvoc
+;L cret I > Lvoc
+
+e > esvara
+E > Esvara
+a i > aisvara
+o > osvara
+O > Osvara
+a u > ausvara
+
+k > ka
+;k h > kha
+k dot h > ka virama
+;k h dot h > kha virama
+g > ga
+g dot h > ga virama
+;g h > gha
+;g h dot h > gha virama
+tlde N > Ga
+N cret > Ga
+tlde N dot h > Ga virama
+N cret dot h > Ga virama
+c h > cha
+;c h h > Cha
+c h dot h > cha virama
+;C h > Cha
+;C h dot h > Cha virama
+;c h h dot h > Cha virama
+j > ja
+j dot h > ja virama
+;j h > jha
+;j h dot h > jha virama
+tlde n > Ja
+tlde n dot h > Ja virama
+J N > Ja
+T > Ta
+T dot h > Ta virama
+T h > Tha
+T h dot h > Tha virama
+;D > Da
+;D dot h > Da virama
+;D h > Dha
+;D h dot h > Dha virama
+N > Na
+N dot h > Na virama
+t > ta
+t dot h > ta virama
+t h > tha
+t h dot h > tha virama
+;d > da
+;d dot h > da virama
+;d h > dha
+;d h dot h > dha virama
+n > na
+n dot h > na virama
+cret n > nnaa
+cret n dot h > nnaa virama
+
+p > pa
+p dot h > pa virama
+;p h > pha
+;p h dot h > pha virama
+b > ba
+b dot h > ba virama
+;b h > bha
+;b h dot h > bha virama
+m > ma
+m dot h > ma virama
+y > ya
+y dot h > ya virama
+r > ra
+r dot h > ra virama
+R > rra
+R dot h > rra virama
+l > la
+L > lla
+J > llla
+z > llla
+l dot h > la virama
+L dot h > lla virama
+J dot h > lla virama
+z dot h > lla virama
+v > va
+v dot h > va virama
+w > wa
+w dot h > wa virama
+s h > sha
+s h dot h > sha virama
+s h h > Sha
+s h h dot h > Sha virama
+S h > Sha
+S h dot h > Sha virama
+s > sa
+s dot h > sa virama
+h > ha
+h dot h > ha virama
+x > ka virama Sha
+x dot h > ka virama Sha virama
+k S h > ka virama Sha
+k S h dot h > ka virama Sha virama
+G Y > ja virama Ja
+A U M > om
+
+s r i > U+0BB6 U+0BCD U+0BB0 U+0BC0
+
+;q > hka
+;x > hkha
+;dot g > hga
+;dot z > hja
+;f > hpha
+
+;svarita > vstroke
+;anudatta > hstroke
+
+;L > rla
+;dot m > anunasika
+
+U+004D > anusvara
+a n > anusvara
+dot n > anusvara
+N cret > anusvara
+q > visarga
+U+0048 > visarga
+dot a > avagraha
+U+002C > virama
+
+U+007C > danda
+U+007C U+007C > ddanda
+
+O M > om
+
+U+0030 > U+0BE6 ; Numerals
+U+0031 > U+0BE7
+U+0032 > U+0BE8
+U+0033 > U+0BE9
+U+0034 > U+0BEA
+U+0035 > U+0BEB
+U+0036 > U+0BEC
+U+0037 > U+0BED
+U+0038 > U+0BEE
+U+0039 > U+0BEF
+
+U+0031 U+0030 > U+0BF0
+U+0031 U+0030 U+0030 > U+0BF1
+U+0031 U+0030 U+0030 U+0030 > U+0BF2
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+UniClass [svara] = (Asvara isvara Isvara usvara Usvara esvara Esvara aisvara osvara Osvara ausvara)
+UniClass [matra] = (Amatra imatra Imatra umatra Umatra ematra Ematra aimatra omatra Omatra aumatra)
+[vyanjana] [svara] > [vyanjana] [matra]
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+pass(Unicode)
+
+Uniclass [vyanjana] = (ka .. ha)
+[vyanjana] asvara > [vyanjana]
diff --git a/macros/xetex/generic/itrans/itrans-tamil.tec b/macros/xetex/generic/itrans/itrans-tamil.tec
new file mode 100644
index 0000000000..5d31ae329c
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-tamil.tec
Binary files differ
diff --git a/macros/xetex/generic/itrans/itrans-tel.map b/macros/xetex/generic/itrans/itrans-tel.map
new file mode 100644
index 0000000000..600810d61b
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-tel.map
@@ -0,0 +1,358 @@
+; TECkit mapping for ITRANS input scheme for writing Unicode Telugu (0C00-0C7F)
+; by Eknath <eknath2k@gmail.com>, with help from Shrisha Rao <shrao@nyx.net>
+; based on harvardkyoto.map written by Daniel Stender.
+;
+; Updated 2014-09-01
+
+LHSName "itrans-tel"
+RHSName "Unicode"
+LHSDescription "ITRANS input method for Unicode Telugu"
+Version "1.00"
+
+Define dot U+002E
+
+Define a U+0061
+Define A U+0041
+Define i U+0069
+Define I U+0049
+Define u U+0075
+Define U U+0055
+Define R U+0052
+Define L U+004C
+
+Define e U+0065
+Define E U+0045
+Define o U+006F
+Define O U+004F
+
+Define k U+006B
+Define h U+0068
+Define g U+0067
+Define G U+0047
+
+Define c U+0063
+Define C U+0043
+Define j U+006A
+Define J U+004A
+
+Define T U+0054
+Define D U+0044
+Define N U+004E
+
+Define t U+0074
+Define d U+0064
+Define n U+006E
+
+Define p U+0070
+Define b U+0062
+Define m U+006D
+
+Define y U+0079
+Define r U+0072
+Define l U+006C
+Define v U+0076
+Define w U+0077
+
+Define z U+007A
+Define S U+0053
+Define s U+0073
+Define Y U+0059
+
+Define Q U+0051 ;;;eknath
+Define Z U+005A ;;;eknath
+
+;;;;;Define anudatta U+002D ; - allow -
+;;;;;Define svarita U+0021 ; ! allow !
+Define tlde U+007E
+Define cret U+005E
+Define M U+004D
+
+Define q U+0071
+Define f U+0066
+Define x U+0078
+
+Define X U+007C
+
+
+
+
+Define anunasika U+0C01
+Define anusvara U+0C02
+Define visarga U+0C03
+
+Define asvara U+0C05
+Define Asvara U+0C06
+Define isvara U+0C07
+Define Isvara U+0C08
+Define usvara U+0C09
+Define Usvara U+0C0A
+Define rvoc U+0C0B
+Define Rvoc U+0C60
+Define lvoc U+0C0C
+Define Lvoc U+0C61
+Define esvara U+0C0E
+Define Esvara U+0C0F
+Define aisvara U+0C10
+Define osvara U+0C12
+Define Osvara U+0C13
+Define ausvara U+0C14
+
+Define Msvara U+0C02
+
+Define Amatra U+0C3E
+Define imatra U+0C3F
+Define Imatra U+0C40
+Define umatra U+0C41
+Define Umatra U+0C42
+Define rmatra U+0C43
+Define Rmatra U+0C44
+Define lmatra U+0C62
+Define ematra U+0C46
+Define Ematra U+0C47
+Define aimatra U+0C48
+Define omatra U+0C4A
+Define Omatra U+0C4B
+Define aumatra U+0C4C
+
+
+
+Define ka U+0C15
+Define kha U+0C16
+Define ga U+0C17
+Define gha U+0C18
+Define Ga U+0C19
+Define cha U+0C1A
+Define Cha U+0C1B
+Define ja U+0C1C
+Define jha U+0C1D
+Define Ja U+0C1E
+Define Ta U+0C1F
+Define Tha U+0C20
+Define Da U+0C21
+Define Dha U+0C22
+Define Na U+0C23
+Define ta U+0C24
+Define tha U+0C25
+Define da U+0C26
+Define dha U+0C27
+Define na U+0C28
+Define pa U+0C2A
+Define pha U+0C2B
+Define ba U+0C2C
+Define bha U+0C2D
+Define ma U+0C2E
+Define ya U+0C2F
+Define ra U+0C30
+Define Ra U+0C31 ;;eknath
+Define la U+0C32
+Define va U+0C35
+Define wa U+0C35
+Define sha U+0C36
+Define Sha U+0C37
+Define sa U+0C38
+Define ha U+0C39
+
+Define hka U+0C58
+Define hkha U+0C59
+Define hga U+0C5A
+Define hja U+0C5B
+Define hDa U+0C5C
+Define hda U+0C5D
+Define hna U+0C29
+Define hpha U+0C5E
+Define hya U+0C5F
+Define hra U+0C31
+Define hla U+0C34
+
+Define rla U+0C33
+;;;;Define vstroke U+0C51 ;;dont know what this is
+Define hstroke U+0C52
+
+Define danda U+0C64
+Define ddanda U+0C65
+Define virama U+0C4D
+Define avagraha U+093D
+
+
+
+
+
+
+
+pass(Unicode)
+
+a > asvara
+a a > Asvara
+A > Asvara
+i > isvara
+i i > Isvara
+I > Isvara
+u > usvara
+u u > Usvara
+U > Usvara
+R R i > rvoc
+R cret i > rvoc
+R R I > Rvoc
+R cret I > Rvoc
+L L i > lvoc
+L cret i > lvoc
+L L I > Lvoc
+L cret I > Lvoc
+
+e > esvara
+E > Esvara
+a i > aisvara
+o > osvara
+O > Osvara
+a u > ausvara
+
+k > ka
+k h > kha
+k dot h > ka virama
+k h dot h > kha virama
+g > ga
+g dot h > ga virama
+g h > gha
+g h dot h > gha virama
+tlde N > Ga
+N cret > Ga
+G G > Ga
+tlde N dot h > Ga virama
+N cret dot h > Ga virama
+c h > cha
+c h h > Cha
+c h dot h > cha virama
+C h > Cha
+C h dot h > Cha virama
+c h h dot h > Cha virama
+j > ja
+j dot h > ja virama
+j h > jha
+j h dot h > jha virama
+tlde n > Ja
+Q > Ja ;;eknath
+Z > Ga ;;eknath
+tlde n dot h > Ja virama
+J N > Ja
+T > Ta
+T dot h > Ta virama
+T h > Tha
+T h dot h > Tha virama
+D > Da
+D dot h > Da virama
+D h > Dha
+D h dot h > Dha virama
+N > Na
+N dot h > Na virama
+t > ta
+t dot h > ta virama
+t h > tha
+t h dot h > tha virama
+d > da
+d dot h > da virama
+d h > dha
+d h dot h > dha virama
+n > na
+n dot h > na virama
+p > pa
+p dot h > pa virama
+p h > pha
+p h dot h > pha virama
+b > ba
+b dot h > ba virama
+b h > bha
+b h dot h > bha virama
+m > ma
+m dot h > ma virama
+y > ya
+y dot h > ya virama
+r > ra
+R > Ra ;;eknath
+r dot h > ra virama
+l > la
+l dot h > la virama
+v > va
+v dot h > va virama
+w > wa
+w dot h > wa virama
+s h > sha
+s h dot h > sha virama
+s h h > Sha
+s h h dot h > Sha virama
+S h > Sha
+S h dot h > Sha virama
+s > sa
+s dot h > sa virama
+h > ha
+h dot h > ha virama
+x > ka virama Sha
+x dot h > ka virama Sha virama
+k S h > ka virama Sha
+k S h dot h > ka virama Sha virama
+G Y > ja virama Ja
+A U M > Osvara Msvara
+
+dot a > avagraha
+
+
+q > hka
+x > hkha
+dot g > hga
+dot z > hja
+f > hpha
+
+;;;svarita > vstroke ;;;allow !
+;;;anudatta > hstroke ;;;allow -
+
+L > rla
+dot m > anunasika
+
+U+004D > anusvara
+dot n > anusvara
+U+0048 > visarga
+dot a > avagraha
+;;;U+002C > virama ;; this is to enable comma
+
+;;U+007C > danda
+;;U+007C U+007C > ddanda
+
+O M > Osvara Msvara
+
+U+0030 > U+0C66 ; Numerals
+U+0031 > U+0C67
+U+0032 > U+0C68
+U+0033 > U+0C69
+U+0034 > U+0C6A
+U+0035 > U+0C6B
+U+0036 > U+0C6C
+U+0037 > U+0C6D
+U+0038 > U+0C6E
+U+0039 > U+0C6F
+
+
+
+
+
+
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha rla hka .. hpha)
+UniClass [svara] = (Asvara isvara Isvara usvara Usvara rvoc Rvoc lvoc esvara Esvara aisvara osvara Osvara ausvara)
+UniClass [matra] = (Amatra imatra Imatra umatra Umatra rmatra Rmatra lmatra ematra Ematra aimatra omatra Omatra aumatra)
+[vyanjana] [svara] > [vyanjana] [matra]
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+pass(Unicode)
+
+UniClass [vyanjana] = (ka .. ha)
+[vyanjana]=v1 [vyanjana]=v2 > @v1 virama @v2
+
+pass(Unicode)
+
+Uniclass [vyanjana] = (ka .. ha rla hka .. hpha)
+[vyanjana] asvara > [vyanjana]
diff --git a/macros/xetex/generic/itrans/itrans-tel.tec b/macros/xetex/generic/itrans/itrans-tel.tec
new file mode 100644
index 0000000000..e44c86f802
--- /dev/null
+++ b/macros/xetex/generic/itrans/itrans-tel.tec
Binary files differ