summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/fonts/old-arrows/old-arrows.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-08-25 23:14:11 +0000
committerKarl Berry <karl@freefriends.org>2015-08-25 23:14:11 +0000
commit7c0d11d628f2a0eee144816586a8d3704abaa465 (patch)
tree80199c77234c2bed0a469ab2fbb7c3326fa674ac /Master/texmf-dist/doc/fonts/old-arrows/old-arrows.tex
parent30c05698273f323602dbce2a2de69a2d3595ca59 (diff)
old-arrows (25aug15)
git-svn-id: svn://tug.org/texlive/trunk@38204 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/fonts/old-arrows/old-arrows.tex')
-rw-r--r--Master/texmf-dist/doc/fonts/old-arrows/old-arrows.tex328
1 files changed, 328 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/fonts/old-arrows/old-arrows.tex b/Master/texmf-dist/doc/fonts/old-arrows/old-arrows.tex
new file mode 100644
index 00000000000..88c4bb44537
--- /dev/null
+++ b/Master/texmf-dist/doc/fonts/old-arrows/old-arrows.tex
@@ -0,0 +1,328 @@
+%% start of file `old-arrows.tex'.
+%% Copyright 2015 Riccardo Dossena (riccardo.dossena@gmail.com).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+%%
+% !TEX encoding = UTF-8
+% !TEX program = pdflatex
+\documentclass[11pt]{ltxdoc}
+
+\usepackage[english]{babel}
+\usepackage{amsmath,amssymb,amsthm}
+\usepackage[shortlabels]{enumitem}
+\usepackage[new]{old-arrows}
+\usepackage[margin=3.3cm,footskip=20pt]{geometry}
+\usepackage[colorlinks=true]{hyperref}
+\usepackage[all]{hypcap} % needed to help hyperlinks direct correctly;
+
+\def\fileversion{1.0}
+\def\filedate{August 15, 2015}
+
+%Logo per MiKTeX e TeXLive
+\newcommand{\MiKTeX}{MiK\TeX}
+\newcommand{\TeXLive}{\mbox{\TeX\ Live}}
+%
+%
+% Symbol Entry for Math Symbol Tables
+%
+\newcommand{\X}[1]{$#1$&\texttt{\string#1}\hspace*{1ex}}
+
+\newcommand{\W}[2]{$#1{#2}$&
+ \texttt{\string#1}\texttt{\string{\string#2\string}}\hspace*{1ex}}
+
+\theoremstyle{remark}
+\newtheorem*{remark}{Remark}
+
+% Mathsymbol Table
+\newsavebox{\symbbox}
+\newenvironment{symbols}[1]%
+{\par\vspace*{2ex}
+\renewcommand{\arraystretch}{1.1}
+\begin{lrbox}{\symbbox}
+\hspace*{4ex}\begin{tabular}{@{}#1@{}}}%
+{\end{tabular}\end{lrbox}\makebox[\textwidth]{\usebox{\symbbox}}\par\medskip}
+
+%Per l'esempio senza amsmath
+\makeatletter
+\def\overrightfreccia#1{\vbox{\m@th\ialign{##\crcr
+ \rightfrecciafill\crcr\noalign{\kern-\p@\nointerlineskip}
+ $\hfil\displaystyle{#1}\hfil$\crcr}}}
+\def\overleftfreccia#1{\vbox{\m@th\ialign{##\crcr
+ \leftfrecciafill\crcr\noalign{\kern-\p@\nointerlineskip}%
+ $\hfil\displaystyle{#1}\hfil$\crcr}}}
+\def\varoverrightfreccia#1{\vbox{\m@th\ialign{##\crcr
+ \varrightfrecciafill\crcr\noalign{\kern-\p@\nointerlineskip}
+ $\hfil\displaystyle{#1}\hfil$\crcr}}}
+\def\varoverleftfreccia#1{\vbox{\m@th\ialign{##\crcr
+ \varleftfrecciafill\crcr\noalign{\kern-\p@\nointerlineskip}%
+ $\hfil\displaystyle{#1}\hfil$\crcr}}}
+\def\rightfrecciafill{$\m@th\smash-\mkern-7mu%
+ \cleaders\hbox{$\mkern-2mu\smash-\mkern-2mu$}\hfill
+ \mkern-7mu\mathord\rightarrow$}
+\def\leftfrecciafill{$\m@th\mathord\leftarrow\mkern-7mu%
+ \cleaders\hbox{$\mkern-2mu\smash-\mkern-2mu$}\hfill
+ \mkern-7mu\smash-$}
+\def\varrightfrecciafill{$\m@th\smash-\mkern-7mu%
+ \cleaders\hbox{$\mkern-2mu\smash-\mkern-2mu$}\hfill
+ \mkern-7mu\mathord\varrightarrow$}
+\def\varleftfrecciafill{$\m@th\mathord\varleftarrow\mkern-7mu%
+ \cleaders\hbox{$\mkern-2mu\smash-\mkern-2mu$}\hfill
+ \mkern-7mu\smash-$}
+\makeatother
+
+\begin{document}
+
+\title{The \textsf{old-arrows} package}
+\author{Riccardo Dossena\thanks{%
+E-mail: \href{mailto:riccardo.dossena@gmail.com}{\tt riccardo.dossena@gmail.com}}}
+\date{Version \fileversion, released on \filedate}
+
+\maketitle
+
+\begin{abstract}
+This package provides Computer Modern old-style arrows ($\rightarrow$) with smaller arrowheads, associated with
+ordinary \LaTeX\ commands. It can be used in a document that contains
+other \texttt{amsmath} arrow characters, like $\twoheadrightarrow$, that also have small
+arrowheads. It is possible to use the usual new-style Computer Modern arrows ($\varrightarrow$) together with the old-style ones.
+\end{abstract}
+
+\tableofcontents
+
+\section{Introduction}
+
+In 1992, Donald E. Knuth made some important corrections to Computer Modern fonts\footnote{See \url{http://www-cs-faculty.stanford.edu/~uno/cm.html}}. As a consequence, the characters corresponding to arrows have been modified. Just to make things clearer,
+\[
+A \to B
+\]
+became
+\[
+A \varto B
+\]
+ that is, the character $\to$ was replaced by $\varto$, that has a larger arrowhead. The same happened to other arrow characters. However, many arrow characters defined by \texttt{amssymb}, like $\nrightarrow$, $\rightarrowtail$, $\twoheadrightarrow$ and others, maintained a small arrowhead and seem too different from $\varto$.
+
+The \texttt{old-arrows} package with Old Arrows font family allows to use the old-style arrows $\to$, $\gets$~\ldots, with the traditional commands \verb|\rightarrow|, \verb|\leftarrow|\ldots\ Furthermore, the option \texttt{new} allows to obtain simultaneously the new-style arrows $\varto$, $\vargets$ \ldots, just placing \verb|\var| before the corresponding commands (e.g.,~\verb|\varrightarrow|, \verb|\varleftarrow|\ldots).
+
+Old Arrows font family was derived from an old version of Blue Sky Computer Modern Math Symbols (1991--1992, released by AMS) by deleting many characters with FontForge.
+
+\section{Licenses}
+
+The \LaTeX\ code in this package is licensed under the \LaTeX\ Project Public License, v1.3.
+
+The fonts in this package are licensed under the SIL Open Font License, v1.1.
+
+\section{Installation}
+
+\subsection{Copying the files in the local \texttt{texmf} tree}
+
+The Old Arrows fonts files are:
+
+\begin{center}
+\begin{tabular}{p{3cm}p{3cm}p{3cm}l}
+\hline
+\texttt{oasy5.afm} & \texttt{oasy5.pfm} & \texttt{oasy5.tfm} & \texttt{oasy5.pfb} \\
+\texttt{oasy6.afm} & \texttt{oasy6.pfm} & \texttt{oasy6.tfm} & \texttt{oasy6.pfb} \\
+\texttt{oasy7.afm} & \texttt{oasy7.pfm} & \texttt{oasy7.tfm} & \texttt{oasy7.pfb} \\
+\texttt{oasy8.afm} & \texttt{oasy8.pfm} & \texttt{oasy8.tfm} & \texttt{oasy8.pfb} \\
+\texttt{oasy9.afm} & \texttt{oasy9.pfm} & \texttt{oasy9.tfm} & \texttt{oasy9.pfb} \\
+\texttt{oasy10.afm} & \texttt{oasy10.pfm} & \texttt{oasy10.tfm} & \texttt{oasy10.pfb} \\
+\texttt{oabsy5.afm} & \texttt{oabsy5.pfm} & \texttt{oabsy5.tfm} & \texttt{oabsy5.pfb} \\
+ & & \texttt{oabsy6.tfm} & \\
+\texttt{oabsy7.afm} & \texttt{oabsy7.pfm} & \texttt{oabsy7.tfm} & \texttt{oabsy7.pfb} \\
+ & & \texttt{oabsy8.tfm} & \\
+ & & \texttt{oabsy9.tfm} & \\
+\texttt{oabsy10.afm} & \texttt{oabsy10.pfm} & \texttt{oabsy10.tfm} & \texttt{oabsy10.pfb} \\
+\hline
+\end{tabular}
+\end{center}
+
+These files were derived from Computer Modern fonts \texttt{cmbsy5}, \texttt{cmbsy7}, \texttt{cmbsy10}, \texttt{cmsy5}, \texttt{cmsy7}, \texttt{cmsy8}, \texttt{cmsy9} and \texttt{cmsy10}.
+
+Call \texttt{<localtexmf>} the path of your local \texttt{texmf} tree. For \TeXLive, the local tree is usually placed in \texttt{/usr/local/texlive/texmf-local}; for \MiKTeX, it can be set up on any directory, by the \textsf{Roots} tab of ``\MiKTeX\ Options''.
+
+\begin{enumerate}
+\item Copy the \texttt{*.afm} and \texttt{*.tfm} font files into the corresponding \texttt{old-arrows} directories (you have to create them, as shown below):
+ \begin{verbatim}
+ <localtexmf>/fonts/afm/old-arrows
+ <localtexmf>/fonts/tfm/old-arrows
+ \end{verbatim}
+
+\item Copy the \texttt{*.pfb} and \texttt{*.pfm} font files into the directory
+ \begin{verbatim}
+ <localtexmf>/fonts/type1/old-arrows
+ \end{verbatim}
+
+\item Copy the \texttt{oasy.enc} and \texttt{oasy.map} files, respectively, into the directories
+ \begin{verbatim}
+ <localtexmf>/fonts/enc/dvips/old-arrows
+ <localtexmf>/fonts/map/dvips/old-arrows
+ \end{verbatim}
+
+\item Copy the \texttt{old-arrows.sty} file into the directory
+ \begin{verbatim}
+ <localtexmf>/tex/latex/old-arrows
+ \end{verbatim}
+\end{enumerate}
+
+\subsection{Updating the filename database}\label{agg-database-file}
+
+\begin{description}[font=\bfseries\sffamily, leftmargin=5em, style=sameline]
+\item[\MiKTeX] On the \textsf{General} tab of ``MiKTeX Options (Admin)'' click the \textsf{Refresh~FNDB} button. Alternatively, in a DOS command prompt window run
+ \begin{verbatim}
+ initexmf --update-fndb
+ \end{verbatim}
+
+\item[\TeXLive] Start the ``\TeXLive\ Manager''. From \textsf{Actions} menu, select \textsf{Update filename database}. Alternatively, run in a terminal command line
+ \begin{verbatim}
+ mktexlsr
+ \end{verbatim}
+\end{description}
+
+\subsection{Updating the font map files}
+
+\begin{description}[font=\bfseries\sffamily, leftmargin=5em, style=sameline]
+\item[\MiKTeX]
+To update the configuration file \texttt{updmap.cfg}, execute in a DOS command prompt
+\begin{verbatim}
+ initexmf --edit-config-file updmap
+\end{verbatim}
+add to \texttt{updmap.cfg} (that will be opened) the following line
+\begin{verbatim}
+ Map oasy.map
+\end{verbatim}
+save, close and execute (always in the DOS command prompt)
+\begin{verbatim}
+ initexmf --mkmaps
+\end{verbatim}
+
+\item[\TeXLive]
+Execute in a terminal command line
+\begin{verbatim}
+ updmap-sys --enable Map=oasy.map
+\end{verbatim}
+\end{description}
+Finally, it is better to make another update of the filename database (see~\ref{agg-database-file}).
+
+\section{Usage}
+
+\subsection{Basic usage}
+
+Simply type in the preamble of your \LaTeX\ document
+\begin{verbatim}
+ \usepackage{old-arrows}
+\end{verbatim}
+and every arrow command will be associated to the ``old-style'', as indicated in table~\ref{tab-frecce-vecchie}.
+
+\begin{table}[!htbp]
+\begin{symbols}{*3{cl}}
+ \X{\leftarrow}or \verb|\gets|& \X{\longleftarrow} & \X{\uparrow} \\
+ \X{\rightarrow}or \verb|\to|& \X{\longrightarrow} & \X{\downarrow} \\
+ \X{\leftrightarrow} & \X{\longleftrightarrow}& \X{\updownarrow} \\
+ \X{\mapsto} & \X{\longmapsto} & \X{\nearrow} \\
+ \X{\hookleftarrow} & \X{\hookrightarrow} & \X{\searrow} \\
+ \X{\leftharpoonup} & \X{\rightharpoonup} & \X{\swarrow} \\
+ \X{\leftharpoondown} & \X{\rightharpoondown} & \X{\nwarrow} \\
+\end{symbols}
+\caption{Old-style arrows, provided by \texttt{old-arrows}.}\label{tab-frecce-vecchie}
+\end{table}
+
+\subsection{Usage together with \texttt{amsmath} and \texttt{lmodern} packages}
+
+The \texttt{old-arrows} package does not require \texttt{amsmath}. However, if you want to use the \texttt{amsmath} package, you must load it \emph{before} \texttt{old-arrows}:
+\begin{verbatim}
+ \usepackage{amsmath}
+ \usepackage{old-arrows}
+\end{verbatim}
+Moreover, \texttt{old-arrows} is fully compatible with the Latin Modern fonts, always provided that you load the \texttt{lmodern} package \emph{before} \texttt{old-arrows}:
+\begin{verbatim}
+ \usepackage{lmodern}
+ \usepackage{amsmath}
+ \usepackage{old-arrows}
+\end{verbatim}
+
+\begin{remark}
+It is very important that you load \texttt{old-arrows} \emph{after} \texttt{amsmath} and \texttt{lmodern}, because \texttt{old-arrows} redefines many commands provided by these packages. Otherwise, \texttt{old-arrows} won't work properly.
+\end{remark}
+
+The \texttt{amsmath} package makes other over, under (table~\ref{tab-frecce-vecchie-amsmath}) and extensible arrows (table~\ref{tab-frecce-vecchie-ext}) available. Note that \texttt{amsmath} adds more space between the arrow and the characters, with a better typographical result. The commands \verb|\overrightarrow{AB}| and \verb|\overlefttarrow{AB}|, without \texttt{amsmath}, produce respectively
+\[
+\overrightfreccia{AB} \,\text{ rather than }\, \overrightarrow{AB} \qquad \text{and} \qquad \overleftfreccia{AB} \,\text{ rather than }\, \overleftarrow{AB}.
+\]
+The commands \verb|\rightarrowfill| and \verb|\leftarrowfill| allow to fill empty spaces with extensible arrows. For example, the first command at the end of this line gives \rightarrowfill
+
+\begin{table}[!htbp]
+\begin{symbols}{*3{cl}}
+ \W{\overleftarrow}{AB} & \W{\underleftarrow}{AB} \\
+ \W{\overrightarrow}{AB} & \W{\underrightarrow}{AB} \\
+ \W{\overleftrightarrow}{AB} & \W{\underleftrightarrow}{AB} \\
+\end{symbols}
+\caption{Old-style over and under arrows provided by \texttt{amsmath}.}\label{tab-frecce-vecchie-amsmath}
+\end{table}
+\begin{table}[!htbp]
+\begin{symbols}{*2{cl}}
+ \W{\xleftarrow}{ABCDEF} & \W{\xrightarrow}{ABCDEF} \\
+\end{symbols}
+\caption{Old-style extensible arrows provided by \texttt{amsmath}.}\label{tab-frecce-vecchie-ext}
+\end{table}
+
+Finally, the \texttt{amsmath} package provides the command \verb|\boldsymbol| that allows bold mathematical symbols, which can be used together with \texttt{old-arrows}. For example, the commands
+\begin{center}
+ \verb|$\boldsymbol{A \to B}$| \quad and \quad \verb|$\boldsymbol{\overrightarrow{AB}}$|
+\end{center}
+produce $\boldsymbol{A \to B}$ and $\boldsymbol{\overrightarrow{AB}}$, respectively.
+
+\subsection{The option \textsf{new}}
+
+Loading \texttt{old-arrows} with the option \texttt{new}
+\begin{verbatim}
+ \usepackage[new]{old-arrows}
+\end{verbatim}
+allows to use the new-style and the old-style arrows simultaneously. In order to obtain new-style arrows, just put \verb|\var| before every ordinary command, as shown in tables~\ref{tab-frecce-nuove}, \ref{tab-frecce-nuove-amsmath} and \ref{tab-frecce-nuove-ext}.
+
+\begin{table}[!htbp]
+\begin{symbols}{*3{cl}}
+ \X{\varleftarrow}or \verb|\vargets|& \X{\varlongleftarrow} & \X{\varuparrow} \\
+ \X{\varrightarrow}or \verb|\varto|& \X{\varlongrightarrow} & \X{\vardownarrow} \\
+ \X{\varleftrightarrow} & \X{\varlongleftrightarrow}& \X{\varupdownarrow} \\
+ \X{\varmapsto} & \X{\varlongmapsto} & \X{\varnearrow} \\
+ \X{\varhookleftarrow} & \X{\varhookrightarrow} & \X{\varsearrow} \\
+ \X{\leftharpoonup} & \X{\rightharpoonup} & \X{\varswarrow} \\
+ \X{\leftharpoondown} & \X{\rightharpoondown} & \X{\varnwarrow} \\
+\end{symbols}
+\caption{New-style arrows provided by option \texttt{new}.}\label{tab-frecce-nuove}
+\end{table}
+\begin{table}[!htbp]
+\begin{symbols}{*2{cl}}
+ \W{\varoverleftarrow}{AB} & \W{\varunderleftarrow}{AB} \\
+ \W{\varoverrightarrow}{AB} & \W{\varunderrightarrow}{AB} \\
+ \W{\varoverleftrightarrow}{AB} & \W{\varunderleftrightarrow}{AB} \\
+\end{symbols}
+\caption{New-style over and under arrows provided by \texttt{amsmath} and the option \texttt{new} of \texttt{old-arrows}.}
+\label{tab-frecce-nuove-amsmath}
+\end{table}
+\begin{table}[!htbp]
+\begin{symbols}{*2{cl}}
+ \W{\varxleftarrow}{ABCDEF} & \W{\varxrightarrow}{ABCDEF} \\
+\end{symbols}
+\caption{New-style extensible arrows provided by \texttt{amsmath} and the option \texttt{new} of \texttt{old-arrows}.}
+\label{tab-frecce-nuove-ext}
+\end{table}
+
+%\pagebreak
+
+Note that the commands
+\begin{center}
+\verb|\leftharpoonup|, \verb|\rightharpoonup|, \verb|\leftharpoondown|, \verb|\rightharpoondown|
+\end{center}
+have not been redefined by \texttt{old-arrows}, because the corresponding characters $\leftharpoonup,\rightharpoonup,\leftharpoondown,\rightharpoondown$ have not been modified by the introduction of the new-style arrows.
+
+The commands \verb|\varrightarrowfill| and \verb|\varleftarrowfill| allow to fill empty spaces with extensible arrows. The first command at the end of this line gives \varrightarrowfill
+
+Finally, even with the option \texttt{new} it is possibile to use the command \verb|\boldsymbol| provided by \texttt{amsmath}. The following commands
+\begin{center}
+ \verb|$\boldsymbol{A \varto B}$| \quad and \quad \verb|$\boldsymbol{\varoverrightarrow{AB}}$|
+\end{center}
+produce $\boldsymbol{A \varto B}$ and $\boldsymbol{\varoverrightarrow{AB}}$ respectively.
+
+\end{document} \ No newline at end of file