[latex3-commits] [git/LaTeX3-latex3-latex2e] develop: sigh (b7297c23)
Frank Mittelbach
frank.mittelbach at latex-project.org
Fri Dec 10 13:01:49 CET 2021
Repository : https://github.com/latex3/latex2e
On branch : develop
Link : https://github.com/latex3/latex2e/commit/b7297c23ff0da143a765c1e41431b3c29756eb85
>---------------------------------------------------------------
commit b7297c23ff0da143a765c1e41431b3c29756eb85
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date: Fri Dec 10 13:01:49 2021 +0100
sigh
>---------------------------------------------------------------
b7297c23ff0da143a765c1e41431b3c29756eb85
base/doc/fntguide.tex | 259 ++++++++++++++++++++++++++++++++------------------
1 file changed, 167 insertions(+), 92 deletions(-)
diff --git a/base/doc/fntguide.tex b/base/doc/fntguide.tex
index 03180a86..6d8e8088 100644
--- a/base/doc/fntguide.tex
+++ b/base/doc/fntguide.tex
@@ -12,7 +12,7 @@
% conditions of the LaTeX Project Public License, either version 1.3c
% of this license or (at your option) any later version.
% The latest version of this license is in
-% http://www.latex-project.org/lppl.txt
+% https://www.latex-project.org/lppl.txt
% and version 1.3c or later is part of all distributions of LaTeX
% version 2008 or later.
%
@@ -33,7 +33,12 @@
\documentclass{ltxguide}[1995/11/28]
-\usepackage{fewerfloatpages,booktabs,varioref}
+
+\setcounter{totalnumber}{8}
+\setcounter{topnumber}{8}
+
+\usepackage[trace]{fewerfloatpages}
+\usepackage{booktabs,varioref}
\title{\LaTeXe{} font selection}
@@ -160,7 +165,7 @@ For more information about \TeX{} and \LaTeX{}, please contact your
local \TeX{} Users Group, or the international \TeX{} Users Group.
Addresses and other details can be found at:
\begin{quote}\small\label{addrs}
- \texttt{http://www.tug.org/lugs.html}
+ \texttt{https://www.tug.org/lugs.html}
\end{quote}
@@ -288,6 +293,9 @@ naming scheme to allow for sensible default substitutions if necessary,
e.g., ``demi-bold'' is normally just another name for ``semi-bold'', so
should get |sb| assigned, etc.
+
+\newpage
+
\NEWdescription{2020/02/02}
The most common values for the font shape are:
\begin{center}
@@ -343,27 +351,29 @@ box warning, for example:
Overfull \hbox (3.80855pt too wide) in paragraph at lines 314--318
[]\OT1/cmr/m/n/10 Normally [] and [] will be iden-ti-cal,
\end{verbatim}
-The author commands for fonts set the five attributes:
-\begin{center}
- \hspace*{-1em}%
- \begin{tabular}{rcl}
- \emph{Author command} & \emph{Attribute}
+The author commands for fonts set the five attributes as shown in table~\vref{tab:attributes}.
+\begin{table}[!tbp]
+ \centering
+ \begin{tabular}{@{}r@{\hspace{3pt}}c@{\hspace{1pt}}c@{}}
+ \toprule
+ \multicolumn{1}{c}{\emph{Author command}} & \emph{Attribute}
& \emph{Value in} |article| \emph{class} \\
+ \midrule
|\textnormal{..}| or |\normalfont| & family & |cmr| \\
& series & |m| \\
- & shape & |n| \\[1pt]
+ & shape & |n| \\ \midrule%[2pt]
|\textrm{..}| or |\rmfamily| & family & |cmr| \\
|\textsf{..}| or |\sffamily| & family & |cmss| \\
|\texttt{..}| or |\ttfamily| & family & |cmtt| \\
|\textmd{..}| or |\mdseries| & series & |m| \\
- |\textbf{..}| or |\bfseries| & series & |bx| \\[1pt]
+ |\textbf{..}| or |\bfseries| & series & |bx| \\ \midrule%[2pt]
|\textit{..}| or |\itshape| & shape & |it| \\
|\textsl{..}| or |\slshape| & shape & |sl| \\
|\textsc{..}| or |\scshape| & shape & |sc| \\
|\textssc{..}| or |\sscshape| & shape & |ssc| \\
|\textsw{..}| or |\swshape| & shape & |sw| \\
- |\textulc{..}| or |\ulcshape| & shape & |ulc| (virtual) $\to$ |n|, |it|, |sl| or |ssc| \\
- |\textup{..}| or |\upshape| & shape & |up| (virtual) $\to$ |n| or |sc| \\[1pt]
+ |\textulc{..}| or |\ulcshape| & shape & |ulc| (virtual) $\to$ |n|, |it|, |sl| or |ssc| \\
+ |\textup{..}| or |\upshape| & shape & | up| (virtual) $\to$ |n| or |sc |\phantom{, , } \\\midrule%[2pt]
|\tiny| & size & |5pt| \\
|\scriptsize| & size & |7pt| \\
|\footnotesize| & size & |8pt| \\
@@ -373,9 +383,11 @@ The author commands for fonts set the five attributes:
|\Large| & size & |14.4pt| \\
|\LARGE| & size & |17.28pt| \\
|\huge| & size & |20.74pt| \\
- |\Huge| & size & |24.88pt|
+ |\Huge| & size & |24.88pt| \\
+ \bottomrule
\end{tabular}
-\end{center}
+ \caption{Author font commands and their effects (article class)}\label{tab:attributes}
+\end{table}
The values used by these commands are determined by the document class,
using the parameters defined in Section~\ref{Sec:text.param}.
@@ -386,16 +398,20 @@ This section does not explain how \LaTeX{} font specifications are
turned into \TeX{} font names. This is described in
Section~\ref{Sec:install}.
+
+\newpage
+
+
\subsection{Selection commands}
The low-level commands used to select a text font are as follows.
\begin{decl}
|\fontencoding| \arg{encoding} \\
- |\fontfamily| \arg{family} \\
- |\fontseries| \arg{series} \\
+ |\fontfamily| \arg{family} \qquad
+ |\fontseries| \arg{series} \qquad
|\fontshape| \arg{shape} \\
- |\fontsize| \arg{size} \arg{baselineskip} \\
+ |\fontsize| \arg{size} \arg{baselineskip} \qquad
|\linespread| \arg{factor}
\end{decl}
@@ -439,14 +455,14 @@ to |\selectfont|.
The current values of the font attributes are held in internal macros.
\begin{decl}
- |\f at encoding| \\
- |\f at family| \\
- |\f at series| \\
- |\f at shape| \\
- |\f at size| \\
+ |\f at encoding| \quad
+ |\f at family| \quad
+ |\f at series| \quad
+ |\f at shape| \quad
+ |\f at size| \quad
|\f at baselineskip| \\
- |\tf at size| \\
- |\sf at size| \\
+ |\tf at size| \quad
+ |\sf at size| \quad
|\ssf at size|
\end{decl}
@@ -482,9 +498,9 @@ specifies:
\end{verbatim}
\begin{decl}
- |\encodingdefault| \\
- |\familydefault| \\
- |\seriesdefault| \\
+ |\encodingdefault| \qquad
+ |\familydefault| \qquad
+ |\seriesdefault| \qquad
|\shapedefault|
\end{decl}
The encoding, family, series and shape of the main body font. By
@@ -493,8 +509,8 @@ default family is |\rmdefault|, this means that changing |\rmdefault|
will change the main body font of the document.
\begin{decl}
- |\rmdefault| \\
- |\sfdefault| \\
+ |\rmdefault| \qquad
+ |\sfdefault| \qquad
|\ttdefault|
\end{decl}
The families selected by |\textrm|, |\rmfamily|, |\textsf|, |\sffamily|,
@@ -502,7 +518,7 @@ The families selected by |\textrm|, |\rmfamily|, |\textsf|, |\sffamily|,
|cmtt|.
\begin{decl}
- |\bfdefault| \\
+ |\bfdefault| \qquad
|\mddefault|
\end{decl}
The series selected by |\textbf|, |\bfseries|, |\textmd| and
@@ -516,12 +532,12 @@ the fonts provided by |psnfss|) is to define silent substitutions from
and the |ssub| size function, see Section~\ref{sec:sizefunct}.
\begin{decl}
- |\itdefault| \\
- |\sldefault| \\
- |\scdefault| \\
- |\sscdefault| \\
+ |\itdefault| \qquad
+ |\sldefault| \qquad
+ |\scdefault| \qquad
+ |\sscdefault| \qquad
|\swdefault| \\
- |\ulcdefault| \\
+ |\ulcdefault| \qquad
|\updefault|
\end{decl}
\NEWfeature{2020/02/02}
@@ -611,6 +627,8 @@ This declaration is useful for setting up commands like |\rm| to behave
as they did in \LaTeX~2.09. We strongly urge you \emph{not} to misuse
this declaration to invent new font commands.
+\newpage
+
The following example defines |\it| to produce the italic shape of the
main document font if used in text and to switch to the font that would
normally be produced by the math alphabet |\mathit| if used in a
@@ -714,12 +732,12 @@ selected indirectly through symbol commands like |\oplus|.
Section~\ref{Sec:math.commands} explains how to define symbol commands.
\begin{decl}
- |\mathnormal{<math>}| \\
- |\mathcal{<math>}| \\
- |\mathrm{<math>}| \\
- |\mathbf{<math>}| \\
- |\mathsf{<math>}| \\
+ |\mathnormal{<math>}| \quad
+ |\mathcal{<math>}| \quad
+ |\mathbf{<math>}| \quad
|\mathit{<math>}| \\
+ |\mathrm{<math>}| \qquad
+ |\mathsf{<math>}| \qquad
|\mathtt{<math>}|
\end{decl}
Each math alphabet is a command which can only be used inside math mode.
@@ -799,6 +817,8 @@ Checks that \m{math-alph} has been declared as a math alphabet,
\m{version} is a known math version and \m{encoding} is a known encoding
scheme.
+\newpage
+
This example defines |\baz| for the `normal' math version only:
\begin{verbatim}
\SetMathAlphabet{\baz}{normal}{OT1}{cmss}{m}{n}
@@ -868,6 +888,8 @@ alphabet with command \m{math-alph} in \emph{all} math versions.
Checks that the command \m{math-alph} is either already a math alphabet
command or is undefined; and that \m{sym-font} is a symbol font.
+\newpage
+
Example:
\begin{verbatim}
\DeclareSymbolFontAlphabet{\mathrm}{operators}
@@ -928,6 +950,8 @@ Example:
\DeclareMathSymbol{\alphld}{\mathalpha}{AMSb}{"0C}
\end{verbatim}
+\newpage
+
\begin{decl}
|\DeclareMathDelimiter| \arg{cmd} \arg{type}
\arg{sym-font-1} \arg{slot-1}\\
@@ -1021,6 +1045,7 @@ Example:
This section explains how \LaTeX's font attributes are turned into
\TeX{} font specifications.
+
\subsection{Font definition files}
\NEWdescription{1997/12/01}
@@ -1043,6 +1068,8 @@ and font substitutions are made.
The declarations in the font definition file are responsible for telling
\LaTeX{} how to load fonts for that encoding/family combination.
+
+
\subsection{Font definition file commands}
\emph{Note}: A font definition file should contain only commands from
@@ -1056,7 +1083,11 @@ of a document.
|\ProvidesFile{<file-name>}[<release-info>]|
\end{decl}
The file should announce itself with a |\ProvidesFile| command, as
-described in \emph{\clsguide}. For example:
+described in \emph{\clsguide}.
+
+\newpage
+
+For example:
\begin{verbatim}
\ProvidesFile{t1ptm.fd}[1994/06/01 Adobe Times font definitions]
\end{verbatim}
@@ -2017,12 +2048,17 @@ glyphs from the math fonts instead of the current text font (this means
they always keep the same shape and do not nicely blend in with the text
font).
+\newpage
+
The following tables show the macros available. The next commands are
`constructed' accents and are built via \TeX{} macros:
\begin{center}
\begin{tabular}[t]{@{}ll}
\verb*|\capitalcedilla A| & \capitalcedilla A \\
\verb*|\capitalogonek A| & \capitalogonek A \\
+ \end{tabular}
+ \quad
+ \begin{tabular}[t]{@{}ll}
\verb*|\textcircled a| & \textcircled a
\end{tabular}
\end{center}
@@ -2052,11 +2088,19 @@ show the slot number:
\end{tabular}
\end{center}
-Table~\vref{tab:textcomp} contains macros to access text symbols. Again,
+Table~\vref{tab:textcomp}
+contains the full list of commands to access the text symbols.
+%
+% Tables~\vrefrange{tab:ts1-subset-always}{tab:ts1-subset-9-disable}
+% contain the commands to access the text symbols.
+%
+Again,
the numbers are the slots in the encoding.
-\begin{table}
+\iftrue
+\begin{table}[!tp]
\centering\footnotesize
+ \renewcommand\arraystretch{1.07}
\begin{tabular}[t]{@{}lp{1.5em}l@{}}
\toprule
\verb|\textcapitalcompwordmark| & \textcapitalcompwordmark & 23 \\
@@ -2179,6 +2223,8 @@ the numbers are the slots in the encoding.
\label{tab:textcomp}
\end{table}
+\fi
+
The |TS1| encoding contains a rich set of symbols which means that
several symbols are only available in a few \TeX{} fonts and some, such
as the capital accents, not available at all but developed as part of
@@ -2250,7 +2296,9 @@ number and all sub-encodings with higher numbers.)
\label{tab:ts1-subset-always}
\end{table}
-\begin{table}[tbp]
+
+
+\begin{table}[!tbp]
\centering
\begin{tabular}[t]{@{}lll@{}}
\toprule
@@ -2259,27 +2307,12 @@ number and all sub-encodings with higher numbers.)
\end{tabular}
\caption{Symbol unavailable in \texttt{TS1} sub-encoding \texttt{1}
and higher}
- \label{tab:ts1-subset-1}
+ \label{tab:ts1-subset-1-disable}
\end{table}
-Thus, the symbols that are available in sub-encoding $x$ are the symbols
-in table~\ref{tab:ts1-subset-always} (always available) and the symbols
-that only become unavailable in sub-encodings $> x$. The tables
-\vrefrange{tab:ts1-subset-1}{tab:ts1-subset-9} show the symbols that
-become unavailable in the different sub-encodings. Again, the numbers
-are the slots in the |TS1| encoding, |acc| indicates a `constructed'
-accent.
-As an example,
-\begin{verbatim}
- \DeclareEncodingSubset{TS1}{foo}{5}
-\end{verbatim}
-indicates that the font family |foo| contains the always available
-symbols (table~\vref{tab:ts1-subset-always}) and the ones in
-sub-encodings 1--4
-(tables~\vrefrange{tab:ts1-subset-1}{tab:ts1-subset-4}).
-\begin{table}[tbp]
+\begin{table}[!tbp]
\centering\footnotesize
\begin{tabular}[t]{@{}lp{1.5em}l@{}}
\toprule
@@ -2357,27 +2390,11 @@ sub-encodings 1--4
\end{tabular}
\caption{Symbols unavailable in \texttt{TS1} sub-encoding \texttt{2}
and higher}
- \label{tab:ts1-subset-2}
+ \label{tab:ts1-subset-2-disable}
\end{table}
-As these days many font families are set up to end in |-LF| (lining
-figures), |-OsF| (oldstyle figures), etc. the declaration supports a
-shortcut: if the \m{font family} name ends in |-*| then the star gets
-replaced by these common ending, e.g.,
-\begin{verbatim}
- \DeclareEncodingSubset{TS1}{Alegreya-*}{2}
-\end{verbatim}
-is the same as writing
-\begin{verbatim}
- \DeclareEncodingSubset{TS1}{Alegreya-LF} {2}
- \DeclareEncodingSubset{TS1}{Alegreya-OsF} {2}
- \DeclareEncodingSubset{TS1}{Alegreya-TLF} {2}
- \DeclareEncodingSubset{TS1}{Alegreya-TOsF}{2}
-\end{verbatim}
-If only some are needed then one can define them individually but in
-many cases all four are wanted, hence the shortcut.
-\begin{table}[tbp]
+\begin{table}[!tbp]
\centering\footnotesize
\begin{tabular}[t]{@{}lp{1.5em}l@{}}
\toprule
@@ -2391,10 +2408,24 @@ many cases all four are wanted, hence the shortcut.
\end{tabular}
\caption{Symbols unavailable in \texttt{TS1} sub-encoding \texttt{3}
and higher}
- \label{tab:ts1-subset-3}
+ \label{tab:ts1-subset-3-disable}
+\end{table}
+
+
+Thus, the symbols that are available in sub-encoding $x$ are the symbols
+in table~\ref{tab:ts1-subset-always} (always available) and the symbols
+that only become unavailable in sub-encodings $> x$. The tables
+\vrefrange{tab:ts1-subset-1-disable}{tab:ts1-subset-9-disable} show the symbols that
+become unavailable in the different sub-encodings. Again, the numbers
+are the slots in the |TS1| encoding, |acc| indicates a `constructed'
+accent.
- \par\vspace{\intextsep}
+\newpage
+
+
+\begin{table}[!tbp]
+ \centering\footnotesize
\begin{tabular}[t]{@{}lp{1.5em}l@{}}
\toprule
\verb|\textleftarrow| & \textleftarrow & 24 \\
@@ -2413,10 +2444,12 @@ many cases all four are wanted, hence the shortcut.
\end{tabular}
\caption{Symbols unavailable in \texttt{TS1} sub-encoding \texttt{4}
and higher}
- \label{tab:ts1-subset-4}
+ \label{tab:ts1-subset-4-disable}
+\end{table}
- \par\vspace{\intextsep}
+\begin{table}[!tbp]
+ \centering\footnotesize
\begin{tabular}[t]{@{}lp{1.5em}l@{}}
\toprule
\verb|\textnumero| & \textnumero & 155 \\
@@ -2429,10 +2462,13 @@ many cases all four are wanted, hence the shortcut.
\end{tabular}
\caption{Symbols unavailable in \texttt{TS1} sub-encoding \texttt{5}
and higher}
- \label{tab:ts1-subset-5}
+ \label{tab:ts1-subset-5-disable}
+\end{table}
+
- \par\vspace{\intextsep}
+\begin{table}[!tbp]
+ \centering\footnotesize
\begin{tabular}[t]{@{}lp{1.5em}l@{}}
\toprule
\verb|\textflorin| & \textflorin & 140 \\
@@ -2445,10 +2481,13 @@ many cases all four are wanted, hence the shortcut.
\end{tabular}
\caption{Symbols unavailable in \texttt{TS1} sub-encoding \texttt{6}
and higher}
- \label{tab:ts1-subset-6}
+ \label{tab:ts1-subset-6-disable}
+\end{table}
- \par\vspace{\intextsep}
+
+\begin{table}[!tbp]
+ \centering\footnotesize
\begin{tabular}[t]{@{}lp{1.5em}l@{}}
\toprule
\verb|\textfractionsolidus| & \textfractionsolidus & 47 \\
@@ -2463,10 +2502,13 @@ many cases all four are wanted, hence the shortcut.
\end{tabular}
\caption{Symbols unavailable in \texttt{TS1} sub-encoding \texttt{7}
and higher}
- \label{tab:ts1-subset-7}
+ \label{tab:ts1-subset-7-disable}
+\end{table}
+
- \par\vspace{\intextsep}
+\begin{table}[!tbp]
+ \centering\footnotesize
\begin{tabular}[t]{@{}lp{1.5em}l@{}}
\toprule
\verb|\textblank| & \textblank & 32 \\
@@ -2481,10 +2523,12 @@ many cases all four are wanted, hence the shortcut.
\end{tabular}
\caption{Symbols unavailable in \texttt{TS1} sub-encoding \texttt{8}
and higher}
- \label{tab:ts1-subset-8}
+ \label{tab:ts1-subset-8-disable}
+\end{table}
- \par\vspace{\intextsep}
+\begin{table}[!tbp]
+ \centering\footnotesize
\begin{tabular}[t]{@{}lp{1.5em}l@{}}
\toprule
\verb|\texttwelveudash| & \texttwelveudash & 21 \\
@@ -2502,9 +2546,40 @@ many cases all four are wanted, hence the shortcut.
\bottomrule
\end{tabular}
\caption{Symbols unavailable in \texttt{TS1} sub-encoding \texttt{9}}
- \label{tab:ts1-subset-9}
+ \label{tab:ts1-subset-9-disable}
\end{table}
+
+
+As an example,
+%\begin{verbatim}
+ \verb=\DeclareEncodingSubset{TS1}{foo}{5}=
+%\end{verbatim}
+indicates that the font family |foo| contains the always available
+symbols (table~\vref{tab:ts1-subset-always}) and the ones disabled
+in sub-encodings 6--9, i.e.,
+tables~\vrefrange{tab:ts1-subset-6-disable}{tab:ts1-subset-9-disable}.
+
+As these days many font families are set up to end in |-LF| (lining
+figures), |-OsF| (oldstyle figures), etc. the declaration supports a
+shortcut: if the \m{font family} name ends in |-*| then the star gets
+replaced by these common ending, e.g.,
+\begin{verbatim}
+ \DeclareEncodingSubset{TS1}{Alegreya-*}{2}
+\end{verbatim}
+is the same as writing
+\begin{verbatim}
+ \DeclareEncodingSubset{TS1}{Alegreya-LF} {2}
+ \DeclareEncodingSubset{TS1}{Alegreya-OsF} {2}
+ \DeclareEncodingSubset{TS1}{Alegreya-TLF} {2}
+ \DeclareEncodingSubset{TS1}{Alegreya-TOsF}{2}
+\end{verbatim}
+If only some are needed then one can define them individually but in
+many cases all four are wanted, hence the shortcut.
+
+
+
+
\section{If you need to know more \ldots}
\NEWdescription{1996/06/01}
More information about the latex3-commits
mailing list.