% \iffalse meta-comment % % Copyright 1989-2004 Johannes L. Braams and any individual authors % listed elsewhere in this file. All rights reserved. % % This file is part of the Babel system. % -------------------------------------- % % It 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 2003/12/01 or later. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work is Johannes Braams. % % The list of all files belonging to the LaTeX base distribution is % given in the file `manifest.bbl. See also `legal.bbl' for additional % information. % % The list of derived (unpacked) files belonging to the distribution % and covered by LPPL is defined by the unpacking scripts (with % extension .ins) which are part of the distribution. % \fi % \CheckSum{72} % % \iffalse % Tell the \LaTeX\ system who we are and write an entry on the % transcript. %<*dtx> \ProvidesFile{hindi.dtx} % %<+code>\ProvidesLanguage{hindi} %\fi %\ProvidesFile{hindi.dtx} [2007/05/11 v1.0a Hindi support from the babel system] %\iffalse %% File `hindi.dtx' %% Babel package for LaTeX version 2e %% Copyright (C) 1989 -- 2004 %% by Johannes Braams, TeXniek % %% Hindi language Definition File %% Copyright (C) 2006 -- 2007 %% by Zdenek Wagner, Ice Bear Soft %% Johannes Braams, TeXniek % %% Please report errors to: Velthuis Devanagari for TeX project %% http://sarovar.org/projects/devnag/ % % This file is part of the babel system, it provides the source % code for the hindi language definition file. The original % version of this file was written by Zdenek Wagner. % It is based on the Velthuis Devanagari for TeX project. %<*filedriver> \documentclass{ltxdoc} \usepackage{graphicx} \newcommand*{\TeXhax}{\TeX hax} \newcommand*{\babel}{\textsf{babel}} \newcommand*{\langvar}{$\langle \mathit lang \rangle$} \newcommand*{\note}[1]{} \newcommand*{\Lopt}[1]{\textsf{#1}} \newcommand*{\file}[1]{\texttt{#1}} \newcommand*{\pkg}[1]{\texttt{#1}} \DeclareRobustCommand\XeTeX{X\kern-.125em\lower.5ex\hbox{\csname reflectbox\endcsname{E}}\kern-.1667em\TeX} \DeclareRobustCommand\XeLaTeX{X\kern-.125em\lower.5ex\hbox{\csname reflectbox\endcsname{E}}\LaTeX} \begin{document} \DocInput{hindi.dtx} \end{document} % %\fi % \newcommand*{\devnag}{Devan\=agar\=\i} % \GetFileInfo{hindi.dtx} % % % \section{The Hindi language} % % The file \file{\filename}\footnote{The file described in this % section has version number \fileversion\ and was last revised on % \filedate. The original author is Zdenek Wagner. The module is % based on the Velthuis \devnag\ for \TeX.} implements the language % features for Hindi in the \babel\ system. There are no hyphenation % patterns, therefore just the captions and Europian style date % are defined. It is difficult, or maybe even impossible, to convert % the \TeX's date into the traditional Indian date (tithi). Such % functionality will hardly ever be provided. % % Remember that the file does not work without the Velthuis \devnag\ % for \TeX. Look into its manual for instructions how to use Hindi % with \babel. % % \StopEventually{} % % The macro |\LdfInit| takes care of preventing that this file is % loaded more than once, checking the category code of the % \texttt{@} sign, etc. % \begin{macrocode} %<*code> \LdfInit\CurrentOption{captions\CurrentOption} % \end{macrocode} % When the option \Lopt{modern} was used, redefine % |\CurrentOption| to prevent problems later on. % \begin{macrocode} \gdef\CurrentOption{hindi}% \edef\bbl@main@language{\CurrentOption}% % \end{macrocode} % % When this file is read as an option, i.e. by the |\usepackage| % command, \texttt{hindi} could be an `unknown' language in % which case we have to make it known. So we check for the % existence of |\l@hindi| to see whether we have to do % something here. % % \begin{macrocode} \ifx\l@hindi\@undefined \@nopatterns{hindi} \adddialect\l@hindi0\fi % \end{macrocode} % % Now we declare the |modernhindi| language attribute. % \begin{macrocode} \bbl@declare@ttribute{hindi}{modernhindi}{% \let\captionshindi\captionsmodernhindi \let\datehindi\datemodernhindi } % \end{macrocode} % % The file supports both \XeTeX\ and traditional \TeX. We thus % check the engine first. % % \begin{macrocode} \expandafter\ifx\csname XeTeXrevision\endcsname\relax % \end{macrocode} % % Font styles are defined as language attributes. They make no % sense in \XeLaTeX. % % \begin{macrocode} \bbl@declare@ttribute{hindi}{bombay}{\def\dnfamilydefault{dnb}} \bbl@declare@ttribute{hindi}{calcutta}{\def\dnfamilydefault{dnc}} \bbl@declare@ttribute{hindi}{nepali}{\def\dnfamilydefault{dnn}} \bbl@declare@ttribute{hindi}{pen}{\def\dnfamilydefault{dnp}} \bbl@declare@ttribute{hindi}{penbombay}{\def\dnfamilydefault{dnpb}} \bbl@declare@ttribute{hindi}{pencalcutta}{\def\dnfamilydefault{dnpc}} \bbl@declare@ttribute{hindi}{pennepali}{\def\dnfamilydefault{dnpn}} % \end{macrocode} % % Support for typesetting in the \devnag\ script as well as captions % names definitions for Hindi is loaded from \file{devanagari.sty}. % New version is needed, therefore the package date is checked. The % plain \TeX\ version currently does not define captions. % % \begin{macrocode} \expandafter\ifx\csname RequirePackage\endcsname\relax \input dnmacs \else \AtEndOfPackage{\RequirePackage[nocatcodes]{devanagari}[2006/06/21]} \fi % \end{macrocode} % % The \XeLaTeX\ captions are written directly in UTF-8 and will be % unprintable in the documentation of this file. The file with % caption definitions (|hindicaptions.sty|) was therefore % placed to the Velthuis \devnag\ package and is only loaded here. % % \begin{macrocode} \else \expandafter\ifx\csname RequirePackage\endcsname\relax \input hindicaptions.sty \else \AtEndOfPackage{\RequirePackage{hindicaptions}[2007/05/11]} \fi \fi % \end{macrocode} % % The macro |\ldf@finish| takes care of looking for a % configuration file, setting the main language to be switched on % at |\begin{document}| and resetting the category code of % \texttt{@} to its original value. % \begin{macrocode} \ldf@finish{\CurrentOption} % % \end{macrocode} % % \Finale %\endinput %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z %% Digits \0\1\2\3\4\5\6\7\8\9 %% Exclamation \! Double quote \" Hash (number) \# %% Dollar \$ Percent \% Ampersand \& %% Acute accent \' Left paren \( Right paren \) %% Asterisk \* Plus \+ Comma \, %% Minus \- Point \. Solidus \/ %% Colon \: Semicolon \; Less than \< %% Equals \= Greater than \> Question mark \? %% Commercial at \@ Left bracket \[ Backslash \\ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} %%