summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/fontinst/base/encspecs
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/fontinst/base/encspecs')
-rw-r--r--Master/texmf-dist/doc/fontinst/base/encspecs/encspecs.tex1293
-rw-r--r--Master/texmf-dist/doc/fontinst/base/encspecs/omxdraft.etx985
-rw-r--r--Master/texmf-dist/doc/fontinst/base/encspecs/ot1draft.etx1001
-rw-r--r--Master/texmf-dist/doc/fontinst/base/encspecs/t1draft.etx1457
4 files changed, 4736 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/fontinst/base/encspecs/encspecs.tex b/Master/texmf-dist/doc/fontinst/base/encspecs/encspecs.tex
new file mode 100644
index 00000000000..3d1027d9415
--- /dev/null
+++ b/Master/texmf-dist/doc/fontinst/base/encspecs/encspecs.tex
@@ -0,0 +1,1293 @@
+\documentclass[a4paper]{article}
+
+\usepackage{array}
+
+\makeatletter
+\@ifundefined{l@nohyphenation}{\newlanguage\l@nohyphenation}{}
+\DeclareRobustCommand\meta[1]{%
+ \ensuremath{\langle}%
+ \sbox{\z@}{%
+ \setlanguage\l@nohyphenation
+ \normalfont\itshape #1\/%
+ \setlanguage\language
+ }%
+ \unhbox\z@
+ \ensuremath{\rangle}%
+}
+\makeatother
+\DeclareRobustCommand\marg[1]{%
+ \texttt{\char`\{}\meta{#1}\texttt{\char`\}}%
+}
+\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
+
+\makeatletter
+\DeclareTextFontCommand\textsmaller{%
+ \fontsize{\scaledsize{\f@size}}{\f@baselineskip}\selectfont
+}
+\newcommand\scaledsize[1]{%
+ \ifdim #1\p@>6\p@
+ \ifdim #1\p@>7\p@
+ \ifdim #1\p@>8\p@
+ \ifdim #1\p@>9\p@
+ \ifdim #1\p@>10\p@
+ \ifdim #1\p@>11\p@
+ \ifdim #1\p@>12\p@
+ \ifdim #1\p@>14\p@ 14%
+ \else 12\fi
+ \else 11\fi
+ \else 10\fi
+ \else 9\fi
+ \else 8\fi
+ \else 7\fi
+ \else 6\fi
+ \else 5\fi
+}
+\makeatother
+\DeclareRobustCommand\ETX{\textsmaller{ETX}}
+
+
+\usepackage{shortvrb}
+\MakeShortVerb{\|}
+\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
+
+\newcommand{\TeXOmega}{Omega}
+\DeclareRobustCommand\eTeX{\ensuremath{\varepsilon}-\kern-.125em\TeX}
+\DeclareRobustCommand\package[1]{\textsf{#1}}
+
+\providecommand*{\href}[2]{#2}
+\newcommand*{\ctanref}[2]{\href{ftp://ftp.ctan.org/#1}{#2}}
+
+\title{Writing \ETX\ format font encoding specifications}
+\author{Lars Hellstr\"om}
+\date{2003/07/09}
+
+\begin{document}
+\maketitle
+
+\begin{abstract}
+ This paper explains how one writes formal specifications of font
+ encodings for \LaTeX\ and suggests a ratification procedure for such
+ specifications.
+\end{abstract}
+
+
+\tableofcontents
+
+\vspace{0mm plus 35mm}
+\pagebreak[2]
+
+
+\section{Introduction}
+
+\paragraph*{Why should one specify font encodings?}
+Because without a specification, font
+designers\footnote{Maybe not a good term, since it is really about
+making fonts available to \TeX. Some of these people actually
+design glyphs, but most of them merely working with the metrics.}
+cannot tell whether their fonts will work in general, they can
+only test that they work in the cases they know about. Font design
+is subject to a surprising amount of obscure technicalities and it
+is very hard to consider (or even find documentation that
+mentions) them all.
+
+\paragraph*{Why should one make formal specifications?}
+Because the informal specifications that we have today
+are incomplete and hard to use. E.g.\ the \LaTeX\
+\meta{enc}\texttt{enc.def} files only say something about the
+characters that are accessed via commands, and even for those you
+really have to do reverse engineering to figure out what the
+encoding contains. To figure out what the remaining characters
+should do you have to compile what the various user manuals claim
+to work and then work backwards from that, but I don't think the
+general problem of which character tokens are allowed in input is
+thoroughly treated anywhere. On top of that, \LaTeX\ itself
+contributes some character tokens when the document is being
+typeset.\footnote{This is basically the ``a \texttt{T}$*$ encoding
+must contain the characters \ldots'' problem that was the reason
+that the \texttt{T2} encoding had to be split up.}
+
+On the other side of things there are the files which tell e.g.
+\textsf{fontinst} or \textsf{AFMtoTFM} what the target font
+encoding is. These are basically recipes which are known (?\@) to
+produce valid results, and they do usually provide more
+information about the encoding than the sources listed above, but
+they don't give much information about where the recipe can be
+modified.
+
+\paragraph*{Why use the \ETX\ format?}
+To begin with it is an established format; many of those
+who are making fonts already use it, even if for a slightly
+different purpose. Another major reason is that an \ETX\ file is both
+a \LaTeX\ document and a processable data file; this is the same kind
+of bilinguality that has made the \texttt{.dtx} format so useful.
+Finally the \ETX\ format makes it easy to create experimental font
+installations when a new encoding is being designed; \textsf{fontinst}
+can directly read the file, but the file can also be automatically
+converted to a PostScript encoding vector if that approach seems more
+convenient.
+
+On the other hand, there are some features (such as the prominent
+role of the glyph names) of the \ETX\ format that would
+probably had been done differently in a file format that was built
+from scratch, but then you would also lose several of the advantages
+listed above.
+
+
+\section{Points to keep in mind}
+
+\subsection{Characters, glyphs, and slots}
+
+One fundamental difference one must understand is that between
+characters and glyphs. A \emph{character} is a semantic entity---it
+carries some meaning, even if you usually have to combine several
+characters to make up even one word---whereas a \emph{glyph} simply
+is a piece of graphics. In printed text, glyphs are used to represent
+characters and the first step of reading is to determine which
+character(s) a given glyph is representing.
+
+In the output, \TeX\ neither deals with characters nor glyphs, really
+(although many of its messages speak of characters), but with
+\emph{slots}, which essentially are numbered positions in a font. To
+\TeX, a slot is simply something which can have certain metric
+properties (width, height, depth, etc.\@) but to the driver which
+actually does the printing the slot also specifies a glyph. The same
+slot in two different fonts can correspond to two quite different
+characters.
+
+For completeness it should also be mentioned that the \emph{input} of
+\TeX\ is a stream of semantic entities and thus \TeX\ is dealing with
+characters on that side, but the input is not the subject of this
+paper.
+
+
+\subsection{Ligatures}
+
+In typography, a \emph{ligature} is a glyph which has been formed by
+joining glyphs that represent two or more characters; this joining can
+involve quite a lot of deformation of the original shapes. Examples
+of ligatures are the `fi' ligature (from `f' and `i'), the `\AE'
+ligature (from `A' and `E'), and the `\textit{\&}' character (from `E'
+and `t'), the latter two of which has evolved to become characters of
+their own. For those ligatures (such as `fi') that have not evolved to
+characters, \TeX\ has a mechanism for forming the ligature out of the
+characters it is composed from, under the guidance of ligature\slash
+kerning programs found in the font.
+
+More technically, what happens is really that if the |\char| (or
+equivalent) for one slot is immediately followed by the |\char| (or
+equivalent) for another (or the same) slot and there is a ligaturing
+instruction in the \texttt{\small LIGKERN} table of the current font
+which applies to this slot pair then this ligaturing instruction is
+executed. This usually replaces the two slots in the pair with a
+single new slot specified by the ligaturing instruction (it could
+also keep one or both of the original slots, but that is less common).
+\TeX\ has no idea about whether these replacements change the meaning
+of anything, but \TeX\ assumes that it doesn't, and it is up to the
+font designer to ensure that this is the case.
+
+Apart from forming ligatures in text, the ligaturing mechanism of
+\TeX\ is traditionally also employed for another task which is much
+more problematic. Ligatures are also used to produce certain
+characters which are not part of visible ASCII---the most common are
+the endash (typed as |--|) and the emdash (typed as |---|). This is a
+problem because it violates \TeX's assumption that the meaning is
+unchanged; the classical problem with this appears in the \texttt{OT2}
+encoding, where the Unicode character \texttt{U+0446}
+(\textsc{cyrillic small letter tse}) could be typed as |ts|, whilst
+the |t| and |s| by themselves produced Unicode characters
+\texttt{U+0442} (\textsc{cyrillic small letter te}) and \texttt{U+0441}
+(\textsc{cyrillic small letter es}) respectively. \TeX's hyphenation
+mechanism can however decompose ligatures, so it sometimes happened
+that the \textsc{tse} was hyphenated as \textsc{te}-\textsc{es},
+which is quite different from what was intended. Since this is such
+an obvious disadvantage, the use of ligatures for forming non-English
+letters quickly disappeared after 8-bit input encodings became
+available. The practice still remains in use for punctuation, however,
+and the font designer must be aware of this. For many font encodings
+there is a set of ligatures which must be present and replace two or
+more characters by a single, different character. These ligatures are
+called \emph{mandatory ligatures} in this paper.
+
+The use of mandatory ligatures in new font encodings is strongly
+discouraged, for a number of reasons. The main problem is that they
+create unhealthy dependencies between input and output encoding,
+whereas these should ideally be totally independent. Using ligatures
+in this way complicates the internal representation of text, and it
+also makes it much harder to typeset text where those ligatures are not
+wanted (such as verbatim text). Furthermore it creates problems with
+kerning, since the ``ligature'' has not yet been formed when a kern
+to the left of it is inserted. Finally, a much better solution (when
+it is available) is to use an \TeXOmega\ translation process
+(see~\cite[Sec.~8--11]{Omega-doc}), since that \emph{is} independent
+of the font, different translations can be combined, and they can
+easily handle even ``abbreviations'' much more complicated than those
+ligatures can deal with.
+
+
+\subsection{Output stages}
+
+On its way out of \LaTeX\ towards the printed text, a character passes
+through a number of stages. The following five seem to cover what is
+relevant for the present discussion:
+\begin{enumerate}
+ \item \emph{\LaTeX\ Internal Character Representation} (LICR);
+ see~\cite{LaTeXCompanion}, Section~7.11 for a full description.
+ At this point the character is a character token (e.g.~|a|),
+ a text command (e.g.~|\ss|), or a combination (e.g.~|\H{o}|).
+ \item \emph{Horizontal material;} this is what the character is
+ en route from \TeX's mouth to its stomach. For most characters
+ this is equivalent to a single |\char| command (e.g.\ |a| is
+ equivalent to |\char|\,|97|), but some require more than one, some
+ are combined using the |\accent| and |\char| commands, some
+ involve rules and\slash or kerns, and some are built using boxes
+ that arbitrarily combine the above elements.
+ \item \emph{DVI commands;} this is the DVI file commands that
+ produce the printed representation of the character.
+ \item \emph{Printed text;} this is the graphical representation of
+ the character, e.g. as ink on paper or as a pattern on a computer
+ screen. Here the text consists of glyphs.
+ \item \emph{Interpreted text;} this is essentially printed text
+ modulo equivalence of interpretation, hence the text doesn't really
+ reach this stage until someone reads it. Here the text consists of
+ characters.
+\end{enumerate}
+
+In theory there is a universal mapping from LICR to interpreted text,
+but various technical restrictions make it impossible to simultaneously
+support the entire mapping. A \LaTeX\ encoding selects a restriction
+of this mapping to a limited set which will be ``well supported''
+(meaning kerning and such between characters in the set works), whereas
+elements outside this set at best can be supported through temporary
+encoding changes. The encoding also specifies a decomposition of the
+mapping into one part which maps LICR to horizontal material and one
+part which maps horizontal material to interpreted text. The first
+part is realized by the text command definitions usually found in the
+\meta{enc}\texttt{enc.def} file for the encoding. The second part is
+the font encoding, the specification of which is the topic of this
+paper. It is also worth noticing that an actual font is a mapping of
+horizontal material to printed text.
+
+An alternative decomposition of the mapping from LICR to interpreted
+text would be at the DVI command level, but even though this
+decomposition is realized in most \TeX\ implementations, it has very
+little relevance for the discussion of encodings. The main reason for
+this is that it depends not only on the encoding of a font, but
+also on its metrics. Furthermore it is worth noticing that in e.g.\
+pdf\TeX\ there need not be a DVI command level.
+
+
+\subsection{Hyphenation}
+
+There are strong connections between font encoding and hyphenation because
+\TeX's hyphenation mechanism operates on horizontal material; more
+precisely the hyphenation mechanism only works on pieces of horizontal
+material that are equivalent to sequences of |\char| commands. This
+implies that hyphenation patterns, as selected via the |\language|
+parameter, are not only for a specific language, they are also for a
+specific font encoding.
+
+The hyphenation mechanism uses the |\lccode| values to distinguish
+between three types of slots: lower case letters (|\lccode|\(\,n =
+n\)), upper case letters (|\lccode|\(\,n \notin \{0,n\}\)), and
+non-letters (|\lccode|\(\,n = 0\)); only the first two types can be
+part of a hyphenatable word and only lower case letters are needed
+in the hyphenation patters. This does however place severe
+restrictions on how letters can be placed in a text font because
+\TeX\ uses the same |\lccode| values for all text in a paragraph and
+therefore these values cannot be changed whenever the encoding changes.
+In \LaTeX\ the |\lccode| table is not allowed to change at all and
+consequently all text font encodings must work using the standard set
+of |\lccode| values.
+
+In \eTeX\ each set of hyphenation patterns has its own set of
+|\lccode| values for hyphenation, so the problem isn't as severe
+there. The hyphenation mechanism of \TeXOmega\ should become
+completely independent of the font encoding, but in the current
+implementation it is still operating on material encoded according to
+a font encoding.
+
+
+\subsection{Production and specification \ETX\ files}
+
+Finally, it is worth pointing out the difference between an \ETX\ file
+created for the specification of a font encoding and one created for
+being used in actually producing fonts with this encoding. They are
+usually not the same. Specification \ETX s certainly may be of direct
+use in the production of fonts---especially experimental fonts
+produced as part of the work on a new encoding---but they are usually
+not ideal for the purpose. In particular there is often a need to
+switch between alternative names for a glyph to accommodate what is
+actually in the fonts, but such trickeries are undesirable
+complications in a specification. On the other hand a production
+\ETX\ file has little need for verbose comments, whereas they are rather
+an advantage in a specification \ETX\ file.
+
+Therefore one shouldn't be surprised if there are two \ETX\ files for a
+specific encoding: one which is a specification version and one which
+is a production version. If both might need to be in the same
+directory then one should, as a rule of thumb, include a
+`\texttt{spec}' in the name of the specification version.
+
+
+\section{Font encoding specifications}
+
+\subsection{Basic principles}
+
+Most features of the font encoding are categorized as either
+\emph{mandatory} or \emph{ordinary}. The mandatory features are what
+macros may rely on, whereas the ordinary simply are something which
+fonts with this encoding normally provide. Font designers may choose
+to provide other features than the ordinary, but are recommended to
+provide the ordinary features to the extent that the available
+resources permit.
+
+Many internal references in the specification are in the form of
+\emph{glyph names} and the choice of these is a slightly tricky
+matter. From the point of formal specification, the choices can be
+completely arbitrary, but from the point of practical usefulness they
+most likely are not. One of the main advantages of the \ETX\ format
+for specifications is that such specifications can also be used to
+make experimental implementations, but this requires that the glyph
+names in the specification are the same as those used in the fonts
+from which the experimental implementation should be built. Yet
+another aspect is that the glyph names are best chosen to be the ones
+one can expect to find in actual fonts, as that will make things
+easier for other people that want to make non-experimental
+implementations later. For this last purpose, a good reference is
+Adobe's technical note on Unicode and glyph names~\cite{unicodesign}.
+For most common glyphs, \cite{unicodesign} ends up recommending that
+one should follow the Adobe glyph list~\cite{AGL}, which however has
+the peculiar trait of recommending names on the form
+\texttt{afii}\textit{ddddd} (rather than the Unicode-based alternative
+\texttt{uni}\textit{xxxx}) for most non-latin glyphs. This is somewhat
+put in perspective by~\cite{ATN5013}.
+
+
+\subsection{Slot assignments}
+
+The purpose of the slot assignments is to specify for each slot which
+character or characters it is mapped to. That one slot is mapped to
+many characters is an unfortunate, but not very uncommon, reality in
+many encodings, as limitations in font size have often encouraged
+identifications of two characters which are almost the same. It should
+be avoided in new encodings.
+
+Slot assignmets are done using the |\nextslot| command and a
+|\setslot| \dots\ |\endsetslot| construction as follows:
+\begin{quote}
+ |\nextslot|\marg{slot number}\\*
+ |\setslot|\marg{glyph name}\\*
+ \mbox{\quad}\meta{slot commands}\\*
+ |\endsetslot|
+\end{quote}
+A typical example of this is
+\begin{quote}\begin{verbatim}
+\nextslot{65}
+\setslot{A}
+ \Unicode{0041}{LATIN CAPITAL LETTER A}
+\endsetslot
+\end{verbatim}\end{quote}
+which gets typeset as
+\begin{quote}
+ \textbf{Slot 65 `\texttt{A}'}\\*
+ Unicode character \texttt{U+0041}, \textsc{latin capital letter a}.
+\end{quote}
+
+The |\nextslot| command does not typeset anything; it simply stores
+the slot number in a counter, for later use by |\setslot|. The
+|\endsetslot| command increments this counter by one. Hence the
+|\nextslot| command is unnecessary between |\setslot|s for consecutive
+slots. Besides |\nextslot|, there is also a command |\skipslots| which
+increments the slot number counter by a specified amount. The
+argument of both |\nextslot| and |\skipslots| can be arbitrary
+\package{fontinst} integer expressions (see~\cite{fontinst-man}). All
+\TeX\ \meta{number}s that survive full expansion are valid
+\package{fontinst} integer expressions, but for example |`\~| isn't,
+as |\~| is a macro which will break before the expression is typeset.
+These cases can however be fixed by preceding the \TeX\ \meta{number}
+by |\number|, as |\number`\~| survives full expansion by expanding to
+|126|.
+
+The main duty of the \meta{slot commands} is to specify the target
+character (or characters) for this slot. The simplest way of doing
+this is to use the |\Unicode| command, which has the syntax
+\begin{quote}
+ |\Unicode|\marg{code point}\marg{name}
+\end{quote}
+The \meta{code point} is the number of the character (in hexadecimal
+notation, usually a four-digit number) and the \meta{name} is the name.
+Case is insignificant in these arguments. If a character does not
+have a Unicode code point then the specification should simply be a
+description in text which identifies the character. Such descriptions
+are written using the |\comment| command
+\begin{quote}
+ |\comment|\marg{text}
+\end{quote}
+It is worth noticing that the \meta{text} is technically only an
+argument of |\comment| when the program processing the \ETX\ file is
+ignoring |\comment| commands. This means |\verb| and similar
+catcode-changing commands \emph{can} be used in the \meta{text}. The
+|\par| command is on the other hand not allowed in the \meta{text}.
+
+The |\comment| command should also be used for any further piece of
+explanation of or commentary to the character used for the slot, if the
+exposition seems to need it. There can be any number of |\comment|
+commands in the \meta{slot commands}.
+
+
+\subsection{Ligatures}
+
+There are three classes of ligatures in the font encoding
+specifications: mandatory, ordinary, and odd. Mandatory ligatures must
+be present in any font which complies with the encoding, whereas
+ordinary and odd ligatures need not be. No clear distinction can be
+made between ordinary and odd ligatures, but a non-mandatory ligature
+should be categorized as ordinary if it makes sense for the majority
+of users, and as odd otherwise. Hence the `fi' ligature is
+categorized as ordinary in the \texttt{T1} encoding, whereas the `ij'
+ligature is odd.
+
+In the \ETX\ format, a ligature is specified using one of the slot
+commands
+\begin{quote}
+ |\Ligature|\marg{ligtype}\marg{right}\marg{new}\\
+ |\ligature|\marg{ligtype}\marg{right}\marg{new}\\
+ |\oddligature|\marg{note}\marg{ligtype}\marg{right}\marg{new}
+\end{quote}
+|\Ligature| is used for mandatory ligatures, |\ligature| is used for
+ordinary ligatures, and |\oddligature| is used for odd ligatures. The
+\meta{right} and \meta{new} arguments are names of the glyphs being
+assigned to the slots involved in this ligature. The \meta{right}
+specifies the right part in the slot pair being affected by the
+ligature, whereas the left part is the one of the |\setslot| \dots\
+|\endsetslot| construction in which the ligaturing command is placed.
+The \meta{new} specifies a new slot which will be inserted by the
+ligaturing instruction. The \meta{ligtype} is the actual ligaturing
+instruction that will be used; it must be |LIG|, |/LIG|, |/LIG>|,
+|LIG/|, |LIG/>|, |/LIG/|, |/LIG/>|, or |/LIG/>>|. The slashes specify
+retention of the left or right original character; the |>| signs
+specify passing over that many slots in the result without further
+ligature processing. \meta{note}, finally, is a piece of text which
+explains when the odd ligature may be appropriate. It is typeset as a
+footnote.
+
+As an example of ligatures we find the following in the specification
+of the \texttt{T1} encoding:
+\begin{quote}
+ |\nextslot{33}|\\
+ |\setslot{exclam}|\\
+ | \Unicode{0021}{EXCLAMATION MARK}|\\
+ | \Ligature{LIG}{quoteleft}{exclamdown}|\\
+ |\endsetslot|
+\end{quote}
+It is typeset as
+\begin{quote}
+ \textbf{Slot 33 `\texttt{exclam}'}\\*
+ Unicode character \texttt{U+0021}, \textsc{exclamation mark}.\\*
+ \textbf{Mandatory ligature}
+ \texttt{exclam}${}*{}$\texttt{quoteleft}${}\rightarrow
+ {}$\texttt{exclamdown}
+\end{quote}
+With other \meta{ligtype}s there may be more names listed on the
+right hand side and possibly a `$\lfloor$' symbol showing the
+position at which ligature processing will start afterwards.
+
+
+\subsection{Math font specialities}
+
+There are numerous technicalities which are special to math fonts, but
+only a few of them are exhibited in \ETX\ files.\footnote{For an
+overview of the subject, see for example Vieth~\cite{Vieth2001}.} Most
+of these have to do with the \TeX\ mechanisms that find sufficiently
+large characters for commands like |\left|, |\sqrt|, and |\widetilde|.
+
+The first mechanism for this is that a character in a font can sort of
+say ``If I'm too small, then then try character \dots\ instead''. This
+is expressed in an \ETX\ file using the |\nextlarger| command, which
+has the syntax
+\begin{quote}
+ |\nextlarger|\marg{glyph name}
+\end{quote}
+The second mechanism constructs a sufficiently large character from
+smaller pieces; this is known as a `varchar' or `extensible character'.
+This is expressed in an \ETX\ file using an ``extensible recipe'', the
+syntax for which is
+\begin{quote}
+ |\varchar| \meta{varchar commands} |\endvarchar|
+\end{quote}
+where each \meta{varchar command} is one of
+\begin{quote}
+ |\varrep|\marg{glyph name}\\
+ |\vartop|\marg{glyph name}\\
+ |\varmid|\marg{glyph name}\\
+ |\varbot|\marg{glyph name}
+\end{quote}
+There can be at most one of each and their order is irrelevant. The
+most important is the |\varrep| command, as that is the part which is
+repeated until the character is sufficiently large. The |\vartop|,
+|\varmid|, and |\varbot| commands are used to specify some other part
+which should be put at the top, middle, and bottom of the extensible
+character respectively. Not all extensible recipes use all of these,
+however.
+
+As an example, here is how a very large left brace is constructed:
+\begin{center}
+ \begin{tabular}{>{%
+ \fontencoding{OMX}\fontfamily{cmex}\selectfont
+ $\vcenter\bgroup\hbox\bgroup
+ }l<{\egroup\egroup$} l}
+ \char"38& For |\vartop{bracelefttp}|\\
+ \char"3E& For |\varrep{braceex}|\\
+ \char"3C& For |\varmid{braceleftmid}|\\
+ \char"3E& Again for |\varrep{braceex}|\\
+ \char"3A& For |\varbot{braceleftbt}|
+ \end{tabular}
+\end{center}
+
+Both |\nextlarger| and |\varchar| commands are like |\ligature| in
+that they describe ordinary features for the encoding; they appear in
+a specification \ETX\ file mainly to explain the purpose of some
+ordinary character. There is no such thing as a mandatory |\nextlarger|
+or |\varchar|, but varchars are occationally used to a similar effect.
+In these cases, the character generated by the extensible recipe is
+something quite different from what a |\char| for that slot would
+produce. Thus for the slot to produce the expected result it must be
+referenced using a |\delimiter| or |\radical| primitive, since those
+are the only ones which make use of the extensible recipe. The effect
+is that the slot has a \emph{semimandatory} assignment; the result of
+|\char| is unspecified (as for a slot with an ordinary assignment), but
+the result for a large delimiter or radical is not (as for a slot with
+a mandatory assignment).
+
+Thus some math fonts have an extra section ``Semimandatory characters''
+between the mandatory and ordinary character sections. In that section
+for the \texttt{OMX} encoding we find for example
+\begin{quote}\begin{verbatim}
+\nextslot{60}
+\setslot{braceleftmid}
+ \Unicode{2016}{DOUBLE VERTICAL LINE}
+ \comment{This is the large size of the |\Arrowvert|
+ delimiter, a glyphic variation on |\Vert|.
+ The \texttt{braceleftmid} glyph ordinarily
+ placed in this slot must not be too tall,
+ or else the extensible recipe actually producing
+ the character might sometimes not be used.}
+ \varchar
+ \varrep{arrowvertex}
+ \endvarchar
+\endsetslot
+\end{verbatim}\end{quote}
+which is typeset as
+\begin{quote}
+ \textbf{Slot 60 `\texttt{braceleftmid}'}\\*
+ Unicode character \texttt{U+2016}, \textsc{double vertical line}.\\
+ This is the large size of the |\Arrowvert|
+ delimiter, a glyphic variation on |\Vert|.
+ The \texttt{braceleftmid} glyph ordinarily
+ placed in this slot must not be too tall,
+ or else the extensible recipe actually producing
+ the character might sometimes not be used.\\
+ \textbf{Extensible glyph:}\\*
+ \textbf{Repeated} \texttt{arrowvertex}
+\end{quote}
+
+
+
+
+\subsection{Fontdimens}
+
+Each \TeX\ font contains a list of fontdimens, numbered from $1$ and
+up, which are accessible via the |\fontdimen| \TeX\ primitive. Quite a
+few are also used implicitly by \TeX\ and therefore cannot be left out
+even if they are totally irrelevant, but as one can always include
+some extra fontdimens in a font---the only bounds on how many
+fontdimens there may be are the general bound on the size of a TFM
+file and the amount of font memory \TeX\ has available---this is
+usually not a problem.
+
+The reason fontdimens are part of font encoding specifications is
+that the meaning of e.g.\ |\fontdimen|\,|8| varies between different
+fonts depending on their encoding; thus the encoding specification
+must define the quantity stored in each |\fontdimen| parameter. This
+is done using the |\setfontdimen| command, which has the syntax
+\begin{quote}
+ |\setfontdimen|\marg{number}\marg{name}
+\end{quote}
+The \meta{number} is the fontdimen number (as a sequence of decimal
+digits where the first digit isn't zero) and the \meta{name} is a
+symbolic name for the quantity.
+
+The standard list of symbolic names for fontdimen quantities appears
+below; the listed quantities should always be described using the names
+in this list. Encoding specifications that employ other quantities as
+fontdimens should include definitions of these quantities. Those
+quantities that are defined as ``Formula parameter \dots'' have to
+do with how mathematical formulae are rendered and are usually much
+too complicated to explain here. For exact definitions of these
+parameters, the reader is referred to Appendix~G of \textit{The
+\TeX book}~\cite{TeXbook}.
+\begin{list}{}{%
+ \setlength\labelwidth{0pt}%
+ \setlength\itemindent{-\leftmargin}%
+ \def\makelabel#1{\hspace{\labelsep}\normalfont\itshape #1}%
+ \setlength\itemsep{0.5\itemsep}%
+ \setlength\parsep{0.5\parsep}%
+}
+\item[acccapheight]
+ The height of accented full capitals.
+\item[ascender]
+ The height of lower case letters with ascenders.
+\item[axisheight] Formula parameter $\sigma_{22}$.
+\item[baselineskip]
+ The font designer's recommendation for natural length of the
+ \TeX\ parameter |\baselineskip|.
+\item[bigopspacing1] Formula parameter $\xi_{9}$.
+\item[bigopspacing2] Formula parameter $\xi_{10}$.
+\item[bigopspacing3] Formula parameter $\xi_{11}$.
+\item[bigopspacing4] Formula parameter $\xi_{12}$.
+\item[bigopspacing5] Formula parameter $\xi_{13}$.
+\item[capheight]
+ The height of full capitals.
+\item[defaultrulethickness] Formula parameter $\xi_{8}$.
+\item[delim1] Formula parameter $\sigma_{20}$.
+\item[delim2] Formula parameter $\sigma_{21}$.
+\item[denom1] Formula parameter $\sigma_{11}$.
+\item[denom2] Formula parameter $\sigma_{12}$.
+\item[descender]
+ The depth of lower case letters with descenders.
+\item[digitwidth]
+ The median width of the digits in the font.
+\item[extraspace]
+ The natural width of extra interword glue at the end of a sentence.
+ \TeX\ implicitly uses this parameter if |\spacefactor| is $2000$ or
+ more and |\xspaceskip| is zero.
+\item[interword]
+ The natural width of interword glue (spaces). \TeX\ implicitly uses
+ this parameter unless |\spaceskip| is nonzero.
+\item[italicslant]
+ The slant per point of the font. Unlike all other fontdimens, it is
+ not proportional to the font size.
+\item[maxdepth]
+ The maximal depth over all slots in the font.
+\item[maxheight]
+ The maximal height over all slots in the font.
+\item[num1] Formula parameter $\sigma_{8}$.
+\item[num2] Formula parameter $\sigma_{9}$.
+\item[num3] Formula parameter $\sigma_{10}$.
+\item[quad]
+ The quad width of the font, normally approximately equal to the
+ font size and\slash or the width of an `M'. Also implicitly available
+ as the length unit |em| and used for determining the size of the
+ length unit |mu|.
+\item[shrinkword]
+ The (finite) shrink component of interword glue (spaces). \TeX\
+ implicitly uses this parameter unless |\spaceskip| is nonzero.
+\item[stretchword]
+ The (finite) stretch component of interword glue (spaces). \TeX\
+ implicitly uses this parameter unless |\spaceskip| is nonzero.
+\item[sub1] Formula parameter $\sigma_{16}$.
+\item[sub2] Formula parameter $\sigma_{17}$.
+\item[subdrop] Formula parameter $\sigma_{19}$.
+\item[sup1] Formula parameter $\sigma_{13}$.
+\item[sup2] Formula parameter $\sigma_{14}$.
+\item[sup3] Formula parameter $\sigma_{15}$.
+\item[supdrop] Formula parameter $\sigma_{18}$.
+\item[verticalstem]
+ The dominant width of vertical stems. This quantity is meant to be used
+ as a measure of how ``dark'' the font is.
+\item[xheight]
+ The x-height (height of lower case letters without ascenders). Also
+ implicitly available as the length unit |ex|.
+\end{list}
+
+
+\subsection{The codingscheme}
+
+The final encoding-dependent piece of information in a \TeX\ font is
+the codingscheme, which is essentially a string declaring what
+encoding the font has. This information is currently only used by
+programs that convert the information in a \TeX\ font to some other
+format and these use it to identify the glyphs in the font. Therefore
+this string should be chosen so that the contents of the slots in the
+font can be positively identified. Observe that the encoding
+specification by itself does not provide enough information for this,
+since there are usually a couple of slots that do not contain
+mandatory characters. On the other hand, it is not a problem in this
+context if the font leaves some of the slots (even mandatory ones)
+empty as that is anyway easily detected. The only problem is with
+fonts where the slots are assigned to other characters than the ones
+specified in the encoding.
+
+For that reason, it is appropriate to assign two codingscheme strings
+to each encoding. The main codingscheme is for fonts were all slots
+(mandatory and ordinary alike) have been assigned according to the
+specification or have been left empty. The variant codingscheme is for
+fonts where some ordinary slots have been assigned other characters
+than the ones listed in the specification, but where the mandatory
+slots are still assigned according to the specification or are left
+empty. The font encoding specification should give the main
+codingscheme name, whereas the variant codingscheme name could be
+formed by adding \verb*| VARIANT| to the main codingscheme name.
+
+Technically the codingscheme is specified by setting the
+\texttt{codingscheme} string variable. This has the syntax
+\begin{quote}
+ |\setstr{codingscheme}|\marg{codingscheme name}
+\end{quote}
+e.g.
+\begin{quote}
+ |\setstr{codingscheme}{EXTENDED TEX FONT ENCODING - LATIN}|
+\end{quote}
+which is typeset as
+\begin{quote}
+ \textbf{Default} s(\texttt{codingscheme}) =
+ \verb*|EXTENDED TEX FONT ENCODING - LATIN|
+\end{quote}
+A codingscheme name may be at most 40 characters long and may not
+contain parentheses. If the entire \verb*| VARIANT| cannot be suffixed
+to a main name because the result becomes to long (as in the above
+example) then use the first 40 characters of the result.
+
+
+\subsection{Overall document structure}
+\label{Ssec:Structure}
+
+The overall structure of a font encoding specification should be
+roughly the following
+\begin{quote}
+ |\relax|\\
+ |\documentclass[twocolumn]{article}|\\
+ |\usepackage[specification]{fontdoc}|\\
+ \meta{preamble}\\
+ |\begin{document}|\\
+ \meta{title}\\
+ \meta{manifest}\\
+ |\encoding|\\
+ \meta{body}\\
+ |\endencoding|\\
+ \meta{discussion}\\
+ \meta{change history}\\
+ \meta{bibliography}\\
+ |\end{document}|
+\end{quote}
+The commands described in the preceding subsections must all go in
+the \meta{body} part of the document, as that is the only part of the
+file which actually gets processed as a data file. The part before
+|\encoding| is skipped and the part after |\endencoding| is never
+even input, so whatever appears there is only part of the \LaTeX\
+document. For the purposes of processing as a data file, the
+important markers in the file are the |\relax|, the |\endcoding|, and
+the |\endencoding| commands.
+
+The \meta{title} is the usual |\maketitle| (and the like) stuff. The
+person or persons who appear as author(s) are elsewhere in this paper
+described as the \emph{encoding proposers}. The \meta{title} should
+also give the date when the specification was last changed.
+
+The \meta{manifest} is an important, although usually pretty short,
+part of the specification. It is a piece of text which explains the
+purpose of the encoding (in particular what it can be used for) and
+the basic ideas (if any) which have been used in its construction. It
+is often best marked up as an abstract.
+
+The \meta{discussion} is the place for any longer comments on the
+encoding, such as analyses of different implementations, comparisons
+with other encodings, etc. This is also the place to explain any more
+general structures in the encoding, such as the arrow kit in the
+proposed \texttt{MS2} encoding~\cite{ClasenVieth}. In cases where the
+specification is mainly a formulation of what is already an
+established standard the \meta{discussion} is often rather short as
+the relevant discussion has already been published elsewhere, but
+it is anyway a service to the reader to include this information.
+References to the original documents should always be given.
+
+It might be convenient to include an FAQ section at the end of the
+discussion. This is particularly suited for explaining things where
+one has to look for a while and consult the references to find the
+relevant information.
+
+The \meta{change history} documents how the specification has changed
+over time. It is preferably detailed, as each detail in an encoding
+is important, but one should not be surprised if it is anyway rather
+short due to that there haven't been that many changes.
+
+The \meta{bibliography} is an important part of the specification. It
+should at the very least include all the sources which have been used
+in compiling the encoding specification, regardless of whether they
+are printed, available on the net, merely ``personal communication'',
+or something else. It is also a service to the reader to include in
+the bibliography some more general references for related matters.
+
+The \meta{preamble} is just a normal \LaTeX\ preamble and there are no
+restrictions on defining new commands in it, although use of such
+commands in the \meta{body} part is subject to the same restrictions
+as use of any general \LaTeX\ command. The preamble should however
+\emph{not} load any packages not part of the required suite of
+\LaTeX\ packages, as that may prevent users who do not have these
+packages from typesetting the specification. Likewise, the
+specification should \emph{not} require that some special font is
+available. Glyph examples for characters are usually better
+referenced via Unicode character charts than via special fonts.
+
+An exception to this rule about packages is that the specification
+must load the \package{fontdoc} package, as shown in the outline
+above, since that defines the |\setslot| etc.\ commands that should
+appear in the \meta{body}. This should not be a problem, as the
+\package{fontdoc} package can preferably be kept in the same directory
+as the collection of encoding specifications (see below). The
+\texttt{specification} option should be passed to the package to let it know
+that the file being processed is an encoding specification---otherwise
+|\Ligature| and |\ligature| will get the same formatting, for one. It
+is not necessary to use the \package{article} document class, and
+neither must it be passed the \texttt{twocolumn} option, but it is
+customary to do so. In principle any other document class within
+required \LaTeX\ will do just as well.
+
+If you absolutely think that using some non-required package
+significantly improves the specification, then try writing the code so
+that is loads the package only if it is available and provide some
+kind of fallback definition for sites where it is not. E.g.\ the
+\package{url} package could be loaded as
+\begin{verbatim}
+\IfFileExists{url.sty}{\usepackage{url}}{}
+\providecommand\url{\verb}
+\end{verbatim}
+The |\url| command defined by this is not equivalent to the command
+defined by the \package{url} package, but it can serve fairly well
+(with a couple of extra overfull lines as only ill effect) if its
+use is somewhat restricted.
+
+Finally, a technical restriction on the \meta{preamble}, \meta{title},
+and \meta{manifest} is that they must not contain any mismatched
+|\if|s (of any type) or |\fi|s, as \TeX\ conditionals will be used for
+skipping those parts of the file when it is processed as a data file.
+If the definition of some macro includes mismatched |\if|s or |\fi|s
+(this will probably occur only rarely) then include some extra code
+so that they do match.
+
+
+% All technical parts of the encoding specification (slot assignments,
+% fontdimens, etc.\@) have to be in the \meta{encoding commands} part.
+% The other parts are suitably used for longer commentry, such as the
+% mainfest (see below), revision history, and bibliography.
+%
+% When the file is being typeset as a \LaTeX\ document there is nothing
+% special going on. The |\encoding| and |\endencoding| commands may set
+% some internal variables, but otherwise they do very little. When the
+% file is being read by \package{fontinst}, things are quite different.
+% Everything between the initial |\relax| and |\encoding| is skipped,
+% and the file is not read further than to the |\endencoding|. Hence
+% the \meta{preamble}, \meta{\LaTeX\ text 1}, and \meta{\LaTeX\ text 2}
+% can contain pretty much anything (with a few exceptions) which is
+% legal in a \LaTeX\ document.
+
+
+\subsection{Encoding specification body syntax}
+
+The \meta{body} part of an encoding specification must comply to a
+much stricter syntax than the rest of the file.
+The full syntax of the \ETX\ format can\footnote{Well, it should be,
+only the manual hasn't been updated for a while now, so some things
+are missing from it. They're all documented in the \package{fontinst}
+sources~\cite{fontinst-pre}, though.} be found in the \package{fontinst}
+manual~\cite{fontinst-man}, but font encoding specifications only need
+a subset of that. The \meta{body} is a sequence of
+\meta{encoding command}s, each of which should be one of the
+following:
+\begin{quote}
+ |\setslot|\marg{glyph name} \meta{slots commands} |\endsetslot|\\
+ |\nextslot|\marg{number}\\
+ |\skipslots|\marg{number}\\
+ |\setfontdimen|\marg{number}\marg{name}\\
+ |\setstr{codingscheme}|\marg{codingscheme name}\\
+ |\needsfontinstversion|\marg{version number}
+\end{quote}
+The |\needsfontinstversion| command is usually placed immediately
+after the |\encoding| command. The \meta{version number} must be at
+least |1.918| for many of the features described in this file to be
+available.
+
+The \meta{slot commands} are likewise a sequence of \meta{slot
+command}s, each of which should be one of the following:
+\begin{quote}
+ |\Unicode|\marg{code point}\marg{name}\\
+ |\comment|\marg{text}\\
+ |\Ligature|\marg{ligtype}\marg{right}\marg{new}\\
+ |\ligature|\marg{ligtype}\marg{right}\marg{new}\\
+ |\oddligature|\marg{note}\marg{ligtype}\marg{right}\marg{new}\\
+ |\nextlarger|\marg{glyph name}\\
+ |\varchar| \meta{varchar commands} |\endvarchar|
+\end{quote}
+where \meta{varchar commands} similarly is a sequence of \meta{varchar
+command}s, each of which should be one of the following:
+\begin{quote}
+ |\varrep|\marg{glyph name}\\
+ |\vartop|\marg{glyph name}\\
+ |\varmid|\marg{glyph name}\\
+ |\varbot|\marg{glyph name}
+\end{quote}
+Finally, one can include any number of \meta{comment command}s between
+any two encoding, slot, or varchar commands. The comment commands are
+\begin{quote}
+ |\begincomment| \meta{\LaTeX\ text} |\endcomment|\\
+ |\label|\marg{reference label}
+\end{quote}
+The \meta{\LaTeX\ text} can be pretty much any \LaTeX\ code that can
+appear in conditional text. (|\begincomment| is either |\iffalse| or
+|\iftrue| depending on whether the encoding specification is
+processed as a data file or typeset as a \LaTeX\ document respectively.
+|\endcomment| is always |\fi|.) The |\label| command is just
+the normal \LaTeX\ |\label| command; when it is used in a \meta{slot
+commands} it references that particular slot (by number and glyph
+name).
+
+
+\subsection{Additional \package{fontdoc} features}
+
+There is an ``in comment paragraph'' form |\textunicode| of the
+|\Unicode| command. Both commands have the same syntax, but
+|\textunicode| is only allowed in ``comment'' contexts. A typical use
+of |\textunicode| is
+\begin{quote}
+ |\comment{An |\dots\\
+ \quad\dots| this is \textunicode{2012}{FIGURE DASH}; in |\dots\\
+ |}|
+\end{quote}
+which is typeset as
+\begin{quote}
+ An \dots\ this is \texttt{U+2012} (\textsc{figure dash}); in \dots
+\end{quote}
+
+The \package{fontdoc} package inputs a configuration file
+\texttt{fontdoc.cfg} if that exists. This can be used to pass
+additional options to the package. The only currently available
+options that this could be of interest for are the \texttt{hypertex}
+and \texttt{pdftex} options, which hyperlinks each \texttt{U+}\dots\
+generated by |\Unicode| or |\textunicode| (using Hyper\TeX\ or
+pdf\TeX\ conventions\footnote{One could just as well do the same
+thing using some other convention if a suitable definition of
+\cs{FD@codepoint} is included in \texttt{fontdoc.cfg}. See the
+\package{fontinst} sources~\cite{fontinst-pre} for more details.}
+respectively) to a corresponding glyph image on the Unicode consortium
+website. To use this feature one should put the line
+\begin{quote}
+ |\ExecuteOptions{hypertex}|
+\end{quote}
+or
+\begin{quote}
+ |\ExecuteOptions{pdftex}|
+\end{quote}
+in the \texttt{fontdoc.cfg} file. \emph{Please} do not include this
+option in the |\usepackage|\nolinebreak[1]|{fontdoc}| of an encoding
+specification file as that can be a severe annoyance for people whose
+\TeX\ program or DVI viewers do not support the necessary extensions.
+% Hyper\TeX\ |\special|s.
+
+
+\section{Font encoding ratification}
+
+This section describes a suggested ratification process for font
+encoding specifications. As there are fewer technical matters that
+impose restrictions on what it may look like, it is probably more
+subjective than the other parts of this paper.
+
+\medskip
+
+A specification in the process of being ratified can be in one of
+three different stages: \emph{draft}, \emph{beta}, or \emph{final}.
+Initially the specification is in the draft stage, during which it
+will be scrutinized and can be subject to major changes. A
+specification which is in the beta stage has got a formal approval
+but the encoding in question may still be subject to some minor
+changes if weighty arguments present themselves. Once the
+specification has reached the final stage, the encoding may not
+change at all.
+
+
+\subsection{Getting to the draft stage}
+
+The process of taking an encoding to the draft stage can be
+summarized in the following steps. Being in the draft stage doesn't
+really say anything about whether the encoding is in any way correct
+or useful, except in that some people (the encoding proposers)
+believe it is and are willing to spend some time on ratifying it.
+
+\paragraph{Write an encoding specification} The first step is to
+write a specification for the font encoding in question. This
+document must not only technically describe the encoding but also
+explain what the encoding is for and why it was created. See
+Subsection~\ref{Ssec:Structure} for details on how the document is
+preferably organised.
+
+\paragraph{Request an encoding name} The second step is to write to
+the \LaTeX3 project and request a \LaTeX\ encoding name for the
+encoding. This mail should be in the form of a \LaTeX\ bug report, it
+must be sent to
+\begin{quote}
+ \href{mailto:latex-bugs@latex-project.org}%
+ {\texttt{latex-bugs@latex-project.org}},
+\end{quote}
+and it must include the encoding specification file. Suggestions for
+an encoding name are appreciated, but not necessarily accepted.
+The purpose of this mail is \emph{not} to get an approval of the
+encoding, but only to have a reasonable name assigned to it.
+
+\paragraph{Upload the specification to CTAN} The third step is make
+the encoding specification publicly available by uploading it to
+CTAN. Encoding specifications are collected in the
+\begin{quote}
+ \ctanref{info/encodings}{\texttt{info/encodings}}
+\end{quote}
+directory (which should also contain the most recent version of this
+paper). The name of the uploaded file should be
+\meta{encoding name}\texttt{draft.etx}. The reason for this naming is
+that it must be clear that the specification has not yet been ratified.
+
+\paragraph{Announce the encoding} When the upload has been confirmed,
+it is time to announce the encoding by posting a message about it to
+the relevant forums. Most important is the \texttt{tex-fonts} mailing
+list, since that is where new encodings should be debated. Messages
+should also be posted to the \texttt{comp.text.tex} newsgroup and any
+forums related to the intended use of the encoding: an encoding for
+Sanskrit should be announced on Indian \TeX\ users forums, an
+encoding for printing chess positions should be announced on some
+chess-with-\TeX\ user forum, etc.; in the extent that such forums exist.
+
+The full address of the \texttt{tex-fonts} mailing list is
+\begin{quote}
+ \texttt{tex-fonts@math.utah.edu}
+\end{quote}
+This list rejects postings from non-members, so you need to subscribe
+to it before you can post your announcement. This is done by sending
+a `subscribe me' mail to
+\begin{quote}
+ \href{mailto:tex-fonts-request@math.utah.edu}
+ {\texttt{tex-fonts-request@math.utah.edu}}
+\end{quote}
+The list archives can be found at
+\begin{quote}
+ \href{http://www.math.utah.edu/mailman/listinfo/tex-fonts}
+ {\textsc{http:}/\slash \texttt{www.math.utah.edu}\slash
+ \texttt{mailman}\slash \texttt{listinfo}\slash
+ \texttt{tex-fonts}}
+\end{quote}
+A tip is to read through the messages from a couple of months
+before you write up your announcement, as that should help you get
+acquainted with the normal style on the list. Please do not send
+messages encoded in markup languages (notably, \textsmaller{HTML},
+\textsmaller{XML}, and word processor formats) to the list.
+
+\paragraph{Experimental encodings} There is a point in going through
+the above procedure even for experimental encodings, i.e., encodings
+whose names start with an \texttt{E}. Of course there is no idea in
+ratifying a specification of an experimental encoding, as it is very
+likely to frequently change, but having a proper name assigned to the
+encoding and uploading its specification to CTAN makes it much simpler
+for other people to learn about and make references to the encoding.
+
+
+\subsection{From draft to beta stage}
+
+The main difference between a draft and beta stage specification
+respectively is that beta stage specifications have been scrutinized
+by other people and found to be free of errors. The practical
+implementation of this is that a debate is held (in the normal
+anarchical manner of mailing list debates) on the \texttt{tex-fonts}
+mailing list. In particular the following aspects of the
+specification should be checked:
+\begin{enumerate}
+ \item \emph{Is the encoding technically correct?}
+ There are many factors which affect what \TeX\ does and it is
+ easy to overlook some. (The \cs{lccode}s seem to be particularly
+ troublesome, in this respect.) Sometimes fonts simply cannot work
+ as an encoding specifies they should and it is important that
+ such defects in the encoding are discovered on an early stage.
+ \item \emph{Are there any errors in the specification?}
+ A font encoding specification is largely a table and typos are
+ easy to make. Proof-reading may be boring, but it is very, very
+ important.
+ \item \emph{Is the specification sufficiently precise?}
+ Are there any omissions, ambiguities, inaccuracies, or completely
+ irrelevant material in the specification? There shouldn't be.
+\end{enumerate}
+During the debate, the encoding proposers should hear what other
+people have to say about the encoding draft, revise it accordingly
+when some flaw is pointed out, and upload the revised version. This
+cycle may well have to be repeated several times before everyone's
+content. It is worth pointing out that in practice the debate should
+turn out to be more of a collective authoring of the specification
+than a defense of its validity. There is no point in going into it
+expecting the worst.
+
+Unfortunately, it might happen that there never is a complete agreement
+on an encoding specification---depending on what side on takes, either
+the encoding proposers refuse to correct obvious flaws in it, or someone
+on the list insists that there is a flaw although there is obviously
+not---but hopefully that will never happen. If it anyway does happen
+then the person objecting should send a mail whose subject contains the
+phrase "formal protest against XXX encoding" (with XXX replaced by
+whatever the encoding is called) to the list. Then it will be up to
+the powers that be to decide on the fate of the encoding (see below).
+
+\paragraph{Summarize the debate} When the debate on the encoding is
+over---e.g.\ a month after anyone last posted anything new on the
+subject---then the encoding proposers should summarize the debate on
+the encoding specification draft and post this summary as a follow-up
+on the original mail to \texttt{latex-bugs}. This summary should list
+the changes that have been made to the encoding, what suggestions there
+were for changes which have not been included, and whether there were
+any formal protests against the encoding. The summary should also explain
+what the proposers want to have be done with the encoding. In the
+usual case this is having it advanced to beta stage, but the proposers
+might alternatively at this point have reached the conclusion that the
+encoding wasn't such a good idea to start with and therefore withdraw
+it, possibly to come again later with a different proposal.
+
+In response to this summary, the \LaTeX-project people may do one of
+three things:
+\begin{itemize}
+ \item
+ If the proposers wants the encoding specification advanced and
+ there are no formal protests against this, then the encoding
+ should be advanced to the beta stage. The \LaTeX-project
+ people do this by adding the encoding to the list of approved
+ (beta or final stage) encodings that they [presumably] maintain.
+ \item
+ If the proposers want to withdraw the encoding specification
+ then the name assigned to it should once again be made available
+ for use for other encodings.
+ \item
+ If the proposers want the encoding specification advanced but
+ there is some formal protest against this, then the entire matter
+ should be handed over to some suitable authority, as a suggestion
+ some technical TUG committee, for resolution.
+\end{itemize}
+
+
+\paragraph{Update the specification on CTAN} When the specification
+has reached the beta stage, its file on CTAN should be updated to say
+so. In particular the file name should be changed from \meta{encoding
+name}\texttt{draft.etx} to \meta{encoding name}\texttt{spec.etx}.
+
+
+\paragraph{Modifying beta stage encodings} If a beta stage encoding is
+modified then the revised specification should go through the above
+procedure of ratification again before it can replace the previous
+\meta{encoding name}\texttt{spec.etx} file on CTAN. The revised
+version should thus initially be uploaded as \meta{encoding
+name}\texttt{draft.etx}, reannounced, and redebated. It can however
+be expected that such debates will not be as extensive as the
+original debates.
+
+
+\subsection{From beta stage to final stage}
+
+The requirements for going from beta stage to final stage are more
+about showing that the encoding has reached a certain maturity than
+about demonstrating any technical merits of it. The main difference in
+usefulness between a beta stage encoding and a final stage encoding is
+that the latter can be considered safe for archival purposes, whereas
+one should have certain reservations against such use of beta stage
+encodings.
+
+It seems reasonable that the following conditions should have to be
+fulfilled before a beta stage encoding can be made a final stage
+encoding:
+\begin{itemize}
+ \item At least one year must have passed since the last change was
+ made to the specification.
+ \item At least two people other than the proposer must have
+ succeeded in implemented the encoding in a font.
+\end{itemize}
+It is quite possible that some condition should be added or some of
+the above conditions reformulated.
+
+
+% References updated 2004/08/07.
+\begin{thebibliography}{???}
+\bibitem{ATN5013}
+ Adobe Systems Incorporated:
+ \textit{Adobe Standard Cyrillic Font Specification},
+ Adobe Technical Note \#5013, 1998;
+ \href{http://partners.adobe.com/asn/developer/pdfs/tn/%
+ 5013.Cyrillic_Font_Spec.pdf}{\textsc{http}:/\slash
+ \texttt{partners.adobe.com}\slash \texttt{asn}\slash
+ \texttt{developer}\slash \texttt{pdfs}\slash \texttt{tn}\slash
+ \texttt{5013.Cyrillic\_Font\_Spec.pdf}}.
+\bibitem{AGL}
+ Adobe Systems Incorporated: \textit{Adobe Glyph List},
+ text file, 1998,
+ \href{http://partners.adobe.com/asn/developer/type/glyphlist.txt}
+ {\textsc{http}:/\slash \texttt{partners.adobe.com}\slash
+ \texttt{asn}\slash \texttt{developer}\slash \texttt{type}\slash
+ \texttt{glyphlist.txt}}.
+\bibitem{unicodesign}
+ Adobe Systems Incorporated:
+ \textit{Adobe Solutions Network: Unicode and Glyph Names},
+ web page, 1998,
+ \href{http://partners.adobe.com/asn/developer/type/unicodegn.html}
+ {\textsc{http}:/\slash \texttt{partners.adobe.com}\slash
+ \texttt{asn}\slash \texttt{developer}\slash \texttt{type}\slash
+ \texttt{unicodegn.html}}.
+\bibitem{ClasenVieth}
+ Matthias Clasen and Ulrik Vieth:
+ \textit{Towards a new Math Font Encoding for (La)TeX},
+ March 1998, presented at EuroTeX'98;
+ \href{http://tug.org/twg/mfg/papers/current/mfg-euro-all.ps.gz}
+ {\textsc{http}:/\slash \texttt{tug.org}\slash \texttt{twg}\slash
+ \texttt{mfg}\slash \texttt{papers}\slash \texttt{current}\slash
+ \texttt{mfg-euro-all.ps.gz}}.
+\bibitem{fontinst-man}
+ Alan Jeffrey, Rowland McDonnell, Ulrik Vieth, and Lars Hellstr\"om:
+ \textit{\package{fontinst}---font installation software for \TeX}
+ (manual), 2004,
+ \ctanref{fonts/utilities/fontinst/doc/fontinst.tex}{%
+ \textsc{ctan}:\discretionary{}{}{\thinspace}%
+ \texttt{fonts}\slash \texttt{utilities}\slash
+ \texttt{fontinst}\slash \texttt{doc}\slash \texttt{fontinst.tex}}.
+% \bibitem{fontinst}
+% Alan Jeffrey, Sebastian Rahtz, and Ulrik Vieth:
+% \textit{The \package{fontinst} utility}, documented source code,
+% v\,1.801,
+% \ctanref{fonts/utilities/fontinst/source}{%
+% \textsc{ctan}:\discretionary{}{}{\thinspace}%
+% \texttt{fonts}\slash \texttt{utilities}\slash
+% \texttt{fontinst}\slash \texttt{source}/}.
+\bibitem{fontinst-pre}
+ Alan Jeffrey, Sebastian Rahtz, Ulrik Vieth, and Lars Hellstr\"om:
+ \textit{The \package{fontinst} utility}, documented source code,
+ v\,1.9xx,
+ \ctanref{fonts/utilities/fontinst-prerelease/source}{%
+ \textsc{ctan}:\discretionary{}{}{\thinspace}%
+ \texttt{fonts}\slash \texttt{utilities}\slash
+ \texttt{fontinst}\slash \texttt{source}/}.
+\bibitem{TeXbook}
+ Donald E.\ Knuth, Duane Bibby (illustrations): \textit{The \TeX book},
+ Ad\-di\-son--Wes\-ley, 1991;
+ volume A of \textit{Computers and typesetting}.
+\bibitem{LaTeXCompanion}
+ Frank Mittelbac and Michel Goossens, with Johannes Braams,
+ David Carlisle, and Chris Rowley:
+ \textit{The \LaTeX\ Companion} (second edition),
+ Ad\-di\-son--Wes\-ley, 2004; ISBN~0-201-36299-6.
+\bibitem{Omega-doc}
+ John Plaice and Yannis Haralambous:
+ \textit{Draft documentation for the Omega system},
+ version~1.12, 1999;
+ \href{http://omega.cse.unsw.edu.au:8080/doc-1.12.ps}{%
+ \textsc{http:}/\slash \texttt{omega.cse.unsw.edu.au:8080}\slash
+ \texttt{doc-1.12.ps}}.
+% \textsc{ctan}:\discretionary{}{}{\thinspace}%
+% \texttt{systems}\slash \texttt{omega}\slash
+% \texttt{omega-doc-1.8.tar.gz}.
+\bibitem{Vieth2001}
+ Ulrik Vieth:
+ \textit{Math typesetting in \TeX: The~good, the~bad, the~ugly},
+ to appear in the proceedings of Euro\TeX\ 2001;
+ \href{http://www.ntg.nl/eurotex/vieth.pdf}{%
+ \textsc{http}:/\slash \texttt{www.ntg.nl}\slash
+ \texttt{eurotex}\slash \texttt{vieth.pdf}}.
+\end{thebibliography}
+
+
+\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/fontinst/base/encspecs/omxdraft.etx b/Master/texmf-dist/doc/fontinst/base/encspecs/omxdraft.etx
new file mode 100644
index 00000000000..efccabde857
--- /dev/null
+++ b/Master/texmf-dist/doc/fontinst/base/encspecs/omxdraft.etx
@@ -0,0 +1,985 @@
+\documentclass[twocolumn]{article}
+\usepackage[specification]{fontdoc}[2001/06/01]
+
+% \usepackage[T1]{fontenc}
+\DeclareTextCommandDefault{\textvisiblespace}{%
+ \mbox{\kern.06em\vrule height.3ex}%
+ \vbox{\hrule width.3em}%
+ \hbox{\vrule height.3ex\kern.06em}}
+
+\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
+
+\showbranches
+
+\begin{document}
+
+\title{\texttt{OMX} encoding draft specification}
+\author{Lars Hellstr\"om}
+\date{2001/10/20}
+\maketitle
+
+\begin{abstract}
+ The \TeX\ math extensions (\texttt{OMX}) encoding is a container for
+ most of the ``growing'' characters in the standard math set-up, but
+ that is pretty much the extent of it. Some of the characters occur
+ in ``normal size'' in other encodings; in these cases it is usually
+ a single math command that usually make use of characters in both
+ encodings.
+\end{abstract}
+
+
+\encoding
+
+\begincomment
+\section{Mandatory characters}
+
+\subsection{Delimiters}
+\endcomment
+
+\nextslot{0}
+\setslot{parenleftbig}
+ \Unicode{0028}{LEFT PARENTHESIS}
+ \nextlarger{parenleftBig}
+\endsetslot
+
+\setslot{parenrightbig}
+ \Unicode{0029}{RIGHT PARENTHESIS}
+ \nextlarger{parenrightBig}
+\endsetslot
+
+\setslot{bracketleftbig}
+ \Unicode{005B}{LEFT SQUARE BRACKET}
+ \nextlarger{bracketleftBig}
+\endsetslot
+
+\setslot{bracketrightbig}
+ \Unicode{005D}{RIGHT SQUARE BRACKET}
+ \nextlarger{bracketrightBig}
+\endsetslot
+
+\setslot{floorleftbig}
+ \Unicode{230A}{LEFT FLOOR}
+ \nextlarger{floorleftBig}
+\endsetslot
+
+\setslot{floorrightbig}
+ \Unicode{230B}{RIGHT FLOOR}
+ \nextlarger{floorrightBig}
+\endsetslot
+
+\setslot{ceilingleftbig}
+ \Unicode{2308}{LEFT CEILING}
+ \nextlarger{ceilingleftBig}
+\endsetslot
+
+\setslot{ceilingrightbig}
+ \Unicode{2309}{RIGHT CEILING}
+ \nextlarger{ceilingrightBig}
+\endsetslot
+
+\setslot{braceleftbig}
+ \Unicode{007B}{LEFT CURLY BRACKET}
+ \nextlarger{braceleftBig}
+\endsetslot
+
+\setslot{bracerightbig}
+ \Unicode{007D}{RIGHT CURLY BRACKET}
+ \nextlarger{bracerightBig}
+\endsetslot
+
+\setslot{angleleftbig}
+ \Unicode{2329}{LEFT-POINTING ANGLE BRACKET}
+ \nextlarger{angleleftBig}
+\endsetslot
+
+\setslot{anglerightbig}
+ \Unicode{232A}{RIGHT-POINTING ANGLE BRACKET}
+ \nextlarger{anglerightBig}
+\endsetslot
+
+\setslot{barex}
+ \Unicode{007C}{VERTICAL LINE}
+ \comment{This is used by the \cs{vert} command. When not accessed
+ as a delimiter, this character may be much shorter than one
+ would expect.}
+ \varchar
+ \varrep{barex}
+ \endvarchar
+\endsetslot
+
+\setslot{bardblex}
+ \Unicode{2016}{DOUBLE VERTICAL LINE}
+ \comment{This is used by the \cs{Vert} command. When not accessed
+ as a delimiter, this character may be much shorter than one
+ would expect.}
+ \varchar
+ \varrep{bardblex}
+ \endvarchar
+\endsetslot
+
+\setslot{slashbig}
+ \Unicode{2215}{DIVISION SLASH}
+ \comment{Although this character is normally accessed via \TeX's
+ growing delimiter mechanism, it is not used as such in formulae,
+ but as a large division slash. Since the use is unambigously for
+ division and the like, it would be inaccurate to identify this
+ character with \textunicode{002F}{SOLIDUS}.}
+ \nextlarger{slashBig}
+\endsetslot
+
+\setslot{backslashbig}
+ \Unicode{005C}{REVERSE SOLIDUS}
+ \comment{This is \TeX's \cs{backslash} (use for ``double coset''),
+ not \cs{setminus}, and hence it is not
+ \textunicode{2216}{SET MINUS}.}
+ \nextlarger{backslashBig}
+\endsetslot
+
+\nextslot{62}
+\setslot{braceex}
+ \Unicode{007C}{VERTICAL LINE}
+ \comment{This is used by the \cs{bracevert} command.}
+ \label{braceex}
+ \varchar
+ \varrep{braceex}
+ \endvarchar
+ \comment{This slot contains the repeatable part of a extensible
+ brace delimiter. In the standard set-up, the extensible recipes of
+ slots~\ref{bracelefttp}, \ref{bracerighttp}, \ref{braceleftbt},
+ \ref{bracerightbt}, \ref{parenleftbt}, and \ref{parenrightbt} all
+ make use of this slot.}
+\endsetslot
+
+\nextslot{"42}
+\setslot{parenleftex}
+ \Unicode{007C}{VERTICAL LINE}
+ \comment{As astonishing as it may seem, there is no command which
+ accesses this slot. The glyph is similar to that in
+ slot~\ref{braceex}, but shifted to the left.}
+ \varchar
+ \varrep{parenleftex}
+ \endvarchar
+\endsetslot
+
+\setslot{parenrightex}
+ \Unicode{007C}{VERTICAL LINE}
+ \comment{As astonishing as it may seem, there is no command which
+ accesses this slot. The glyph is similar to that in
+ slot~\ref{braceex}, but shifted to the right.}
+ \varchar
+ \varrep{parenrightex}
+ \endvarchar
+\endsetslot
+
+\nextslot{"7A}
+\setslot{bracehtipdownleft}
+ \comment{This is \cs{braceld}, a tip (pointing left, bending down)
+ used to build over- and underbraces.}
+\endsetslot
+
+\setslot{bracehtipdownright}
+ \comment{This is \cs{bracerd}, a tip (pointing right, bending down)
+ used to build over- and underbraces.}
+\endsetslot
+
+\setslot{bracehtipupleft}
+ \comment{This is \cs{bracelu}, a tip (pointing left, bending up)
+ used to build over- and underbraces.}
+\endsetslot
+
+\setslot{bracehtipupright}
+ \comment{This is \cs{braceru}, a tip (pointing right, bending up)
+ used to build over- and underbraces.}
+\endsetslot
+
+
+
+\begincomment
+\subsection{Text style operators}
+
+With the exception of the integrals, all the following characters
+should be \textsc{n-ary \dots}, but some cases there are no such
+variants defined in Unicode.
+\endcomment
+
+\nextslot{"46}
+\setslot{unionsqtext}
+ \Unicode{2294}{SQUARE CUP}
+ \nextlarger{unionsqdisplay}
+\endsetslot
+
+\skipslots{1}
+\setslot{contintegraltext}
+ \Unicode{222E}{CONTOUR INTEGRAL}
+ \nextlarger{contintegraldisplay}
+\endsetslot
+
+\skipslots{1}
+\setslot{circledottext}
+ \Unicode{2299}{CIRCLED DOT OPERATOR}
+ \nextlarger{circledotdisplay}
+\endsetslot
+
+\skipslots{1}
+\setslot{circleplustext}
+ \Unicode{2295}{CIRCLED PLUS}
+ \nextlarger{circleplusdisplay}
+\endsetslot
+
+\skipslots{1}
+\setslot{circlemultiplytext}
+ \Unicode{2297}{CIRCLED TIMES}
+ \nextlarger{circlemultiplydisplay}
+\endsetslot
+
+\skipslots{1}
+\setslot{summationtext}
+ \Unicode{2211}{N-ARY SUMMATION}
+ \nextlarger{summationdisplay}
+\endsetslot
+
+\setslot{producttext}
+ \Unicode{220F}{N-ARY PRODUCT}
+ \nextlarger{productdisplay}
+\endsetslot
+
+\setslot{integraltext}
+ \Unicode{222B}{INTEGRAL}
+ \nextlarger{integraldisplay}
+\endsetslot
+
+\setslot{uniontext}
+ \Unicode{22C3}{N-ARY UNION}
+ \nextlarger{uniondisplay}
+\endsetslot
+
+\setslot{intersectiontext}
+ \Unicode{22C2}{N-ARY INTERSECTION}
+ \nextlarger{intersectiondisplay}
+\endsetslot
+
+\setslot{unionmultitext}
+ \Unicode{228E}{MULTISET UNION}
+ \nextlarger{unionmultidisplay}
+\endsetslot
+
+\setslot{logicalandtext}
+ \Unicode{22C0}{N-ARY LOGICAL AND}
+ \nextlarger{logicalanddisplay}
+\endsetslot
+
+\setslot{logicalortext}
+ \Unicode{22C1}{N-ARY LOGICAL OR}
+ \nextlarger{logicalordisplay}
+\endsetslot
+
+\skipslots{8}
+\setslot{coproducttext}
+ \Unicode{2210}{N-ARY COPRODUCT}
+ \nextlarger{coproductdisplay}
+\endsetslot
+
+
+
+\begincomment
+\subsection{Accents, arrows, and the radical}
+\endcomment
+
+\nextslot{"62}
+\setslot{hatwide}
+ \Unicode{0302}{COMBINING CIRCUMFLEX ACCENT}
+ \nextlarger{hatwider}
+\endsetslot
+
+\skipslots{2}
+
+\setslot{tildewide}
+ \Unicode{0303}{COMBINING TILDE}
+ \nextlarger{tildewider}
+\endsetslot
+
+\nextslot{"70}
+\setslot{radicalbig}
+ \Unicode{221A}{SQUARE ROOT}
+ \nextlarger{radicalBig}
+\endsetslot
+
+\nextslot{"78}
+\setslot{arrowtp}
+ \Unicode{2191}{UPWARDS ARROW}
+ \varchar
+ \vartop{arrowtp}
+ \varrep{arrowvertex}
+ \endvarchar
+\endsetslot
+
+\setslot{arrowbt}
+ \Unicode{2193}{DOWNWARDS ARROW}
+ \varchar
+ \varrep{arrowvertex}
+ \varbot{arrowbt}
+ \endvarchar
+\endsetslot
+
+\nextslot{"7E}
+\setslot{arrowdbltp}
+ \Unicode{21D1}{UPWARDS DOUBLE ARROW}
+ \varchar
+ \vartop{arrowdbltp}
+ \varrep{arrowdblvertex}
+ \endvarchar
+\endsetslot
+
+\setslot{arrowdblbt}
+ \Unicode{21D3}{DOWNWARDS DOUBLE ARROW}
+ \varchar
+ \varrep{arrowdblvertex}
+ \varbot{arrowdblbt}
+ \endvarchar
+\endsetslot
+
+
+
+
+
+
+\begincomment
+\section{Semimandatory characters}
+\endcomment
+
+\nextslot{"3A}
+\setslot{braceleftbt}
+ \comment{This is the \cs{lgroup} delimiter, which looks like a
+ \textunicode{007B}{LEFT CURLY BRACKET} with flat middle section.
+ There does not seem to be such a character in Unicode, but a
+ close approximation would be a narrowed
+ \textunicode{3014}{LEFT TORTOISE SHELL BRACKET}.}
+ \label{braceleftbt}
+ \varchar
+ \vartop{bracelefttp}
+ \varrep{braceex}
+ \varbot{braceleftbt}
+ \endvarchar
+ \comment{The slot contains the curved bottom of a
+ \textunicode{007B}{LEFT CURLY BRACKET}.}
+\endsetslot
+
+\setslot{bracerightbt}
+ \comment{This is the \cs{rgroup} delimiter, which looks like a
+ \textunicode{007D}{RIGHT CURLY BRACKET} with flat middle section.
+ There does not seem to be such a character in Unicode, but a
+ close approximation would be a narrowed
+ \textunicode{3015}{RIGHT TORTOISE SHELL BRACKET}.}
+ \label{bracerightbt}
+ \varchar
+ \vartop{bracerighttp}
+ \varrep{braceex}
+ \varbot{bracerightbt}
+ \endvarchar
+ \comment{The slot contains the curved bottom of a
+ \textunicode{007D}{RIGHT CURLY BRACKET}.}
+\endsetslot
+
+\setslot{braceleftmid}
+ \Unicode{007C}{VERTICAL LINE}
+ \comment{This is used by the \cs{arrowvert} command.}
+ \varchar
+ \varrep{arrowvertex}
+ \endvarchar
+ \comment{The slot contains the middle part of a
+ \textunicode{007B}{LEFT CURLY BRACKET}.}
+\endsetslot
+
+\setslot{bracerightmid}
+ \Unicode{2016}{DOUBLE VERTICAL LINE}
+ \comment{This is used by the \cs{Arrowvert} command.}
+ \varchar
+ \varrep{arrowdblvertex}
+ \endvarchar
+ \comment{The slot contains the middle part of a
+ \textunicode{007D}{RIGHT CURLY BRACKET}.}
+\endsetslot
+
+\skipslots{1}
+
+\setslot{arrowvertex}
+ \Unicode{2195}{UP DOWN ARROW}
+ \varchar
+ \vartop{arrowtp}
+ \varrep{arrowvertex}
+ \varbot{arrowbt}
+ \endvarchar
+ \comment{This slot contains the repeatable middle part of a vertical
+ arrow.}
+\endsetslot
+
+\setslot{parenleftbt}
+ \label{parenleftbt}
+ \comment{This is the \cs{lmoustache} delimiter, whose top half is
+ like \cs{lgroup} and whose bottom half is like \cs{rgroup}.}
+ \varchar
+ \vartop{bracelefttp}
+ \varrep{braceex}
+ \varbot{bracerightbt}
+ \endvarchar
+ \comment{This slot contains the curved bottom of a
+ \textunicode{0028}{LEFT PARENTHESIS}.}
+\endsetslot
+
+\setslot{parenrightbt}
+ \label{parenrightbt}
+ \comment{This is the \cs{rmoustache} delimiter, whose top half is
+ like \cs{rgroup} and whose bottom half is like \cs{lgroup}.}
+ \varchar
+ \vartop{bracerighttp}
+ \varrep{braceex}
+ \varbot{braceleftbt}
+ \endvarchar
+ \comment{This slot contains the curved bottom of a
+ \textunicode{0029}{RIGHT PARENTHESIS}.}
+\endsetslot
+
+\nextslot{"77}
+\setslot{arrowdblvertex}
+ \Unicode{21D5}{UP DOWN DOUBLE ARROW}
+ \varchar
+ \vartop{arrowdbltp}
+ \varbot{arrowdblbt}
+ \varrep{arrowdblvertex}
+ \endvarchar
+ \comment{This slot contains the repeatable middle part of a vertical
+ double arrow.}
+\endsetslot
+
+
+
+
+
+\begincomment
+\section{Ordinary characters}
+\endcomment
+
+
+\begincomment
+\subsection{\texttt{Big} size delimiters}
+\endcomment
+
+\nextslot{16}
+\setslot{parenleftBig}
+ \Unicode{0028}{LEFT PARENTHESIS}
+ \nextlarger{parenleftbigg}
+\endsetslot
+
+\setslot{parenrightBig}
+ \Unicode{0029}{RIGHT PARENTHESIS}
+ \nextlarger{parenrightbigg}
+\endsetslot
+
+\nextslot{46}
+\setslot{slashBig}
+ \Unicode{2215}{DIVISION SLASH}
+ \nextlarger{slashbigg}
+\endsetslot
+
+\setslot{backslashBig}
+ \Unicode{005C}{REVERSE SOLIDUS}
+ \nextlarger{backslashbigg}
+\endsetslot
+
+\nextslot{"44}
+\setslot{angleleftBig}
+ \Unicode{2329}{LEFT-POINTING ANGLE BRACKET}
+ \nextlarger{angleleftbigg}
+\endsetslot
+
+\setslot{anglerightBig}
+ \Unicode{232A}{RIGHT-POINTING ANGLE BRACKET}
+ \nextlarger{anglerightbigg}
+\endsetslot
+
+\nextslot{"68}
+\setslot{bracketleftBig}
+ \Unicode{005B}{LEFT SQUARE BRACKET}
+ \nextlarger{bracketleftbigg}
+\endsetslot
+
+\setslot{bracketrightBig}
+ \Unicode{005D}{RIGHT SQUARE BRACKET}
+ \nextlarger{bracketrightbigg}
+\endsetslot
+
+\setslot{floorleftBig}
+ \Unicode{230A}{LEFT FLOOR}
+ \nextlarger{floorleftbigg}
+\endsetslot
+
+\setslot{floorrightBig}
+ \Unicode{230B}{RIGHT FLOOR}
+ \nextlarger{floorrightbigg}
+\endsetslot
+
+\setslot{ceilingleftBig}
+ \Unicode{2308}{LEFT CEILING}
+ \nextlarger{ceilingleftbigg}
+\endsetslot
+
+\setslot{ceilingrightBig}
+ \Unicode{2309}{RIGHT CEILING}
+ \nextlarger{ceilingrightbigg}
+\endsetslot
+
+\setslot{braceleftBig}
+ \Unicode{007B}{LEFT CURLY BRACKET}
+ \nextlarger{braceleftbigg}
+\endsetslot
+
+\setslot{bracerightBig}
+ \Unicode{007D}{RIGHT CURLY BRACKET}
+ \nextlarger{bracerightbigg}
+\endsetslot
+
+
+
+
+
+\begincomment
+\subsection{\texttt{bigg} size delimiters}
+\endcomment
+
+\nextslot{18}
+\setslot{parenleftbigg}
+ \Unicode{0028}{LEFT PARENTHESIS}
+ \nextlarger{parenleftBigg}
+\endsetslot
+
+\setslot{parenrightbigg}
+ \Unicode{0029}{RIGHT PARENTHESIS}
+ \nextlarger{parenrightBigg}
+\endsetslot
+
+\setslot{bracketleftbigg}
+ \Unicode{005B}{LEFT SQUARE BRACKET}
+ \nextlarger{bracketleftBigg}
+\endsetslot
+
+\setslot{bracketrightbigg}
+ \Unicode{005D}{RIGHT SQUARE BRACKET}
+ \nextlarger{bracketrightBigg}
+\endsetslot
+
+\setslot{floorleftbigg}
+ \Unicode{230A}{LEFT FLOOR}
+ \nextlarger{floorleftBigg}
+\endsetslot
+
+\setslot{floorrightbigg}
+ \Unicode{230B}{RIGHT FLOOR}
+ \nextlarger{floorrightBigg}
+\endsetslot
+
+\setslot{ceilingleftbigg}
+ \Unicode{2308}{LEFT CEILING}
+ \nextlarger{ceilingleftBigg}
+\endsetslot
+
+\setslot{ceilingrightbigg}
+ \Unicode{2309}{RIGHT CEILING}
+ \nextlarger{ceilingrightBigg}
+\endsetslot
+
+\setslot{braceleftbigg}
+ \Unicode{007B}{LEFT CURLY BRACKET}
+ \nextlarger{braceleftBigg}
+\endsetslot
+
+\setslot{bracerightbigg}
+ \Unicode{007D}{RIGHT CURLY BRACKET}
+ \nextlarger{bracerightBigg}
+\endsetslot
+
+\setslot{angleleftbigg}
+ \Unicode{2329}{LEFT-POINTING ANGLE BRACKET}
+ \nextlarger{angleleftBigg}
+\endsetslot
+
+\setslot{anglerightbigg}
+ \Unicode{232A}{RIGHT-POINTING ANGLE BRACKET}
+ \nextlarger{anglerightBigg}
+\endsetslot
+
+\setslot{slashbigg}
+ \Unicode{2215}{DIVISION SLASH}
+ \nextlarger{slashBigg}
+\endsetslot
+
+\setslot{backslashbigg}
+ \Unicode{005C}{REVERSE SOLIDUS}
+ \nextlarger{backslashBigg}
+\endsetslot
+
+
+
+\begincomment
+\subsection{\texttt{Bigg} size delimiters}
+\endcomment
+
+\nextslot{32}
+\setslot{parenleftBigg}
+ \Unicode{0028}{LEFT PARENTHESIS}
+ \nextlarger{parenlefttp}
+\endsetslot
+
+\setslot{parenrightBigg}
+ \Unicode{0029}{RIGHT PARENTHESIS}
+ \nextlarger{parenrighttp}
+\endsetslot
+
+\setslot{bracketleftBigg}
+ \Unicode{005B}{LEFT SQUARE BRACKET}
+ \nextlarger{bracketlefttp}
+\endsetslot
+
+\setslot{bracketrightBigg}
+ \Unicode{005D}{RIGHT SQUARE BRACKET}
+ \nextlarger{bracketrighttp}
+\endsetslot
+
+\setslot{floorleftBigg}
+ \Unicode{230A}{LEFT FLOOR}
+ \nextlarger{bracketleftbt}
+\endsetslot
+
+\setslot{floorrightBigg}
+ \Unicode{230B}{RIGHT FLOOR}
+ \nextlarger{bracketrightbt}
+\endsetslot
+
+\setslot{ceilingleftBigg}
+ \Unicode{2308}{LEFT CEILING}
+ \nextlarger{bracketleftex}
+\endsetslot
+
+\setslot{ceilingrightBigg}
+ \Unicode{2309}{RIGHT CEILING}
+ \nextlarger{bracketrightex}
+\endsetslot
+
+\setslot{braceleftBigg}
+ \Unicode{007B}{LEFT CURLY BRACKET}
+ \nextlarger{bracelefttp}
+\endsetslot
+
+\setslot{bracerightBigg}
+ \Unicode{007D}{RIGHT CURLY BRACKET}
+ \nextlarger{bracerighttp}
+\endsetslot
+
+\setslot{angleleftBigg}
+ \Unicode{2329}{LEFT-POINTING ANGLE BRACKET}
+\endsetslot
+
+\setslot{anglerightBigg}
+ \Unicode{232A}{RIGHT-POINTING ANGLE BRACKET}
+\endsetslot
+
+\setslot{slashBigg}
+ \Unicode{2215}{DIVISION SLASH}
+\endsetslot
+
+\setslot{backslashBigg}
+ \Unicode{005C}{REVERSE SOLIDUS}
+\endsetslot
+
+
+
+\begincomment
+\subsection{Extensible delimiters}
+\endcomment
+
+\nextslot{48}
+\setslot{parenlefttp}
+ \comment{This slot contains the curved top of a
+ \textunicode{0028}{LEFT PARENTHESIS}.}
+ \varchar
+ \vartop{parenlefttp}
+ \varrep{parenleftex}
+ \varbot{parenleftbt}
+ \endvarchar
+\endsetslot
+
+\setslot{parenrighttp}
+ \comment{This slot contains the curved top of a
+ \textunicode{0029}{RIGHT PARENTHESIS}.}
+ \varchar
+ \vartop{parenrighttp}
+ \varrep{parenrightex}
+ \varbot{parenrightbt}
+ \endvarchar
+\endsetslot
+
+\setslot{bracketlefttp}
+ \comment{This slot contains the corner top of a
+ \textunicode{005B}{LEFT SQUARE BRACKET}.}
+ \varchar
+ \vartop{bracketlefttp}
+ \varrep{bracketleftex}
+ \varbot{bracketleftbt}
+ \endvarchar
+\endsetslot
+
+\setslot{bracketrighttp}
+ \comment{This slot contains the corner top of a
+ \textunicode{005D}{RIGHT SQUARE BRACKET}.}
+ \varchar
+ \vartop{bracketrighttp}
+ \varrep{bracketrightex}
+ \varbot{bracketrightbt}
+ \endvarchar
+\endsetslot
+
+\setslot{bracketleftbt}
+ \comment{This slot contains the corner bottom of a
+ \textunicode{005B}{LEFT SQUARE BRACKET}, but it serves as the
+ final slot in the chain of larger sizes of
+ \textunicode{230A}{LEFT FLOOR}.}
+ \varchar
+ \varrep{bracketleftex}
+ \varbot{bracketleftbt}
+ \endvarchar
+\endsetslot
+
+\setslot{bracketrightbt}
+ \comment{This slot contains the corner bottom of a
+ \textunicode{005D}{RIGHT SQUARE BRACKET}, but it serves as the
+ final slot in the chain of larger sizes of
+ \textunicode{230B}{RIGHT FLOOR}.}
+ \varchar
+ \varrep{bracketrightex}
+ \varbot{bracketrightbt}
+ \endvarchar
+\endsetslot
+
+\setslot{bracketleftex}
+ \comment{This slot contains the repeatable middle part of a
+ \textunicode{005B}{LEFT SQUARE BRACKET}, but it serves as the
+ final slot in the chain of larger sizes of
+ \textunicode{2308}{LEFT CEILING}.}
+ \varchar
+ \vartop{bracketlefttp}
+ \varrep{bracketleftex}
+ \endvarchar
+\endsetslot
+
+\setslot{bracketrightex}
+ \comment{This slot contains the repeatable middle part of a
+ \textunicode{005D}{RIGHT SQUARE BRACKET}, but it serves as the
+ final slot in the chain of larger sizes of
+ \textunicode{2309}{RIGHT CEILING}.}
+ \varchar
+ \vartop{bracketrighttp}
+ \varrep{bracketrightex}
+ \endvarchar
+\endsetslot
+
+\setslot{bracelefttp}
+ \comment{This slot contains the curved top of a
+ \textunicode{007B}{LEFT CURLY BRACKET}.}
+ \label{bracelefttp}
+ \varchar
+ \vartop{bracelefttp}
+ \varrep{braceex}
+ \varmid{braceleftmid}
+ \varbot{braceleftbt}
+ \endvarchar
+\endsetslot
+
+\setslot{bracerighttp}
+ \comment{This slot contains the curved top of a
+ \textunicode{007D}{RIGHT CURLY BRACKET}.}
+ \label{bracerighttp}
+ \varchar
+ \vartop{bracerighttp}
+ \varrep{braceex}
+ \varmid{bracerightmid}
+ \varbot{bracerightbt}
+ \endvarchar
+\endsetslot
+
+
+
+
+
+\begincomment
+\subsection{Display style operators}
+\endcomment
+
+\nextslot{"47}
+\setslot{unionsqdisplay}
+ \Unicode{2294}{SQUARE CUP}
+\endsetslot
+
+\skipslots{1}
+\setslot{contintegraldisplay}
+ \Unicode{222E}{CONTOUR INTEGRAL}
+\endsetslot
+
+\skipslots{1}
+\setslot{circledotdisplay}
+ \Unicode{2299}{CIRCLED DOT OPERATOR}
+\endsetslot
+
+\skipslots{1}
+\setslot{circleplusdisplay}
+ \Unicode{2295}{CIRCLED PLUS}
+\endsetslot
+
+\skipslots{1}
+\setslot{circlemultiplydisplay}
+ \Unicode{2297}{CIRCLED TIMES}
+\endsetslot
+
+\skipslots{8}
+\setslot{summationdisplay}
+ \Unicode{2211}{N-ARY SUMMATION}
+\endsetslot
+
+\setslot{productdisplay}
+ \Unicode{220F}{N-ARY PRODUCT}
+\endsetslot
+
+\setslot{integraldisplay}
+ \Unicode{222B}{INTEGRAL}
+\endsetslot
+
+\setslot{uniondisplay}
+ \Unicode{22C3}{N-ARY UNION}
+\endsetslot
+
+\setslot{intersectiondisplay}
+ \Unicode{22C2}{N-ARY INTERSECTION}
+\endsetslot
+
+\setslot{unionmultidisplay}
+ \Unicode{228E}{MULTISET UNION}
+\endsetslot
+
+\setslot{logicalanddisplay}
+ \Unicode{22C0}{N-ARY LOGICAL AND}
+\endsetslot
+
+\setslot{logicalordisplay}
+ \Unicode{22C1}{N-ARY LOGICAL OR}
+\endsetslot
+
+\skipslots{1}
+\setslot{coproductdisplay}
+ \Unicode{2210}{N-ARY COPRODUCT}
+\endsetslot
+
+
+
+\begincomment
+\subsection{Accents}
+\endcomment
+
+\nextslot{"63}
+\setslot{hatwider}
+ \Unicode{0302}{COMBINING CIRCUMFLEX ACCENT}
+ \nextlarger{hatwiderr}
+\endsetslot
+
+\setslot{hatwiderr}
+ \Unicode{0302}{COMBINING CIRCUMFLEX ACCENT}
+\endsetslot
+
+\skipslots{1}
+
+\setslot{tildewider}
+ \Unicode{0303}{COMBINING TILDE}
+ \nextlarger{tildewiderr}
+\endsetslot
+
+\setslot{tildewiderr}
+ \Unicode{0303}{COMBINING TILDE}
+\endsetslot
+
+
+\begincomment
+\subsection{Radicals}
+\endcomment
+
+\nextslot{"71}
+\setslot{radicalBig}
+ \Unicode{221A}{SQUARE ROOT}
+ \nextlarger{radicalbigg}
+\endsetslot
+
+\setslot{radicalbigg}
+ \Unicode{221A}{SQUARE ROOT}
+ \nextlarger{radicalBigg}
+\endsetslot
+
+\setslot{radicalBigg}
+ \Unicode{221A}{SQUARE ROOT}
+ \nextlarger{radicalbt}
+\endsetslot
+
+\setslot{radicalbt}
+ \Unicode{221A}{SQUARE ROOT}
+ \varchar
+ \varbot{radicalbt}
+ \vartop{radicaltp}
+ \varrep{radicalvertex}
+ \endvarchar
+\endsetslot
+
+\setslot{radicalvertex}
+ \comment{This is the repeatable, vertically middle part of an
+ extensible \textunicode{221A}{SQUARE ROOT}.}
+\endsetslot
+
+\setslot{radicaltp}
+ \comment{This is the top corner part of an extensible
+ \textunicode{221A}{SQUARE ROOT}.}
+\endsetslot
+
+
+
+
+
+\begincomment
+\section{Fontdimens and codingscheme}
+
+\texttt{OMX} fonts have the necessary fontdimens to serve as a math
+group 3 font.
+\endcomment
+
+\setfontdimen{1}{italicslant} % italic slant
+\setfontdimen{2}{interword} % interword space
+\setfontdimen{3}{stretchword} % interword stretch
+\setfontdimen{4}{shrinkword} % interword shrink
+\setfontdimen{5}{xheight} % x-height
+\setfontdimen{6}{quad} % quad
+\setfontdimen{7}{extraspace} % extra space after .
+
+\setfontdimen{8}{defaultrulethickness} % default rule thickness
+\setfontdimen{9}{bigopspacing1} % bigopspacing 1
+\setfontdimen{10}{bigopspacing2} % bigopspacing 2
+\setfontdimen{11}{bigopspacing3} % bigopspacing 3
+\setfontdimen{12}{bigopspacing4} % bigopspacing 4
+\setfontdimen{13}{bigopspacing5} % bigopspacing 5
+
+\setstr{codingscheme}{TEX MATH EXTENSION}
+
+
+
+
+
+\endencoding
+
+
+\section{Discussion}
+
+
+
+\end{document}
diff --git a/Master/texmf-dist/doc/fontinst/base/encspecs/ot1draft.etx b/Master/texmf-dist/doc/fontinst/base/encspecs/ot1draft.etx
new file mode 100644
index 00000000000..8fbdb57c29c
--- /dev/null
+++ b/Master/texmf-dist/doc/fontinst/base/encspecs/ot1draft.etx
@@ -0,0 +1,1001 @@
+\relax
+\documentclass[twocolumn]{article}
+\usepackage[specification]{fontdoc}[2001/06/01]
+
+\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
+
+\showbranches
+
+\begin{document}
+
+\title{\texttt{OT1} encoding draft specification}
+\author{Lars Hellstr\"om}
+\date{2001/09/09}
+\maketitle
+
+\begin{abstract}
+ The \texttt{OT1} encoding is an attempt to describe the encoding of
+ the text fonts in Donald~E.~Knuth's \emph{Computer Modern} family
+ of fonts~\cite{ComputerModern}. This is an impossibile goal, since
+ these fonts present no less than five different encodings, but they
+ are nontheless largely treated by \LaTeX\ as having identical
+ encodings. Due to the ambiguities this creates, and in view of that
+ the \texttt{T1} encoding supersedes \texttt{OT1} as text font
+ encoding, there is little point in using the text commands for
+ distiguishing mandatory features of \texttt{OT1} from the ordinary.
+
+ \texttt{OT1} is however also used as a math font encoding (to go
+ with \texttt{OML}, \texttt{OMS}, and \texttt{OMX}), and that use is
+ today the by far most important since there is no obvious alternative
+ to the standard math font set-up. Therefore this specification
+ considers a feature of the encoding to be mandatory if it is
+ (i)~necessary for the standard math set-up or (ii)~is a text feature
+ which works for all encoding variants.
+\end{abstract}
+
+\encoding
+\needsfontinstversion{1.918}
+
+
+
+\begincomment
+\section{Encoding variants}
+
+This document aims to record all the encoding variations that are
+present within the set of fonts classified by \LaTeX\ as having the
+\texttt{OT1} encoding. It turns out that they can all be described
+using only two parameters. One of these might be called
+`\textit{ligaturing}' as one factor it affects is how many ligatures
+there will be in the font. The other parameter is best called
+`\textit{italicizing}' as it is different between italic and
+non-italic fonts. Most of the Computer Modern fonts have
+\(\mathit{ligaturing} = 2\) and \(\mathit{italicizing} = 0\).
+
+\endcomment
+\setint{ligaturing}{2}
+\setint{italicizing}{0}
+
+
+\begincomment
+
+
+\section{Mandatory characters}
+
+\subsection{Latin letters}
+\endcomment
+
+\nextslot{16}
+\setslot{dotlessi}
+ \Unicode{0131}{LATIN SMALL LETTER DOTLESS I}
+ \comment{A dotless i `\i', used to produce accented letters such as
+ `\=\i'. It is not used for math.}
+\endsetslot
+
+\setslot{dotlessj}
+ \Unicode{F6BE}{LATIN SMALL LETTER DOTLESS J}
+ \comment{A dotless j `\j', used to produce accented letters such as
+ `\=\j'. It is not used for math. The Unicode standard does not
+ define this character, but Adobe has assigned code point
+ \texttt{U+F6BE} (which is in the private use subarea assigned by
+ Adobe) to it.}
+\endsetslot
+
+\nextslot{25}
+\setslot{germandbls}
+ \Unicode{00DF}{LATIN SMALL LETTER SHARP S}
+ \comment{This slot is not used in math.}
+\endsetslot
+
+\setslot{ae}
+ \Unicode{00E6}{LATIN SMALL LETTER AE}
+ \comment{This slot is not used in math.}
+\endsetslot
+
+\setslot{oe}
+ \Unicode{0153}{LATIN SMALL LIGATURE OE}
+ \comment{This is a single letter, and should not be faked with `oe'.
+ It is not used in math.}
+\endsetslot
+
+\setslot{oslash}
+ \Unicode{00F8}{LATIN SMALL LETTER O WITH STROKE}
+ \comment{This slot is not used in math.}
+\endsetslot
+
+\setslot{AE}
+ \Unicode{00C6}{LATIN CAPITAL LETTER AE}
+ \comment{This slot is not used in math.}
+\endsetslot
+
+\setslot{OE}
+ \Unicode{0152}{LATIN CAPITAL LIGATURE OE}
+ \comment{This is a single letter, and should not be faked with
+ `OE'. It is not used in math.}
+\endsetslot
+
+\setslot{Oslash}
+ \Unicode{00D8}{LATIN CAPITAL LETTER O WITH STROKE}
+ \comment{This slot is not used in math.}
+\endsetslot
+
+
+\nextslot{65}
+\setslot{A}
+ \Unicode{0041}{LATIN CAPITAL LETTER A}
+ \label{A}
+\endsetslot
+
+\setslot{B}
+ \Unicode{0042}{LATIN CAPITAL LETTER B}
+\endsetslot
+
+\setslot{C}
+ \Unicode{0043}{LATIN CAPITAL LETTER C}
+\endsetslot
+
+\setslot{D}
+ \Unicode{0044}{LATIN CAPITAL LETTER D}
+\endsetslot
+
+\setslot{E}
+ \Unicode{0045}{LATIN CAPITAL LETTER E}
+\endsetslot
+
+\setslot{F}
+ \Unicode{0046}{LATIN CAPITAL LETTER F}
+\endsetslot
+
+\setslot{G}
+ \Unicode{0047}{LATIN CAPITAL LETTER G}
+\endsetslot
+
+\setslot{H}
+ \Unicode{0048}{LATIN CAPITAL LETTER H}
+\endsetslot
+
+\setslot{I}
+ \Unicode{0049}{LATIN CAPITAL LETTER I}
+\endsetslot
+
+\setslot{J}
+ \Unicode{004A}{LATIN CAPITAL LETTER J}
+\endsetslot
+
+\setslot{K}
+ \Unicode{004B}{LATIN CAPITAL LETTER K}
+\endsetslot
+
+\setslot{L}
+ \Unicode{004C}{LATIN CAPITAL LETTER L}
+\endsetslot
+
+\setslot{M}
+ \Unicode{004D}{LATIN CAPITAL LETTER M}
+\endsetslot
+
+\setslot{N}
+ \Unicode{004E}{LATIN CAPITAL LETTER N}
+\endsetslot
+
+\setslot{O}
+ \Unicode{004F}{LATIN CAPITAL LETTER O}
+\endsetslot
+
+\setslot{P}
+ \Unicode{0050}{LATIN CAPITAL LETTER P}
+\endsetslot
+
+\setslot{Q}
+ \Unicode{0051}{LATIN CAPITAL LETTER Q}
+\endsetslot
+
+\setslot{R}
+ \Unicode{0052}{LATIN CAPITAL LETTER R}
+\endsetslot
+
+\setslot{S}
+ \Unicode{0053}{LATIN CAPITAL LETTER S}
+\endsetslot
+
+\setslot{T}
+ \Unicode{0054}{LATIN CAPITAL LETTER T}
+\endsetslot
+
+\setslot{U}
+ \Unicode{0055}{LATIN CAPITAL LETTER U}
+\endsetslot
+
+\setslot{V}
+ \Unicode{0056}{LATIN CAPITAL LETTER V}
+\endsetslot
+
+\setslot{W}
+ \Unicode{0057}{LATIN CAPITAL LETTER W}
+\endsetslot
+
+\setslot{X}
+ \Unicode{0058}{LATIN CAPITAL LETTER X}
+\endsetslot
+
+\setslot{Y}
+ \Unicode{0059}{LATIN CAPITAL LETTER Y}
+ \label{Y}
+\endsetslot
+
+\setslot{Z}
+ \Unicode{005A}{LATIN CAPITAL LETTER Z}
+\endsetslot
+
+
+\nextslot{97}
+\setslot{a}
+ \Unicode{0061}{LATIN SMALL LETTER A}
+\endsetslot
+
+\setslot{b}
+ \Unicode{0062}{LATIN SMALL LETTER B}
+\endsetslot
+
+\setslot{c}
+ \Unicode{0063}{LATIN SMALL LETTER C}
+\endsetslot
+
+\setslot{d}
+ \Unicode{0064}{LATIN SMALL LETTER D}
+\endsetslot
+
+\setslot{e}
+ \Unicode{0065}{LATIN SMALL LETTER E}
+\endsetslot
+
+\setslot{f}
+ \Unicode{0066}{LATIN SMALL LETTER F}
+ \ifnumber{\int{ligaturing}}={2}\then
+ \ligature{LIG}{f}{ff}
+ \ligature{LIG}{i}{fi}
+ \ligature{LIG}{l}{fl}
+ \Fi
+\endsetslot
+
+\setslot{g}
+ \Unicode{0067}{LATIN SMALL LETTER G}
+\endsetslot
+
+\setslot{h}
+ \Unicode{0068}{LATIN SMALL LETTER H}
+\endsetslot
+
+\setslot{i}
+ \Unicode{0069}{LATIN SMALL LETTER I}
+\endsetslot
+
+\setslot{j}
+ \Unicode{006A}{LATIN SMALL LETTER J}
+\endsetslot
+
+\setslot{k}
+ \Unicode{006B}{LATIN SMALL LETTER K}
+\endsetslot
+
+\setslot{l}
+ \Unicode{006C}{LATIN SMALL LETTER L}
+\endsetslot
+
+\setslot{m}
+ \Unicode{006D}{LATIN SMALL LETTER M}
+\endsetslot
+
+\setslot{n}
+ \Unicode{006E}{LATIN SMALL LETTER N}
+\endsetslot
+
+\setslot{o}
+ \Unicode{006F}{LATIN SMALL LETTER O}
+\endsetslot
+
+\setslot{p}
+ \Unicode{0070}{LATIN SMALL LETTER P}
+\endsetslot
+
+\setslot{q}
+ \Unicode{0071}{LATIN SMALL LETTER Q}
+\endsetslot
+
+\setslot{r}
+ \Unicode{0072}{LATIN SMALL LETTER R}
+\endsetslot
+
+\setslot{s}
+ \Unicode{0073}{LATIN SMALL LETTER S}
+\endsetslot
+
+\setslot{t}
+ \Unicode{0074}{LATIN SMALL LETTER T}
+\endsetslot
+
+\setslot{u}
+ \Unicode{0075}{LATIN SMALL LETTER U}
+\endsetslot
+
+\setslot{v}
+ \Unicode{0076}{LATIN SMALL LETTER V}
+\endsetslot
+
+\setslot{w}
+ \Unicode{0077}{LATIN SMALL LETTER W}
+\endsetslot
+
+\setslot{x}
+ \Unicode{0078}{LATIN SMALL LETTER X}
+\endsetslot
+
+\setslot{y}
+ \Unicode{0079}{LATIN SMALL LETTER Y}
+\endsetslot
+
+\setslot{z}
+ \Unicode{007A}{LATIN SMALL LETTER Z}
+\endsetslot
+
+
+\begincomment
+\subsection{Greek letters}
+\endcomment
+
+\nextslot{0}
+\setslot{Gamma}
+ \Unicode{0393}{GREEK CAPITAL LETTER GAMMA}
+\endsetslot
+
+\setslot{Delta}
+ \Unicode{0394}{GREEK CAPITAL LETTER DELTA}
+\endsetslot
+
+\setslot{Theta}
+ \Unicode{0398}{GREEK CAPITAL LETTER THETA}
+\endsetslot
+
+\setslot{Lambda}
+ \Unicode{039B}{GREEK CAPITAL LETTER LAMBDA}
+ % Unicode's preferred name for this character seems to be
+ % GREEK CAPITAL LETTER LAMDA, i.e., without the `B'. Why?
+ % GREEK CAPITAL LETTER LAMBDA is listed as an alternative name.
+\endsetslot
+
+\setslot{Xi}
+ \Unicode{039E}{GREEK CAPITAL LETTER XI}
+\endsetslot
+
+\setslot{Pi}
+ \Unicode{03A0}{GREEK CAPITAL LETTER PI}
+\endsetslot
+
+\setslot{Sigma}
+ \Unicode{03A3}{GREEK CAPITAL LETTER SIGMA}
+\endsetslot
+
+\setslot{Upsilon1}
+ \Unicode{03D2}{GREEK UPSILON WITH HOOK SYMBOL}
+ \comment{This is primarily a math character and it is should
+ be visually distinct from the character in slot~\ref{Y}. This is
+ not generally the case for the normal Upsilon
+ \textunicode{03A5}{GREEK CAPITAL LETTER UPSILON}, which is by
+ the way what usually has the glyph name \texttt{Upsilon}.
+ An argument for the latter is however that all the purely
+ mathematical Upsilons that exist in the Unicode standard are
+ described as variants of the non-hook character.}
+\endsetslot
+
+\setslot{Phi}
+ \Unicode{03A6}{GREEK CAPITAL LETTER PHI}
+\endsetslot
+
+\setslot{Psi}
+ \Unicode{03A8}{GREEK CAPITAL LETTER PSI}
+\endsetslot
+
+\setslot{Omega}
+ \Unicode{03A9}{GREEK CAPITAL LETTER OMEGA}
+\endsetslot
+
+
+\begincomment
+\subsection{Digits}
+\endcomment
+
+\nextslot{48}
+\setslot{zero}
+ \Unicode{0030}{DIGIT ZERO}
+\endsetslot
+
+\setslot{one}
+ \Unicode{0031}{DIGIT ONE}
+\endsetslot
+
+\setslot{two}
+ \Unicode{0032}{DIGIT TWO}
+\endsetslot
+
+\setslot{three}
+ \Unicode{0033}{DIGIT THREE}
+\endsetslot
+
+\setslot{four}
+ \Unicode{0034}{DIGIT FOUR}
+\endsetslot
+
+\setslot{five}
+ \Unicode{0035}{DIGIT FIVE}
+\endsetslot
+
+\setslot{six}
+ \Unicode{0036}{DIGIT SIX}
+\endsetslot
+
+\setslot{seven}
+ \Unicode{0037}{DIGIT SEVEN}
+\endsetslot
+
+\setslot{eight}
+ \Unicode{0038}{DIGIT EIGHT}
+\endsetslot
+
+\setslot{nine}
+ \Unicode{0039}{DIGIT NINE}
+\endsetslot
+
+
+\begincomment
+\subsection{Accents}
+\endcomment
+
+\nextslot{18}
+\setslot{grave}
+ \Unicode{0300}{COMBINING GRAVE ACCENT}
+\endsetslot
+
+\setslot{acute}
+ \Unicode{0301}{COMBINING ACUTE ACCENT}
+\endsetslot
+
+\setslot{caron}
+ \Unicode{030C}{COMBINING CARON}
+ \comment{The caron or h\'a\v cek accent `\v{}'.}
+\endsetslot
+
+\setslot{breve}
+ \Unicode{0306}{COMBINING BREVE}
+\endsetslot
+
+\setslot{macron}
+ \Unicode{0304}{COMBINING MACRON}
+\endsetslot
+
+\setslot{ring}
+ \Unicode{030A}{COMBINING RING ABOVE}
+ \comment{The text definition of `\verb|\r{A}|' assumes that this
+ glyph has the same width as that in slot~\ref{A}.}
+\endsetslot
+
+\setslot{cedilla}
+ \Unicode{0327}{COMBINING CEDILLA}
+ \comment{This slot is not required for math, but is used by
+ the \cs{c} \LaTeX\ command.}
+\endsetslot
+
+
+\nextslot{94}
+\setslot{circumflex}
+ \Unicode{0302}{COMBINING CIRCUMFLEX ACCENT}
+ \Unicode{005E}{CIRCUMFLEX ACCENT}
+\endsetslot
+
+\ifnumber{\int{ligaturing}}>{0}\then
+
+\setslot{dotaccent}
+ \Unicode{0307}{COMBINING DOT ABOVE}
+ \label{dotaccent}
+\endsetslot
+
+\begincomment
+\par\medskip
+Note that the \(\mathit{ligaturing} = 0\) assignment to
+slot~\ref{underscore} is ordinary, not mandatory.
+\endcomment
+
+\Fi
+
+
+\nextslot{126}
+\setslot{tilde}
+ \Unicode{0303}{COMBINING TILDE}
+ \Unicode{007E}{TILDE}
+\endsetslot
+
+\setslot{dieresis}
+ \Unicode{0308}{COMBINING DIAERESIS}
+\endsetslot
+
+
+\begincomment
+\subsection{Symbols}
+\endcomment
+
+\nextslot{33}
+\setslot{exclam}
+ \Unicode{0021}{EXCLAMATION MARK}
+ \Ligature{LIG}{quoteleft}{exclamdown}
+\endsetslot
+
+\skipslots{1}
+
+\setslot{numbersign}
+ \Unicode{0023}{NUMBER SIGN}
+ \comment{This slot is not used for math.}
+\endsetslot
+
+\ifnumber{\int{italicizing}}={0}\then
+
+\setslot{dollar}
+ \Unicode{0024}{DOLLAR SIGN}
+\endsetslot
+
+\Else
+
+\setslot{sterling}
+ \Unicode{00A3}{POUND SIGN}
+\endsetslot
+
+\Fi
+
+\setslot{percent}
+ \Unicode{0025}{PERCENT SIGN}
+ \comment{This slot is not used for math.}
+\endsetslot
+
+\setslot{ampersand}
+ \Unicode{0026}{AMPERSAND}
+ \comment{This slot is not used for math.}
+\endsetslot
+
+\setslot{quoteright}
+ \Unicode{2019}{RIGHT SINGLE QUOTATION MARK}
+ \comment{This slot is not used for math.}
+ \ifnumber{\int{ligaturing}}>{0}\then
+ \Ligature{LIG}{quoteright}{quotedblright}
+ \Fi
+\endsetslot
+
+\setslot{parenleft}
+ \Unicode{0028}{LEFT PARENTHESIS}
+\endsetslot
+
+\setslot{parenright}
+ \Unicode{0029}{RIGHT PARENTHESIS}
+\endsetslot
+
+\setslot{asterisk}
+ \Unicode{002A}{ASTERISK}
+ \comment{This slot is not used for math.}
+\endsetslot
+
+\setslot{plus}
+ \Unicode{002B}{PLUS SIGN}
+\endsetslot
+
+\setslot{comma}
+ \Unicode{002C}{COMMA}
+ \comment{This slot is not used for math.}
+\endsetslot
+
+\setslot{hyphen}
+ \Unicode{002D}{HYPHEN-MINUS}
+ \comment{This slot is not used for math.}
+ \ifnumber{\int{ligaturing}}>{0}\then
+ \Ligature{LIG}{hyphen}{endash}
+ \Fi
+\endsetslot
+
+\setslot{period}
+ \Unicode{002E}{FULL STOP}
+ \comment{This slot is not used for math.}
+\endsetslot
+
+\setslot{slash}
+ \Unicode{002F}{SOLIDUS}
+\endsetslot
+
+\nextslot{58}
+\setslot{colon}
+ \Unicode{003A}{COLON}
+\endsetslot
+
+\setslot{semicolon}
+ \Unicode{003B}{SEMICOLON}
+\endsetslot
+
+\skipslots{1}
+
+\setslot{equal}
+ \Unicode{003D}{EQUALS SIGN}
+\endsetslot
+
+\skipslots{1}
+
+\setslot{question}
+ \Unicode{003F}{QUESTION MARK}
+ \Ligature{LIG}{quoteleft}{questiondown}
+\endsetslot
+
+\setslot{at}
+ \Unicode{0040}{COMMERCIAL AT}
+ \comment{This slot is not used for math.}
+\endsetslot
+
+\nextslot{91}
+\setslot{bracketleft}
+ \Unicode{005B}{LEFT SQUARE BRACKET}
+\endsetslot
+
+\skipslots{1}
+
+\setslot{bracketright}
+ \Unicode{005D}{RIGHT SQUARE BRACKET}
+\endsetslot
+
+\nextslot{96}
+\setslot{quoteleft}
+ \Unicode{2018}{LEFT SINGLE QUOTATION MARK}
+ \comment{This slot is not used for math.}
+ \ifnumber{\int{ligaturing}}>{0}\then
+ \Ligature{LIG}{quoteleft}{quotedblleft}
+ \Fi
+\endsetslot
+
+
+
+\begincomment
+\section{Ordinary characters}
+
+\subsection{Letters}
+\endcomment
+
+\ifnumber{\int{ligaturing}}={2}\then
+
+\nextslot{11}
+\setslot{ff}
+ \Unicode{FB00}{LATIN SMALL LIGATURE FF}
+ \comment{This glyph should be two characters wide in a monowidth
+ font.}
+ \ligature{LIG}{i}{ffi}
+ \ligature{LIG}{l}{ffl}
+\endsetslot
+
+\setslot{fi}
+ \Unicode{FB01}{LATIN SMALL LIGATURE FI}
+ \comment{This glyph should be two characters wide in a monowidth
+ font.}
+\endsetslot
+
+\setslot{fl}
+ \Unicode{FB02}{LATIN SMALL LIGATURE FL}
+ \comment{This glyph should be two characters wide in a monowidth
+ font.}
+\endsetslot
+
+\setslot{ffi}
+ \Unicode{FB03}{LATIN SMALL LIGATURE FFI}
+ \comment{This glyph should be three characters wide in a monowidth
+ font.}
+\endsetslot
+
+\setslot{ffl}
+ \Unicode{FB04}{LATIN SMALL LIGATURE FFL}
+ \comment{This glyph should be three characters wide in a monowidth
+ font.}
+\endsetslot
+
+\Fi
+
+\nextslot{"8A}
+\setslot{Lslash}
+ \Unicode{0141}{LATIN CAPITAL LETTER L WITH STROKE}
+ \comment{The letter `\L'.}
+\endsetslot
+
+\nextslot{"AA}
+\setslot{lslash}
+ \Unicode{0142}{LATIN SMALL LETTER L WITH STROKE}
+ \comment{The letter `\l'.}
+\endsetslot
+
+
+\begincomment
+\subsection{Accents}
+\endcomment
+
+\ifnumber{\int{ligaturing}}>{0}\then
+
+\nextslot{125}
+\setslot{hungarumlaut}
+ \Unicode{030B}{COMBINING DOUBLE ACUTE ACCENT}
+ \comment{The long Hungarian umlaut `\H{}'.}
+\endsetslot
+
+\Fi
+
+\begincomment
+\subsection{Symbols}
+\endcomment
+
+\ifnumber{\int{ligaturing}}<{2}\then
+
+\nextslot{11}
+\setslot{arrowup}
+ \Unicode{2191}{UPWARDS ARROW}
+\endsetslot
+
+\setslot{arrowdown}
+ \Unicode{2193}{DOWNWARDS ARROW}
+\endsetslot
+
+\setslot{quotesingle}
+ \Unicode{0027}{APOSTROPHE}
+\endsetslot
+
+\setslot{exclamdown}
+ \Unicode{00A1}{INVERTED EXCLAMATION MARK}
+\endsetslot
+
+\setslot{questiondown}
+ \Unicode{00BF}{INVERTED QUESTION MARK}
+\endsetslot
+
+\Fi
+
+\nextslot{32}
+\ifnumber{\int{ligaturing}}>{0}\then
+
+\setslot{lslashslash}
+ \comment{When this character is followed by
+ \textunicode{004C}{LATIN CAPITAL LETTER L} then the combined
+ result is \textunicode{0141}{LATIN CAPITAL LETTER L WITH STROKE};
+ this is used by the \cs{L} command. When this character is
+ followed by \textunicode{006C}{LATIN SMALL LETTER L} then the
+ combined result is \textunicode{0142}{LATIN SMALL LETTER L WITH
+ STROKE}; this is used by the \cs{l} command. There are no further
+ semantics for this character.}
+ \ligature{LIG}{L}{Lslash}
+ \ligature{LIG}{l}{lslash}
+ \comment{These ligatures, and the characters they point to, were
+ added by Alan Jeffrey early in \textsf{fontinst} development in
+ order to allow the character in this slot to exhibit the correct
+ behaviour even in fonts where there is no corresponding glyph.}
+\endsetslot
+
+\Else
+
+\setslot{visiblespace}
+ \Unicode{2423}{OPEN BOX}
+ \comment{A visible space glyph `\textvisiblespace'.}
+\endsetslot
+
+\Fi
+
+
+\nextslot{34}
+\ifnumber{\int{ligaturing}}>{0}\then
+
+\setslot{quotedblright}
+ \Unicode{201D}{RIGHT DOUBLE QUOTATION MARK}
+\endsetslot
+
+\Else
+
+\setslot{quotedbl}
+ \Unicode{0022}{QUOTATION MARK}
+\endsetslot
+
+\Fi
+
+\nextslot{60}
+\ifnumber{\int{ligaturing}}={2}\then
+
+\setslot{exclamdown}
+ \Unicode{00A1}{INVERTED EXCLAMATION MARK}
+\endsetslot
+
+\skipslots{1}
+
+\setslot{questiondown}
+ \Unicode{00BF}{INVERTED QUESTION MARK}
+\endsetslot
+
+\Else
+
+\setslot{less}
+ \Unicode{003C}{LESS-THAN SIGN}
+\endsetslot
+
+\skipslots{1}
+
+\setslot{greater}
+ \Unicode{003E}{GREATER-THAN SIGN}
+\endsetslot
+
+\Fi
+
+\nextslot{92}
+\ifnumber{\int{ligaturing}}>{0}\then
+
+\setslot{quotedblleft}
+ \Unicode{201C}{LEFT DOUBLE QUOTATION MARK}
+\endsetslot
+
+\Else
+
+\setslot{backslash}
+ \Unicode{005C}{REVERSE SOLIDUS}
+\endsetslot
+
+\nextslot{95}
+\setslot{underscore}
+ \Unicode{005F}{LOW LINE}
+ \label{underscore}
+\endsetslot
+
+\begincomment
+\par\medskip
+Note that the \(\mathit{ligaturing} > 0\) assignment to
+slot~\ref{dotaccent} is mandatory, not ordinary.
+\endcomment
+
+\Fi
+
+
+\nextslot{123}
+\ifnumber{\int{ligaturing}}>{0}\then
+
+\setslot{endash}
+ \Unicode{2013}{EN DASH}
+ \Ligature{LIG}{hyphen}{emdash}
+\endsetslot
+
+\setslot{emdash}
+ \Unicode{2014}{EM DASH}
+ \comment{In a monowidth font this character is preferably given the
+ width of two normal characters.}
+\endsetslot
+
+\Else
+
+\setslot{braceleft}
+ \Unicode{007B}{LEFT CURLY BRACKET}
+\endsetslot
+
+\setslot{bar}
+ \Unicode{007C}{VERTICAL LINE}
+\endsetslot
+
+\setslot{braceright}
+ \Unicode{007D}{RIGHT CURLY BRACKET}
+\endsetslot
+
+\Fi
+
+
+\begincomment
+\section{Fontdimens}
+\endcomment
+
+\setfontdimen{1}{italicslant} % italic slant
+\setfontdimen{2}{interword} % interword space
+\setfontdimen{3}{stretchword} % interword stretch
+\setfontdimen{4}{shrinkword} % interword shrink
+\setfontdimen{5}{xheight} % x-height
+\setfontdimen{6}{quad} % quad
+\setfontdimen{7}{extraspace} % extra space after .
+
+
+\begincomment
+\section{Coding scheme}
+\endcomment
+
+\ifnumber{\int{ligaturing}}={2}\then
+
+\setstr{codingscheme}{TEX TEXT}
+
+\Else\ifnumber{\int{ligaturing}}={1}\then
+
+\setstr{codingscheme}{TEX TEXT WITHOUT F-LIGATURES}
+
+\Else
+
+\setstr{codingscheme}{TEX TYPEWRITER TEXT}
+
+\Fi\Fi
+
+
+\endencoding
+
+
+\section{Discussion}
+
+
+\subsection{\texttt{OT1} as math font encoding}
+
+As source for the math requirements on the \texttt{OT1} encoding
+was used the standard \LaTeX\ math set-up~\cite{fontdef}. Those
+definitions that make use of \texttt{OT1} fonts either use the
+\texttt{operators} symbol font\slash font family~0 or have math
+class~7 (\cs{mathalpha}).
+
+There are two slots used for math that have different assignments
+in different encoding variants. Slot 36 (\texttt{dollar}\slash
+\texttt{sterling}) depends on the $\mathit{italicizing}$, and is used
+by the commands \cs{mathdollar} (called by \verb|\$|) and
+\cs{mathsterling} (called by \cs{pounds}). This works because these
+commands explicitly take the character from a font with the correct
+$\mathit{italicizing}$.
+
+Slot~95 (\texttt{dotaccent}\slash \texttt{underline}) depends on the
+$\mathit{ligaturing}$ and is used by the \cs{dot} command. This
+command does \emph{not} work for fonts with \(\mathit{ligaturing}=0\),
+and hence e.g.\ the formula \verb|$\mathtt{\dot{x}}$| does not produce
+a typewriter dotted `x', but rather an `x' and underscore printed on
+top of each other. This is thus an error, but due to that it is
+unlikely that the error will be missed by the author who encounters
+it, the error is probably harmless.
+
+
+\subsection{\texttt{OT1} as text font encoding}
+
+The sources used to determine the text requirements on the
+\texttt{OT1} encoding were~\cite{ltoutenc}.
+
+It turns out that there are LICR commands which rely on non-mandatory
+features of the font. It is mostly for the \(\mathit{ligaturing} = 0\)
+fonts that commands produce incorrect results. The following commands
+work with all \texttt{OT1} fonts which have \(\mathit{ligaturing} > 0\)
+but fail with the others: \cs{L}, \cs{l}, \cs{.}, \cs{H},
+\cs{textemdash}, \cs{textendash}, and \cs{textquotedblleft}.
+In addition, the command \cs{textquotedblright} produces a
+reasonable, but not exactly correct, result.
+
+Traditionally the \cs{textexclamdown} and \cs{textquestiondown} have
+only worked for fonts which have \(\mathit{ligaturing} = 2\), but
+that can be fixed; see~\cite{latex/3368}.
+
+
+
+\begin{thebibliography}{9}
+\bibitem{ltoutenc}
+ Johannes Braams, David Carlisle, Alan Jeffrey, Frank Mittelbach,
+ Chris Rowley, and Rainer Sch\"opf:
+ \textit{ltoutenc.dtx}, v\,1.91 (2000);
+ the file \texttt{ltoutenc.dtx} in the \LaTeX\ base distribution.
+\bibitem{latex/3368}
+ Lars Hellstr\"om:
+ \textit{\texttt{OT1} def.\ of \cs{textexclamdown} and
+ \cs{textquestiondown}}, \LaTeX\ bugs database entry
+ \textbf{latex/3368}, 2001.
+% ; \textsc{http:}/\slash \texttt{www.latex-project.org}\slash
+% \texttt{cgi-bin}\slash \texttt{ltxbugs2html\discretionary{?}{}{?}%
+% pr=latex/3368}.
+\bibitem{ComputerModern}
+ Donald E. Knuth:
+ \textit{Computer Modern Typefaces},
+ volume E of \textit{Computers \& Typesetting},
+ Ad\-di\-son--Wes\-ley, 1986, xvi+588\,pp.;
+ ISBN~0-201-13446-2.
+\bibitem{fontdef}
+ Frank Mittelbach and Rainer Sch\"opf:
+ \textit{The \texttt{fontdef.dtx} file}, v\,2.2x (1999);
+ the file \texttt{fontdef.dtx} in the \LaTeX\ base distribution.
+\end{thebibliography}
+
+
+\end{document}
+
+
+
diff --git a/Master/texmf-dist/doc/fontinst/base/encspecs/t1draft.etx b/Master/texmf-dist/doc/fontinst/base/encspecs/t1draft.etx
new file mode 100644
index 00000000000..d160fab4e02
--- /dev/null
+++ b/Master/texmf-dist/doc/fontinst/base/encspecs/t1draft.etx
@@ -0,0 +1,1457 @@
+\relax
+\documentclass[twocolumn]{article}
+\usepackage[specification]{fontdoc}[2001/06/18]
+\usepackage{shortvrb}
+
+\MakeShortVerb{\|}
+
+\begin{document}
+\title{\texttt{T1} encoding draft specification}
+\author{Lars Hellstr\"om}
+\date{2002/07/05}
+\maketitle
+
+\begin{abstract}
+ The \texttt{T1} encoding covers most\footnote{But not quite all.}
+ letters in the latin script that are used in European languages.
+ Code points 32--126 coincide with ASCII\footnote{As defined in
+ Appendix C of \emph{The \TeX book}~\cite{TeXbook}, not as defined
+ by the ANSI.} and code points 192--255 are mainly the same as in
+ the latin-1 encoding~\cite{ISO8859-1,latin-page}, but there are
+ exceptions.
+\end{abstract}
+
+\encoding
+
+\needsfontinstversion{1.918}
+
+\begincomment
+\section{Mandatory characters}
+\endcomment
+
+\begincomment
+\subsection{Letters}
+More than two thirds of the characters in the encoding are letters.
+This is a deliberate choice: \TeX's hyphenation algorithm requires
+that all characters in a word are taken from the same font, hence it
+is advantageous\footnote{Probably less so than what was thought when
+the encoding was designed, but still advantageous.} to keep as many
+letters as possible in the same font. Taking symbols from other fonts
+is less of a disadvantage.
+
+\subsubsection{``Unaccented'' letters in slots 0--127}
+\endcomment
+
+\nextslot{25}
+\setslot{dotlessi}
+ \Unicode{0131}{LATIN SMALL LETTER DOTLESS I}
+ \comment{A dotless i `\i', used to produce accented letters such as
+ `\=\i'.}
+\endsetslot
+
+\setslot{dotlessj}
+ \Unicode{F6BE}{LATIN SMALL LETTER DOTLESS J}
+ \comment{A dotless j `\j', used to produce accented letters such as
+ `\=\j'. The Unicode standard does not define this character, but
+ Adobe has assigned code point \texttt{U+F6BE} (which lies
+ in the private use subarea assigned by Adobe) to it.}
+\endsetslot
+
+
+\nextslot{65}
+\setslot{A}
+ \Unicode{0041}{LATIN CAPITAL LETTER A}
+\endsetslot
+
+\setslot{B}
+ \Unicode{0042}{LATIN CAPITAL LETTER B}
+\endsetslot
+
+\setslot{C}
+ \Unicode{0043}{LATIN CAPITAL LETTER C}
+\endsetslot
+
+\setslot{D}
+ \Unicode{0044}{LATIN CAPITAL LETTER D}
+\endsetslot
+
+\setslot{E}
+ \Unicode{0045}{LATIN CAPITAL LETTER E}
+\endsetslot
+
+\setslot{F}
+ \Unicode{0046}{LATIN CAPITAL LETTER F}
+\endsetslot
+
+\setslot{G}
+ \Unicode{0047}{LATIN CAPITAL LETTER G}
+\endsetslot
+
+\setslot{H}
+ \Unicode{0048}{LATIN CAPITAL LETTER H}
+\endsetslot
+
+\setslot{I}
+ \Unicode{0049}{LATIN CAPITAL LETTER I}
+ \oddligature{This ligature only occurs in Dutch typography.}
+ {LIG}{J}{IJ}
+ \oddligature{This ligature only occurs in Dutch typography.}
+ {LIG}{j}{IJ}
+\endsetslot
+
+\setslot{J}
+ \Unicode{004A}{LATIN CAPITAL LETTER J}
+\endsetslot
+
+\setslot{K}
+ \Unicode{004B}{LATIN CAPITAL LETTER K}
+\endsetslot
+
+\setslot{L}
+ \Unicode{004C}{LATIN CAPITAL LETTER L}
+\endsetslot
+
+\setslot{M}
+ \Unicode{004D}{LATIN CAPITAL LETTER M}
+\endsetslot
+
+\setslot{N}
+ \Unicode{004E}{LATIN CAPITAL LETTER N}
+\endsetslot
+
+\setslot{O}
+ \Unicode{004F}{LATIN CAPITAL LETTER O}
+\endsetslot
+
+\setslot{P}
+ \Unicode{0050}{LATIN CAPITAL LETTER P}
+\endsetslot
+
+\setslot{Q}
+ \Unicode{0051}{LATIN CAPITAL LETTER Q}
+\endsetslot
+
+\setslot{R}
+ \Unicode{0052}{LATIN CAPITAL LETTER R}
+\endsetslot
+
+\setslot{S}
+ \Unicode{0053}{LATIN CAPITAL LETTER S}
+\endsetslot
+
+\setslot{T}
+ \Unicode{0054}{LATIN CAPITAL LETTER T}
+\endsetslot
+
+\setslot{U}
+ \Unicode{0055}{LATIN CAPITAL LETTER U}
+\endsetslot
+
+\setslot{V}
+ \Unicode{0056}{LATIN CAPITAL LETTER V}
+\endsetslot
+
+\setslot{W}
+ \Unicode{0057}{LATIN CAPITAL LETTER W}
+\endsetslot
+
+\setslot{X}
+ \Unicode{0058}{LATIN CAPITAL LETTER X}
+\endsetslot
+
+\setslot{Y}
+ \Unicode{0059}{LATIN CAPITAL LETTER Y}
+\endsetslot
+
+\setslot{Z}
+ \Unicode{005A}{LATIN CAPITAL LETTER Z}
+\endsetslot
+
+
+\nextslot{97}
+\setslot{a}
+ \Unicode{0061}{LATIN SMALL LETTER A}
+\endsetslot
+
+\setslot{b}
+ \Unicode{0062}{LATIN SMALL LETTER B}
+\endsetslot
+
+\setslot{c}
+ \Unicode{0063}{LATIN SMALL LETTER C}
+\endsetslot
+
+\setslot{d}
+ \Unicode{0064}{LATIN SMALL LETTER D}
+\endsetslot
+
+\setslot{e}
+ \Unicode{0065}{LATIN SMALL LETTER E}
+\endsetslot
+
+\setslot{f}
+ \Unicode{0066}{LATIN SMALL LETTER F}
+ \ligature{LIG}{f}{ff}
+ \ligature{LIG}{i}{fi}
+ \ligature{LIG}{l}{fl}
+\endsetslot
+
+\setslot{g}
+ \Unicode{0067}{LATIN SMALL LETTER G}
+\endsetslot
+
+\setslot{h}
+ \Unicode{0068}{LATIN SMALL LETTER H}
+\endsetslot
+
+\setslot{i}
+ \Unicode{0069}{LATIN SMALL LETTER I}
+ \oddligature{This ligature only occurs in Dutch typography.}
+ {LIG}{j}{ij}
+\endsetslot
+
+\setslot{j}
+ \Unicode{006A}{LATIN SMALL LETTER J}
+\endsetslot
+
+\setslot{k}
+ \Unicode{006B}{LATIN SMALL LETTER K}
+\endsetslot
+
+\setslot{l}
+ \Unicode{006C}{LATIN SMALL LETTER L}
+\endsetslot
+
+\setslot{m}
+ \Unicode{006D}{LATIN SMALL LETTER M}
+\endsetslot
+
+\setslot{n}
+ \Unicode{006E}{LATIN SMALL LETTER N}
+\endsetslot
+
+\setslot{o}
+ \Unicode{006F}{LATIN SMALL LETTER O}
+\endsetslot
+
+\setslot{p}
+ \Unicode{0070}{LATIN SMALL LETTER P}
+\endsetslot
+
+\setslot{q}
+ \Unicode{0071}{LATIN SMALL LETTER Q}
+\endsetslot
+
+\setslot{r}
+ \Unicode{0072}{LATIN SMALL LETTER R}
+\endsetslot
+
+\setslot{s}
+ \Unicode{0073}{LATIN SMALL LETTER S}
+\endsetslot
+
+\setslot{t}
+ \Unicode{0074}{LATIN SMALL LETTER T}
+\endsetslot
+
+\setslot{u}
+ \Unicode{0075}{LATIN SMALL LETTER U}
+\endsetslot
+
+\setslot{v}
+ \Unicode{0076}{LATIN SMALL LETTER V}
+\endsetslot
+
+\setslot{w}
+ \Unicode{0077}{LATIN SMALL LETTER W}
+\endsetslot
+
+\setslot{x}
+ \Unicode{0078}{LATIN SMALL LETTER X}
+\endsetslot
+
+\setslot{y}
+ \Unicode{0079}{LATIN SMALL LETTER Y}
+\endsetslot
+
+\setslot{z}
+ \Unicode{007A}{LATIN SMALL LETTER Z}
+\endsetslot
+
+
+\begincomment
+\subsubsection{Mainly East-European accented letters
+ in slots 128--191}
+\endcomment
+
+\nextslot{128}
+\setslot{Abreve}
+ \Unicode{0102}{LATIN CAPITAL LETTER A WITH BREVE}
+\endsetslot
+
+\setslot{Aogonek}
+ \Unicode{0104}{LATIN CAPITAL LETTER A WITH OGONEK}
+\endsetslot
+
+\setslot{Cacute}
+ \Unicode{0106}{LATIN CAPITAL LETTER C WITH ACUTE}
+\endsetslot
+
+\setslot{Ccaron}
+ \Unicode{010C}{LATIN CAPITAL LETTER C WITH CARON}
+\endsetslot
+
+\setslot{Dcaron}
+ \Unicode{010E}{LATIN CAPITAL LETTER D WITH CARON}
+\endsetslot
+
+\setslot{Ecaron}
+ \Unicode{011A}{LATIN CAPITAL LETTER E WITH CARON}
+\endsetslot
+
+\setslot{Eogonek}
+ \Unicode{0118}{LATIN CAPITAL LETTER E WITH OGONEK}
+\endsetslot
+
+\setslot{Gbreve}
+ \Unicode{011E}{LATIN CAPITAL LETTER G WITH BREVE}
+\endsetslot
+
+\setslot{Lacute}
+ \Unicode{0139}{LATIN CAPITAL LETTER L WITH ACUTE}
+\endsetslot
+
+\setslot{Lcaron}
+ \Unicode{013D}{LATIN CAPITAL LETTER L WITH CARON}
+ \comment{The normal glyph for this character consists of a capital
+ L and a right single quote, but the underlying accent is a caron.
+ The glyph name \texttt{Lquoteright} is not uncommon, but
+ \cite{AGL} uses \texttt{Lcaron}.}
+\endsetslot
+
+\setslot{Lslash}
+ \Unicode{0141}{LATIN CAPITAL LETTER L WITH STROKE}
+ \comment{The letter `\L'.}
+\endsetslot
+
+\setslot{Nacute}
+ \Unicode{0143}{LATIN CAPITAL LETTER N WITH ACUTE}
+\endsetslot
+
+\setslot{Ncaron}
+ \Unicode{0147}{LATIN CAPITAL LETTER N WITH CARON}
+\endsetslot
+
+\setslot{Eng}
+ \Unicode{014A}{LATIN CAPITAL LETTER ENG}
+\endsetslot
+
+\setslot{Ohungarumlaut}
+ \Unicode{0150}{LATIN CAPITAL LETTER O WITH DOUBLE ACUTE}
+ \comment{The letter `\H{O}'.}
+\endsetslot
+
+\setslot{Racute}
+ \Unicode{0154}{LATIN CAPITAL LETTER R WITH ACUTE}
+\endsetslot
+
+\setslot{Rcaron}
+ \Unicode{0158}{LATIN CAPITAL LETTER R WITH CARON}
+\endsetslot
+
+\setslot{Sacute}
+ \Unicode{015A}{LATIN CAPITAL LETTER S WITH ACUTE}
+\endsetslot
+
+\setslot{Scaron}
+ \Unicode{0160}{LATIN CAPITAL LETTER S WITH CARON}
+\endsetslot
+
+\setslot{Scedilla}
+ \Unicode{015E}{LATIN CAPITAL LETTER S WITH CEDILLA}
+ \comment{In Romanian, character \textunicode{0218}{latin
+ capital letter s with comma below} is preferred, but that
+ wasn't known when this encoding was designed.}
+\endsetslot
+
+\setslot{Tcaron}
+ \Unicode{0164}{LATIN CAPITAL LETTER T WITH CARON}
+\endsetslot
+
+\setslot{Tcommaaccent}
+ \Unicode{021A}{LATIN CAPITAL LETTER T WITH COMMA BELOW}
+\endsetslot
+
+\setslot{Uhungarumlaut}
+ \Unicode{0170}{LATIN CAPITAL LETTER U WITH DOUBLE ACUTE}
+ \comment{The letter `\H{U}'.}
+\endsetslot
+
+\setslot{Uring}
+ \Unicode{016E}{LATIN CAPITAL LETTER U WITH RING ABOVE}
+\endsetslot
+
+\setslot{Ydieresis}
+ \Unicode{0178}{LATIN CAPITAL LETTER Y WITH DIAERESIS}
+\endsetslot
+
+\setslot{Zacute}
+ \Unicode{0179}{LATIN CAPITAL LETTER Z WITH ACUTE}
+\endsetslot
+
+\setslot{Zcaron}
+ \Unicode{017D}{LATIN CAPITAL LETTER Z WITH CARON}
+\endsetslot
+
+\setslot{Zdotaccent}
+ \Unicode{017B}{LATIN CAPITAL LETTER Z WITH DOT ABOVE}
+\endsetslot
+
+\skipslots{1}
+\setslot{Idotaccent}
+ \Unicode{0130}{LATIN CAPITAL LETTER I WITH DOT ABOVE}
+ \comment{This character's |\lccode| value points to slot 105
+ (\texttt{i}), as does that of slot 73 (\texttt{I}).}
+\endsetslot
+
+\setslot{dcroat}
+ \Unicode{0111}{LATIN SMALL LETTER D WITH STROKE}
+\endsetslot
+
+
+\nextslot{160}
+\setslot{abreve}
+ \Unicode{0103}{LATIN SMALL LETTER A WITH BREVE}
+\endsetslot
+
+\setslot{aogonek}
+ \Unicode{0105}{LATIN SMALL LETTER A WITH OGONEK}
+\endsetslot
+
+\setslot{cacute}
+ \Unicode{0107}{LATIN SMALL LETTER C WITH ACUTE}
+\endsetslot
+
+\setslot{ccaron}
+ \Unicode{010D}{LATIN SMALL LETTER C WITH CARON}
+\endsetslot
+
+\setslot{dcaron}
+ \Unicode{010F}{LATIN SMALL LETTER D WITH CARON}
+ \comment{The normal glyph for this character consists of a
+ lower case d and a right single quote, but the underlying
+ accent is a caron.}
+\endsetslot
+
+\setslot{ecaron}
+ \Unicode{011B}{LATIN SMALL LETTER E WITH CARON}
+\endsetslot
+
+\setslot{eogonek}
+ \Unicode{0119}{LATIN SMALL LETTER E WITH OGONEK}
+\endsetslot
+
+\setslot{gbreve}
+ \Unicode{011F}{LATIN SMALL LETTER G WITH BREVE}
+\endsetslot
+
+\setslot{lacute}
+ \Unicode{013A}{LATIN SMALL LETTER L WITH ACUTE}
+\endsetslot
+
+\setslot{lcaron}
+ \Unicode{013E}{LATIN SMALL LETTER L WITH CARON}
+ \comment{The normal glyph for this character consists of a
+ lower case l and a right single quote, but the underlying
+ accent is a caron. The glyph name \texttt{lquoteright} is
+ not uncommon, but \cite{AGL} uses \texttt{lcaron}.}
+\endsetslot
+
+\setslot{lslash}
+ \Unicode{0142}{LATIN SMALL LETTER L WITH STROKE}
+\endsetslot
+
+\setslot{nacute}
+ \Unicode{0144}{LATIN SMALL LETTER N WITH ACUTE}
+\endsetslot
+
+\setslot{ncaron}
+ \Unicode{0148}{LATIN SMALL LETTER N WITH CARON}
+\endsetslot
+
+\setslot{eng}
+ \Unicode{014B}{LATIN SMALL LETTER ENG}
+\endsetslot
+
+\setslot{ohungarumlaut}
+ \Unicode{0151}{LATIN SMALL LETTER O WITH DOUBLE ACUTE}
+ \comment{The letter `\H{o}'.}
+\endsetslot
+
+\setslot{racute}
+ \Unicode{0155}{LATIN SMALL LETTER R WITH ACUTE}
+\endsetslot
+
+\setslot{rcaron}
+ \Unicode{0159}{LATIN SMALL LETTER R WITH CARON}
+\endsetslot
+
+\setslot{sacute}
+ \Unicode{015B}{LATIN SMALL LETTER S WITH ACUTE}
+\endsetslot
+
+\setslot{scaron}
+ \Unicode{0161}{LATIN SMALL LETTER S WITH CARON}
+\endsetslot
+
+\setslot{scedilla}
+ \Unicode{015F}{LATIN SMALL LETTER S WITH CEDILLA}
+ \comment{In Romanian, character \textunicode{0219}{latin
+ small letter s with comma below} is preferred, but that
+ wasn't known when this encoding was designed.}
+\endsetslot
+
+\setslot{tcaron}
+ \Unicode{0165}{LATIN SMALL LETTER T WITH CARON}
+ \comment{The normal glyph for this character consists of a
+ lower case t and a right single quote, but the underlying
+ accent is a caron.}
+\endsetslot
+
+\setslot{tcommaaccent}
+ \Unicode{021B}{LATIN SMALL LETTER T WITH COMMA BELOW}
+\endsetslot
+
+\setslot{uhungarumlaut}
+ \Unicode{0171}{LATIN SMALL LETTER U WITH DOUBLE ACUTE}
+\endsetslot
+
+\setslot{uring}
+ \Unicode{016F}{LATIN SMALL LETTER U WITH RING ABOVE}
+\endsetslot
+
+\setslot{ydieresis}
+ \Unicode{00FF}{LATIN SMALL LETTER Y WITH DIAERESIS}
+\endsetslot
+
+\setslot{zacute}
+ \Unicode{017A}{LATIN SMALL LETTER Z WITH ACUTE}
+\endsetslot
+
+\setslot{zcaron}
+ \Unicode{017E}{LATIN SMALL LETTER Z WITH CARON}
+\endsetslot
+
+\setslot{zdotaccent}
+ \Unicode{017C}{LATIN SMALL LETTER Z WITH DOT ABOVE}
+\endsetslot
+
+
+\begincomment
+\subsubsection{Mainly West-European accented letters in slots 192--255}
+\endcomment
+
+\nextslot{192}
+\setslot{Agrave}
+ \Unicode{00C0}{LATIN CAPITAL LETTER A WITH GRAVE}
+\endsetslot
+
+\setslot{Aacute}
+ \Unicode{00C1}{LATIN CAPITAL LETTER A WITH ACUTE}
+\endsetslot
+
+\setslot{Acircumflex}
+ \Unicode{00C2}{LATIN CAPITAL LETTER A WITH CIRCUMFLEX}
+\endsetslot
+
+\setslot{Atilde}
+ \Unicode{00C3}{LATIN CAPITAL LETTER A WITH TILDE}
+\endsetslot
+
+\setslot{Adieresis}
+ \Unicode{00C4}{LATIN CAPITAL LETTER A WITH DIAERESIS}
+\endsetslot
+
+\setslot{Aring}
+ \Unicode{00C5}{LATIN CAPITAL LETTER A WITH RING ABOVE}
+\endsetslot
+
+\setslot{AE}
+ \Unicode{00C6}{LATIN CAPITAL LETTER AE}
+\endsetslot
+
+\setslot{Ccedilla}
+ \Unicode{00C7}{LATIN CAPITAL LETTER C WITH CEDILLA}
+\endsetslot
+
+\setslot{Egrave}
+ \Unicode{00C8}{LATIN CAPITAL LETTER E WITH GRAVE}
+\endsetslot
+
+\setslot{Eacute}
+ \Unicode{00C9}{LATIN CAPITAL LETTER E WITH ACUTE}
+\endsetslot
+
+\setslot{Ecircumflex}
+ \Unicode{00CA}{LATIN CAPITAL LETTER E WITH CIRCUMFLEX}
+\endsetslot
+
+\setslot{Edieresis}
+ \Unicode{00CB}{LATIN CAPITAL LETTER E WITH DIAERESIS}
+\endsetslot
+
+\setslot{Igrave}
+ \Unicode{00CC}{LATIN CAPITAL LETTER I WITH GRAVE}
+\endsetslot
+
+\setslot{Iacute}
+ \Unicode{00CD}{LATIN CAPITAL LETTER I WITH ACUTE}
+\endsetslot
+
+\setslot{Icircumflex}
+ \Unicode{00CE}{LATIN CAPITAL LETTER I WITH CIRCUMFLEX}
+\endsetslot
+
+\setslot{Idieresis}
+ \Unicode{00CF}{LATIN CAPITAL LETTER I WITH DIAERESIS}
+\endsetslot
+
+\setslot{Eth}
+ \Unicode{00D0}{LATIN CAPITAL LETTER ETH}
+ \Unicode{0110}{LATIN CAPITAL LETTER D WITH STROKE}
+ \comment{This slot is being used to represent two different
+ letters whose capital forms are identical. The |\lccode| value
+ points to slot \ref{eth}.}
+\endsetslot
+
+\setslot{Ntilde}
+ \Unicode{00D1}{LATIN CAPITAL LETTER N WITH TILDE}
+\endsetslot
+
+\setslot{Ograve}
+ \Unicode{00D2}{LATIN CAPITAL LETTER O WITH GRAVE}
+\endsetslot
+
+\setslot{Oacute}
+ \Unicode{00D3}{LATIN CAPITAL LETTER O WITH ACUTE}
+\endsetslot
+
+\setslot{Ocircumflex}
+ \Unicode{00D4}{LATIN CAPITAL LETTER O WITH CIRCUMFLEX}
+\endsetslot
+
+\setslot{Otilde}
+ \Unicode{00D5}{LATIN CAPITAL LETTER O WITH TILDE}
+\endsetslot
+
+\setslot{Odieresis}
+ \Unicode{00D6}{LATIN CAPITAL LETTER O WITH DIAERESIS}
+\endsetslot
+
+\setslot{OE}
+ \Unicode{0152}{LATIN CAPITAL LIGATURE OE}
+ \comment{This is a single letter, and should not be faked with `OE'.}
+\endsetslot
+
+\setslot{Oslash}
+ \Unicode{00D8}{LATIN CAPITAL LETTER O WITH STROKE}
+\endsetslot
+
+\setslot{Ugrave}
+ \Unicode{00D9}{LATIN CAPITAL LETTER U WITH GRAVE}
+\endsetslot
+
+\setslot{Uacute}
+ \Unicode{00DA}{LATIN CAPITAL LETTER U WITH ACUTE}
+\endsetslot
+
+\setslot{Ucircumflex}
+ \Unicode{00DB}{LATIN CAPITAL LETTER U WITH CIRCUMFLEX}
+\endsetslot
+
+\setslot{Udieresis}
+ \Unicode{00DC}{LATIN CAPITAL LETTER U WITH DIAERESIS}
+\endsetslot
+
+\setslot{Yacute}
+ \Unicode{00DD}{LATIN CAPITAL LETTER Y WITH ACUTE}
+\endsetslot
+
+\setslot{Thorn}
+ \Unicode{00DE}{LATIN CAPITAL LETTER THORN}
+\endsetslot
+
+\setslot{SS}
+ \comment{This is an ``uppercased'' sharp s (`\ss') which always
+ looks exactly like two S's next to each other. In a monowidth
+ font it should be two letters wide. There are other characters
+ which could have made better use of this slot; the only function
+ of this slot which could not have been handled using macros is
+ that |\SS| and |SS| can have different hyphenation.}
+\endsetslot
+
+\setslot{agrave}
+ \Unicode{00E0}{LATIN SMALL LETTER A WITH GRAVE}
+\endsetslot
+
+\setslot{aacute}
+ \Unicode{00E1}{LATIN SMALL LETTER A WITH ACUTE}
+\endsetslot
+
+\setslot{acircumflex}
+ \Unicode{00E2}{LATIN SMALL LETTER A WITH CIRCUMFLEX}
+\endsetslot
+
+\setslot{atilde}
+ \Unicode{00E3}{LATIN SMALL LETTER A WITH TILDE}
+\endsetslot
+
+\setslot{adieresis}
+ \Unicode{00E4}{LATIN SMALL LETTER A WITH DIAERESIS}
+\endsetslot
+
+\setslot{aring}
+ \Unicode{00E5}{LATIN SMALL LETTER A WITH RING ABOVE}
+\endsetslot
+
+\setslot{ae}
+ \Unicode{00E6}{LATIN SMALL LETTER AE}
+\endsetslot
+
+\setslot{ccedilla}
+ \Unicode{00E7}{LATIN SMALL LETTER C WITH CEDILLA}
+\endsetslot
+
+\setslot{egrave}
+ \Unicode{00E8}{LATIN SMALL LETTER E WITH GRAVE}
+\endsetslot
+
+\setslot{eacute}
+ \Unicode{00E9}{LATIN SMALL LETTER E WITH ACUTE}
+\endsetslot
+
+\setslot{ecircumflex}
+ \Unicode{00EA}{LATIN SMALL LETTER E WITH CIRCUMFLEX}
+\endsetslot
+
+\setslot{edieresis}
+ \Unicode{00EB}{LATIN SMALL LETTER E WITH DIAERESIS}
+\endsetslot
+
+\setslot{igrave}
+ \Unicode{00EC}{LATIN SMALL LETTER I WITH GRAVE}
+\endsetslot
+
+\setslot{iacute}
+ \Unicode{00ED}{LATIN SMALL LETTER I WITH ACUTE}
+\endsetslot
+
+\setslot{icircumflex}
+ \Unicode{00EE}{LATIN SMALL LETTER I WITH CIRCUMFLEX}
+\endsetslot
+
+\setslot{idieresis}
+ \Unicode{00EF}{LATIN SMALL LETTER I WITH DIAERESIS}
+\endsetslot
+
+\setslot{eth}
+ \Unicode{00F0}{LATIN SMALL LETTER ETH}
+ \label{eth}
+\endsetslot
+
+\setslot{ntilde}
+ \Unicode{00F1}{LATIN SMALL LETTER N WITH TILDE}
+\endsetslot
+
+\setslot{ograve}
+ \Unicode{00F2}{LATIN SMALL LETTER O WITH GRAVE}
+\endsetslot
+
+\setslot{oacute}
+ \Unicode{00F3}{LATIN SMALL LETTER O WITH ACUTE}
+\endsetslot
+
+\setslot{ocircumflex}
+ \Unicode{00F4}{LATIN SMALL LETTER O WITH CIRCUMFLEX}
+\endsetslot
+
+\setslot{otilde}
+ \Unicode{00F5}{LATIN SMALL LETTER O WITH TILDE}
+\endsetslot
+
+\setslot{odieresis}
+ \Unicode{00F6}{LATIN SMALL LETTER O WITH DIAERESIS}
+\endsetslot
+
+\setslot{oe}
+ \Unicode{0153}{LATIN SMALL LIGATURE OE}
+ \comment{This is a single letter, and should not be faked with `oe'.}
+\endsetslot
+
+\setslot{oslash}
+ \Unicode{00F8}{LATIN SMALL LETTER O WITH STROKE}
+\endsetslot
+
+\setslot{ugrave}
+ \Unicode{00F9}{LATIN SMALL LETTER U WITH GRAVE}
+\endsetslot
+
+\setslot{uacute}
+ \Unicode{00FA}{LATIN SMALL LETTER U WITH ACUTE}
+\endsetslot
+
+\setslot{ucircumflex}
+ \Unicode{00FB}{LATIN SMALL LETTER U WITH CIRCUMFLEX}
+\endsetslot
+
+\setslot{udieresis}
+ \Unicode{00FC}{LATIN SMALL LETTER U WITH DIAERESIS}
+\endsetslot
+
+\setslot{yacute}
+ \Unicode{00FD}{LATIN SMALL LETTER Y WITH ACUTE}
+\endsetslot
+
+\setslot{thorn}
+ \Unicode{00FE}{LATIN SMALL LETTER THORN}
+\endsetslot
+
+\setslot{germandbls}
+ \Unicode{00DF}{LATIN SMALL LETTER SHARP S}
+\endsetslot
+
+
+\begincomment
+\subsection{Accents}
+The Unicode equivalents of the accents are taken to be the combining
+forms of the accents found in code point \texttt{U+0300} and upwards.
+The reasons for this are (i) that they are primarily used with the
+|\accent| primitive, i.e., as combining characters, (ii) that some
+of them (e.g. \texttt{tilde}) have non-combining counterparts
+elsewhere in the encoding, and (iii) that they are not primarily
+phonetic marks.
+\endcomment
+
+\nextslot{0}
+\setslot{grave}
+ \Unicode{0300}{COMBINING GRAVE ACCENT}
+\endsetslot
+
+\setslot{acute}
+ \Unicode{0301}{COMBINING ACUTE ACCENT}
+\endsetslot
+
+\setslot{circumflex}
+ \Unicode{0302}{COMBINING CIRCUMFLEX ACCENT}
+\endsetslot
+
+\setslot{tilde}
+ \Unicode{0303}{COMBINING TILDE}
+\endsetslot
+
+\setslot{dieresis}
+ \Unicode{0308}{COMBINING DIAERESIS}
+\endsetslot
+
+\setslot{hungarumlaut}
+ \Unicode{030B}{COMBINING DOUBLE ACUTE ACCENT}
+ \comment{The long Hungarian umlaut `\H{}'.}
+\endsetslot
+
+\setslot{ring}
+ \Unicode{030A}{COMBINING RING ABOVE}
+\endsetslot
+
+\setslot{caron}
+ \Unicode{030C}{COMBINING CARON}
+ \comment{The caron or h\'a\v cek accent `\v{}'.}
+\endsetslot
+
+\setslot{breve}
+ \Unicode{0306}{COMBINING BREVE}
+\endsetslot
+
+\setslot{macron}
+ \Unicode{0304}{COMBINING MACRON}
+\endsetslot
+
+\setslot{dotaccent}
+ \Unicode{0307}{COMBINING DOT ABOVE}
+\endsetslot
+
+\setslot{cedilla}
+ \Unicode{0327}{COMBINING CEDILLA}
+\endsetslot
+
+\setslot{ogonek}
+ \Unicode{0328}{COMBINING OGONEK}
+\endsetslot
+
+
+\begincomment
+\subsection{Digits}
+\endcomment
+
+\nextslot{48}
+\setslot{zero}
+ \Unicode{0030}{DIGIT ZERO}
+\endsetslot
+
+\setslot{one}
+ \Unicode{0031}{DIGIT ONE}
+\endsetslot
+
+\setslot{two}
+ \Unicode{0032}{DIGIT TWO}
+\endsetslot
+
+\setslot{three}
+ \Unicode{0033}{DIGIT THREE}
+\endsetslot
+
+\setslot{four}
+ \Unicode{0034}{DIGIT FOUR}
+\endsetslot
+
+\setslot{five}
+ \Unicode{0035}{DIGIT FIVE}
+\endsetslot
+
+\setslot{six}
+ \Unicode{0036}{DIGIT SIX}
+\endsetslot
+
+\setslot{seven}
+ \Unicode{0037}{DIGIT SEVEN}
+\endsetslot
+
+\setslot{eight}
+ \Unicode{0038}{DIGIT EIGHT}
+\endsetslot
+
+\setslot{nine}
+ \Unicode{0039}{DIGIT NINE}
+\endsetslot
+
+
+\begincomment
+\subsection{Symbols and punctuation}
+\endcomment
+
+\nextslot{13}
+\setslot{quotesinglbase}
+ \Unicode{201A}{SINGLE LOW-9 QUOTATION MARK}
+\endsetslot
+
+\setslot{guilsinglleft}
+ \Unicode{2039}{SINGLE LEFT-POINTING ANGLE QUOTATION MARK}
+ \comment{In French typography this is an opening quotation mark,
+ but in German typography it is a closing quotation mark. The
+ character should kern well in both cases.}
+\endsetslot
+
+\setslot{guilsinglright}
+ \Unicode{203A}{SINGLE RIGHT-POINTING ANGLE QUOTATION MARK}
+ \comment{In French typography this is a closing quotation mark,
+ but in German typography it is an opening quotation mark. The
+ character should kern well in both cases.}
+\endsetslot
+
+\setslot{quotedblleft}
+ \Unicode{201C}{LEFT DOUBLE QUOTATION MARK}
+\endsetslot
+
+\setslot{quotedblright}
+ \Unicode{201D}{RIGHT DOUBLE QUOTATION MARK}
+ \comment{In English typography this quotation mark is always
+ closing, but in Swedish typography it is also an opening
+ quotation mark. The character should kern well in both cases.}
+\endsetslot
+
+\setslot{quotedblbase}
+ \Unicode{201E}{DOUBLE LOW-9 QUOTATION MARK}
+\endsetslot
+
+\setslot{guillemotleft}
+ \Unicode{00AB}{LEFT-POINTING DOUBLE ANGLE QUOTATION MARK}
+ \comment{In French typography this is an opening quotation mark,
+ but in German typography it is a closing quotation mark. The
+ character should kern well in both cases. The glyph name is
+ misspelt (it should be \texttt{guillemetleft}), but this
+ incorrect name is \emph{de facto} the glyph name used.}
+\endsetslot
+
+\setslot{guillemotright}
+ \Unicode{00BB}{RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK}
+ \comment{In French typography this is a closing quotation mark,
+ but in German typography it is an opening quotation mark. The
+ character should kern well in both cases. The glyph name is
+ misspelt (it should be \texttt{guillemetright}), but this
+ incorrect name is \emph{de facto} the glyph name used.}
+\endsetslot
+
+\setslot{endash}
+ \Unicode{2013}{EN DASH}
+ \label{endash}
+ \Ligature{LIG}{hyphen}{emdash}
+\endsetslot
+
+\setslot{emdash}
+ \Unicode{2014}{EM DASH}
+ \comment{In a monowidth font this character is preferably given the
+ width of two normal characters.}
+\endsetslot
+
+\nextslot{32}
+\setslot{visiblespace}
+ \Unicode{2423}{OPEN BOX}
+ \comment{A visible space glyph `\textvisiblespace'.}
+\endsetslot
+
+\setslot{exclam}
+ \Unicode{0021}{EXCLAMATION MARK}
+ \Ligature{LIG}{quoteleft}{exclamdown}
+\endsetslot
+
+\setslot{quotedbl}
+ \Unicode{0022}{QUOTATION MARK}
+ \comment{The `neutral' double quotation mark, included for use in
+ monowidth fonts, or for setting computer programs.}
+\endsetslot
+
+\setslot{numbersign}
+ \Unicode{0023}{NUMBER SIGN}
+\endsetslot
+
+\setslot{dollar}
+ \Unicode{0024}{DOLLAR SIGN}
+\endsetslot
+
+\setslot{percent}
+ \Unicode{0025}{PERCENT SIGN}
+\endsetslot
+
+\setslot{ampersand}
+ \Unicode{0026}{AMPERSAND}
+\endsetslot
+
+\setslot{quoteright}
+ \Unicode{2019}{RIGHT SINGLE QUOTATION MARK}
+ \Ligature{LIG}{quoteright}{quotedblright}
+\endsetslot
+
+\setslot{parenleft}
+ \Unicode{0028}{LEFT PARENTHESIS}
+\endsetslot
+
+\setslot{parenright}
+ \Unicode{0029}{RIGHT PARENTHESIS}
+\endsetslot
+
+\setslot{asterisk}
+ \Unicode{002A}{ASTERISK}
+\endsetslot
+
+\setslot{plus}
+ \Unicode{002B}{PLUS SIGN}
+\endsetslot
+
+\setslot{comma}
+ \Unicode{002C}{COMMA}
+ \Ligature{LIG}{comma}{quotedblbase}
+\endsetslot
+
+\setslot{hyphen}
+ \Unicode{002D}{HYPHEN-MINUS}
+ \Ligature{LIG}{hyphen}{endash}
+ \Ligature{LIG}{hyphenchar}{hyphenchar}
+ \comment{See also slot \ref{hyphenchar}.}
+ \label{hyphen}
+\endsetslot
+
+\setslot{period}
+ \Unicode{002E}{FULL STOP}
+\endsetslot
+
+\setslot{slash}
+ \Unicode{002F}{SOLIDUS}
+\endsetslot
+
+\skipslots{10}
+\setslot{colon}
+ \Unicode{003A}{COLON}
+\endsetslot
+
+\setslot{semicolon}
+ \Unicode{003B}{SEMICOLON}
+\endsetslot
+
+\setslot{less}
+ \Unicode{003C}{LESS-THAN SIGN}
+ \Ligature{LIG}{less}{guillemotleft}
+\endsetslot
+
+\setslot{equal}
+ \Unicode{003D}{EQUALS SIGN}
+\endsetslot
+
+\setslot{greater}
+ \Unicode{003E}{GREATER-THAN SIGN}
+ \Ligature{LIG}{greater}{guillemotright}
+\endsetslot
+
+\setslot{question}
+ \Unicode{003F}{QUESTION MARK}
+ \Ligature{LIG}{quoteleft}{questiondown}
+\endsetslot
+
+\setslot{at}
+ \Unicode{0040}{COMMERCIAL AT}
+\endsetslot
+
+\nextslot{91}
+\setslot{bracketleft}
+ \Unicode{005B}{LEFT SQUARE BRACKET}
+\endsetslot
+
+\setslot{backslash}
+ \Unicode{005C}{REVERSE SOLIDUS}
+\endsetslot
+
+\setslot{bracketright}
+ \Unicode{005D}{RIGHT SQUARE BRACKET}
+\endsetslot
+
+\setslot{asciicircum}
+ \Unicode{005E}{CIRCUMFLEX ACCENT}
+ \comment{The ASCII upward-pointing arrow head `\textasciicircum'.
+ This is included for compatibility with typewriter fonts used
+ for computer listings.}
+\endsetslot
+
+\setslot{underscore}
+ \Unicode{005F}{LOW LINE}
+ \comment{The ASCII underline character `\textunderscore', usually
+ set on the baseline. This is included for compatibility with
+ typewriter fonts used for computer listings.}
+\endsetslot
+
+\setslot{quoteleft}
+ \Unicode{2018}{LEFT SINGLE QUOTATION MARK}
+ \Ligature{LIG}{quoteleft}{quotedblleft}
+\endsetslot
+
+\nextslot{123}
+\setslot{braceleft}
+ \Unicode{007B}{LEFT CURLY BRACKET}
+\endsetslot
+
+\setslot{bar}
+ \Unicode{007C}{VERTICAL LINE}
+ \comment{The ASCII vertical bar `\textbar'.
+ This is included for compatibility with typewriter fonts used
+ for computer listings.}
+\endsetslot
+
+\setslot{braceright}
+ \Unicode{007D}{RIGHT CURLY BRACKET}
+\endsetslot
+
+\setslot{asciitilde}
+ \Unicode{007E}{TILDE}
+ \comment{The ASCII tilde `\textasciitilde'.
+ This is included for compatibility with typewriter fonts used
+ for computer listings.}
+\endsetslot
+
+\nextslot{159}
+\setslot{section}
+ \Unicode{00A7}{SECTION SIGN}
+\endsetslot
+
+\nextslot{189}
+\setslot{exclamdown}
+ \Unicode{00A1}{INVERTED EXCLAMATION MARK}
+\endsetslot
+
+\setslot{questiondown}
+ \Unicode{00BF}{INVERTED QUESTION MARK}
+\endsetslot
+
+\setslot{sterling}
+ \Unicode{00A3}{POUND SIGN}
+\endsetslot
+
+
+
+\begincomment
+\subsection{Miscellanea}
+\endcomment
+
+\nextslot{23}
+\setslot{compwordmark}
+ \Unicode{200C}{ZERO WIDTH NON-JOINER}
+ \comment{An invisible glyph, with zero width and depth, but the
+ height of lower case letters without ascenders.
+ It is used to stop ligaturing in words like `shelf{}ful'.
+ It is possible that this character should be considered a
+ letter (and that hyphenation patterns should be designed to
+ include it), but since its |\lccode| is 0, \TeX's hyphenation
+ mechanism considers it to be a nonletter which ends the
+ hyphenatable part of a word.}
+\endsetslot
+
+\setslot{perthousandzero}
+ \comment{A glyph which is placed after `\%' to produce a
+ `per-thousand', or twice to produce `per-ten-thousand'.
+ Your guess is as good as mine as to what this glyph should look
+ like in a monowidth font. Since most fonts don't include this
+ glyph anyway, its use is discouraged.}
+\endsetslot
+
+\nextslot{127}
+\setslot{hyphenchar}
+ \label{hyphenchar}
+ \comment{This character is provided as a discretionary hyphen
+ symbol and may only appear at the end of a line, since it is often
+ hanging out of the character box, but apart from that it is almost
+ always the same as the \texttt{hyphen} character. Since \LaTeX\
+ sets the |\hyphenchar| of \texttt{T1} fonts to slot \ref{hyphen}
+ rather than this slot, this feature is usually not used.}
+\endsetslot
+
+
+
+\begincomment
+\section{Usual characters}
+The following characters are only accessed through ligatures and can
+therefore be replaced by others or completely left out if the
+ligature programs are modified accordingly.
+\endcomment
+
+\nextslot{27}
+\setslot{ff}
+ \Unicode{FB00}{LATIN SMALL LIGATURE FF}
+ \comment{This glyph should be two characters wide in a monowidth
+ font.}
+ \ligature{LIG}{i}{ffi}
+ \ligature{LIG}{l}{ffl}
+\endsetslot
+
+\setslot{fi}
+ \Unicode{FB01}{LATIN SMALL LIGATURE FI}
+ \comment{This glyph should be two characters wide in a monowidth
+ font.}
+\endsetslot
+
+\setslot{fl}
+ \Unicode{FB02}{LATIN SMALL LIGATURE FL}
+ \comment{This glyph should be two characters wide in a monowidth
+ font.}
+\endsetslot
+
+\setslot{ffi}
+ \Unicode{FB03}{LATIN SMALL LIGATURE FFI}
+ \comment{This glyph should be three characters wide in a monowidth
+ font.}
+\endsetslot
+
+\setslot{ffl}
+ \Unicode{FB04}{LATIN SMALL LIGATURE FFL}
+ \comment{This glyph should be three characters wide in a monowidth
+ font.}
+\endsetslot
+
+\nextslot{156}
+\setslot{IJ}
+ \Unicode{0132}{LATIN CAPITAL LIGATURE IJ}
+ \comment{This is a single letter, and in a monowidth font should
+ ideally be one letter wide.}
+\endsetslot
+
+\nextslot{188}
+\setslot{ij}
+ \Unicode{0133}{LATIN SMALL LIGATURE IJ}
+ \comment{This is a single letter, and in a monowidth font should
+ ideally be one letter wide.}
+\endsetslot
+
+
+\begincomment
+\section{Fontdimens}
+\endcomment
+
+\setfontdimen{1}{italicslant} % italic slant
+\setfontdimen{2}{interword} % interword space
+\setfontdimen{3}{stretchword} % interword stretch
+\setfontdimen{4}{shrinkword} % interword shrink
+\setfontdimen{5}{xheight} % x-height
+\setfontdimen{6}{quad} % quad
+\setfontdimen{7}{extraspace} % extra space after .
+\setfontdimen{8}{capheight} % cap height
+\setfontdimen{9}{ascender} % ascender
+\setfontdimen{10}{acccapheight} % accented cap height
+\setfontdimen{11}{descender} % descender's depth
+\setfontdimen{12}{maxheight} % max height
+\setfontdimen{13}{maxdepth} % max depth
+\setfontdimen{14}{digitwidth} % digit width
+\setfontdimen{15}{verticalstem} % dominant width of verical stems
+\setfontdimen{16}{baselineskip} % baselineskip
+
+
+\begincomment
+\section{Coding scheme}
+\endcomment
+
+\setstr{codingscheme}{EXTENDED TEX FONT ENCODING - LATIN}
+
+
+\endencoding
+
+
+\section{Discussion}
+
+As the \texttt{T1} encoding is an established standard, the discussion
+of it has already been published elsewhere. [Unfortunately, I do not
+know where as it all happened long before I started using \TeX. This
+part of the document definitely needs to be improved. To begin with, I
+would like to know if the TUGboat articles whose bibliography entries
+appear in Figure~\ref{Bib-entries} are relevant for the matter.
+\begin{figure*}
+\small
+\begin{verbatim}
+@Article{Beebe:TB11-2-171,
+ author = "Nelson Beebe",
+ title = "{Character set encoding}",
+ journal = j-TUGboat,
+ volume = "11",
+ number = "2",
+ pages = "171--175",
+ month = jun,
+ year = "1990",
+ ISSN = "0896-3207",
+ bibdate = "Fri Jun 4 18:08:09 MDT 1999",
+ bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib;
+ http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat",
+ acknowledgement = ack-bnb # " and " # ack-nhfb,
+}
+@Article{Bien:TB11-2-175,
+ author = "Janusz S. Bie{\'n}",
+ title = "{On standards for computer modern font extensions}",
+ journal = j-TUGboat,
+ volume = "11",
+ number = "2",
+ pages = "175--183",
+ month = jun,
+ year = "1990",
+ ISSN = "0896-3207",
+ bibdate = "Fri Jun 4 18:08:09 MDT 1999",
+ bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib;
+ http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat",
+ acknowledgement = ack-bnb # " and " # ack-nhfb,
+}
+@Article{Ferguson:TB11-4-514,
+ author = "Michael Ferguson",
+ title = "{Report on multilingual activities}",
+ journal = j-TUGboat,
+ volume = "11",
+ number = "4",
+ pages = "514--516",
+ month = nov,
+ year = "1990",
+ ISSN = "0896-3207",
+ bibdate = "Fri Jun 4 18:08:09 MDT 1999",
+ bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib;
+ http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat",
+ acknowledgement = ack-bnb # " and " # ack-nhfb,
+}
+\end{verbatim}
+\normalsize
+
+\caption{Entries in \texttt{tugboat.bib} which may describe papers
+that contain (at least part of) the discussion regarding the
+\texttt{T1} encoding}
+\label{Bib-entries}
+\end{figure*}
+Actually reading them would be nice too, as would of course getting
+the references for whatever other papers there might be that
+constituted the discussion of the \texttt{T1} encoding. The file
+\texttt{cork.enc} in the \textit{Fontname} standard makes a cryptic
+reference to ``TTN 1(4), December 1992'', whatever that might be.]
+
+I can however answer questions on the more immediate matter of how the
+interpretation of the established standard that this file expresses was
+constructed. It is mainly the result of a comparison between the
+file \texttt{t1.etx}~\cite{t1.etx}, the Unicode
+standard~\cite{Unicode}, and the Adobe glyph list~\cite{AGL}.
+
+(Some concerns have been expressed about the fact that the glyph name
+listed for slot~0 is `\texttt{grave}', although that glyph name in
+\cite{AGL} corresponds to \textunicode{0060}{GRAVE ACCENT}, whereas
+\textunicode{0300}{COMBINING GRAVE ACCENT} is listed as corresponding
+to `\texttt{gravecomb}'. This is however formally irrelevant, since
+the glyph names are formally only internal labels in the encoding
+specification. `\texttt{gravecomb}' would furthermore be a more
+impractical label, since most font contains a `\texttt{grave}' glyph
+that is used as a combining accent but no `\texttt{gravecomb}'
+glyph.)
+
+
+\section{Changes}
+
+The changes made to this specification since the original 2001/06/19
+version are as follows.
+
+2001/09/01: Corrected some typos (reported by Vladimir Volovich). /LH
+
+2001/09/16: Added \cite{latin-page} to the bibliography. /LH
+
+2001/09/21: Removed comment on \textunicode{2012}{FIGURE DASH} from
+slot~\ref{endash}. \cite[Sec.~6.1]{Unicode} makes quite clear that
+it's not to be used for ranges. /LH
+
+2002/07/05: Added the Ferguson:TB11-4-514 and ``TTN~1(4)'' references
+to the discussion section. Also added remark on \texttt{grave} versus
+\texttt{gravecomb}. /LH
+
+
+\begin{thebibliography}{9}
+\bibitem{AGL}
+ Adobe Systems Incorporated: \textit{Adobe Glyph List}, 1998;
+ \textsc{http}:/\slash \texttt{partners.adobe.com}\slash
+ \texttt{asn}\slash \texttt{developer}\slash \texttt{type}\slash
+ \texttt{glyphlist.txt}
+\bibitem{latin-page}
+ Roman Czyborra: \textit{The ISO 8859 Alphabet Soup}, web page at
+ \textsc{http:}/\slash \texttt{czyborra.com}\slash
+ \texttt{charsets}\slash \texttt{iso8859.html}, 1998.
+\bibitem{ISO8859-1}
+ International Organization for Standardization:
+ \textit{ISO/IEC standard 8859-1} (Information technology --
+ 8-bit single-byte coded graphic character sets --
+ Part 1: Latin alphabet No. 1).
+ See also~\cite{latin-page}.
+\bibitem{t1.etx}
+ Alan Jeffrey, Sebastian Rahtz, and Ulrik Vieth:
+ \textit{The \TeX\ extended text encoding vector},
+ version~1.801, 1998,
+ \textsc{ctan}:\discretionary{}{}{\thinspace}\texttt{fonts}\slash
+ \texttt{utilities}\slash \texttt{fontinst}\slash
+ \texttt{inputs}\slash \texttt{etx}\slash \texttt{t1.etx}.
+\bibitem{TeXbook}
+ Donald E.\ Knuth, Duane Bibby (illustrations):
+ \textit{The \TeX book}, Ad\-di\-son--Wes\-ley, 1986;
+ ISBN~0-201-13447-0.
+\bibitem{Unicode}
+ The Unicode Consortium (editor), \emph{et al.}:
+ \textit{The Unicode Standard, Version 3.0},
+ Addison Wesley Longman Publisher, 2000; ISBN~0-201-61633-5.
+ Most of the information in this book is also available online at
+ the Unicode consortium website, at \textsc{http}:/\slash
+ \texttt{www.unicode.org}\slash \texttt{unicode}\slash
+ \texttt{uni2book}\slash \texttt{u2.html}.
+\end{thebibliography}
+
+
+
+\end{document} \ No newline at end of file