summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/manfnt
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/manfnt
Initial commit
Diffstat (limited to 'macros/latex/contrib/manfnt')
-rw-r--r--macros/latex/contrib/manfnt/manfnt.dtx506
-rw-r--r--macros/latex/contrib/manfnt/manfnt.ins56
2 files changed, 562 insertions, 0 deletions
diff --git a/macros/latex/contrib/manfnt/manfnt.dtx b/macros/latex/contrib/manfnt/manfnt.dtx
new file mode 100644
index 0000000000..7756c65963
--- /dev/null
+++ b/macros/latex/contrib/manfnt/manfnt.dtx
@@ -0,0 +1,506 @@
+%^^A manfnt.dtx --- doc source file for manfnt.sty -*-LaTeX-*-
+% \iffalse meta-comment
+%% Copyright (C) 1998 - 99 by Axel Kielhorn, all rights reserved
+%% Copyright (C) 1999 by Denis Kosygin, all rights reserved.
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN
+%% archives in directory macros/latex/base/lppl.txt; either
+%% version 1 of the License, or any later version.
+% \fi
+% \CheckSum{118}
+% \iffalse
+% Below we define the release date and version of manfnt for which
+% this documentation is written.
+% \fi
+\def\fileversion{0.2}
+\def\filedate{1999/07/01}
+% \iffalse
+% Keep the definitions above uncommented and before the rest of the
+% package code so that the docstrip sticks them first in manfnt.sty.
+% Use \def to avoid conflicts with definitions \fileversion and
+% \filedate in other packages.
+% Keep them near the beginning and only in one place so that it is
+% easy to find them and modify for new releases.
+% Do not hide them from doc module, so that the numbers in
+% documentation are consistent with the numbers in manfnt.sty.
+% Do not enclose them in macrocode environment, as it inserts them in
+% the documentation too early. The beginning of section `Code' is
+% hacked to reflect their presence in manfnt.sty
+% \fi
+% \newcommand{\fixme}[1][FIXME!]{\texttt{#1}}
+% \newcommand{\docdate}{1999/07/01}
+% \iffalse
+% \docdate definition is hidden from docstrip because it is relevant
+% only in the documentation.
+% Keep it before \maketitle, so that the documentation date is correct.
+% If this package is ever archived with version control, perhaps it is
+% worthwhile to hack the archiving program to automatically update
+% \docdate whenever the current file changes.
+% \fi
+%
+% \changes{0.1}{\fixme}{Initial version}
+% \changes{0.2}{1997/06/10}{More symbol names added. Commands
+% \cmd{\manfntsymbol} and \cmd{\texdbend} (with variations).}
+%
+% \title{The \texttt{Manfnt} package\\
+% A quick way to access the symbols in manfnt\thanks{This manual
+% documents version \fileversion{} released on \filedate{}.}}
+% \author{Axel Kielhorn\thanks{With additions by Denis Kosygin.}}
+% \renewcommand{\today}{\docdate}
+% \maketitle
+%
+% \iffalse
+% Below we hide the driver from doc module.
+% We still follow the doc conventions in case we decide later to
+% include the driver in the manual or to extract it into a separate
+% file with docstrip.
+% \fi
+% \iffalse
+% \section{Driver for \texttt{manfnt}}
+% \begin{macrocode}
+%<*driver>
+\documentclass{ltxdoc}
+\usepackage{manfnt}
+\begin{document}
+\DocInput{manfnt.dtx}
+\end{document}
+%</driver>
+% \end{macrocode}
+% \fi
+%
+% \section{Introduction}
+% The \TeX{} and metafont manuals use some special symbols not found in
+% the normal CM-fonts. Most of these symbols will be of little use for
+% the average author, but some, like the ``Dangerous Bend'' sign may be
+% approriate for some textbooks.
+%
+% Since there is no easy way to access these symbols I wrote a small
+% package which I distributed with my \texttt{refman} package. I didn't
+% expect much response and was quite surprised to get a mail from Denis
+% Kosygin who suggested some improvements. He also suggested releasing
+% it a stand-alone package, thus forcing me to write some
+% documentation\texttt{:-)}
+%
+% \subsection*{A word of caution}
+% Please use the symbols from this package sparingly.
+% Their unusual shapes attract attention, which means also
+% that they distract the reader from the main text. For any advice
+% how to write well there is a brilliant example, where it was not
+% followed. Still, in general, restraining means of expression
+% improves the overall aesthetic quality.
+%
+% This point of view is reflected in the design of \texttt{manfnt}.
+% In particular, that was the reason, why there are no switches to
+% manfnt similar to \cmd{\textrm} or \cmd{\rmfamily}.
+%
+% \section{The symbols}
+%
+% \DescribeMacro{\manfntsymbol}
+% To access a symbol in manfnt by its
+% code say \cmd{\manfntsymbol}\marg{code}. Symbol codes are shown in
+% a table at the end of this manual. Recall that in \TeX{} octal
+% codes begin with |'| and hexadecimal codes with |"|.
+%
+% Some symbols with ``interesting'' shapes are named to alleviate the
+% burden of looking up their codes. Their names are listed at the end
+% of this manual.
+%
+% \subsection*{The dangerous bends}
+% \newcommand{\danger}{\marginpar[\hfill\dbend]{\dbend\hfill}}
+% \newenvironment{example}{\smallskip\begin{trivlist}\item[]}
+% {\end{trivlist}\smallskip}
+% As shown below, if \danger\cmd{\dbend} is used directly in a text,
+% \LaTeX{} will place the center of the sign plate on the baseline. As
+% the result, the sign pole may overlap with the contents of the next
+% line\footnote{The reason for such design can be seen in the \TeX{}book
+% by D.~Knuth \cite{book:knuth}. There in ``dangerous bend''
+% paragraphs the ``ground level'' of the sign is the base of the
+% next line. Special arrangments (which are beyond the scope of
+% this manual) are needed to produce similar effect in a \LaTeX{}
+% document.}.
+% \begin{example}
+% \newlength{\myminipagesep}
+% \newlength{\myminipagewidth}
+% \setlength{\myminipagewidth}{.5\textwidth}
+% \addtolength{\myminipagewidth}{-2.5em}
+% \begin{minipage}{\myminipagewidth}
+% Here is an example of an unfortunate use of \dbend. The text on
+% the next line is partially obscured by the sign pole.
+% \end{minipage}
+% \hspace{1em}^^A
+% \addtolength{\myminipagewidth}{3.5em}^^A
+% \begin{minipage}{\myminipagewidth}
+%\begin{verbatim}
+%Here is an example of an unfortunate
+%use of \dbend. The text on the next
+%line is partially obscured by
+%the sign pole.
+%\end{verbatim}
+% \end{minipage}
+% \end{example}
+% A better approach is illustrated in the beginning of this paragraph,
+% where the dangerous bend sign is placed on the text margins. This was
+% achieved with the help of the command~\cmd{\danger}\footnote{In
+% general you should design your own commands for using this symbol,
+% which reflect the meaning you assign to it. Book~\cite{book:lamport} on
+% \LaTeX{} by~L.~Lamport explains how to place text on margins.},
+% defined in \texttt{manfnt.dtx}:
+%\begin{verbatim}
+%\newcommand{\danger}{\marginpar[\hfill\dbend]{\dbend\hfill}}
+%\end{verbatim}
+% The first sentence of the current paragraph was entered into the
+% source as
+% \begin{example}
+%\begin{verbatim}
+% As shown below, if \danger\cmd{\dbend} is used directly in a text,
+% \LaTeX{} will place the center of the sign plate on the baseline.
+%\end{verbatim}
+% \end{example}
+%
+% \DescribeMacro{\textdbend}
+% \DescribeMacro{\textlhdbend}
+% \DescribeMacro{\textreversedvideodbend}
+% For rare occasions, when you do need to include \textdbend{} into a
+% line of text, \texttt{manfnt} provides command~\cmd{\textdbend},
+% which raises the ``ground level'' of the sign to the base line making
+% it suitable for inclusion. For example, the dangerous bend sign in
+% the previous sentence was produced by~\cmd{\textdbend}. Commands
+% \cmd{\textlhdbend} and \cmd{\textreversedvideodbend} act similarly.
+% \iffalse
+% We delay the printing of bibliography and tables until the end of
+% the document.
+% Below we define few commands which are used only in tables.
+% We also make | an ordinary character again, since it has a special
+% meaning in tables.
+% \fi
+% \renewcommand{\caption}[1]{\textbf{\large #1}\bigskip\bigskip}
+% \newcommand{\subcaptionsep}{1ex}
+% \newcommand{\subtablesep}{2.5ex}
+% \newcommand{\subcaption}[1]{\textbf{#1}}
+% \DeleteShortVerb{\|}
+% \StopEventually{
+% \bibliographystyle{plain}
+% \begin{thebibliography}{1}
+% \bibitem{book:knuth} D.\ E.\ Knuth.
+% \newblock {\em The \TeX{}book}.
+% \newblock Addison-Wesley, Reading, Massachusetts, 1994.
+% \bibitem{book:lamport} L.\ Lamport.
+% \newblock {\em \LaTeX: a document preparation system}, -- 2nd ed.
+% \newblock Addison-Wesley, Reading, Massachusetts, 1994.
+% \end{thebibliography}
+% \begin{table}[p]
+% \begin{center}
+% \caption{Symbols in manfnt}
+% \begin{tabular}{c|c|c|c|c|c|c|c|c|c}
+% \textit{x}
+% & \textit{'0} & \textit{'1} & \textit{'2} & \textit{'3}
+% & \textit{'4} & \textit{'5} & \textit{'6} & \textit{'7}
+% & \\ \hline
+% \textit{'00x} &
+% \manfntsymbol{'000} & \manfntsymbol{'001} &
+% \manfntsymbol{'002} & \manfntsymbol{'003} &
+% \manfntsymbol{'004} & \manfntsymbol{'005} &
+% \manfntsymbol{'006} & \manfntsymbol{'007} & \rule[-3ex]{0pt}{5ex}
+% \texttt{"0x} \\ \cline{1-9}
+% \textit{'01x} &
+% \manfntsymbol{'010} & \manfntsymbol{'011} &
+% \manfntsymbol{'012} & \manfntsymbol{'013} &
+% \manfntsymbol{'014} & \manfntsymbol{'015} &
+% \manfntsymbol{'016} & \manfntsymbol{'017} &
+% \texttt{"0y} \\ \hline
+% \textit{'02x} &
+% \manfntsymbol{'020} & \manfntsymbol{'021} &
+% \manfntsymbol{'022} & \manfntsymbol{'023} &
+% \manfntsymbol{'024} & \manfntsymbol{'025} &
+% \manfntsymbol{'026} & \manfntsymbol{'027} &
+% \texttt{"1x} \\ \cline{1-9}
+% \textit{'03x} &
+% \manfntsymbol{'030} & \manfntsymbol{'031} &
+% \manfntsymbol{'032} & \manfntsymbol{'033} &
+% \manfntsymbol{'034} & \manfntsymbol{'035} &
+% \manfntsymbol{'036} & \manfntsymbol{'037} &
+% \texttt{"1y} \\ \hline
+% \textit{'04x} &
+% \manfntsymbol{'040} & \manfntsymbol{'041} &
+% \manfntsymbol{'042} & \manfntsymbol{'043} &
+% \manfntsymbol{'044} & \manfntsymbol{'045} &
+% \manfntsymbol{'046} & \manfntsymbol{'047} &
+% \texttt{"2x} \\ \cline{1-9}
+% \textit{'05x} &
+% \manfntsymbol{'050} & \manfntsymbol{'051} &
+% \manfntsymbol{'052} & \manfntsymbol{'053} &
+% \manfntsymbol{'054} & \manfntsymbol{'055} &
+% \manfntsymbol{'056} & \manfntsymbol{'057} &
+% \texttt{"2y} \\ \hline
+% \textit{'06x} &
+% \manfntsymbol{'060} & \manfntsymbol{'061} &
+% \manfntsymbol{'062} & \manfntsymbol{'063} &
+% \manfntsymbol{'064} & \manfntsymbol{'065} &
+% \manfntsymbol{'066} & \manfntsymbol{'067} &
+% \texttt{"3x} \\ \cline{1-9}
+% \textit{'07x} &
+% \manfntsymbol{'070} & \manfntsymbol{'071} &
+% \manfntsymbol{'072} & \manfntsymbol{'073} &
+% \manfntsymbol{'074} & \manfntsymbol{'075} &
+% \manfntsymbol{'076} & \manfntsymbol{'077} &
+% \texttt{"3y} \\ \hline
+% \textit{'10x} &
+% \manfntsymbol{'100} & \manfntsymbol{'101} &
+% \manfntsymbol{'102} & \manfntsymbol{'103} &
+% \manfntsymbol{'104} & \manfntsymbol{'105} &
+% \manfntsymbol{'106} & \manfntsymbol{'107} &
+% \texttt{"4x} \\ \cline{1-9}
+% \textit{'11x} &
+% \manfntsymbol{'110} & \manfntsymbol{'111} &
+% \manfntsymbol{'112} & \manfntsymbol{'113} &
+% \manfntsymbol{'114} & \manfntsymbol{'115} &
+% \manfntsymbol{'116} & \manfntsymbol{'117} &
+% \texttt{"4y} \\ \hline
+% \textit{'12x} &
+% \manfntsymbol{'120} & \manfntsymbol{'121} &
+% \manfntsymbol{'122} & \manfntsymbol{'123} &
+% \manfntsymbol{'124} & \manfntsymbol{'125} &
+% \manfntsymbol{'126} & \manfntsymbol{'127} &
+% \texttt{"5x} \\ \cline{1-9}
+% \textit{'13x} &
+% \manfntsymbol{'130} & \manfntsymbol{'131} &
+% \manfntsymbol{'132} & \manfntsymbol{'133} &
+% \manfntsymbol{'134} & \manfntsymbol{'135} &
+% \manfntsymbol{'136} & \manfntsymbol{'137} &
+% \texttt{"5y} \\ \hline
+% \textit{'14x} &
+% \manfntsymbol{'140} & \manfntsymbol{'141} &
+% \manfntsymbol{'142} & \manfntsymbol{'143} &
+% \manfntsymbol{'144} & \manfntsymbol{'145} &
+% \manfntsymbol{'146} & \manfntsymbol{'147} &
+% \texttt{"6x} \\ \cline{1-9}
+% \textit{'15x} &
+% \manfntsymbol{'150} & \manfntsymbol{'151} &
+% \manfntsymbol{'152} & \manfntsymbol{'153} &
+% \manfntsymbol{'154} & \manfntsymbol{'155} &
+% \manfntsymbol{'156} & \manfntsymbol{'157} &
+% \texttt{"6y} \\ \hline
+% \textit{'16x} &
+% \manfntsymbol{'160} & \manfntsymbol{'161} &
+% \manfntsymbol{'162} & \manfntsymbol{'163} &
+% \manfntsymbol{'164} & \manfntsymbol{'165} &
+% \manfntsymbol{'166} & \manfntsymbol{'167} &
+% \texttt{"7x} \\ \cline{1-9}
+% \textit{'17x} &
+% \manfntsymbol{'170} & \manfntsymbol{'171} &
+% \manfntsymbol{'172} & \manfntsymbol{'173} &
+% \manfntsymbol{'174} & \manfntsymbol{'175} &
+% \manfntsymbol{'176} & \manfntsymbol{'177} & \rule[-3ex]{0pt}{5ex}
+% \texttt{"7y}\\\hline
+% & \texttt{"8} & \texttt{"9} & \texttt{"A} & \texttt{"B}
+% & \texttt{"C} & \texttt{"D} & \texttt{"E} & \texttt{"F}
+% & \texttt{y}
+% \end{tabular}
+% \end{center}
+% \end{table}
+% \begin{table}[p]
+% \begin{center}
+% \caption{Symbol names in \texttt{manfnt}}
+% \begin{tabular}{clcl}
+% \multicolumn{4}{l}{\subcaption{Pen nibs}}\\[\subcaptionsep]
+% \manhpennib & \cmd{\manhpennib} &
+% \mantiltpennib & \cmd{\mantiltpennib} \\
+% \manvpennib & \cmd{\manvpennib} & & \\[\subtablesep]
+% \multicolumn{4}{l}{\subcaption{Triangles}} \\[\subcaptionsep]
+% \mantriangleup & \cmd{\mantriangleup} &
+% \mantriangleright & \cmd{\mantriangleright}\\
+% \mantriangledown & \cmd{\mantriangledown} & & \\[\subtablesep]
+% \multicolumn{4}{l}{\subcaption{Kidney beans}} \\[\subcaptionsep]
+% \mankidney & \cmd{\mankidney} &
+% \manpenkidney & \cmd{\manpenkidney} \\
+% \manboldkidney & \cmd{\manboldkidney} &
+% \manlhpenkidney & \cmd{\manlhpenkidney} \\[\subtablesep]
+% \multicolumn{4}{l}{\subcaption{Circle variations}} \\[\subcaptionsep]
+% \manquartercircle & \cmd{\manquartercircle} &
+% \manfilledquartercircle & \cmd{\manfilledquartercircle} \\
+% \manrotatedquartercircle & \cmd{\manrotatedquartercircle} &
+% \mancone & \cmd{\mancone} \\
+% \manconcentriccircles & \cmd{\manconcentriccircles} &
+% \manconcentricdiamond & \cmd{\manconcentricdiamond} \\[\subtablesep]
+% \multicolumn{4}{l}{\subcaption{Cubes}}\\[\subcaptionsep]
+% \mancube & \cmd{\mancube} &
+% \manimpossiblecube & \cmd{\manimpossiblecube}\\[\subtablesep]
+% \multicolumn{4}{l}{\subcaption{Quadrifoliums}}\\[\subcaptionsep]
+% \manquadrifolium & \cmd{\manquadrifolium} &
+% \manrotatedquadrifolium & \cmd{\manrotatedquadrifolium}\\[\subtablesep]
+% \multicolumn{4}{l}{\subcaption{Miscellaneous symbols}}
+% \\[\subcaptionsep]
+% \manstar & \cmd{\manstar} &
+% \manerrarrow & \cmd{\manerrarrow} \\[\subtablesep]
+% \multicolumn{4}{l}{\subcaption{Dangerous bend signs}}\\[\subcaptionsep]
+% \dbend & \cmd{\dbend} &
+% \reversedvideodbend & \cmd{\reversedvideodbend} \\[2ex]
+% \lhdbend & \cmd{\lhdbend} & \\[2ex]
+% \end{tabular}
+% \end{center}
+% \end{table}
+%}
+%\MakeShortVerb{\|} ^^A End of \StopEventually. Restore the settings.
+%
+% \section{Code}
+% \subsection{Identification part}
+% \iffalse
+% In principle, definitions of \fileversion and \filedate ought to be
+% here. Since we have moved them to the beginning of the file for
+% practical reasons, we need to hack the beginning of this section to
+% show that they are in manfnt.sty and to fix the line numbering of code.
+% The block below fakes the definitions of \fileversion and \filedate.
+% To trick docstrip we bury them in <false> tags and hide the tags from
+% the doc module in meta-comments.
+% \fi
+% \iffalse
+%<*false>
+%\fi
+% \begin{macro}{\fileversion}
+% \begin{macro}{\filedate}
+% For technical reasons the definitions of \cmd{\fileversion} and
+% \cmd{\filedate} are left blank in the documentation. In the actual
+% \texttt{manfnt.sty} they are filled with current values (\fileversion{} and
+% \filedate{} respectively).
+% They are also shown on the title page of this manual.
+% \begin{macrocode}
+\def\fileversion{}
+\def\filedate{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \iffalse
+%</false>
+% \fi
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{manfnt}[\filedate \fileversion LaTeX2e manfnt package]
+% \end{macrocode}
+%
+% \subsection{Options}
+% Currently no options are supported by this package.
+%
+% \subsection{Main code}
+% \subsubsection{Declaration of fonts}
+% \begin{macrocode}
+\DeclareFontFamily{U}{manual}{}
+\DeclareFontShape{U}{manual}{m}{n}{ <-> manfnt }{}
+% \end{macrocode}
+% \begin{macro}{\manfntsymbol}
+% Generally speaking \cmd{\manfntsymbol} must select font shape and
+% series too, in order to work correctly, since only normal shape and
+% medium series are provided. Instead we rely implicitely on default
+% behaviour of \LaTeX{} font substitution mechanism.
+% \begin{macrocode}
+\newcommand{\manfntsymbol}[1]{%
+ {\fontencoding{U}\fontfamily{manual}\selectfont\symbol{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{Symbol names}
+% The names with few exceptions are derived from the corresponding
+% definitions in \texttt{manfnt.mf}.
+% \begin{macrocode}
+\newcommand{\manhpennib}{\manfntsymbol{21}}
+\newcommand{\mantiltpennib}{\manfntsymbol{22}}
+\newcommand{\manvpennib}{\manfntsymbol{23}}
+\newcommand{\mankidney}{\manfntsymbol{17}}
+\newcommand{\manboldkidney}{\manfntsymbol{18}}
+\newcommand{\manpenkidney}{\manfntsymbol{19}}
+\newcommand{\manlhpenkidney}{\manfntsymbol{20}}
+\newcommand{\manquartercircle}{\manfntsymbol{32}}
+\newcommand{\manfilledquartercircle}{\manfntsymbol{33}}
+\newcommand{\manrotatedquartercircle}{\manfntsymbol{34}}
+\newcommand{\mancone}{\manfntsymbol{35}}
+\newcommand{\manconcentriccircles}{\manfntsymbol{36}}
+\newcommand{\manconcentricdiamond}{\manfntsymbol{37}}
+\newcommand{\mantriangleright}{\manfntsymbol{120}}% Triangle for exercises
+\newcommand{\mantriangleup}{% Upper triangle for Addison-Wesley logo
+ \manfntsymbol{54}}
+\newcommand{\mantriangledown}{% Lower triangle for Addison-Wesley logo
+ \manfntsymbol{55}}
+\newcommand{\mancube}{\manfntsymbol{28}}
+\newcommand{\manimpossiblecube}{\manfntsymbol{29}}
+\newcommand{\manquadrifolium}{\manfntsymbol{38}}% \fouru
+\newcommand{\manrotatedquadrifolium}{\manfntsymbol{39}}% \fourc
+\newcommand{\manstar}{\manfntsymbol{30}}% Bicentennial star
+\newcommand{\manerrarrow}{\manfntsymbol{121}}% Arrow for errata lists
+\newcommand{\dbend}{\manfntsymbol{127}}% Z-shaped
+\newcommand{\lhdbend}{\manfntsymbol{126}}% Lefthanded (S-shaped)
+\newcommand{\reversedvideodbend}{\manfntsymbol{0}}% Reversed video
+% \end{macrocode}
+%
+% \subsubsection{Other commands}
+% \begin{macro}{\textdbend}
+% \begin{macro}{\textlhdbend}
+% \begin{macro}{\textreversedvideodbend}
+% User level commands \cmd{\textdbend}, \cmd{\textlhdbend}
+% and \cmd{\textreversedvideodbend} just provide the appropriate
+% argument to~\cmd{\text@dbend} which does the actual work.
+% \begin{macrocode}
+\newcommand{\textdbend}{\text@dbend{\dbend}}
+\newcommand{\textlhdbend}{\text@dbend{\lhdbend}}
+\newcommand{\textreversedvideodbend}{\text@dbend{\reversedvideodbend}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\test@dbend}
+% The source in \texttt{manfnt.mf} specifies \textdbend{} in cmr10
+% settings as a box 500/36pt~wide, 270/36pt~high and 0pt~deep.
+% The actual image sticks out to~20/36pt${}+\epsilon$ above and
+% to~11pt below the box.
+% At 10pt size |\dbend| produces a box with height 7.5pt and zero depth.
+% The sign pole extends to 11pt below the base line\footnote{The
+% ``dangerous bend'' paragraphs in the \TeX{}book~\cite{book:knuth} are
+% typeset in 9pt size fonts with \cmd{\baselineskip} set to 11pt.}.
+% All this means that we need to raise the sign by 22/15 of its height.
+% \begin{macrocode}
+\newlength{\dbend@height}
+\newcommand{\text@dbend}[1]{%
+ \settoheight{\dbend@height}{#1}%
+ \divide\dbend@height by 15%
+ \multiply\dbend@height by 22%
+ \raisebox{\dbend@height}{#1}}
+% \end{macrocode}
+% This definition is clumsy but has an advantage of working.
+% Question by Denis Kosygin:
+% \begin{quote}\small
+% Can anyone explain why does
+%\begin{verbatim}
+%\newcommand{\text@dbend}[1]{\raisebox{22\height/15}{#1}}
+%\end{verbatim}
+% break? Sometimes it does what I mean, and sometimes it typesets
+% the argument raised to to 22\cmd{\height} followed by /15 on the
+% baseline.
+% \end{quote}
+% \end{macro}
+%
+% We end the file with an explicit |\endinput| which prevents the
+% docstrip program from putting character table into the generated
+% files.
+% \begin{macrocode}
+\endinput
+% \end{macrocode}
+%% \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 \~}
+%%
+% \DeleteShortVerb{\|} ^^A For table printing
+% \Finale
+%^^A End of file "manfnt.dtx"
+
diff --git a/macros/latex/contrib/manfnt/manfnt.ins b/macros/latex/contrib/manfnt/manfnt.ins
new file mode 100644
index 0000000000..8b01ec4e8d
--- /dev/null
+++ b/macros/latex/contrib/manfnt/manfnt.ins
@@ -0,0 +1,56 @@
+%%
+%% This file will generate fast loadable files and documentation
+%% driver files from the doc files in this package when run through
+%% LaTeX or TeX.
+%%
+%%
+%% Copyright (C) 1998 - 99 by Axel Kielhorn, all rights reserved
+%% Copyright (C) 1999 by Denis Kosygin, all rights reserved.
+%
+% This program can be redistributed and/or modified under the terms
+% of the LaTeX Project Public License Distributed from CTAN
+% archives in directory macros/latex/base/lppl.txt; either
+% version 1 of the License, or any later version.
+%
+% --------------- start of docstrip commands ------------------
+%
+\def\batchfile{manfnt.ins}
+\input docstrip.tex
+\preamble
+
+Copyright (C) 1998 - 99 by Axel Kielhorn, all rights reserved
+Copyright (C) 1999 by Denis Kosygin, all rights reserved.
+For additional copyright information see further down in this file.
+
+This file is to be used with the LaTeX2e system.
+------------------------------------------------
+
+This program can be redistributed and/or modified under the terms
+of the LaTeX Project Public License Distributed from CTAN
+archives in directory macros/latex/base/lppl.txt; either
+version 1 of the License, or any later version.
+
+\endpreamble
+\def\batchfile{manfnt.dst} % ignored in distribution
+\input docstrip.tex % ignored in distribution
+
+\keepsilent
+
+\Msg{*** Generating the document class files ***}
+
+\generate{\file{manfnt.sty}{\from{manfnt.dtx}{}}
+ }
+
+\ifToplevel{
+\Msg{***********************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* file into a directory searched by TeX:}
+\Msg{*}
+\Msg{* \space\space manfnt.sty}
+\Msg{*}
+\Msg{* Happy TeXing}
+\Msg{***********************************************************}
+}
+
+\endinput