summaryrefslogtreecommitdiff
path: root/macros/latex-dev/base/fntguide.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex-dev/base/fntguide.tex')
-rw-r--r--macros/latex-dev/base/fntguide.tex91
1 files changed, 84 insertions, 7 deletions
diff --git a/macros/latex-dev/base/fntguide.tex b/macros/latex-dev/base/fntguide.tex
index f3231a8183..59c6499962 100644
--- a/macros/latex-dev/base/fntguide.tex
+++ b/macros/latex-dev/base/fntguide.tex
@@ -38,7 +38,7 @@
\author{\copyright~Copyright 1995--2019, \LaTeX3 Project Team.\\
All rights reserved.}
-\date{July 2019}
+\date{October 2019}
\begin{document}
@@ -170,7 +170,7 @@ Addresses and other details can be found at:
This section describes the commands available to class and package
writers for specifying and selecting fonts.
-\subsection{Text font attributes}
+\subsection{Text font attributes} \label{sec:textfontattributes}
Every text font in \LaTeX{} has five \emph{attributes}:
\begin{description}
@@ -1214,6 +1214,13 @@ Tries to load a font from a different font shape declaration given by
\item[ssub]
Silent variant of `sub', only loggings.
+\item[alias]
+\NEWfeature{2019/10/15}
+Same as `ssub' but with a different logging message. Intended for
+cases where the substitution is only done to change the name, e.g.,
+going from \texttt{regular} series to the official name \texttt{m}. In
+that case given a warning that some shape is not found is not correct.
+
\item[subf]
Like the empty function but issues a warning that it has to substitute
the external font \m{fontarg} because the desired font shape was not
@@ -1603,6 +1610,9 @@ Example:
\DeclareFontSubstitution{T1}{cmr}{m}{n}
\end{verbatim}
+
+
+
\subsection{Case changing}
\label{sec:case}
@@ -1810,15 +1820,25 @@ with |L|, experimental encodings intended for wide distribution will
start with |E|, whilst |U| is for Unknown or Unclassified encodings.
\item
-Font family names should contain up to five lower case letters.
-Where possible, these should conform to the \emph{Filenames for fonts}
-font naming scheme.
+\NEWdescription{2019/10/15}
+Font family names should contain only upper and lower case letters and
+hyphen characters. Where possible, these should conform to the
+\emph{Filenames for fonts} font naming scheme of the scheme
+implemented by \texttt{autoinst} with suffixes such as \texttt{-LF},
+\texttt{-OsF}, etc.\ to indicate different figure styles.
\item
-Font series names should contain up to four lower case letters.
+\NEWdescription{2019/10/15}
+Font series names should contain up to four lower case letters. If at
+all possible standard names as suggested in
+Section~\ref{sec:textfontattributes} should be used. Font specific
+names such as \texttt{regular} or \texttt{black}, etc.\ should be at
+least aliased to a corresponding standard name.
\item
-Font shapes should contain up to two letters lower case.
+\NEWdescription{2019/10/15}
+Font shapes should contain up to four letters lower case. Use the
+names suggested in Section~\ref{sec:textfontattributes}.
\item
Names for symbol fonts are built from lower and upper case letters
@@ -1844,6 +1864,63 @@ fonts with existing fonts.
Note that commands defined in this way must be robust, in case they
get put into a section title or other moving argument.
+
+
+\subsection{The order of declaration}
+
+
+\NEWdescription{2019/10/15}
+\NFSS{} forces you to give all declarations in a specific order so
+that it can check whether you have specified all necessary
+information. If you declare objects in the wrong order, it will
+complain. Here are the dependencies that you have to obey:
+\begin{itemize}
+\item
+|\DeclareFontFamily| checks that the encoding scheme was previously
+declared with |\DeclareFontEncoding|.
+
+\item
+|\DeclareFontShape| checks that the font
+family was declared to be available in the requested
+encoding (|\DeclareFontFamily|).
+
+\item
+|\DeclareSymbolFont| checks that the encoding scheme is valid.
+
+\item
+|\SetSymbolFont| additionally ensures that the requested math
+version was declared (|\DeclareMathVersion|) and that the requested
+symbol font was declared (|\DeclareSymbolFont|).
+
+
+\item
+|\DeclareSymbolFontAlphabet| checks that the command name for the
+alphabet identifier can be used and that the symbol font was declared.
+
+\item
+|\DeclareMathAlphabet| checks that the chosen command name can be
+used and that the encoding scheme was declared.
+
+\item
+|\SetMathAlphabet| checks that the alphabet identifier was
+previously declared with |\DeclareMathAlphabet| or
+|\DeclareSymbolFontAlphabet| and that the math version and the
+encoding scheme are known.
+
+\item
+|\DeclareMathSymbol| makes sure that the command name can be used
+(i.e., is undefined or was previously declared to be a math symbol)
+and that the symbol font was previously declared.
+
+\item
+When the |\begin{document}| command is reached, \NFSS{} makes
+some additional checks---for example, verifying that substitution
+defaults for every encoding scheme point to known font shape group
+declarations.
+\end{itemize}
+
+
+
\section{If you need to know more \ldots}
\NEWdescription{1996/06/01}