home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fonts 1 / freshfonts1.bin / programs / amiga / pastex / macros / latex2e / base / letter.dtx (.txt) < prev    next >
LaTeX Document  |  1994-06-10  |  59KB  |  1,578 lines

  1. % \iffalse meta-comment
  2. % Copyright 1994 the LaTeX3 project and the individual authors.
  3. % All rights reserved. For further copyright information see the file
  4. % legal.txt, and any other copyright indicated in this file.
  5. % This file is part of the LaTeX2e system.
  6. % ----------------------------------------
  7. %  This system is distributed in the hope that it will be useful,
  8. %  but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. %  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  10. % IMPORTANT NOTICE:
  11. % For error reports in case of UNCHANGED versions see bugs.txt.
  12. % Please do not request updates from us directly.  Distribution is
  13. % done through Mail-Servers and TeX organizations.
  14. % You are not allowed to change this file.
  15. % You are allowed to distribute this file under the condition that
  16. % it is distributed together with all files mentioned in manifest.txt.
  17. % If you receive only some of these files from someone, complain!
  18. % You are NOT ALLOWED to distribute this file alone.  You are NOT
  19. % ALLOWED to take money for the distribution or use of either this
  20. % file or a changed version, except for a nominal charge for copying
  21. % etc.
  22. % \fi
  23. % \CheckSum{996}
  24. %% \CharacterTable
  25. %%  {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
  26. %%   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
  27. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  28. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  29. %%   Dollar        \$     Percent       \%     Ampersand     \&
  30. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  31. %%   Asterisk      \*     Plus          \+     Comma         \,
  32. %%   Minus         \-     Point         \.     Solidus       \/
  33. %%   Colon         \:     Semicolon     \;     Less than     \<
  34. %%   Equals        \=     Greater than  \>     Question mark \?
  35. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  36. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  37. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  38. %%   Right brace   \}     Tilde         \~}
  39. % \iffalse
  40. % \section{Identification}
  41. %    These document classes can only be used with \LaTeXe, so we make
  42. %    sure that an appropriate message is displayed when another \TeX{}
  43. %    format is used.
  44. %    \begin{macrocode}
  45. %<+letter>\NeedsTeXFormat{LaTeX2e}
  46. %    \end{macrocode}
  47. %    Announce the Class name and its version.
  48. % \changes{v1.2f}{1994/04/29}{Use LaTeX instead of LaTeX2e in messages}
  49. % \changes{v1.2f}{1994/04/29}{Removed \cmd\typeout message}
  50. % \changes{v1.2g}{1994/05/01}{Removed the use of \cmd\fileversion
  51. %    c.s.}
  52. % \changes{v1.2j}{1994/06/01}{Corrected driver code.}
  53. %    \begin{macrocode}
  54. %<+letter>\ProvidesClass{letter}
  55. %<*driver>
  56.        \ProvidesFile{letter.drv}
  57. %</driver>
  58.               [1994/06/01 v1.2j
  59. %<+letter>               Standard LaTeX document class]
  60. %    \end{macrocode}
  61. % \section{The documentation driver file}
  62. %    We have our own document class to format the \LaTeXe
  63. %    documentation.
  64. % \changes{v1.0.6}{1993/12/07}{Use class ltxdoc document class}
  65. %    \begin{macrocode}
  66. %<*driver>
  67. \documentclass{ltxdoc}
  68. %    \end{macrocode}
  69. %    We don't want everything to appear in the index.
  70. %    \begin{macrocode}
  71. \DoNotIndex{\@M,\@badmath}
  72. \DoNotIndex{\@centercr}
  73. \DoNotIndex{\@empty,\@ignoretrue}
  74. \DoNotIndex{\@ixpt}
  75. \DoNotIndex{\@minus,\@ne,\@plus}
  76. \DoNotIndex{\\,\addtolength}
  77. \DoNotIndex{\advance,\Alph,\alph}
  78. \DoNotIndex{\arabic,\ast,\begin,\begingroup,\bfseries,\bgroup,\box}
  79. \DoNotIndex{\bullet}
  80. \DoNotIndex{\cdot,\cr,\day,\DeclareOption}
  81. \DoNotIndex{\def,\DocInput,\documentclass}
  82. \DoNotIndex{\DoNotIndex,\egroup,\ifx,\else,\fi,\endtrivlist}
  83. \DoNotIndex{\EnableCrossrefs,\end,\end@dblfloat,\end@float,\endgroup}
  84. \DoNotIndex{\endlist,\everycr,\ExecuteOptions}
  85. \DoNotIndex{\filedate,\filename,\fileversion}
  86. \DoNotIndex{\global,\halign,\hangindent,\hbox,\hfil,\hfill,\hrule}
  87. \DoNotIndex{\hsize,\hskip\hspace,\hss,\ifcase,\or,\fi}
  88. \DoNotIndex{\ifvmode,\fi,\ifnum,\fi,\input}
  89. \DoNotIndex{\kern,\leavevmode,\let,\leftmark}
  90. \DoNotIndex{\list,\llap,\long,\m@ne,\m@th,\mark}
  91. \DoNotIndex{\month,\newcommand,\newcounter,\newenvironment}
  92. \DoNotIndex{\NeedsTeXFormat,\newdimen}
  93. \DoNotIndex{\newpage,\nobreak,\noindent,\number}
  94. \DoNotIndex{\p@}
  95. \DoNotIndex{\pagestyle,\par}
  96. \DoNotIndex{\penalty,\PrintChanges,\PrintIndex,\ProcessOptions}
  97. \DoNotIndex{\protect,\ProvidesClass,\raggedbottom,\raggedright}
  98. \DoNotIndex{\refstepcounter,\relax,\renewcommand,\reset@font}
  99. %-----------------------------------------------------------------------
  100. \DoNotIndex{\rightmargin,\rlap,\rmfamily,\roman}
  101. \DoNotIndex{\roman,\setbox,\setcounter,\setlength}
  102. \DoNotIndex{\skip,\slshape,\space}
  103. \DoNotIndex{\trivlist,\typeout,\tw@}
  104. \DoNotIndex{\vskip,\vspace,\year,\z@}
  105. %\DisableCrossrefs  % Say \DisableCrossrefs if index is ready
  106. \RecordChanges      % Gather update information
  107. %\OnlyDescription   % comment out for implementation details
  108. %\OldMakeindex      % use if your MakeIndex is pre-v2.9
  109. %    \end{macrocode}
  110. %    We use so many \file{docstrip} modules that we set the
  111. %    \texttt{StandardModuleDepth} counter to 1.
  112. %    \begin{macrocode}
  113. \setcounter{StandardModuleDepth}{1}
  114. %    \end{macrocode}
  115. %    The following command retrieves the date and version information
  116. %    from the file.
  117. %    \begin{macrocode}
  118. \GetFileInfo{letter.drv}
  119. %    \end{macrocode}
  120. %    Some commonly used abbreviations
  121. %    \begin{macrocode}
  122. \newcommand\Lopt[1]{\textsf {#1}}
  123. \newcommand\file[1]{\texttt {#1}}
  124. \newcommand\Lcount[1]{\textsl {\small#1}}
  125. \newcommand\pstyle[1]{\textsl {#1}}
  126. %    \end{macrocode}
  127. %    We also want the full details.
  128. %    \begin{macrocode}
  129. \begin{document}
  130. \DocInput{letter.dtx}
  131. \PrintIndex
  132. % ^^A\PrintChanges
  133. \end{document}
  134. %</driver>
  135. %    \end{macrocode}
  136. % \fi
  137. % \changes{v1.1}{93/12/18}{Changes to make it work with
  138. %                           compatibility mode.}
  139. % \changes{v1.1a}{93/12/19}{Removed float parms}
  140. % \changes{v1.1c}{1994/01/17}{Moved definition of \cmd{@textop} to
  141. %            initialization section, to counteract setting of
  142. %            \cmd{@texttop} in \cmd{raggedbottom}.}
  143. % \changes{v1.1d}{1994/01/20}{Corrected margins: Now computed from
  144. %            \cmd{paperwidth} and \cmd{textwidth}, so that the text
  145. %            is horizontally centered.}
  146. % \changes{v1.1e}{1994/02/03}{Corrected checksum}
  147. % \changes{v1.2a}{1994/02/12}{Removed onecolumn and twocolumn options.}
  148. % \changes{v1.2a}{1994/02/12}{Changed label producing commands in .aux
  149. %                         file.}
  150. % \changes{v1.2b}{1994/02/28}{Moved driver further up.}
  151. % \changes{v1.2c}{1994/03/08}{Always write .aux file.}
  152. % \iffalse
  153. % Copyright (C) 1994 LaTeX3 project, Frank Mittelbach
  154. % and Rainer Sch\"opf, all rights reserved.
  155. % \fi
  156. % \author{Leslie Lamport and Frank Mittelbach and Rainer Sch\"opf}
  157. % \title{Standard Letter Document Class for \LaTeX{} version 2e}
  158. % \maketitle
  159. % \tableofcontents
  160. % \StopEventually
  161. % \section{Initial Code}
  162. %    In this part we define a few comands that are used later on.
  163. % \begin{macro}{\@ptsize}
  164. %    This control sequence is used to store the second digit of the
  165. %    pointsize we are typesetting in. So, normally, it's value is one
  166. %    of 0, 1 or 2.
  167. %    \begin{macrocode}
  168. %<*letter>
  169. \newcommand\@ptsize{}
  170. %    \end{macrocode}
  171. % \end{macro}
  172. % \subsection{Setting Paper Sizes}
  173. %    The variables |\paperwidth| and |\paperheight| should reflect the
  174. %    physical paper size after trimming. For desk printer output this
  175. %    is usually the real paper size since there is no post-processing.
  176. % \changes{v1.0a}{1993/12/14}{Corrected typo, A4 is not 279 mm high}
  177. %    \begin{macrocode}
  178. \DeclareOption{a4paper}
  179.    {\setlength\paperheight {297mm}%
  180.     \setlength\paperwidth  {210mm}}
  181. \DeclareOption{a5paper}
  182.    {\setlength\paperheight {210mm}%
  183.     \setlength\paperwidth  {148mm}}
  184. \DeclareOption{b5paper}
  185.    {\setlength\paperheight {250mm}%
  186.     \setlength\paperwidth  {176mm}}
  187. \DeclareOption{letterpaper}
  188.    {\setlength\paperheight {11in}%
  189.     \setlength\paperwidth  {8.5in}}
  190. \DeclareOption{legalpaper}
  191.    {\setlength\paperheight {14in}%
  192.     \setlength\paperwidth  {8.5in}}
  193. \DeclareOption{executivepaper}
  194.    {\setlength\paperheight {10.5in}%
  195.     \setlength\paperwidth  {7.25in}}
  196. %    \end{mac