diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/extpfeil/extpfeil.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/extpfeil/extpfeil.dtx | 97 |
1 files changed, 91 insertions, 6 deletions
diff --git a/Master/texmf-dist/source/latex/extpfeil/extpfeil.dtx b/Master/texmf-dist/source/latex/extpfeil/extpfeil.dtx index 72b416b1c0a..1083e516a55 100644 --- a/Master/texmf-dist/source/latex/extpfeil/extpfeil.dtx +++ b/Master/texmf-dist/source/latex/extpfeil/extpfeil.dtx @@ -25,7 +25,7 @@ % \iffalse %<package>\NeedsTeXFormat{LaTeX2e}[2003/12/01] %<package>\ProvidesPackage{extpfeil} -%<package> [2006/03/23 v0.2a Extensible Pfeile (PE)] +%<package> [2006/07/27 v0.3 Extensible Pfeile (PE)] % %<*driver> \documentclass[ngerman, draft]{ltxdoc} @@ -40,7 +40,7 @@ %</driver> % \fi % -% \CheckSum{32} +% \CheckSum{79} % % \changes{v0.0}{2006/01/18}{Anfang der Fassung als DTX} % @@ -88,14 +88,23 @@ % % \subsection{Die einzelnen Pfeile}\label{pfeilliste} % +% \changes{v0.2b}{2006/04/11}{Dokumentations-Update: \cs{xmapsto} jetzt auch beschrieben} +% % \DescribeMacro{\xtwoheadrightarrow} % \DescribeMacro{\xtwoheadleftarrow} +% \DescribeMacro{\xmapsto} % \DescribeMacro{\xlongequal} +% \DescribeMacro{\xtofrom} % \begin{tabular}[t]{lcp{5cm}} -% '\xtwoheadrightarrow[a]{b}' & $\xtwoheadrightarrow[a]{b}$ & ein einfacher Pfeil nach rechts mit Doppelspitze \\ -% '\xtwoheadleftarrow[a]{b}' & $\xtwoheadleftarrow[a]{b}$ & ein einfacher Pfeil nach links mit Doppelspitze \\ +% '\xtwoheadrightarrow[a]{b}' & $\xtwoheadrightarrow[a]{b}$ & ein einfacher Pfeil nach +% rechts mit Doppelspitze \\ +% '\xtwoheadleftarrow[a]{b}' & $\xtwoheadleftarrow[a]{b}$ & ein einfacher Pfeil nach +% links mit Doppelspitze \\ +% '\xmapsto[a]{b}' & $\xmapsto[a]{b}$ & ein \emph{wird-abgebildet-auf}-Pfeil nach +% rechts. \\ % '\xlongequal[a]{b}' & $\xlongequal[a]{b}$ & kein Pfeil, sondern einfach nur ein -% verlängerbares Gleichheitszeichen. +% verlängerbares Gleichheitszeichen. \\ +% '\xtofrom[a]{b}' & $\xtofrom[a]{b}$ & Ein Doppelpfeil in beide Richtungen. % \end{tabular} % % @@ -134,6 +143,18 @@ \RequirePackage{amssymb} % \end{macrocode} % +% \pack{mathtools} definiert '\mathrlap' und '\mathllap', welche +% in einigen meiner Befehle verwendet werden. +% \begin{macrocode} +\RequirePackage{mathtools} +% \end{macrocode} +% +% \pack{stmaryrd} enthält viele Symbole, von denen wir nur +% $\shortleftarrow$ und $\shortrightarrow$ brauchen. +% \begin{macrocode} +\RequirePackage[only,shortleftarrow,shortrightarrow]{stmaryrd} +% \end{macrocode} +% % \subsection{Die verwendeten \pack{amsmath}-Funktionen} % % Leider ist die Dokumentation der \AmS-Math-Funktionen\footnote{in @@ -236,7 +257,55 @@ \newcommand*{#1}[2][]{\ext@arrow #2{\arrowfill@#3}{##1}{##2}} } % \end{macrocode} +% \end{macro} +% +% \subsection{Verschiedene Pfeile übereinander} \label{twoarrows} +% +% In einigen Schriftsammlungen sind Pfeile wie $\rightleftarrows$ +% und $\rightrightarrows$ (\pack{\AmS symb}) vorhanden. Leider gibt +% es damit einige Probleme, wenn man daraus erweiterbare Pfeile basteln +% möchte: +% \begin{itemize} +% \item Der vertikale Abstand passt nicht zu $\Relbar$, wie +% $\Relbar\mspace{-5mu}\rightrightarrows$ zeigt. +% \item Es gibt keine $\twoarrowsleft\relbar\shortleftarrow$, +% $\twoarrowsright\shortrightarrow\relbar$ etc., um +% daraus einen verlängerbaren Pfeil wie $\xtofrom{\quad}$ zu basteln. +% \end{itemize} +% Die folgenden Makros versuchen dies zu beheben. +% +% \begin{macro}{\twoarrowsleft}\noindent\marg{Pfeil1}\marg{Pfeil2} % +% \changes{v0.3}{2006/07/27}{Neu.} +% Setzt zwei Pfeile (oder Striche etc.) so zusammen, dass der erste +% zur oberen Linie, der zweite zur unteren Linie von $\Relbar$ ('\Relbar') +% passt. Die beiden Symbole sind am linken Ende ausgerichtet. +% \begin{macrocode} +\newcommand*{\twoarrowsleft}[2]{% + \settoheight{\dimen@}{=}% + \advance\dimen@ by 1pt\relax + \mathrel{% + \mathrlap{\raisebox{0.22\dimen@}[0pt][0pt]{$#1$}}% + \mathrlap{\raisebox{-0.22\dimen@}[0pt][0pt]{$#2$}}% + \hphantom{\vbox{\hbox{$#1$}\hbox{$#2$}}}% + }% +}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\twoarrowsright} +% \changes{v0.3}{2006/07/27}{Neu.} +% Das gleiche für die Rechtsausrichtung. +% \begin{macrocode} +\newcommand*{\twoarrowsright}[2]{% + \settoheight{\dimen@}{=}% + \advance\dimen@ by 1pt\relax + \mathrel{% + \hphantom{\vbox{\hbox{$#1$}\hbox{$#2$}}}% + \mathllap{\raisebox{0.22\dimen@}[0pt][0pt]{$#1$}}% + \mathllap{\raisebox{-0.22\dimen@}[0pt][0pt]{$#2$}}% + }% +}% +% \end{macrocode} % \end{macro} % % \subsection{Weitere Pfeile} @@ -271,7 +340,8 @@ % \changes{v0.2}{2006/03/19}{Neu.} % Hier noch eine verlängerbare Variante von $\mapsto$ und $\longmapsto$. % \pack{mathtools} hat bereits eine Implementation davon, aber diese -% ist etwas länger und gefällt mir daher besser. +% ist etwas länger und gefällt mir daher besser (das '\let' sorgt +% dafür, dass sich '\newcommand' nicht beschwert). % \begin{macrocode} \let\xmapsto\undefined \newextarrow{\xmapsto}{0599}{{\mapstochar\relbar}\relbar\rightarrow} @@ -286,6 +356,21 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\xtofrom} +% \changes{v0.3}{2006/07/27}{Neu} +% Ein Doppelpfeil: $\xtofrom[\sin]{\cos}$. +% \begin{macrocode} +\newextarrow + {\xtofrom}% + {55{40}0}% + {% + {\twoarrowsleft\relbar\shortleftarrow}% + \Relbar% + {\twoarrowsright\shortrightarrow\relbar}% + }% +% \end{macrocode} +% \end{macro} + % \section{Schluss} % Das war es fürs erste -- später kommen % bestimmt noch mehr Pfeile hinzu. |