% \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}
%</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}
%</filedriver>
%\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}
%</code>
%    \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         \~}
%%