diff options
Diffstat (limited to 'Master/texmf-dist/doc/fonts/itrans/idoc.itx')
-rw-r--r-- | Master/texmf-dist/doc/fonts/itrans/idoc.itx | 1015 |
1 files changed, 1015 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/fonts/itrans/idoc.itx b/Master/texmf-dist/doc/fonts/itrans/idoc.itx new file mode 100644 index 00000000000..5022d2fca33 --- /dev/null +++ b/Master/texmf-dist/doc/fonts/itrans/idoc.itx @@ -0,0 +1,1015 @@ +\documentclass[11pt]{article} + +\usepackage[preprocess]{itrans} % Ross Moore's extensions to latext2html + +\usepackage{html} % from standard latex2html package + % if you do not have html.sty in your machine, change the html.sty to + % htmlstub.sty (htmlstub.sty is included in the ITRANS/lib directory) + +% The General User Documentation for the Itrans Package + +\portraitpage % defined in itrans.sty (idevn.tex), get a larger page size + +\renewcommand{\arraystretch}{1.25} +\newcommand{\rarrow}{\mbox{---\hspace{-8pt}$>$}} +\newcommand{\IC}{\char35include=} +\newcommand{\SM}{\char35marathi} +\newcommand{\EM}{\char35endmarathi} +\newcommand{\MI}{\char35marathiifm=dvnc} +\newcommand{\MFN}{\char35marathifont=\char92devnf} + +\newfont{\devnf}{dnh at 15pt} +%\newfont{\devnf}{dnho at 15pt} % the oblique version +%\newfont{\devnf}{dnhrc at 15pt} % the scaled down (x-axis) version +\hyphenchar\devnf=-1 % disable hyphenation using this font + +#marathiifm=dvnc.ifm +#marathifont=\devnf + +\newfont{\tmlb}{wntml12} +\hyphenchar\tmlb=-1 % disable hyphenation using this font + +#tamilifm=wntml.ifm +#tamilfont=\tmlb + +\begin{document} + +\centerline{\LARGE\bf Printing Transliterated} +\medskip +\centerline{\LARGE\bf Indian Language Documents} +\bigskip +\centerline{\LARGE\bf itrans} +\centerline{\tt version 5.30} +\smallskip +\centerline{\bf \copyright 1991--2001 Avinash Chopde} +\smallskip +\centerline{Home page: \htmladdnormallink{\texttt{http://www.aczone.com/itrans/}}{http://www.aczone.com/itrans/}} +\bigskip +\hrule +\bigskip + +\footnotetext[0]{Last modification: \today} + +This software is a pre-processor, it converts input representing +Indic Text to the actual Indian Language Script, for printout or +for display on Web pages. +The input is uses English letters, so it can be created +using any simple text editor. + +This document describes the use of the program {\em +itrans}, which may be used to generate Devanagari, Tamil, Bengali, +Telugu, Gujarati, Kannada, Punjabi (Gurmukhi), or Romanized Sanskrit +output from input in an english transliterated form. + +Many examples of ITRANS use are available on the web, +archives for different purposes are available. +One such project is a collection of Hindi Film Song Lyrics; another +project is a collection of Sanskrit documents. +There are also tools on the Web that make it much easier to use ITRANS - +you can use ITRANS over e-mail, or use your WWW Browser to type ITRANS +text, etc. +Links to many such sites are available through the ITRANS home page at +and you can also use +WWW search tools (use the keywords \verb=ITRANS= and \verb=indian=) to +search the Web. + +\section{{\em itrans} Mechanism} + +{\em itrans} +works by assigning every Indian language letter an english equivalent. +Transliteration tables mapping devanagari or tamil or telugu, etc. +characters into english +equivalents are provided in the reference documents for each language, +all of which are described in following sections of this document. + +{\em itrans} scans the input text for consonants, vowels, and special +forms. +Consonants suffixed with vowel codes create a complete composite +character. A consonant may be suffixed with one or more consonants to +create ligature forms. +All this transliteration is automatically handled, and appropriate Indian +language characters are produced. +If ligatures exist for a particular combination of +consonants, they will be used automatically. +If a ligature does not exist for some combination of the consonants, +half-forms of the consonants will be used. +The user can also override the ligature mechanism so that even if a +ligature exists, the half forms of consonants will be used. +Some languages such as tamil do not have any ligatures, in +that case the appropriate action is taken --- for tamil, a dot is printed +on top of a consonant if it is not followed by a vowel form. + +All these features make itrans an highly customizable and easy-to-use +package. +Even the transliteration map given here is not +mandatory---the user can always edit the lexical source file and +provide whatever mapping desired. + +{\em itrans\/} is just a transliteration/char composition package. +The task of actually placing characters on the page and spacing them +correctly is left to other programs, such as \TeX. +\TeX\ is the preferred interface, but, +other modes are available for direct Text output (suitable for HTML +output or Unicode UTF-8 output). +ITRANS version 5.1 added a new output mode - direct text HTML output - +which allows ITRANS output in certain scripts to be directly viewed on WWW +browsers such as Netscape (version 3.0 or newer). +ITRANS version 5.3 added support for Unicode (UTF-8) output. +These additional modes are available only for certain languages - not all +are supported. Consult the language specific documentation for +supported modes for each font. + +\section{Input Format} + +{\em itrans} makes use of an IFM file --- Indian language font metric +file, which is a ASCII file containing descriptions on how to generate +the Indian language characters from the basic characters available in the +font. + +{\em Sidenote}: This IFM file format is an {\em itrans} specific concept, +it allows +all character composition directives to be loaded in at runtime, making +it easy to support many different Indian languages. +The IFM file is an ASCII text file, and all IFM files end in the suffix +\verb=.ifm=. +% See the technical reference manual, {\em tech.tex}, if you need more +% complete information regarding the IFM file format. + +{\em itrans} scans through the input text, and copies everything to +the output unchanged, except for portions between marker words, +such as {\SM} and {\EM}. +Some eight--ten different marker words are available, see the +section~\ref{markers} for more information. +All english text between these words is mapped into Indian language characters, +based on the transliteration map in the IFM file. + +At the beginning of the input file, the user has to specify the IFM file, +and the name of the \TeX\ or PostScript or HTML command that changes the +font to the Indian language font. +For example, if the IFM file is named dvnc.ifm, and the font is +available through the {\tt \char92devnf} \TeX\ command, the following two lines +should be present in the input file: + +\noindent\MI + +\noindent\MFN + +This also assumes the user will be using the markers \SM\ and \EM, +see~\ref{markers} for all the other language markers and commands. + +Once the above initialization is made, the \SM\ marker then specifies the +beginning of the marathi transliterated text, and makes use of the +specified IFM file (dvnc.ifm). +At that point, {\em itrans} also outputs the command ({\tt\char92devnf}) +specified in the {\tt\char35 marathifont} directive. +This command should change the font to the devanagari font, and may do +other things such as change the baselineskip length, etc. + +Note that both the \TeX\ interface and the Direct Text interface +(both PostScript and direct Text HTML mode) follow identical input +text requirements. +For further examples, see the sample documents provided. +All transliterated files have been given the file extension +{\em .itx}. +[Older ITRANS version also used .ips extensions for direct PostScript +output, but since ITRANS version 5.0, the \verb=\char35 output= command has been +added which allows specifying the output mode in the input file itself.) + +\subsection{The ``\char35include='' command} + +Itrans accepts an ``include'' filename command in the input. +Syntax: + +\noindent +\IC\verb=<filename>= + +This command can appear anywhere in the input document, and Itrans behaves +as if the contents of that file were actually present at that point in the +document. + +This ``include'' comamnd can be nested in multiple files (to a compiled-in +maximum). + +\subsection{The ``\char35output='' command} + +This command should be the first ITRANS command in any input file, that is, +it should appear before any other \char35$<$command$>$. +It can be used to direct ITRANS to produce kind of output - TeX, or PostScript, +or direct Text HTML output. So, instead of using arguments to ITRANS (such as +-P or -7 or -8 or -U), +users can include this command in the input file itself, making it clear what +the input file is to be used for. +The four valid options for this command are:\\ +\char35output=HTML\_7\\ +\char35output=HTML\_8\\ +\char35output=UTF\_8\\ +\char35output=PostScript\\ +\char35output=TeX + +\subsection{The ``\char35endfont='' command} + +This command is generally of use in HTML output modes only, though if +needed, it could be used in any mode. + +This command allows the user to specify a string that will be echoed to +the output file whenever any +\char35end{\rm $<$language$>$} +is seen. + +For example, it is useful to use this in HTML documents, where every +end of Indic script needs to print out a \texttt{\char`</FONT\char`>} +command, and +this can be done automatically by specifying: + +\char35endfont=\char`</FONT\char`> + +This, in conjunction with something like: + +\char35hindifont=\char`<FONT FACE=name SIZE=size\char`> + +makes it easy to use ITRANS in HTML output mode. + +Note that there is single \char35endfont command, and it applies to all +language markers. + +\subsection{\char35$<$lang$>$, \char35end$<$lang$>$, and \char35\char35 markers} +\label{markers} + +You can use any of these marker sets to delimit the Indian language text. +The marker names indian/marathi/hindi/tamil do not actually do +anything +by themselves, but make use of the corresponding command names to load in +the IFM file or output the font changing command string. +So, use any one of the sets you feel suits your needs best, each can be +used for every language supported for ITRANS, the marker is just used to +enter ITRANS mode, the actual language is always correctly recognized +based on the IFM file. +Since the marker words are all long, a shorter version of markers is also +available, and the short markers are enabled by default, though it is +possible to turn them off. + +\begin{enumerate} +\item {\tt indian} marker. + +To set the IFM file name: {\tt \char35 indianifm=XXX.ifm} + +To set the font command name: {\tt \char35 indianfont=YYY} + +Start Marker: {\tt \char35 indian} + +End Marker: {\tt \char35 endindian} + +\item {\tt hindi} marker. + +To set the IFM file name: {\tt \char35 hindiifm=XXX.ifm} + +To set the font command name: {\tt \char35 hindifont=YYY} + +Start Marker: {\tt \char35 hindi} + +End Marker: {\tt \char35 endhindi} + +\item {\tt sanskrit}, {\tt marathi}, {\tt tamil}, {\tt telugu}, {\tt bengali}, +{\tt gujarati}, {\tt roman}, {\tt kannada}, {\tt gurmukhi}. + +Just as for hindi and indian, there are markers for all these languages. +Follow above examples, replace {\tt indian} with {\tt $<$language$>$} +as required. + +\item {\tt \#\#} short marker. + +These markers are activated by default. To turn them off, use the +{\tt \char35 ignoreshortmarkers} command. + +\bigskip + +\end{enumerate} + +\subsubsection{``\char35useshortmakers'' and ```\char35ignoreshortmarkers''} + +The short marker is a toggle marker. +When scanning text in non-ITRANS mode (non Indic text), if a short marker +is seen, it implies restoring back +ITRANS processing, using whatever language marker was last encountered. +Then, the next seen short marker implies ITRANS should exit processing of +the indian language text. + +This, if the input text has the following input: + +\bigskip + +{\tt +\char35 hindi \hspace{1in} $<$some text$>$ \hspace{1in} \char35 endhindi + +$<$some more text$>$ + +\char35\char35 \hspace{1in} $<$short marker text$>$ \hspace{1in} \char35\char35 +} + +\bigskip + +then the first short marker seen above will be considered equivalent +to \char35hindi, since that was the last ITRANS marker seen in the text at +that point. + +If the short marker is the first marker seen in the text, i.e., there was +no other ITRANS marker seen until that point, +then the \#\# shortmarker will be taken to +be equivalent to \char35indian. + +\subsection{``\char35usecsx''} + +The CS/CSX input encoding can be accepted along with the ITRANS encoding +when this command is used. See the {\tt icsx.itx} document for more +inforamtion on CS/CSX support in ITRANS. + +\subsection{``\char35endwordvowel=''} + +See the section~\ref{endwordvowel} for info on this command. + +\section{\TeX\ Interface} + +{\em itrans} can accept \TeX\ input and generate \TeX\ output for all +languages for which either a PostScript font description or a Metafont +description is available. + +For example, the {#marathi aa#endmarathi} character in the table +in the document {\em dvnc.itx} was produced by this input text: + +\noindent\verb= {=\SM \verb= aa =\EM\verb=}= + +Thus, the character {\em aa}, when bracketed between {\SM} and +{\EM} produces {#marathi aa#endmarathi}, when the appropriate +IFM file +name and font command name have been set correctly (as mentioned in the +previous section). + +For further examples, see the sample documents provided. +All \TeX\ transliterated files have been given the file extension +{\em .itx}. + +Normally, all english text between the words {\SM} and {\EM} is mapped into +marathi characters, except for any word following a backslash character. +Thus, you can include \TeX\ commands in the transliterated text +portion, the only restriction is that the command should be made up of +letters and numerals only. + +Examples: \verb= \indent or \hskip1in or \kern0.4em,= \verb=etc=. +Note that in the sample documents shown, \TeX\ commands are usually +surrounded by curly braces---they used as scope delimiters only, are not +absolutely necessary, but are recommended. + +\subsection{\TeX\ Requirements} + +To use this pre-processor, you must have the following tools: +\begin{enumerate} + +\item \TeX\ tools, including the capability to output dvi files using +PostScript fonts (if you need to use the devnac devanagari font). +This implies having {\em dvips}, release 5.41 or newer, a program written +by Tomas Rokicki. If you don't have it, see the Frequently-Asked-Questions in +the newsgroup +comp.text.tex for details on how to get hold of {\em dvips}. +Actually, if you only need to use tamil or Frans Velthuis's Devnag font, +or telugu, you don't need a dvi-to-ps converter. +Those fonts are described in Metafont, thus any dvi-to-your-printer +converter will be able to handle it (once you run Metafont and generate +the printer specific files). + +For the IBM PC, the emTeX package includes the {\em dvips} executable. +{\em dvips} for the PC also resides in the SIMTEL archives. + +\item ANSI C compatible compiler, and optionally, the flex and yacc tools. +This program is provided with the source code, and a makefile. +The makefile is specific to my machine, you may have to edit it to +get it working correctly on your machine. +If you do not have an ANSI C compatible compiler, you will have to make +the ``noansi'' object, see the makefile for details; it automatically +de-ansifies all the C sources. +Also, if you need to modify the ilex.l or iyacc.y source files for your +specific needs, you'll need the flex and yacc tools on your system. + +The ITRANS package also contains an executable for MS-DOS machines, thus +for MS-DOS machines, you need not go through the compilation step. + +\end{enumerate} + +\subsection{\LaTeX\ Style Files} + +In ITRANS release 5.2, a new style file was added {\em itrans.sty}. +This is the file created by Ross Moore to allow ITRANS documents to be +processed through latex2html, but this style file is useable for normal +\LaTeX documents also. + +This style file should be loaded with the \verb=\usepackage= command, and there +are many options available with this package. + +\begin{description} + +\item[preprocess] This is applicable only when using latex2html, and it +has no effect when running normal \LaTeX. So, it is probably ok to +always use this option even if you never plan on running latex2html. + +\item[devanagari] This will load the \texttt{idevn.tex} file, which has +some macros that are useful for using Devanagari with \TeX. \texttt{idevn.tex} +will actually be loaded even if no option is provided, so the devanagari +option is not really necessary at this time (ITRANS release 5.2). + +\item[telugu] This will load the \texttt{itrnstlg.tex} file, which has +some macros that are useful for generating some special Telugu characters. + +\item[\em other options] itrans.sty has many other options, take at look +at that file to view all of them, but in practice, you may not need to +use any of those options yet. + +\end{description} + +Example lines to load itrans.sty: + +\verb=\usepackage[preprocess]{itrans}}= {\em or} + +\verb=\usepackage[preprocess,telugu]{itrans}}= + +\section{Direct PostScript Output} + +{\em Note: This section is applicable to the PostScript fonts only: +devanagari font {\em devnac}, Gujarati {\em ItxGuj}, +Bengali {\em ItxBeng}, Devanagari {\em Xdvng}, and Romanized Sanskrit +{\em NCS\_CSX}. +The tamil font {\em wntml}, the devanagari font {\em devnag}, +the telugu font {\em tel} and the kannada font {\em kan} +cannot be used for this purpose since they are not PostScript fonts.} + +As mentioned earlier, the Direct PostScript Output +interface is an extremely primitive interface for +printing, but will suffice for printing documents containing only +Indic Script text (no english), and requiring no typesetting features such as +centering, right flush text, etc. +In addition to generating the devanagari characters, this method preserves +the line breaks and spaces in the input text. +So, unlike in the \TeX\ version, which programatically decides where to +break a line, here you have to include a end-of-line in the exact spot +where you desire a new line to start in the output. +And, if you need indented lines, you have to add spaces to simulate +horizontal skips. + +The previous section titled {\em Input Format} applies to this interface, too. +Thus, the user needs to specify the IFM file name, the font command name, +etc before writing text between the Indian language markers such as +\SM\ and \EM. +For further examples, see the sample document provided in the ITRANS +archive, file may be named something like {\verb=s1.ips=}. +The PostScript prologue for itrans is in the file {\em itrans.pro}. +Check the file out, it contains some useful PostScript procedures. + +\subsection{Direct PostScript Output Requirements} + +\begin{enumerate} +\item All that is required is the capability to print PostScript files. +Note that the {\em devnac} font used is a user defined PostScript font +(Type III Font), so the printer (or the RIP used) must be capable of +rendering Type III fonts if you need to use this font. +\end{enumerate} + +\section{Direct Text Output -- for HTML} + +This is a new mode added in release 5.1, which just like the PostScript +mode, does not offer any typesetting functionality. +In fact, this mode is provided for generating text that can be displayed +on any WWW browser such as Netscape (version 3.0 or later). +Not all languages are supported in this mode --- it requires availablity +of a TrueType font, and right now (ITRANS 5.10) the following languages +are supported: Romanized Sanskrit, Gujarati, Bengali, and Devanagari scripts. + +Two types of HTML output are supported: 7-bit ASCII (which uses the +\verb=&#nnn= HTML codes for character codes 127 to 255), and 8-bit +text output (which outputs character codes 127 to 255 directly). +I think 7-bit output should be more portable, but in practice, I found it +to create problems on Macintosh computers, so, I use 8-bit output in the +examples. + +Three platforms have been tested: Unix/X11R6 (Type 1 fonts - \verb=*.pfa= +or \verb=*.pfb=), Macintosh (TrueType - \verb=*.hqx= files), and +Windows (TryeType - \verb=*.ttf=). +All the fonts required are present in the ITRANS/lib/fonts directory of +the ITRANS package, the user has to install the appropriate font on his +or her system to allow viewing of the ITRANS output in the native Indic +Script. + +\subsection{Direct Text (HTML) Output Requirements} + +The font should be available in Type 1 or TrueType format, and must +be usable in regular word-processors (without ITRANS). + +\subsection{HTML Output -- Unicode -- UTF-8} + +ITRANS 5.3 added support for Unicode output using UTF-8 encoding for +the output. + +The UTF-8 text output can be displayed on any Web browser or loaded +into any text editor that can handle UTF-8 text. +To view the text in Indian language scripts requires availability +of an Unicode font, for the specific language. ITRANS does not +come with any Unicode fonts, it is expected that in due time, +there will be freeware Unicode fonts for all Indian languages +available on the Internet. + +\begin{table} +\begin{tabular}{|c|c|} +\hline +Sanskrit/Hindi/Marathi & {\em udvng.ifm} \\ +Gujarati & {\em uguj.ifm} \\ +Bengali & {\em ubeng.ifm} \\ +Tamil & {\em utml.ifm} \\ +Telugu & {\em utel.ifm} \\ +Kannada & {\em ukan.ifm} \\ +Romanized Sanskrit & {\em uroman.ifm} \\ +Gurmukhi & {\em ugur.ifm} \\ +Malayalam & {\em umal.ifm} \\ +Oriya & {\em uoriya.ifm} \\ +\hline +\end{tabular} +\caption {\bf ITRANS: Unicode IFM files.} +\end{table} + +The Oriya and Malayalam scripts are supported through the Unicode +interface only - these scripts are not supported in the \TeX\ or +PostScript interfaces. + +\section{Program Options} + +See the manual page for details regarding the program options need to +be specified to itrans to make it run in the Direct PostScript Output mode +(option -P), or direct Text (HTML) mode (options -7 or -8 or -U). +Without any of these options, the \TeX\ interface is assumed. +Running itrans also requires that the enviornment variable ITRANSPATH +be set correctly: it should contain the list of directories contain +all the {\tt *.ifm}, {\tt *.tfm}, and {\tt *.afm} files that itrans may +need. +Again, the manual page has more details on this. +If at any time itrans prints out a error about some file not found, it +usually implies that ITRANSPATH has to be modified to include the +directory of that file. + +\section{Known Problems} + +\begin{enumerate} + +\item Version 4.00+ {\em itrans} can handle simple comments in the +transliterated text portion of the input file. +\% character begins a comment, the end-of-line terminates a comment. +Handling of comments is not fully coded yet, and has some problems in +that the \% always starts a comment, only exception being when \% is +preceded by a backslash ({\tt\char92}). Of course, there are many other +instances where \% should not begin a comment, those are ignored for now. +(And may be ignored for ever, recognizing comments correctly +would require too much effort.) + +\item In the \TeX\ interface, characters with any non-zero Y offset are +not correctly printed in some cases, when the PostScript font Devnac +is used. +One such case is the da-ra ligature, words +such as {\em draaviiDa} (#marathi draaviiDa#endmarathi). +(Another case is the ha-u form #marathi hu#endmarathi, see how +it is handled in the sample input file nehru.itx.) +Note that it is only in certain cases that the +word is printed incorrectly, in most cases it is handled correctly. +Usually, when the word appears near the end of the line, \TeX\ (or +dvips, but that sounds improbable) +inserts a kern (a glue factor ?) just before the character with a +non-zero Y offset, and the word appears squashed up or pulled apart at +that point. +Have no remedy for this, only workaround is to force a line break before the +problem word, it usually sets everything right. + +I have never encountered this problem when using Frans Velthuis's Devnag +font with the itrans package, therefore this problem is probably related +to the use of PostScript fonts in \TeX. +If you do notice this problem with the Devnag font too, please let me +know. + +\end{enumerate} + +\section{Output Languages Supported} + +\subsection{Devanagari Output} + +Two devanagari fonts are supported. +The bundled in devanagari font is a PostScript font, called {\em devnac}. +{\em devnac} was developed (and is under further development) by Avinash Chopde. +The other font is a Metafont font called {\em devnag} and has been developed by +Frans Velthuis. +More details regarding {\em devnag} can be found in the file {\em +dvng.itx}, more details regarding {\em devnac} can be found in {\em +dvnc.itx}. +Transliteration tables for each language are available in those files, too. + +{\em devnac} is a PostScript Type III font. +This font can be used with both the \TeX\ interface, and the direct +PostScript interface mode of {\em itrans}. + +The font is named {\em dnh} in the \TeX\ interface, and variations are +also available, named {\em dnho}, {\em dnhrc}, {\em dnhre}. +In the direct PostScript interface, the generic font changing commands +{\em normalfont}, {\em slantfont}, {\em compressedfont}, +{\em expandedfont}, etc have to be used. +See the file itrans.pro to get a handle on the workings of the above PostScript +commands. + +This devanagari font tries to be a all-encompassing font, for the hindi, +marathi, and sanskrit languages. + +See the reference document {\em dvnc.itx} for the transliteration map and +example texts. +The IFM file for this font is {\em dvnc.ifm}. + +{\em devnag} is a Metafont font, and thus can only be used with the +\TeX\ interface of {\em itrans}. +This font is supported by {\em itrans} in a limited manner, in that +not all ligatures are available for use. +Many ligatures are archaic, so I've left them out. +Again, the document dvng.itx contains complete details and lists of the +ligatures that are used and that are ignored by itrans. +The IFM file for this font is {\em dvng.ifm}. + +A derivative of the devnag font, called {\em xdvng} is also available, for +use with the direct text HTML output mode of ITRANS. See dvng.itx for more +info on this font. + +\subsection{Tamil Output} + +The tamil font is a Metafont font, and +was created at the +Humanities and Arts Computing Center of the University of Washington, +USA. +The Metafont files for this font are also bundled with the itrans +package. + +This font can only be used with the \TeX\ interface. + +The Metafont descriptions of the font are provided, you can use them to +generate the PK files of any font size desired. +The Metafont programs for three sizes: 10, 12, and 17 point sizes are +provided (wntml10.mf, wntml12.mf, and wntml17.mf, respectively). + +This font was developed at University of Washington, and I would like to +thank them for making the font available as freeware. + +See the reference document {\em tamil.itx} for the transliteration map and +example texts. +The IFM file for this font is {\em wntml.ifm}. + +\subsection{Telugu Output} + +The single font {\em tel} is currently supported. +It is a Metafont font. +This font can only be used with the \TeX\ interface. + +The telugu font is from the TeluguTeX package (which is \copyright +Lakshmi V.S. Mukkavilli, 1991). +This is a Metafont font. + +See the reference document {\em tlgutx.itx} for the transliteration map +and example text. +The IFM file for this font is {\em tlgutx.ifm}. + +\subsection{Bengali Output} + +ITRANS 5.1 added support for the TrueType (and PostScript Type 1) Bengali +font named ItxBeng, and in ITRANS 5.2, Jaijeet Roychowdhury added support +for the Bengali font from the BWTI package + +The IFM file for the ItxBeng font is {\em itxbeng.ifm}, and the IFM file +for the BWTI font is {\tt bnbeng.ifm}. + +The ItxBeng font has been provided by Shrikrishna Patil, while the BWTI +Metafont Bengali font has been developed by Abhijit Das. + +[ITRANS 4.x supported a LaserJet Softfont called SonarGaon, but that has +now been removed from ITRANS.] + +See the file {\em beng.itx} for documentation on both the bengali fonts +supported by ITRANS. + +% very old: +% This font is a PostScript font, and does not have a AFM file, thus, it +% cannot be used with the \TeX\ interface at all---this font is supported +% for the direct text input interface only. +% {\em banglasc} is bundled in with the itrans package, the font is in the +% file named {\em banglasc.ps}. +% +% The user manual for this font is in the file called {\em bnglsc.itx}. +% That file is also a good example of sample input text. +% The IFM file for this font is {\em banglasc.ifm}. +% --------- + +\subsection{Gujarati Output} + +The gujarati font ItxGuj is a PostScript Type 1 font. +and this ItxGuj font has been provided by Shrikrishna Patil. +{\tt itxguj.pfa, itxguj.afm} are the Type 1 PostScript files, and +{\tt itxguj.tfm, itxgujo.tfm, itxgujrc.tfm, itxgujre.tfm} +are the TFM files for use with TeX. +The user manual for this font is in the file {\em gujdoc.itx}. + +The IFM file for this font is {\em itxguj.ifm}. + +\subsection{Kannada Output} + +The single font {\em kan} is currently supported. +It is a Metafont font. +This font can only be used with the \TeX\ interface. + +The Kannada font is from the KannadaTeX package (which has been developed +by G.\ S.\ Jagadeesh and Venkatesh P.\ Gopinath). +This is a Metafont font. + +The IFM file and other support in ITRANS for Kannada was added by +Raghunath K Rao. + +See the reference document {\em kantex.itx} for the transliteration map +and example text. +The IFM file for this font is {\em kantex.ifm}. + +\subsection{Punjabi Output} + +Anshuman Pandey added support in ITRANS for +the Gurmukh{\=\i} Postscript font `Punjabi' ({\tt pun}) (designed by +and copyright Hardip Singh Pannu). + +{\tt pun.pfa, pun.afm} are the Type 1 PostScript files, and +{\tt pun.tfm} is the TFM file for use with TeX. +The user manual for this font is in the file {\em pundoc.itx}. + +The IFM file for this font is {\em pun.ifm}. + +\subsection{Romanized Sanskrit Output} + +The Romanized Sanskrit font NCS\_CSX is a PostScript Type 1 font, +details about this are present in the {\em romancsx.itx} file. + +This font can be used with all three output modes of itrans -- \TeX, +PostScript, or Direct Text Output. +The Direct Text Output requires using the TrueType version of this font. + +The PostScript Type 1 font files are in {\tt ncpr\_\_\_\_.afm},{\tt ncpr\_\_\_\_.pfb}, +{\tt ncpi\_\_\_\_.afm}, {\tt ncpi\_\_\_\_.pfb}. +\TeX\ TFM versions are available in {\tt ncprcsxp.tfm}, {\tt ncpicsxp.tfm}. +TrueType versions are available in +{\tt ncpr\_\_\_\_.ttf}, {\tt ncpi\_\_\_\_.ttf}. + +\section{Usage Hints} + +\subsection{Ligature suppression} +As mentioned earlier, the system automatically uses +ligatures whenever possible. +For example, since the \verb=ta-ta= ligature exists, +input text of the form \verb=tti= is printed as +#marathi tti#endmarathi. +If instead you need it to be printed as #marathi t{}ti #endmarathi you have +two choices. +One, if you never want the \verb=ta-ta= ligature to be used, you +can edit the IFM file and comment out all the lines that refer to the +\verb=ta-ta= ligature. +(The IFM file is a text file, for more information, see the +technical documentation in tech.tex.) + +On the other hand, if you do want to keep the ligature, except in a few +locations in the input text (say for small point type), or if you do +not want to edit the IFM file, you can use the ligature inhibitors +\verb={}= to prevent a ligature from being used. +Whenever the \verb={}= characters are inserted between two consonants, +{\em itrans} refrains from using the ligature (if it exists, if it does +not, then these characters have basically no effect). +Instead, the half-forms of the consonants (as appropriate) are used. +Thus, even if the IFM file contains the \verb=ta-ta= ligature, +the input text \verb=t{}ti= always appears as +#marathi t{}ti#endmarathi. + +\subsection{Breaking lexical scan} +Use the character \_ after a consonant letter to break the lexical +scan. +This becomes necessary because of the default behavior of the scanner, +which tries to match the largest possible input pattern. +Thus, when you write {\tt ai} in the transliterated text, it comes out +as #marathi ai #endmarathi in marathi or #tamil ai #endtamil in tamil. +Now, that is just what you want for the {\tt ai} vowel, but what if +you wanted it to be scanned as two vowels: {\tt a}, followed by +{\tt i} ? +In such cases, you need to break the lexical scan, by following the +first vowel, the {\tt a} character, with the \_ +character to stop the scanner from associating {\tt i} with the +{\tt a} preceding it. +So, {\tt a\_i} in the input text results in: +#marathi a_i #endmarathi for marathi and #tamil a_i #endtamil for tamil. + +This is a thing to watch out for in all cases where some character has +a multiple letter mapping, and each letter by itself also represents some +other character. +In the above example, {\tt ai} is the two letter map, and both +{\tt a} and {\tt i} represent other vowels. + +Note that if you wish to suppress any ligature, you should use the +\{\} letters consecutively, as explained in the previous paragraph. +Using \_ to follow some consonant allows a ligature, if it +exists for the consonant pair, to be used. (Of course, tamil does +not have any ligatures.) + +To get a printable underscore in the Indian language text, follow +normal \TeX\ usage---use backslash underscore---{\tt \char92\_}. + +Since ITRANS supports many Indian languages, it has a large list of input +tokens that are mapped to consonants. +For example even if {\tt ai} is not a vowel in one of the languages +supported by ITRANS, it still is always recognized as the {\tt ai} vowel, +and thus if you need it to be recognized as the {\tt a} and {\tt i} +vowels, use the \_ character as mentioned above. + +\subsubsection{List of all ITRANS recognized English letters} +Here's the list of ASCII input characters that are special to ITRANS: + +{\tt\parindent=0pt + +0 1 2 3 4 5 6 7 8 9 \\ +.a .c .N .n \char`^r .D .Dh A AUM \\ +a aa ai au b bh ch chh D Dh d dh dny E e f G g gh GY \\ +H h I i ii J j jh JN K k kh kSh L L\char`^i L\char`^I LLi LLI l ld \\ +M m N \char`"n \char`~n n \char`^n N\char`^\ ny O o OM p ph q \\ +.r \char`^r .R R R\char`^i R\char`^I RRi RRI r S SRI s sh shh \\ +T Th t th U u uu v x Y y z + +\char35{\rm $<$language$>$} \par +\char35end{\rm $<$language$>$} \par +\char35{\rm $<$language$>$}ifm \par +\char35{\rm $<$language$>$}font \par +\char35output=HTML\_7 \par +\char35output=HTML\_8 \par +\char35output=UTF\_8 \par +\char35output=TeX \par +\char35output=PostScript \par +\char35ignoreshortmarkers \par +\char35useshortmarkers \par +\char35usecsx \par +\char35ignorecsx \par +\char35include= \par +\char35endwordvowel=a \par +\char35endwordvowel=.h \par +\#\# \ \ \ \{\} \ \ \ \_ \ \ \ \char`` \ \ \ \par + +} + +Version 4.0 and onwards added support for the Classical Sanskrit and Classical +Sanskrit Extended encoding, which adds one ASCII character to the above +list ({\tt c}) and many non-ASCII characters, see the document {\tt icsx.itx} +for more details. + +\subsection{Punctuation Issues} +The fonts provided may be missing some or all punctuation +characters, some may also be missing numbers. +For example, the tamil font used, wntml, +does not have any numerals or any punctuation +characters. +The devanagari font does have numbers and some punctuation marks (the +double-quote is missing, for example). + +For devanagari, when using \TeX, use the {\tt idevn.tex} (automatically +loaded by {\tt itrans.sty}, use the \verb=\usepackage{itrans.sty}= +command in \LaTeX) which provides +modes for setting a devanagari font, and offers many commands that ease +devanagari input. +See the ITRANS Song Book documents for examples of idevn.tex usage, or, +check out the sample document file {\tt sample.itx}. + +In all punctuation problems, you can always get the required punctuation or digit +character by ending the Indian language transliteration scope (using one +of the endmarkers), then +printing the required punctuation mark, and the restarting the +transliteration by using the start marker. + +An easier method, in \TeX\ is to make use of the math mode for numbers. +It is usually sufficient to use the \$ enclosing scope to +make numbers print correctly, since a \$ enters mathmode and uses the math +fonts. +For punctuation marks, the user needs to explicitly change fonts: +example: + +{\tt \SM ......\{\char92rm ;\}.......\EM}. + +But that is preferable over this form: + +{\tt \SM ......\EM ; \SM.......\EM}. + +\subsection{Multi-consonant conjuncts} +How does itrans handle ligatures with more than two consonants ? +For example, \verb=shhTmii= contains three consonants. +This ligature produces +#marathi shhTmii#endmarathi, the way itrans works is as follows: +Beginning with the first consonant in the list, +itrans checks if a double-consonant ligature has +been defined for that consonant and the next one in the list. +If such a character exists, then it is used and both consonants are consumed, +and itrans repeats the procedure for the next consonant. + +There is one exception to the above rule: if at all possible, the last two +consonants are handled together, that is if a ligature of the last two +consonants +exists, that is used over the pairing that would result from the above method. +Example: \verb=shhTrii= produces +#marathi shhTrii#endmarathi, both \verb=shha-Ta= and \verb=Ta-ra= ligatures +exist, but since the consonants \verb=Ta= and \verb=ra= are the last two +consonants, that ligature is used over \verb=shha-Ta=. + +Of course, this default behavior can be changed by appropriately placing +the ligature inhibitor sequence, \verb={}=. +Example: \verb=shhTr{}ii= produces #marathi shhT{}rii#endmarathi. + +Also, in ITRANS version 5.10, ITRANS now supports direct specification of +3 or more consonant conjuncts in the .IFM file. So, if the above given +description leads to incorrect output, we can now fix it by providing +explicit rules for 3 or more multi-consonant conjuncts in the IFM file. + +\subsection{Word endings and the \char35endwordvowel command} +\label{endwordvowel} +To increase readability of the Indian text (in english), each word +for the devanagari and bengali language is assumed to end in a vowel. +Each Indian language letter can be generally +written as C + [C + [C + [...] + C]] + V, where C is a consonant, and V is a +vowel. +When a consonant appears at the end of the word, and the vowel is ``a'', then +it is not necessary to include the final ``a''---if a word ends in a consonant, +ITRANS will automatically add the vowel ``a'' to the final consonant---for +devanagari and bengali only. +Thus, in hindi, instead of writing ``hama'', you can write ``ham'', which +is how the word {#marathi ham #endmarathi} is pronounced anyway. +To add a halant to any consonant, use ``.h'', thus ``ham.h'' produces +#marathi ham.h#endmarathi. + +Use this default mechanism only when it increases the readability, for +example in hindi it is better to write ``ek'', ``is'', ``tab'', instead +of ``eka'', ``isa'', ``taba'' for #marathi ek, is, tab#endmarathi. +But, it is better to include the ``a'' in words such as ``manushhya''---#marathi +manushhya#endmarathi. + +This default mechanism is activated only for the devanagari and bengali +input. +(The keyword DEFAULTVOWEL in the IFM file directs whether the last +consonant in a word should be considered as paired the half-form, or the a-form, +if the form is left unspecified.) + +The above default working can be avoided by specifying the vowel to end words +in the input document. + +\char35endwordvowel=a \par +\char35endwordvowel=.h \par + +The first command makes the default vowel be ``a'', which the second command +will make the default vowel a ``half-form''---viraam. +The endwordvowel command will override the DEFAULTVOWEL specification +in the IFM file. +So, for sanskrit, it is useful to include this command in the input file: + +\char35endwordvowel=.h \par + +which puts a viraam at the end of any word that does not end in a vowel. + +%% \bigskip\bigskip +%% {\em (Around 1988, I was in need of a good typesetting package +%% that would print out text in marathi or hindi. +%% I located some directions to public domain software, +%% but after some searching, found out that +%% they either never really existed in usable form, or were of poor quality. +%% Commercial packages were available, list prices ranged from +%% US\$100 to US\$4000~! +%% So, I decided to get it done myself, took me three years to find the +%% time, but now I hope that some other (starving!) +%% student, and everybody else who is searching for such a package, +%% will find this package useful.)} + + +\bigskip +\hrule +\vfill + +\bigskip +\section{Author} + +\noindent +ITRANS has been developed by Avinash Chopde. \\ +E-mail: +\htmladdnormallink{\texttt{avinash@acm.org}}{mailto:avinash@acm.org}. \\ +Home page: +\htmladdnormallink{\texttt{http://www.aczone.com/}}{http://www.aczone.com/} + +Over the years, numerous people from all over the world have made +important additions to the ITRANS package as it exists today. It is not +possible to thank everyone here, but I have tried to include correct +acknowledgements in appropriate documents - the CHANGES text file +lists all changes in each release and the names of persons who +contributed each extension, and each of the language document files +also acknowledge the help received from particular individuals. + +I would like to thank all the users of ITRANS, past and present, +who send me additions and extensions and send in bug reports. +Thanks to all! + +\end{document} |