summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/stdpage/stdpage.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/stdpage/stdpage.dtx')
-rw-r--r--Master/texmf-dist/source/latex/stdpage/stdpage.dtx143
1 files changed, 96 insertions, 47 deletions
diff --git a/Master/texmf-dist/source/latex/stdpage/stdpage.dtx b/Master/texmf-dist/source/latex/stdpage/stdpage.dtx
index 45f5293e912..7fdbee071e8 100644
--- a/Master/texmf-dist/source/latex/stdpage/stdpage.dtx
+++ b/Master/texmf-dist/source/latex/stdpage/stdpage.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 2004 by Georg Michael Verweyen <Georg.Verweyen@rub.de>
+% Copyright (C) 2004--2005 by Georg Michael Verweyen <Georg.Verweyen@rub.de>
% --------------------------------------------------
%
% This file may be distributed and/or modified under the
@@ -18,15 +18,15 @@
% \iffalse
%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package>\ProvidesPackage{stdpage}
-%<package> [2004/12/20 v0.5 stdpage.sty]
+%<package> [2005/03/30 v0.6 stdpage.sty]
%
%<*driver>
\documentclass{ltxdoc}
\renewcommand{\familydefault}{\rmdefault}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
-\usepackage{hyperref,times}
-\usepackage[chars=65,baselinestretch=1.3,hyphen=false]{stdpage}
+\usepackage{hyperref,courier}
+\usepackage[typewriter,chars=70,lines=35]{stdpage}
\hypersetup{%
pdftitle={Das stdpage-Paket},%
@@ -43,7 +43,7 @@
%</driver>
% \fi
%
-% \CheckSum{124}
+% \CheckSum{207}
%
% \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
@@ -68,7 +68,7 @@
% \changes{v0.3}{2004/06/17}{Wieder alles überarbeitet, das Paket xkeyval wird
% nicht mehr gebraucht. Die Funktionalität ist unverändert.}
% \changes{v0.4}{2004/06/21}{Some English documentation added}
-%
+% \changes{v0.6}{2005/03/30}{Additional Features, bugs removed, lot's of changes}
%
% \title{Das \textsf{stdpage} Paket -- \emph{The \textsf{stdpage}
% package}\thanks{%
@@ -78,7 +78,6 @@
% }%
% }%
% \author{Georg Michael Verweyen \\ \texttt{Georg.Verweyen@rub.de}}
-%
% \maketitle
%
% \abstract{%
@@ -124,15 +123,28 @@
%
% Neu in Version 0.5 sind die Möglichkeiten, den Durchschuss zu
% erhöhen, die Silbentrennung abzustellen und Leerzeilen zwischen
-% den Absätzen einzufügen. Diese Dokumentation
-% wurde mit |\usepackage[chars=65,baselinestretch=1.3,hyphen=false]{stdpage}|
-% erzeugt.
+% den Absätzen einzufügen.
%
% {\em Since v0.5 you can spread the lines, stop hyphenation
% optionally and add an empty line at the beginning of a paragraph.
-% This documentation was typeset using
-% |\usepackage[chars=65,baselinestretch=1.3,hyphen=false]{stdpage}|.}
%
+% Für den echten Freund der guten (?) alten Schreibmaschine gibt es
+% jetzt (v0.6) eine Option, die so ziemlich alles, was mir spontan
+% eingefallen ist auf einfache Schriftgrö{\ss}e herunterbrät,
+% |typewriter|. Vom Part bis zur Fu{\ss}note: alles |normalsize|. Die
+% Überschriften werden je nach Gewichtung durch Leerzeilen abgesetzt.
+% Man sollte |courier.sty| benutzen, dann stehen für Überschriften
+% wenigsten fette Schnitte zur Verfügung, damit an die Überschriften
+% wiederfindet.
+%
+% {\em
+% For the real typewriter addicted there is a new (v0.6) option:
+% |typewriter|. This option will turn any fontsize I could imagine used
+% in a heading or footnote, or whatever into normalsize. Headings are
+% separated from the rest of the text by blank lines. You should
+% consider using |courier.sty| with this options, which gives bold
+% headings
+% }
%
% \section{Anwendung -- \emph{Usage}}
%
@@ -150,10 +162,9 @@
% guten alten Schreibmaschine am besten nachahmt, schlie{\ss}lich stammt auch die Idee
% der Normseite aus dieser \"{A}ra. Bei aktiviertem Blocksatz kann der Umbruch durch
% Stauchung und oder Dehnung der Wortzwischenr\"{a}ume etwas anders ausfallen als beim
-% Rausatz.
+% Rausatz (dieses Problem sollte ab v0.6 behoben sein).
%
-% {\em
-% If you are preparing a German ``Normseite'' of 30 lines and 60 characters
+% {\em If you are preparing a German ``Normseite'' of 30 lines and 60 characters
% per line you just put |\usepackage{stdpage}| before the
% |\begin{document}| line -- and everything should be fine. The standard
% behaviour of the package is to make the text ragged, you can change this
@@ -165,11 +176,7 @@
%
% If you want to create a standard page for, let's say the administration of
% the European union, you need a page of 30x50 without paragraph indention,
-% you type in |\usepackage[chars=50, lines=30, noindent]{stdpage}|.
-%
-% I didn't translate the comment on the implementation (which is rather
-% simple). If you are interested in an English hint, just contact me,
-% I'll do my very best \dots
+% you type in\\ |\usepackage[chars=50, lines=30, noindent]{stdpage}|.
% }%
%
% \changes{v0.2}{2004/06/21}{Neue Option: linenumbers}
@@ -204,7 +211,8 @@
% Rest von \"asthetischem Anspruch, aber nun ja -- wenn es der Verlag
% so will: |baselineskip| kann jetzt auch als Option von |stdpage|
% angegeben werden. Für das, was Word gemeinhin anderthalbzeilig
-% nennt, sollte man |baselinestretch=1.25| setzen.
+% nennt, sollte man |baselinestretch=1.2| setzen (was allerdings auch
+% die Standardeinstellung ist, wenn nur |baselinestretch| gefordert wird.
%
% {\em
% In contracts it is often not clear if hyphenation should be used or
@@ -216,11 +224,15 @@
% the lines and need more space. You can change the standard
% \LaTeX-factor |baselinestretch| in the options of |stdpage|.
% |baselinestretch=1.25| will have about the same effect as one and a
-% half linespacing in let's say WORD.
+% half linespacing in let's say WORD. By the way: |baselinestretch| will be
+% set to 1.25 by default when you use |baselinestretch| as an option.
+%
+% I didn't translate the comment on the implementation (which is rather
+% simple). If you are interested in an English hint, just contact me,
+% I'll do my very best \dots
% }
%
-
-
+% \section{Neu -- \emph{New}}
% \StopEventually{\PrintChanges\PrintIndex}
%
% \section{Implementierung}
@@ -233,6 +245,7 @@
,lineno%
}%
\RequirePackage[htt]{hyphenat}%
+ \RequirePackage[rigidchapters]{titlesec}%
% \end{macrocode}
% Typewriter wir zur Standardfamilie erkl\"{a}rt und Absatzeinzug auch bei RaggedRight
% als Standard gesetzt.
@@ -247,17 +260,21 @@
\newlength{\CharsX}%
\newlength{\CharsI}%
\newboolean{st@ndardjust}%
+ \setboolean{st@ndardjust}{false}%
\newboolean{st@ndardnoindent}%
+ \setboolean{st@ndardnoindent}{false}%
\newboolean{st@ndardnumbers}%
+ \setboolean{st@ndardnumbers}{false}%
\newboolean{st@ndardhyphen}%
\setboolean{st@ndardhyphen}{true}%
\newboolean{st@ndardparskip}%
\setboolean{st@ndardparskip}{false}%
+ \newboolean{st@ndardtypewriter}%
+ \setboolean{st@ndardtypewriter}{false}%
\newcommand*{\zeichenzahl}{60}%
\newcommand*{\zeilenzahl}{30}%
% \end{macrocode}
% \subsection{Optionen}
-
% Hier werden jetzt die optionalen Argumente des
% |\usepackage{stdpage}|-Befehls definiert. |#1| bezieht sich jeweils auf
% den Eintrag nach dem Gleichheitszeichen, in eckigen Klammern der
@@ -265,8 +282,7 @@
% Wert folgt. Ob man also |just=true| eingibt oder einfach |just| ist
% egal.
% \begin{macrocode}
-
-\define@key{stdpage}{block}[true]{%Aus kompatibilitätsgründen auf deutsch
+\define@key{stdpage}{block}[true]{%Aus Kompatibilitätsgründen (zu v. 0.4) auf deutsch
\setboolean{st@ndardjust}{#1}%
}%
\define@key{stdpage}{just}[true]{%
@@ -287,13 +303,15 @@
\define@key{stdpage}{chars}[60]{%
\renewcommand{\zeichenzahl}{#1}%
}%
-\define@key{stdpage}{lines}[60]{%
+\define@key{stdpage}{lines}[30]{%
\renewcommand{\zeilenzahl}{#1}%
}%
-\define@key{stdpage}{baselinestretch}[1]{%
+\define@key{stdpage}{baselinestretch}[1.25]{%
\renewcommand{\baselinestretch}{#1}%
}%
-% \end{macrocode}
+\define@key{stdpage}{typewriter}[true]{%
+ \setboolean{st@ndardtypewriter}{#1}%
+}% \end{macrocode}
% Die folgenden Zeilen habe ich auch nicht verstanden, sie tun aber ihre
% Arbeit wie erhofft, indem sie das Makro |\ProcessOptionsWithKV| anstelle
% von |\ProcessOptions| bereitstellen, das dann am Ende zum Einsatz kommt.
@@ -324,28 +342,39 @@
\setlength{\St@ndardTextwidth}{0pt}%\topskip}%
\addtolength{\St@ndardTextwidth}{\zeilenzahl\baselineskip}%
% \end{macrocode}
+% Wenn |parskip| gew\"{a}hlt wird, f\"{u}gt stdpage einen Durchschuss
+% zwischen den Absätzen ein. Nix dehnbar - einfach Schreibmaschine.
+% \begin{macrocode}
+ \ifthenelse{\boolean{st@ndardparskip}}%
+ {\setlength{\parskip}{\baselineskip}}{}
+% \end{macrocode}
% Dann werden die Werte an das |typearea|-Paket \"{u}bergeben. Dabei
% m\"{u}ssen etwa 2,4\,\% abgezogen werden, falls die Blockoption
% gew\"{a}hlt wurde, ansonsten sorgt die Stauchung der Wortzwischenr\"{a}ume
-% f\"{u}r entsprechend weniger Seiten (und das soll ja nicht!).
+% f\"{u}r entsprechend weniger Seiten (und das soll ja nicht!). Durch die neuen
+% fontdimen-Werte bei just=true entfällt dieses Gefrickel.
% \begin{macrocode}
- \ifthenelse{\boolean{st@ndardjust}}%
- {%
- \areaset[current]{.976\St@ndardLinewidth}{\St@ndardTextwidth}%
- }%
- {%
- \areaset[current]{\St@ndardLinewidth}{\St@ndardTextwidth}%
- }%
+%%% \ifthenelse{\boolean{st@ndardjust}}%
+%%% {%
+ \areaset[current]{.976\St@ndardLinewidth}{\St@ndardTextwidth}%
+%%% }%
+%%% {%
+%%% \areaset[current]{\St@ndardLinewidth}{\St@ndardTextwidth}%
+%%% }%
% \end{macrocode}
-% Auch zu Beginn wird gegebenenfalls, falls nicht Blocksatz gew\"{u}nscht
-% wurde, auf Rausatz gestellt
+% Auch zu Beginn werden, falls Blocksatz gew\"{u}nscht
+% wurde, die Interwordspaces flexibel gesetzt, sonst wird auf
+% Rausatz oder (wenn hyphen=false) Flattersatz gestellt
% \begin{macrocode}
\ifthenelse{\boolean{st@ndardjust}}%
- {}%
{%
+ \spaceskip=1\CharsI plus 1.5pt minus 0pt
+ }%
+ {%
+ \spaceskip=1\CharsI plus 0pt minus 0pt
\ifthenelse{\boolean{st@ndardhyphen}}%
{%
- \setlength{\RaggedRightRightskip}{0em}% plus .5em minus .5em}%
+ \setlength{\RaggedRightRightskip}{0em minus .75em}
\RaggedRight%
}%
{%
@@ -359,16 +388,36 @@
\linenumbers%
\pagewiselinenumbers%
}{}%
-}%
% \end{macrocode}
-% |emergencystretch| sollte mindestens 3em sein, sonst hat man entschieden
+% Die neue (v. 0.6) Option typewriter brät alle Überschriften auf fette Schreibmaschine runter
+% \begin{macrocode}
+ \ifthenelse{\boolean{st@ndardtypewriter}}%
+ {%
+ \let\sectfont\normalfont
+ \renewcommand{\footnotesize}{\normalsize}
+ \titleformat{\part}{\normalfont\normalsize\bfseries}{\thepart}{1em}{}
+ \titleformat{\chapter}{\normalfont\normalsize\bfseries}{\thechapter}{1em}{}
+ \titleformat{\section}{\normalfont\normalsize\bfseries}{\thesection}{1em}{}
+ \titleformat{\subsection}{\normalfont\normalsize\bfseries}{\thesubsection}{1em}{}
+ \titleformat{\subsubsection}{\normalfont\normalsize\bfseries}{\thesubsubsection}{1em}{}
+ \titleformat{\paragraph}{\normalfont\normalsize\bfseries}{\theparagraph}{1em}{}
+ \titlespacing*{\part}{0pt}{5\baselineskip}{3\baselineskip}
+ \titlespacing*{\chapter}{0pt}{4\baselineskip}{3\baselineskip}
+ \titlespacing*{\section}{0pt}{3\baselineskip}{2\baselineskip}
+ \titlespacing*{\subsection}{0pt}{2\baselineskip}{1\baselineskip}
+ \titlespacing*{\subsubsection}{0pt}{1\baselineskip}{0pt}
+ \titlespacing*{\paragraph}{0pt}{1\baselineskip}{0pt}
+ }{}%
+% \end{macrocode}
+% |emergencystretch| sollte mindestens 2em sein, sonst hat man entschieden
% zu viele Box-Warnungen. Frenchspacing sollte aktiviert
-% sein, vergrößerter Leerraum passt nicht so recht zu Fix-Fonts.
+% sein, vergrö{\ss}erter Leerraum passt nicht so recht zu Fix-Fonts.
% \begin{macrocode}
\frenchspacing
- \emergencystretch=3em%
+ \emergencystretch=2em%
+}%
% \end{macrocode}
-%
+% Hier endet das Argument von |\AtBeginDocument|
% \begin{macrocode}
\ProcessOptionsWithKV{stdpage}
\AtEndOfPackage{%