% \iffalse meta-comment
%
% Copyright 1994 the LaTeX3 project and the individual authors.
% All rights reserved. For further copyright information see the file
% legal.txt, and any other copyright indicated in this file.
% 
% This file is part of the LaTeX2e system.
% ----------------------------------------
% 
%  This system is distributed in the hope that it will be useful,
%  but WITHOUT ANY WARRANTY; without even the implied warranty of
%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
% 
% 
% IMPORTANT NOTICE:
% 
% For error reports in case of UNCHANGED versions see bugs.txt.
% 
% Please do not request updates from us directly.  Distribution is
% done through Mail-Servers and TeX organizations.
% 
% You are not allowed to change this file.
% 
% You are allowed to distribute this file under the condition that
% it is distributed together with all files mentioned in manifest.txt.
% 
% If you receive only some of these files from someone, complain!
% 
% You are NOT ALLOWED to distribute this file alone.  You are NOT
% ALLOWED to take money for the distribution or use of either this
% file or a changed version, except for a nominal charge for copying
% etc.
% \fi

\documentclass{ltxdoc}

\listfiles

% Do not index some TeX primitives, and some common plain TeX commands.

\DoNotIndex{\def,\long,\edef,\xdef,\gdef,\let,\global}
\DoNotIndex{\if,\ifnum,\ifdim,\ifcat,\ifmmode,\ifvmode,\ifhmode,%
            \iftrue,\iffalse,\ifvoid,\ifx,\ifeof,\ifcase,\else,\or,\fi}
\DoNotIndex{\box,\copy,\setbox,\unvbox,\unhbox,\hbox,%
            \vbox,\vtop,\vcenter}
\DoNotIndex{\@empty,\@ifnextchar,\@inputcheck,\immediate,\write}
\DoNotIndex{\egroup,\bgroup,\expandafter,\begingroup,\endgroup}
\DoNotIndex{\divide,\advance,\multiply,\count,\dimen}
\DoNotIndex{\relax,\space,\string,\typeout}
\DoNotIndex{\csname,\endcsname,\@spaces,\openin,\openout,%
            \closein,\closeout}
\DoNotIndex{\active,\catcode,\endinput,\endlinechar}
\DoNotIndex{\jobname,\message,\read,\the,\m@ne,\noexpand}
\DoNotIndex{\hsize,\vsize,\hskip,\vskip,\kern,\hfil,\hfill,\hss}
\DoNotIndex{\ignorespaces,\leavevmode,\break,\nobreak,\par,\endgraf}
\DoNotIndex{\m@ne,\z@,\z@skip,\@ne,\tw@,\p@}
\DoNotIndex{\dp,\wd,\ht,\vspace,\vss,\unskip}

% Set up the Index and Change History to use \part
\IndexPrologue{\part*{Index}%
                 \markboth{Index}{Index}%
                 \addcontentsline{toc}{part}{Index}%
                 The italic numbers denote the pages where the
                 corresponding entry is described,
                 numbers underlined point to the definition,
                 all others indicate the places where it is used.}

\GlossaryPrologue{\part*{Change History}%
                 \markboth{Change History}{Change History}%
                 \addcontentsline{toc}{part}{Change History}}

% The standard \changes command modified slightly to better cope with
% this multiple file document.
\makeatletter
\def\changes@#1#2#3{%
  \let\protect\@unexpandable@protect
  \edef\@tempa{\noexpand\glossary{#2\space\currentfile\space#1\levelchar
                                 \expandafter\@gobble
                                 \saved@macroname\actualchar
                                 \string\verb\quotechar*%
                                 \verbatimchar\saved@macroname
                                 \verbatimchar:\levelchar #3}}%
  \@tempa\endgroup\@esphack}
\makeatother
\RecordChanges
\CodelineIndex
\EnableCrossrefs

\begin{document}
 \title{The \LaTeXe\ Sources}
 \author{%
  Johannes Braams\\
  David Carlisle\\
  Alan Jeffrey\\
  Leslie Lamport\\
  Frank Mittelbach\\
  Chris Rowley\\
  Rainer Sch\"opf}


% Get the date from ltvers.dtx
 \begingroup
   \def\ProvidesFile#1\fmtversion#2{\date{#2}\endinput}
   \input{ltvers.dtx}
 \endgroup

 \maketitle

 \tableofcontents


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Each of the following \DocInclude lines includes a file with extension
% .dtx. Each of these files may be typeset separately. For instance
% latex2e ltboxes.dtx
% will typeset the source of the LaTeX box commands.
%
% If this file is processed, each of these separate dtx files will be
% contained as a part of a single document. Using ltxdoc.cfg you can
% then optionally produce a combined index and/or change history for
% the entire source of the format file. Note that such a document will
% be quite large (about 400 pages).
%

 \DocInclude{ltdirchk} % System dependant initialisation

 \DocInclude{ltplain}  % LaTeX version of Knuth's plain.tex

 \DocInclude{ltvers}   % Current version date

 \DocInclude{ltalloc}  % Allocation of counters and others.

 \DocInclude{ltdefns}  % Initial definitions.

 \DocInclude{ltcntrl}  % Program control macros.

 \DocInclude{lterror}  % Error handling.

 \DocInclude{ltpar}    % Paragraphs.

 \DocInclude{ltspace}  % Spacing, line and page breaking.

 \DocInclude{ltlogos}  % Logos.

 \DocInclude{ltfiles}  % \input files and related commands

 \DocInclude{ltfss}    % NFSS2

 \DocInclude{ltfntcmd} % \textrm etc
 
 \DocInclude{ltcounts} % Counters

 \DocInclude{ltpageno} % Page numbering

 \DocInclude{ltxref}   % Cross referencing

 \DocInclude{ltlength} % Lengths

 \DocInclude{ltmiscen} % Miscellaneous environment definitions.

 \DocInclude{ltlists}  % List and related environments

 \DocInclude{ltboxes}  % Parbox and friends

 \DocInclude{lttab}    % Tabbing tabular and array

 \DocInclude{ltpictur} % Picture mode

 \DocInclude{ltthm}    % Theorem environments

 \DocInclude{ltsect}   % Sectioning

 \DocInclude{ltfloat}  % Floats

 \DocInclude{ltidxglo} % Index and Glossary

 \DocInclude{ltbibl}   % Bibliography

 \DocInclude{ltpage}   % \pagestyle \raggedbottom \sloppy

 \DocInclude{ltoutput} % Output routine

 \DocInclude{ltclass}  % Package & Class interface

 \DocInclude{ltoutenc} % Output encoding interface

 \DocInclude{ltfinal}  % last minute initialisations
                       % hyphenation, and dump

% Stop here if ltxdoc.cfg says \AtEndOfClass{\OnlyDescription}
\StopEventually{\end{document}}

\clearpage
\pagestyle{headings}

% Make TeX shut up.
\hbadness=10000
\newcount\hbadness
\hfuzz=\maxdimen


\PrintChanges

\clearpage

% makeindex needs a symbol between the parts of composite page numbers
% but we dont want one, so:
\begingroup
\def\endash{--}
\catcode`\-\active
\def-{\futurelet\temp\indexdash}
\def\indexdash{\ifx\temp-\endash\fi}

\PrintIndex
\endgroup

% Make sure that the index is not printed twice
% (ltxdoc.cfg might have a second \PrintIndex command)
\let\PrintChanges\relax
\let\PrintIndex\relax

\end{document}
