diff options
Diffstat (limited to 'fonts')
49 files changed, 15401 insertions, 748 deletions
diff --git a/fonts/adforn/OrnementsADF.enc b/fonts/adforn/OrnementsADF.enc deleted file mode 100644 index 3f72f76b50..0000000000 --- a/fonts/adforn/OrnementsADF.enc +++ /dev/null @@ -1,258 +0,0 @@ -/OrnementsADFEncoding [ -/space -/parenleft -/parenright -/zero -/one -/two -/three -/four -/five -/six -/seven -/eight -/nine -/less -/equal -/greater -/A -/B -/C -/D -/E -/F -/G -/H -/I -/J -/K -/L -/M -/N -/O -/P -/Q -/R -/S -/T -/U -/V -/W -/X -/Y -/Z -/bracketleft -/bracketright -/a -/b -/c -/d -/e -/f -/g -/h -/i -/j -/k -/l -/m -/n -/o -/p -/q -/r -/s -/t -/u -/v -/w -/x -/y -/z -/braceleft -/bar -/braceright -/bullet -/section -/paragraph -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -] def diff --git a/fonts/adforn/OrnementsADF.tfm b/fonts/adforn/OrnementsADF.tfm Binary files differdeleted file mode 100644 index a01f5757ad..0000000000 --- a/fonts/adforn/OrnementsADF.tfm +++ /dev/null diff --git a/fonts/adforn/README b/fonts/adforn/README deleted file mode 100644 index eec053ddf8..0000000000 --- a/fonts/adforn/README +++ /dev/null @@ -1,43 +0,0 @@ -adforn ------- - -adforn consists of: -1. the Ornements ADF font developed by Hirwen Harendel, Arkandis Digital -Foundry (ADF) and released under the terms set out in the files COPYING and -NOTICE in postscript type 1 format; -2. (La)TeX support by Clea F. Rees released under the LPPL. All files covered -by the LPPL are listed in the file manifest.txt. - -Information and resources concerning Ornements ADF, including an opentype -version of the font, and other ADF fonts can be found on the foundry's -homepage: - http://arkandis.tuxfamily.org/ - -(La)TeX Support ---------------- - -For details, please see adforn.pdf. - -The (La)TeX support should be considered somewhat experimental. If you find -any problems, please let me know and I will try to correct them. If you can -send a fix, so much the better. - -Contact Details ---------------- - -If you have comments about the font itself, please contact Hirwen Harendal -(harendalh <at> hotmail <dot> com). - -Clea F. Rees (ReesC21 <at> cardiff <dot> ac <dot> uk) - -Versioning ----------- - -Version 1.1a corrects a bug **if** I've understood the problem correctly, which -I'm far from convinced of. (All it does is add a pair of curly brackets in the -.sty.) - -Version 1.1b includes the PDF documentation *and* the TFM. Apologies for the -inconvenience. - -2019/10/13 diff --git a/fonts/adforn/README.md b/fonts/adforn/README.md new file mode 100644 index 0000000000..dc451977aa --- /dev/null +++ b/fonts/adforn/README.md @@ -0,0 +1,54 @@ +$Id: README.md 10440 2024-09-29 16:02:57Z cfrees $ + +# adforn + +adforn consists of: +1. the Ornements ADF font developed by Hirwen Harendel, Arkandis Digital +Foundry (ADF) and released under the terms set out in the files COPYING and +NOTICE in postscript type 1 format; +1. (La)TeX support by Clea F. Rees released under the LPPL. All files covered +by the LPPL are listed in the file manifest.txt. + +Information and resources concerning Ornements ADF, including an opentype +version of the font, and other ADF fonts can be found on the foundry's +homepage: + http://arkandis.tuxfamily.org/ + +## (La)TeX Support + +For details, please see adforn.pdf. The main command is \adforn{} which +takes any integer between 1 and 75. Commands for slightly more semantic markup +are provided as alternatives. + +## Versioning + +Version 1.1a corrects a bug **if** I've understood the problem correctly, which +I'm far from convinced of. (All it does is add a pair of curly brackets in the +.sty.) + +Version 1.1b includes the PDF documentation *and* the TFM. Apologies for the +inconvenience. + +Version 1.2 removes dependency on pifont and offers scaling option. + +## Code Repositories + +Code for the LaTeX support package is hosted at + https://codeberg.org/cfr/nfssext +For convenience, the repository is mirrored at + https://github.com/cfr42/nfssext + +## Contact Details + +Bug reports, feature requests etc. concerning the LaTeX support or packaging +should be filed at + https://codeberg.org/cfr/nfssext/issues + +If you have comments about the fonts themselves, please contact Hirwen +Harendal (harendalh <at> hotmail <dot> com). + +Clea F. Rees +Version 1.2 +2024-09-29 + +<!-- vim: tw=80:et:sw=2: --> diff --git a/fonts/adforn/adforn.pdf b/fonts/adforn/adforn.pdf Binary files differdeleted file mode 100644 index ac774e9015..0000000000 --- a/fonts/adforn/adforn.pdf +++ /dev/null diff --git a/fonts/adforn/adforn.sty b/fonts/adforn/adforn.sty deleted file mode 100644 index b52f55068c..0000000000 --- a/fonts/adforn/adforn.sty +++ /dev/null @@ -1,90 +0,0 @@ -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{adforn}[2019/10/13 v1.1b adforn CFR] -\RequirePackage{pifont} -{\Pifont{OrnementsADF}} - -\newcommand*{\adforn}[1]{% - \Pisymbol{OrnementsADF}{#1}} - -\newcommand*{\adfhalfleftarrowhead}{\adforn{1}} -\newcommand*{\adfhalfrightarrowhead}{\adforn{2}} -\gdef\adfast#1{% - \ifcase #1 \relax - \or \adforn{3}% - \or \adforn{4}% - \or \adforn{5}% - \or \adforn{6}% - \or \adforn{7}% - \or \adforn{8}% - \or \adforn{9}% - \or \adforn{10}% - \or \adforn{11}% - \or \adforn{12}% - \fi} -\newcommand*{\adfhalfleafleft}{\adforn{13}} -\newcommand*{\adfdiamond}{\adforn{14}} -\newcommand*{\adfhalfleafright}{\adforn{15}} -\newcommand*{\adfwavesleft}{\adforn{16}} -\newcommand*{\adfopenflourishleft}{\adforn{17}} -\newcommand*{\adfclosedflourishleft}{\adforn{18}} -\newcommand*{\adfdoubleflourishleft}{\adforn{19}} -\newcommand*{\adfflourishleft}{\adforn{20}} -\newcommand*{\adfflourishleftdouble}{\adforn{21}} -\newcommand*{\adfsingleflourishleft}{\adforn{22}} -\newcommand*{\adfsharpflourishleft}{\adforn{23}} -\newcommand*{\adfdoublesharpflourishleft}{\adforn{24}} -\newcommand*{\adfsickleflourishleft}{\adforn{25}} -\newcommand*{\adftripleflourishleft}{\adforn{26}} -\newcommand*{\adfflatdownhalfleafright}{\adforn{27}} -\newcommand*{\adfflatdownoutlineleafright}{\adforn{28}} -\newcommand*{\adfflatleafoutlineright}{\adforn{29}} -\newcommand*{\adfoutlineleafright}{\adforn{30}} -\newcommand*{\adfsolidleafright}{\adforn{31}} -\newcommand*{\adfflowerright}{\adforn{32}} -\newcommand*{\adfdownhalfleafright}{\adforn{33}} -\newcommand*{\adfhangingflatleafright}{\adforn{34}} -\newcommand*{\adfhangingleafleft}{\adforn{35}} -\newcommand*{\adfflatleafright}{\adforn{36}} -\newcommand*{\adfflatleafsolidright}{\adforn{37}} -\newcommand*{\adfleafright}{\adforn{38}} -\newcommand*{\adfdownleafright}{\adforn{39}} -\newcommand*{\adfsmallleafright}{\adforn{40}} -\newcommand*{\adfsmallhangingleafright}{\adforn{41}} -\newcommand*{\adfleftarrowhead}{\adforn{42}} -\newcommand*{\adfrightarrowhead}{\adforn{43}} -\newcommand*{\adfwavesright}{\adforn{44}} -\newcommand*{\adfopenflourishright}{\adforn{45}} -\newcommand*{\adfclosedflourishright}{\adforn{46}} -\newcommand*{\adfdoubleflourishright}{\adforn{47}} -\newcommand*{\adfflourishright}{\adforn{48}} -\newcommand*{\adfflourishrightdouble}{\adforn{49}} -\newcommand*{\adfsingleflourishright}{\adforn{50}} -\newcommand*{\adfsharpflourishright}{\adforn{51}} -\newcommand*{\adfdoublesharpflourishright}{\adforn{52}} -\newcommand*{\adfsickleflourishright}{\adforn{53}} -\newcommand*{\adftripleflourishright}{\adforn{54}} -\newcommand*{\adfflatdownhalfleafleft}{\adforn{55}} -\newcommand*{\adfflatdownoutlineleafleft}{\adforn{56}} -\newcommand*{\adfflatleafoutlineleft}{\adforn{57}} -\newcommand*{\adfoutlineleafleft}{\adforn{58}} -\newcommand*{\adfsolidleafleft}{\adforn{59}} -\newcommand*{\adfflowerleft}{\adforn{60}} -\newcommand*{\adfdownhalfleafleft}{\adforn{61}} -\newcommand*{\adfhangingflatleafleft}{\adforn{62}} -\newcommand*{\adfhangingleafright}{\adforn{63}} -\newcommand*{\adfflatleafleft}{\adforn{64}} -\newcommand*{\adfflatleafsolidleft}{\adforn{65}} -\newcommand*{\adfleafleft}{\adforn{66}} -\newcommand*{\adfdownleafleft}{\adforn{67}} -\newcommand*{\adfsmallleafleft}{\adforn{68}} -\newcommand*{\adfsmallhangingleafleft}{\adforn{69}} -\newcommand*{\adfhalfleftarrow}{\adforn{70}} -\newcommand*{\adfsquare}{\adforn{71}} -\newcommand*{\adfhalfrightarrow}{\adforn{72}} -\newcommand*{\adfbullet}{\adforn{73}} -\newcommand*{\adfS}{\adforn{74}} -\newcommand*{\adfgee}{\adforn{75}} - -\endinput -%% end adforn.sty - diff --git a/fonts/adforn/adforn.tex b/fonts/adforn/adforn.tex deleted file mode 100644 index f956b5db6f..0000000000 --- a/fonts/adforn/adforn.tex +++ /dev/null @@ -1,312 +0,0 @@ -% !TEX TS-program = pdflatex -% !TEX encoding = UTF-8 Unicode -%% adforn.tex -%% Copyright 2019 Clea F. Rees -% -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either version 1.3 -% of this license or (at your option) any later version. -% The latest version of this license is in -% http://www.latex-project.org/lppl.txt -% and version 1.3 or later is part of all distributions of LaTeX -% version 2005/12/01 or later. -% -% This work has the LPPL maintenance status `maintained'. -% -% The Current Maintainer of this work is Clea F. Rees. -% -% This work consists of all files listed in manifest.txt. -\listfiles -\documentclass[10pt,british]{article} -\usepackage{babel} -\usepackage{lmodern} -\usepackage[T1]{fontenc} -\usepackage{textcomp} -\usepackage{fancyhdr,lastpage,fancyref} -\usepackage{array,longtable,verbatim} -\usepackage{booktabs} -\usepackage{url} - \urlstyle{sf} -\usepackage{multicol} -\usepackage[a4paper,headheight=13pt]{geometry} -\usepackage{microtype} - -\title{adforn\thanks{Version 1.1}} -\author{Clea F.\ Rees\footnote{ReesC21 <at> cardiff <dot> ac <dot> uk}} -\newcommand*{\dyddiad}{24\textsuperscript{th} September, 2019} -\date{\dyddiad} - -\pagestyle{fancy} -% \fancyhf[lh]{\itshape adforn} -% \fancyhf[rh]{\itshape \dyddiad} - \fancyhf[ch]{} - \fancyhf[lf]{} - \fancyhf[rf]{} -% \fancyhf[cf]{\itshape --- \thepage~of~\pageref{LastPage} ---} - \fancyhf[lh]{} - \fancyhf[rh]{} - \fancyhf[ch]{\itshape adforn\hspace*{1.5em}\adforn{37}\hspace*{1.5em}\dyddiad} - \fancyhf[cf]{\itshape \adforn{18} \thepage~of~\pageref{LastPage} \adforn{46}} - \renewcommand{\headrulewidth}{0pt} - -\makeatletter - \def\@seccntformat#1{\adforn{74}\csname the#1\endcsname\quad} -\makeatother - -\makeatletter -\newcommand{\adfornset}{% -1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75} -\newcommand{\adfornshow}{% - \def\tempa{75}% - \@for \xx:=\adfornset \do {% - \ifx\xx\tempa - \xx: \adforn{\xx}% - \else - \xx: \adforn{\xx}\\% - \fi}} -\makeatother - -\pdfmapfile{+ OrnementsADF.map} -\usepackage{adforn} - -\begin{document} -\maketitle\thispagestyle{empty} -\pdfinfo{% - /Creator (TeX) - /Producer (pdfTeX) - /Author (Clea F.\ Rees) - /Title (adforn) - /Subject (TeX) - /Keywords (TeX,LaTeX,font,fonts,tex,latex,Ornements,ornements,ornementsadf,adforn,OrnementsADF,ADF,adf,Arkandis,Digital,Foundry,arkandis,digital,foundry,Hirwen,Harendal,Clea,Rees)} -\pdfcatalog{% - /URL () - /PageMode /UseOutlines} % other values: /UseNone, /UseOutlines, /UseThumbs, /FullScreen - %[openaction <actionspec>] -% \pagestyle{empty} % if you want this, you probably want to comment out \maketitle as well...? -\setlength{\parindent}{0pt} -\setlength{\parskip}{0.5em} - - -\newcommand*{\adf}{\textsc{adf}} -\newcommand*{\lpack}[1]{\textsf{#1}} -\newcommand*{\fgroup}[1]{\textsf{#1}} -\newcommand*{\fname}[1]{\textsf{#1}} - -\begin{abstract} - \hspace*{-\parindent}Hirwen Harendal, Arkandis Digital Foundry (\adf) has produced Ornements \adf. This guide outlines the \TeX/\LaTeX\ support provided with version 1.001 of the font in postscript type 1 format. -\end{abstract} - -\section{Introduction} - -This document explains how to use the \TeX/\LaTeX\ support included with version 1.001 of Ornements \adf\ in postscript type 1 format. The font was developed by Hirwen Harendal of the Arkandis Digital Foundry (\adf), and information about the font itself, together with a copy of the font in opentype format, can be found at \url{http://pagesperso-orange.fr/arkandis/ADF/tugfonts.htm}. The font is released under the \textsc{gpl}. For details, see \textsc{readme}, \textsc{notice} and \textsc{copying}. - -The \TeX/\LaTeX\ support package consists of all files listed in \lpack{manifest.txt}\ and these files are released under the \LaTeX\ Project Public Licence as explained in the included licensing notices and \textsc{readme}. Please let me know of any problems so that I can solve them if I can. If you can correct the problems and send me the fix, that would be even better. Unlike the font itself, the \TeX/\LaTeX\ support is somewhat experimental. - -\lpack{adforn} includes a copy of the font in type 1 format (\path{OrnementsADF.pfb}, \path{OrnementsADF.pfm} and \path{OrnementsADF.afm}), documentation and support files for \TeX/\LaTeX\, including a \LaTeX\ package file, \path{adforn.sty}. - -\section{The support package}\label{sec:support} - -\lpack{adforn} provides access to the ornaments and symbols in \fname{OrnementsADF} via two sets of commands. First, it provides a single command which takes a range of arguments. The different arguments determine which ornament is typeset. Second, it provides a separate command for each ornament. The choice of command determines which ornament is typeset. The two mechanisms are equivalent\footnote{The only difference is that the first allows you to typeset a space by passing it the argument 0 whereas there is no command to typeset the space in the second set. For all practical purposes, this difference is irrelevant since you should not use such a command to typeset a space in \TeX\ in any case and it is difficult to see why anybody would want to.}. - -\subsection{One command; many arguments} - -\lpack{adforn} provides the command \verb|\adforn{}| which takes a single numerical argument. There are 75 ornaments in the font which can be produced by feeding the relevant number between 1 and 75 to \verb|\adforn{}|\footnote{As mentioned above, the argument 0 will simply typeset a space and should be avoided as using it may interfere with \TeX's spacing algorithms. The problem is that \TeX\ will not recognise it as a space and so will treat it instead as a character.}: -\begin{multicols}{5} %\raggedcolumns - \adfornshow -\end{multicols} -For example, -\begin{verbatim} - \adforn{21}\quad\adforn{11}\quad\adforn{49} -\end{verbatim} -produces: -\begin{center} - \adforn{21}\quad\adforn{11}\quad\adforn{49} -\end{center} - -\subsection{Many commands; no arguments} - -In addition to the numerical interface, a number of additional commands are provided as an alternative means of accessing the various symbols and ornaments. The following list groups them roughly according to kind. In each case, the number of the ornament is given first. This may be used directly with the \verb|\adforn{}| command as explained above. The alternative command is given next. This command may be used to typeset the same ornament. For example both \verb|\adforn{14}| and \verb|\adfdiamond| produce \adfdiamond. Finally, the ornament produced by the two commands is typeset to their right. - -\newcommand*{\adforngroup}[1]{% - \scshape #1} -\begin{longtable}{llllll} - \toprule -% \textbf{no.} & \textbf{command} & \textbf{} & \textbf{no.} & \textbf{command} & \textbf{}\\\midrule - \endfirsthead - \toprule%\multicolumn{6}{l}{\adforngroup{basic symbols \& shapes cont.}}\\\midrule - \endhead - \bottomrule\endfoot - - \multicolumn{6}{l}{\adforngroup{basic symbols \& shapes}}\\\midrule - 74 %& \adforn{74} - & \verb|\adfS| & \adfS &%\\ - 75 %& \adforn{75} - & \verb|\adfgee| & \adfgee\\ - 14 %& \adforn{14} - & \verb|\adfdiamond| & \adfdiamond &%\\ - 71 %& \adforn{71} - & \verb|\adfsquare| & \adfsquare\\ - 73 %& \adforn{73} - & \verb|\adfbullet| & \adfbullet\\%\midrule - - \multicolumn{6}{l}{\adforngroup{fancy asterisks \& bullets}}\\\midrule - 3 %& \adforn{3} - & \verb|\adfast1| & \adfast1 &%\\ - 4 %& \adforn{4} - & \verb|\adfast2| & \adfast2 \\ - 5 %& \adforn{5} - & \verb|\adfast3| & \adfast3 &%\\ - 6 %& \adforn{6} - & \verb|\adfast4| & \adfast4 \\ - 7 %& \adforn{7} - & \verb|\adfast5| & \adfast5 &%\\ - 8 %& \adforn{8} - & \verb|\adfast6| & \adfast6 \\ - 9 %& \adforn{9} - & \verb|\adfast7| & \adfast7 &%\\ - 10 %& \adforn{10} - & \verb|\adfast8| & \adfast8 \\ - 11 %& \adforn{11} - & \verb|\adfast9| & \adfast9 &%\\ - 12 %& \adforn{12} - & \verb|\adfast{10}| & \adfast{10} \\\midrule - - \multicolumn{6}{l}{\adforngroup{arrows \& arrowheads}}\\\midrule - 70 %& \adforn{70} - & \verb|\adfhalfleftarrow| & \adfhalfleftarrow &%\\ - 72 %& \adforn{72} - & \verb|\adfhalfrightarrow| & \adfhalfrightarrow\\ - 42 %& \adforn{42} - & \verb|\adfleftarrowhead| & \adfleftarrowhead &%\\ - 43 %& \adforn{43} - & \verb|\adfrightarrowhead| & \adfrightarrowhead\\ - 1 %& \adforn{1} - & \verb|\adfhalfleftarrowhead| & \adfhalfleftarrowhead &%\\ - 2 %& \adforn{2} - & \verb|\adfhalfrightarrowhead| & \adfhalfrightarrowhead\\\midrule - - \multicolumn{6}{l}{\adforngroup{flourishes}}\\\midrule - 20 %& \adforn{20} - & \verb|\adfflourishleft| & \adfflourishleft &%\\ - 48 %& \adforn{48} - & \verb|\adfflourishright| & \adfflourishright\\ - 21 %& \adforn{21} - & \verb|\adfflourishleftdouble| & \adfflourishleftdouble &%\\ - 49 %& \adforn{49} - & \verb|\adfflourishrightdouble| & \adfflourishrightdouble\\ - 17 %& \adforn{17} - & \verb|\adfopenflourishleft| & \adfopenflourishleft &%\\ - 45 %& \adforn{45} - & \verb|\adfopenflourishright| & \adfopenflourishright\\ - 18 %& \adforn{18} - & \verb|\adfclosedflourishleft| & \adfclosedflourishleft &%\\ - 46 %& \adforn{46} - & \verb|\adfclosedflourishright| & \adfclosedflourishright\\ - 22 %& \adforn{22} - & \verb|\adfsingleflourishleft| & \adfsingleflourishleft &%\\ - 50 %& \adforn{50} - & \verb|\adfsingleflourishright| & \adfsingleflourishright\\ - 19 %& \adforn{19} - & \verb|\adfdoubleflourishleft| & \adfdoubleflourishleft &%\\ - 47 %& \adforn{47} - & \verb|\adfdoubleflourishright| & \adfdoubleflourishright\\ - 26 %& \adforn{26} - & \verb|\adftripleflourishleft| & \adftripleflourishleft &%\\ - 54 %& \adforn{54} - & \verb|\adftripleflourishright| & \adftripleflourishright\\ - 23 %& \adforn{23} - & \verb|\adfsharpflourishleft| & \adfsharpflourishleft &%\\ - 51 %& \adforn{51} - & \verb|\adfsharpflourishright| & \adfsharpflourishright\\ - 24 %& \adforn{24} - & \verb|\adfdoublesharpflourishleft| & \adfdoublesharpflourishleft &%\\ - 52 %& \adforn{52} - & \verb|\adfdoublesharpflourishright| & \adfdoublesharpflourishright\\ - 25 %& \adforn{25} - & \verb|\adfsickleflourishleft| & \adfsickleflourishleft &%\\ - 53 %& \adforn{53} - & \verb|\adfsickleflourishright| & \adfsickleflourishright\\ - 16 %& \adforn{16} - & \verb|\adfwavesleft| & \adfwavesleft &%\\ - 44 %& \adforn{44} - & \verb|\adfwavesright | & \adfwavesright \\\midrule - - \multicolumn{6}{l}{\adforngroup{flowers}}\\\midrule - 60 %& \adforn{32} - & \verb|\adfflowerleft| & \adfflowerleft &%\\ - 32 %& \adforn{60} - & \verb|\adfflowerright| & \adfflowerright\\\midrule - - \multicolumn{6}{l}{\adforngroup{leaves}}\\\midrule - 66 %& \adforn{66} - & \verb|\adfleafleft| & \adfleafleft &%\\ - 38 %& \adforn{38} - & \verb|\adfleafright| & \adfleafright\\ - 59 %& \adforn{59} - & \verb|\adfsolidleafleft| & \adfsolidleafleft &%\\ - 31 %& \adforn{31} - & \verb|\adfsolidleafright| & \adfsolidleafright\\ - 13 %& \adforn{13} - & \verb|\adfhalfleafleft| & \adfhalfleafleft &%\\ - 15 %& \adforn{15} - & \verb|\adfhalfleafright| & \adfhalfleafright\\ - 58 %& \adforn{58} - & \verb|\adfoutlineleafleft| & \adfoutlineleafleft &%\\ - 30 %& \adforn{30} - & \verb|\adfoutlineleafright| & \adfoutlineleafright\\ - 68 %& \adforn{68} - & \verb|\adfsmallleafleft| & \adfsmallleafleft &%\\ - 40 %& \adforn{40} - & \verb|\adfsmallleafright| & \adfsmallleafright\\ - 64 %& \adforn{64} - & \verb|\adfflatleafleft| & \adfflatleafleft &%\\ - 36 %& \adforn{36} - & \verb|\adfflatleafright| & \adfflatleafright\\ - 57 %& \adforn{57} - & \verb|\adfflatleafoutlineleft| & \adfflatleafoutlineleft &%\\ - 29 %& \adforn{29} - & \verb|\adfflatleafoutlineright| & \adfflatleafoutlineright\\ - 65 %& \adforn{65} - & \verb|\adfflatleafsolidleft| & \adfflatleafsolidleft &%\\ - 37 %& \adforn{37} - & \verb|\adfflatleafsolidright| & \adfflatleafsolidright\\ - 67 %& \adforn{67} - & \verb|\adfdownleafleft| & \adfdownleafleft &%\\ - 39 %& \adforn{39} - & \verb|\adfdownleafright| & \adfdownleafright\\ - 61 %& \adforn{61} - & \verb|\adfdownhalfleafleft| & \adfdownhalfleafleft &%\\ - 33 %& \adforn{33} - & \verb|\adfdownhalfleafright| & \adfdownhalfleafright\\ - 55 %& \adforn{55} - & \verb|\adfflatdownhalfleafleft| & \adfflatdownhalfleafleft &%\\ - 27 %& \adforn{27} - & \verb|\adfflatdownhalfleafright| & \adfflatdownhalfleafright\\ - 56 %& \adforn{56} - & \verb|\adfflatdownoutlineleafleft| & \adfflatdownoutlineleafleft &%\\ - 28 %& \adforn{28} - & \verb|\adfflatdownoutlineleafright| & \adfflatdownoutlineleafright\\ - 35 %& \adforn{35} - & \verb|\adfhangingleafleft| & \adfhangingleafleft &%\\ - 63 %& \adforn{63} - & \verb|\adfhangingleafright| & \adfhangingleafright\\ - 69 %& \adforn{69} - & \verb|\adfsmallhangingleafleft| & \adfsmallhangingleafleft &%\\ - 41 %& \adforn{41} - & \verb|\adfsmallhangingleafright| & \adfsmallhangingleafright\\ - 62 %& \adforn{62} - & \verb|\adfhangingflatleafleft| & \adfhangingflatleafleft &%\\ - 34 %& \adforn{34} - & \verb|\adfhangingflatleafright| & \adfhangingflatleafright\\ - -\end{longtable} -So, -\begin{verbatim} - \adfflourishleftdouble\quad\adfast9\quad\adfflourishrightdouble -\end{verbatim} -will produce the same output as the example code given in the previous section: -\begin{center} - \adfflourishleftdouble\quad\adfast9\quad\adfflourishrightdouble -\end{center} - -\end{document} diff --git a/fonts/adforn/OrnementsADF.afm b/fonts/adforn/afm/OrnementsADF.afm index ef01d76536..ef01d76536 100644 --- a/fonts/adforn/OrnementsADF.afm +++ b/fonts/adforn/afm/OrnementsADF.afm diff --git a/fonts/adforn/COPYING b/fonts/adforn/doc/COPYING index d60c31a97a..d60c31a97a 100644 --- a/fonts/adforn/COPYING +++ b/fonts/adforn/doc/COPYING diff --git a/fonts/adforn/NOTICE b/fonts/adforn/doc/NOTICE index f036bff828..f036bff828 100644 --- a/fonts/adforn/NOTICE +++ b/fonts/adforn/doc/NOTICE diff --git a/fonts/adforn/doc/adforn-tables.pdf b/fonts/adforn/doc/adforn-tables.pdf Binary files differnew file mode 100644 index 0000000000..2b67493771 --- /dev/null +++ b/fonts/adforn/doc/adforn-tables.pdf diff --git a/fonts/adforn/doc/adforn-tables.tex b/fonts/adforn/doc/adforn-tables.tex new file mode 100644 index 0000000000..5f2f6d0587 --- /dev/null +++ b/fonts/adforn/doc/adforn-tables.tex @@ -0,0 +1,20 @@ +%% Do not edit this file. It is generated by l3build and changes will be overwritten. +% !TEX TS-program = pdflatex +% !TEX encoding = UTF-8 Unicode +\pdftracingfonts=1 +\documentclass[10pt,a4paper]{article} +\usepackage{geometry} +\usepackage{fonttable} +\newcommand\sampletable[4]{% + #1/#2/#3/#4:\par\noindent + \xfonttable{#1}{#2}{#3}{#4}% + \clearpage +} +\pdfmapfile{-adforn.map} +\pdfmapfile{+adforn.map} +\begin{document} + +\sampletable{U}{OrnementsADF}{m}{n}% +\end{document} + +% vim: ts=2:sw=2:tw=80:nospell diff --git a/fonts/adforn/doc/adforn.pdf b/fonts/adforn/doc/adforn.pdf Binary files differnew file mode 100644 index 0000000000..0632cc5516 --- /dev/null +++ b/fonts/adforn/doc/adforn.pdf diff --git a/fonts/adforn/doc/manifest.txt b/fonts/adforn/doc/manifest.txt new file mode 100644 index 0000000000..b7edf360c8 --- /dev/null +++ b/fonts/adforn/doc/manifest.txt @@ -0,0 +1,70 @@ +# Manifest for adforn + +Copyright (C) Mon Sep 30 01:03:20 2024 Clea F. Rees + +This work may be distributed and/or modified under the conditions of the LaTeX +Project Public License, either version 1.3c of this license or (at your option) +any later version. The latest version of this license is in + https://www.latex-project.org/lppl.txt +and version 1.3c or later is part of all distributions of LaTeX version +2008-05-04 or later. + +This work has the LPPL maintenance status `maintained'. + +The Current Maintainer of this work is Clea F. Rees. + +This work consists of all files listed in manifest.txt. + +This file lists all files released under the LPPL. It does *not* list all files +included in the package. See README for further details. + +This file was automatically generated by `l3build manifest`. + +## Source files + + +### Package files + + +* manifest.txt +* README.md +* adforn.dtx +* adforn.ins + +### Development files + +Note that tests containing '-auto' are automatically generated by l3build from fnt-test.lvt. + + +* build.lua +* fontinst.lua +* tag.lua +* arkandis-manifest.lua +* fnt-tables.tex +* adforn-scale.lvt +* adforn-subs.lvt +* adforn-scale.tlg +* adforn-subs.tlg + + +## Derived files + + +### Package files + + +* adforn.map +* OrnementsADF.tfm +* adforn.sty +* uornementsadf.fd +* adforn.map +* OrnementsADF.tfm +* OrnementsADF.enc +* adforn-tables.tex + +### Typeset documentation + +Note that font tables are automatically generated by l3build from fnt-tables.tex. + +* adforn-tables.pdf +* adforn.pdf diff --git a/fonts/adforn/manifest.txt b/fonts/adforn/manifest.txt deleted file mode 100644 index 5c18326c59..0000000000 --- a/fonts/adforn/manifest.txt +++ /dev/null @@ -1,23 +0,0 @@ -Copyright 2019 Clea F. Rees - -This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 of this license or (at your option) any later version. The latest version of this license is in http://www.latex-project.org/lppl.txt and version 1.3 or later is part of all distributions of LaTeX version 2005/12/01 or later. - -This work has the LPPL maintenance status `maintained'. - -The Current Maintainer of this work is Clea F. Rees. - -This work consists of all files listed in manifest.txt. - -This file lists all files released under the LPPL. It does *not* list all files included in the package. See README for further details. - -adforn.sty -OrnementsADF.enc -OrnementsADF.map -uornementsadf.fd -adforn.tex -manifest.txt -README - -Derived files: -OrnementsADF.tfm -adforn.pdf diff --git a/fonts/adforn/OrnementsADF.map b/fonts/adforn/map/adforn.map index 7dca3c2bb3..7dca3c2bb3 100644 --- a/fonts/adforn/OrnementsADF.map +++ b/fonts/adforn/map/adforn.map diff --git a/fonts/adforn/source/adforn.dtx b/fonts/adforn/source/adforn.dtx new file mode 100644 index 0000000000..cc848a9e0d --- /dev/null +++ b/fonts/adforn/source/adforn.dtx @@ -0,0 +1,1294 @@ +% \iffalse meta-comment +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% adforn.dtx +% Additions and changes Copyright (C) YYYY-2024 Clea F. Rees. +% Code from skeleton.dtx Copyright (C) 2015-2024 Scott Pakin (see below). +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3c +% of this license or (at your option) any later version. +% The latest version of this license is in +% https://www.latex-project.org/lppl.txt +% and version 1.3c or later is part of all distributions of LaTeX +% version 2008-05-04 or later. +% +% This work has the LPPL maintenance status `maintained'. +% +% The Current Maintainer of this work is Clea F. Rees. +% +% This work consists of all files listed in manifest.txt. +% +% The file adforn.dtx is a derived work under the terms of the +% LPPL. It is based on version 2.4 of skeleton.dtx which is part of +% dtxtut by Scott Pakin. A copy of dtxtut, including the +% unmodified version of skeleton.dtx is available from +% https://www.ctan.org/pkg/dtxtut and released under the LPPL. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \fi +% +% \iffalse +%<*driver> +\RequirePackage{svn-prov} +% ref. ateb Max Chernoff: https://tex.stackexchange.com/a/723294/ +\def\MakePrivateLetters{\makeatletter\ExplSyntaxOn\endlinechar13} +\ProvidesFileSVN{$Id: adforn.dtx 10442 2024-09-29 18:25:09Z cfrees $}[v1.2 \revinfo][\filebase DTX: FONT for 8-bit engines] +\DefineFileInfoSVN[adforn] +\documentclass[11pt,british]{ltxdoc} +% l3doc loads fancyvrb +% fancyvrb overwrites svn-prov's macros without warning +% restore \fileversion \filerev in case we're using l3doc +\GetFileInfoSVN{adforn} +\EnableCrossrefs +\CodelineIndex +\RecordChanges +% \OnlyDescription +\DoNotIndex{\verb,\ProvidesPackageSVN,\NeedsTeXFormat,\ProcessKeyOptions,\revinfo,\filebase,\filename,\filedate,\RequirePackage,\usepackage,\DefineFileInfoSVN,\GetFileInfoSVN,\ProvidesPackageSVN,\documentclass,\MakeAutoQuote,\parindent,\par,\smallskip,\setlength,\bigskip,\maketitle,\title,\author,\date,\ExplSyntaxOn,\ExplSyntaxOff} +\usepackage{babel} +\pdfmapfile{-adforn.map} +\pdfmapfile{+adforn.map} +\usepackage[tt={monowidth,tabular,lining}]{cfr-lm} +% \usepackage{lmodern} +% \renewcommand{\ttdefault}{lmvtt} +% \let\origrmdefault\rmdefault +% \DeclareRobustCommand{\origrmfamily}{% +% \fontencoding{T1}% +% \fontfamily{\origrmdefault}% +% \selectfont} +% \DeclareTextFontCommand{\textorigrm}{\origrmfamily} +\usepackage[]{adforn} +\usepackage{fancyhdr} +\usepackage{fixfoot} +\usepackage{array,verbatim,tabularx} +\usepackage{enumitem} +\usepackage[referable]{threeparttablex} +\makeatletter +\def\TPT@measurement{% ateb David Carlisle: https://tex.stackexchange.com/a/370691/ + \ifdim\wd\@tempboxb<\TPTminimum + \hsize \TPTminimum + \else + \hsize\wd\@tempboxb + \fi + \xdef\TPT@hsize{\hsize\the\hsize \noexpand\@parboxrestore}\TPT@hsize + \ifx\TPT@docapt\@undefined\else + \TPT@docapt \vskip.2\baselineskip + \fi \par + \dimen@\dp\@tempboxb % new + \box\@tempboxb + \ifvmode \prevdepth\dimen@ \fi% was \z@ not \dimen@ +} +\renewlist{tablenotes}{enumerate}{1} +\setlist[tablenotes]{label=\tnote{\alph*},ref=\alph*,itemsep=\z@,topsep=\z@skip,partopsep=\z@skip,parsep=\z@,itemindent=\z@,labelindent=\tabcolsep,labelsep=.2em,leftmargin=*,align=left,before={\unskip\medskip\footnotesize}} +\makeatother +\usepackage{booktabs} +\usepackage{multirow} +\usepackage{xcolor} +\usepackage{xurl} +\urlstyle{tt} +\usepackage{multicol} +\usepackage{longtable} +\usepackage{microtype} +\usepackage[a4paper,headheight=14pt]{geometry} % use 14pt for 11pt text, 15pt for 12pt text +\usepackage{csquotes} +\MakeAutoQuote{‘}{’} +\MakeAutoQuote*{“}{”} +\usepackage{caption} +\DeclareCaptionFont{lf}{\sffamily\lstyle} +\captionsetup[table]{labelfont=lf} +% sicrhau hyperindex=false: llwytho CYN bookmark +\usepackage{hypdoc}% ateb Ulrike Fischer: https://tex.stackexchange.com/a/695555/ +\usepackage{bookmark} +\hypersetup{% + colorlinks=true, + citecolor={moss}, + extension=pdf, + linkcolor={strawberry}, + linktocpage=true, + pdfcreator={TeX}, + pdfproducer={pdfeTeX}, + urlcolor={blueberry}% +} +\NewDocElement[% + idxtype=opt., + idxgroup=options, + printtype=\textit{opt.}, +]{Opt}{option} +\NewDocElement[% + idxtype=pkg., + idxgroup=packages, + printtype=\textit{pkg.}, +]{Pkg}{package} +\NewDocElement[% + printtype=\textdagger, + idxtype=, + macrolike, +]{DMacro}{dmacro} +\NewDocElement[% + idxtype=enc., + idxgroup=font encodings, + printtype=\textit{enc.}, +]{Fenc}{fntenc} +\NewDocElement[% + idxtype=fd., + idxgroup=font definitions, + printtype=\textit{fd.}, +]{Fdefn}{fntdefn} +\NewDocElement[% + idxtype=map, + idxgroup=map file fragments, + printtype=\textit{map}, +]{Fmap}{fmapping} +\NewDocumentCommand \val { m } +{% + {\ttfamily =\,\meta{#1}}% +} +\ExplSyntaxOn +\NewDocumentCommand \vals { m } +{ + { + \ttfamily = \, + \clist_use:nn { #1 } { \textbar } + } +} +\cs_new_eq:NN \pkgname \filebase +\ExplSyntaxOff +\usepackage{cleveref} +\title{\filebase} +\author{Clea F. Rees\thanks{% + Bug tracker: + \href{https://codeberg.org/cfr/nfssext/issues}{\url{codeberg.org/cfr/nfssext/issues}} + \textbar{} Code: + \href{https://codeberg.org/cfr/nfssext}{\url{codeberg.org/cfr/nfssext}} + \textbar{} Mirror: + \href{https://github.com/cfr42/nfssext}{\url{github.com/cfr42/nfssext}}% +}} +% \date{\fileversion~\filetoday} +\date{\fileversion~\filedate} +\pagestyle{fancy} +\fancyhf{} +% \fancyhf[lh]{\filebase~\fileversion} +% \fancyhf[rh]{\itshape\filetoday} +% \fancyhf[rh]{\filedate} +\fancyhf[ch]{} +\fancyhf[lf]{} +\fancyhf[rf]{} +\fancyhf[ch]{\itshape \filebase\hspace*{1.5em}\adforn{37}\hspace*{1.5em}\fileversion} +\fancyhf[cf]{\itshape \adforn{18} \thepage~of~\lastpage{} \adforn{46}} +\renewcommand{\headrulewidth}{0pt} +\ExplSyntaxOn +\hook_gput_code:nnn {shipout/lastpage} {.} +{ + \property_record:nn {t:lastpage}{abspage,page,pagenum} +} +\cs_new_protected_nopar:Npn \lastpage +{ + \property_ref:nn {t:lastpage}{page} +} +\ExplSyntaxOff +\definecolor{strawberry}{rgb}{1.000,0.000,0.502} +\definecolor{blueberry}{rgb}{0.000,0.000,1.000} +\definecolor{moss}{rgb}{0.000,0.502,0.251} +\makeatletter + \def\@seccntformat#1{\adforn{74}\csname the#1\endcsname\quad} +\newcommand{\adfornset}{% +1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75} +\newcommand{\adfornshow}{% + \def\tempa{75}% + \@for \xx:=\adfornset \do {% + \ifx\xx\tempa + \xx: \adforn{\xx}% + \else + \xx: \adforn{\xx}\\% + \fi}} +\makeatother + + +\begin{document} + \DocInput{\filename} +\end{document} +%</driver> +% \fi +% +% \newcommand*{\adf}{ADF} +% \newcommand*{\lpack}[1]{\textsf{#1}} +% \newcommand*{\fgroup}[1]{\textsf{#1}} +% \newcommand*{\fname}[1]{\textsf{#1}} +% \newcommand*{\file}[1]{\texttt{#1}} +% +% \changes{v??}{YYYY/??/??}{First public release.} +% \changes{v1.2}{2024-09-29}{Belated update for (New) NFSS and revised nfssext-cfr. +% Try switching to DTX/INS.} +% +% \maketitle\thispagestyle{empty} +% \pdfinfo{% +% /Creator (TeX) +% /Producer (pdfTeX) +% /Author (Clea F. Rees) +% /Title (adforn) +% /Subject (TeX) +% /Keywords (TeX,LaTeX,font,fonts,tex,latex,Ornements,ornements,ornementsadf,adforn,OrnementsADF,ADF,adf,Arkandis,Digital,Foundry,arkandis,digital,foundry,Hirwen,Harendal,Clea,Rees)} +% \setlength{\parindent}{0pt} +% \setlength{\parskip}{0.5em} +% +% +% \begin{abstract} +% \hspace*{-\parindent}Hirwen Harendal, Arkandis Digital Foundry (\adf) has produced Ornements \adf. This guide outlines the \TeX/\LaTeX\ support provided with version 1.001 of the font in postscript type 1 format. +% \end{abstract} +% +% \section{Introduction} +% +% This document explains how to use the \TeX/\LaTeX\ support included with version 1.001 of Ornements \adf\ in postscript type 1 format. The font was developed by Hirwen Harendal of the Arkandis Digital Foundry (\adf), and information about the font itself, together with a copy of the font in opentype format, can be found at \url{http://pagesperso-orange.fr/arkandis/ADF/tugfonts.htm}. The font is released under the \textsc{gpl}. For details, see \textsc{readme}, \textsc{notice} and \textsc{copying}. +% +% The \TeX/\LaTeX\ support package consists of all files listed in \lpack{manifest.txt}\ and these files are released under the \LaTeX\ Project Public Licence as explained in the included licensing notices and \textsc{readme}. Please let me know of any problems so that I can solve them if I can. If you can correct the problems and send me the fix, that would be even better. Unlike the font itself, the \TeX/\LaTeX\ support is somewhat experimental. +% +% \lpack{adforn} includes a copy of the font in type 1 format (\path{OrnementsADF.pfb}, \path{OrnementsADF.pfm} and \path{OrnementsADF.afm}), documentation and support files for \TeX/\LaTeX\, including a \LaTeX\ package file, \path{adforn.sty}. +% +% \section{The support package}\label{sec:support} +% +% \DescribePkg{adforn} \cs{usepackage}\oarg{options}\marg{adforn} +% +% \lpack{adforn} provides access to the ornaments and symbols in \fname{OrnementsADF} via two sets of commands. First, it provides a single command which takes a range of arguments. The different arguments determine which ornament is typeset. Second, it provides a separate command for each ornament. The choice of command determines which ornament is typeset. The two mechanisms are equivalent\footnote{The only difference is that the first allows you to typeset a space by passing it the argument 0 whereas there is no command to typeset the space in the second set. For all practical purposes, this difference is irrelevant since you should not use such a command to typeset a space in \TeX\ in any case and it is difficult to see why anybody would want to.}. +% +% The package supports a lonely option to scale the fonts. +% +% \DescribeOpt{scale}\val{scaling factor} +% +% Scale the font by \meta{scaling factor}, which should be a positive integer or simple decimal such as \verb|2| or \verb|1.2|. +% This option is intended for cases where the fonts should be scaled to match other fonts used in the document e.g.~for consistency with the size of regular text or superscript markers. +% +% Initially empty, which is equivalent to \verb|1| but more efficient. +% +% \subsection{One command; many arguments} +% +% \lpack{adforn} provides the command \verb|\adforn{}| which takes a single numerical argument. There are 75 ornaments in the font which can be produced by feeding the relevant number between 1 and 75 to \verb|\adforn{}|\footnote{As mentioned above, the argument 0 will simply typeset a space and should be avoided as using it may interfere with \TeX's spacing algorithms. The problem is that \TeX\ will not recognise it as a space and so will treat it instead as a character.}: +% \begin{multicols}{5} %\raggedcolumns +% \adfornshow +% \end{multicols} +% For example, +% \begin{verbatim} +% \adforn{21}\quad\adforn{11}\quad\adforn{49} +% \end{verbatim} +% produces: +% \begin{center} +% \adforn{21}\quad\adforn{11}\quad\adforn{49} +% \end{center} +% +% \subsection{Many commands; no arguments} +% +% In addition to the numerical interface, a number of additional commands are provided as an alternative means of accessing the various symbols and ornaments. The following list groups them roughly according to kind. In each case, the number of the ornament is given first. This may be used directly with the \verb|\adforn{}| command as explained above. The alternative command is given next. This command may be used to typeset the same ornament. For example both \verb|\adforn{14}| and \verb|\adfdiamond| produce \adfdiamond. Finally, the ornament produced by the two commands is typeset to their right. +% +% \newcommand*{\adforngroup}[1]{% +% \scshape #1} +% \begin{longtable}{llllll} +% \toprule +% % \textbf{no.} & \textbf{command} & \textbf{} & \textbf{no.} & \textbf{command} & \textbf{}\\\midrule +% \endfirsthead +% \toprule%\multicolumn{6}{l}{\adforngroup{basic symbols \& shapes cont.}}\\\midrule +% \endhead +% \bottomrule\endfoot +% +% \multicolumn{6}{l}{\adforngroup{basic symbols \& shapes}}\\\midrule +% 74 %& \adforn{74} +% & \verb|\adfS| & \adfS &%\\ +% 75 %& \adforn{75} +% & \verb|\adfgee| & \adfgee\\ +% 14 %& \adforn{14} +% & \verb|\adfdiamond| & \adfdiamond &%\\ +% 71 %& \adforn{71} +% & \verb|\adfsquare| & \adfsquare\\ +% 73 %& \adforn{73} +% & \verb|\adfbullet| & \adfbullet\\%\midrule +% +% \multicolumn{6}{l}{\adforngroup{fancy asterisks \& bullets}}\\\midrule +% 3 %& \adforn{3} +% & \verb|\adfast1| & \adfast1 &%\\ +% 4 %& \adforn{4} +% & \verb|\adfast2| & \adfast2 \\ +% 5 %& \adforn{5} +% & \verb|\adfast3| & \adfast3 &%\\ +% 6 %& \adforn{6} +% & \verb|\adfast4| & \adfast4 \\ +% 7 %& \adforn{7} +% & \verb|\adfast5| & \adfast5 &%\\ +% 8 %& \adforn{8} +% & \verb|\adfast6| & \adfast6 \\ +% 9 %& \adforn{9} +% & \verb|\adfast7| & \adfast7 &%\\ +% 10 %& \adforn{10} +% & \verb|\adfast8| & \adfast8 \\ +% 11 %& \adforn{11} +% & \verb|\adfast9| & \adfast9 &%\\ +% 12 %& \adforn{12} +% & \verb|\adfast{10}| & \adfast{10} \\\midrule +% +% \multicolumn{6}{l}{\adforngroup{arrows \& arrowheads}}\\\midrule +% 70 %& \adforn{70} +% & \verb|\adfhalfleftarrow| & \adfhalfleftarrow &%\\ +% 72 %& \adforn{72} +% & \verb|\adfhalfrightarrow| & \adfhalfrightarrow\\ +% 42 %& \adforn{42} +% & \verb|\adfleftarrowhead| & \adfleftarrowhead &%\\ +% 43 %& \adforn{43} +% & \verb|\adfrightarrowhead| & \adfrightarrowhead\\ +% 1 %& \adforn{1} +% & \verb|\adfhalfleftarrowhead| & \adfhalfleftarrowhead &%\\ +% 2 %& \adforn{2} +% & \verb|\adfhalfrightarrowhead| & \adfhalfrightarrowhead\\\midrule +% +% \multicolumn{6}{l}{\adforngroup{flourishes}}\\\midrule +% 20 %& \adforn{20} +% & \verb|\adfflourishleft| & \adfflourishleft &%\\ +% 48 %& \adforn{48} +% & \verb|\adfflourishright| & \adfflourishright\\ +% 21 %& \adforn{21} +% & \verb|\adfflourishleftdouble| & \adfflourishleftdouble &%\\ +% 49 %& \adforn{49} +% & \verb|\adfflourishrightdouble| & \adfflourishrightdouble\\ +% 17 %& \adforn{17} +% & \verb|\adfopenflourishleft| & \adfopenflourishleft &%\\ +% 45 %& \adforn{45} +% & \verb|\adfopenflourishright| & \adfopenflourishright\\ +% 18 %& \adforn{18} +% & \verb|\adfclosedflourishleft| & \adfclosedflourishleft &%\\ +% 46 %& \adforn{46} +% & \verb|\adfclosedflourishright| & \adfclosedflourishright\\ +% 22 %& \adforn{22} +% & \verb|\adfsingleflourishleft| & \adfsingleflourishleft &%\\ +% 50 %& \adforn{50} +% & \verb|\adfsingleflourishright| & \adfsingleflourishright\\ +% 19 %& \adforn{19} +% & \verb|\adfdoubleflourishleft| & \adfdoubleflourishleft &%\\ +% 47 %& \adforn{47} +% & \verb|\adfdoubleflourishright| & \adfdoubleflourishright\\ +% 26 %& \adforn{26} +% & \verb|\adftripleflourishleft| & \adftripleflourishleft &%\\ +% 54 %& \adforn{54} +% & \verb|\adftripleflourishright| & \adftripleflourishright\\ +% 23 %& \adforn{23} +% & \verb|\adfsharpflourishleft| & \adfsharpflourishleft &%\\ +% 51 %& \adforn{51} +% & \verb|\adfsharpflourishright| & \adfsharpflourishright\\ +% 24 %& \adforn{24} +% & \verb|\adfdoublesharpflourishleft| & \adfdoublesharpflourishleft &%\\ +% 52 %& \adforn{52} +% & \verb|\adfdoublesharpflourishright| & \adfdoublesharpflourishright\\ +% 25 %& \adforn{25} +% & \verb|\adfsickleflourishleft| & \adfsickleflourishleft &%\\ +% 53 %& \adforn{53} +% & \verb|\adfsickleflourishright| & \adfsickleflourishright\\ +% 16 %& \adforn{16} +% & \verb|\adfwavesleft| & \adfwavesleft &%\\ +% 44 %& \adforn{44} +% & \verb|\adfwavesright | & \adfwavesright \\\midrule +% +% \multicolumn{6}{l}{\adforngroup{flowers}}\\\midrule +% 60 %& \adforn{32} +% & \verb|\adfflowerleft| & \adfflowerleft &%\\ +% 32 %& \adforn{60} +% & \verb|\adfflowerright| & \adfflowerright\\\midrule +% +% \multicolumn{6}{l}{\adforngroup{leaves}}\\\midrule +% 66 %& \adforn{66} +% & \verb|\adfleafleft| & \adfleafleft &%\\ +% 38 %& \adforn{38} +% & \verb|\adfleafright| & \adfleafright\\ +% 59 %& \adforn{59} +% & \verb|\adfsolidleafleft| & \adfsolidleafleft &%\\ +% 31 %& \adforn{31} +% & \verb|\adfsolidleafright| & \adfsolidleafright\\ +% 13 %& \adforn{13} +% & \verb|\adfhalfleafleft| & \adfhalfleafleft &%\\ +% 15 %& \adforn{15} +% & \verb|\adfhalfleafright| & \adfhalfleafright\\ +% 58 %& \adforn{58} +% & \verb|\adfoutlineleafleft| & \adfoutlineleafleft &%\\ +% 30 %& \adforn{30} +% & \verb|\adfoutlineleafright| & \adfoutlineleafright\\ +% 68 %& \adforn{68} +% & \verb|\adfsmallleafleft| & \adfsmallleafleft &%\\ +% 40 %& \adforn{40} +% & \verb|\adfsmallleafright| & \adfsmallleafright\\ +% 64 %& \adforn{64} +% & \verb|\adfflatleafleft| & \adfflatleafleft &%\\ +% 36 %& \adforn{36} +% & \verb|\adfflatleafright| & \adfflatleafright\\ +% 57 %& \adforn{57} +% & \verb|\adfflatleafoutlineleft| & \adfflatleafoutlineleft &%\\ +% 29 %& \adforn{29} +% & \verb|\adfflatleafoutlineright| & \adfflatleafoutlineright\\ +% 65 %& \adforn{65} +% & \verb|\adfflatleafsolidleft| & \adfflatleafsolidleft &%\\ +% 37 %& \adforn{37} +% & \verb|\adfflatleafsolidright| & \adfflatleafsolidright\\ +% 67 %& \adforn{67} +% & \verb|\adfdownleafleft| & \adfdownleafleft &%\\ +% 39 %& \adforn{39} +% & \verb|\adfdownleafright| & \adfdownleafright\\ +% 61 %& \adforn{61} +% & \verb|\adfdownhalfleafleft| & \adfdownhalfleafleft &%\\ +% 33 %& \adforn{33} +% & \verb|\adfdownhalfleafright| & \adfdownhalfleafright\\ +% 55 %& \adforn{55} +% & \verb|\adfflatdownhalfleafleft| & \adfflatdownhalfleafleft &%\\ +% 27 %& \adforn{27} +% & \verb|\adfflatdownhalfleafright| & \adfflatdownhalfleafright\\ +% 56 %& \adforn{56} +% & \verb|\adfflatdownoutlineleafleft| & \adfflatdownoutlineleafleft &%\\ +% 28 %& \adforn{28} +% & \verb|\adfflatdownoutlineleafright| & \adfflatdownoutlineleafright\\ +% 35 %& \adforn{35} +% & \verb|\adfhangingleafleft| & \adfhangingleafleft &%\\ +% 63 %& \adforn{63} +% & \verb|\adfhangingleafright| & \adfhangingleafright\\ +% 69 %& \adforn{69} +% & \verb|\adfsmallhangingleafleft| & \adfsmallhangingleafleft &%\\ +% 41 %& \adforn{41} +% & \verb|\adfsmallhangingleafright| & \adfsmallhangingleafright\\ +% 62 %& \adforn{62} +% & \verb|\adfhangingflatleafleft| & \adfhangingflatleafleft &%\\ +% 34 %& \adforn{34} +% & \verb|\adfhangingflatleafright| & \adfhangingflatleafright\\ +% +% \end{longtable} +% So, +% \iffalse +%<*verb> +% \fi +\begin{verbatim} + \adfflourishleftdouble\quad\adfast9\quad\adfflourishrightdouble +\end{verbatim} +% \iffalse +%</verb> +% \fi +% will produce the same output as the example code given in the previous section: +% \begin{center} +% \adfflourishleftdouble\quad\adfast9\quad\adfflourishrightdouble +% \end{center} +% +% +% \appendix +% +% +% \MaybeStop{% +% \PrintChanges +% \PrintIndex +% } +% +% \section{Implementation} +% +% You do not need to read the remainder of this document in order to install or use the fonts. +% +% \subsection{Package}\label{subsec:sty} +% +% Simple wrappers. +% \iffalse +%<*sty> +% \fi +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +\RequirePackage{svn-prov} +\ProvidesPackageSVN[\filebase.sty]{$Id: adforn.dtx 10442 2024-09-29 18:25:09Z cfrees $}[v1.2 \revinfo] +\DefineFileInfoSVN[adforn] +\newif\if@adforn@digonnew +% \end{macrocode} +% Copied verbatim, excepting format and modulo package/module name from Joseph Wright's \file{siunitx.sty} under LPPL +% \begin{macrocode} +\@ifundefined{ExplLoaderFileDate}{% + \IfFileExists{expl3.sty}{% + \RequirePackage{expl3}% + }{% + \@adforn@digonnewfalse + }% +}{\@adforn@digonnewtrue} +% \end{macrocode} +% \texttt{scale} takes a factor by which to scale the fonts. +% This is empty by default, which is equivalent to \texttt{1}, but more efficient. +% \begin{macrocode} +\if@adforn@digonnew +\ExplSyntaxOn +\keys_define:nn { adforn } +{ + scale .tl_set:N = \adforn@scale, + scale .initial:V = \@empty, +} +\else + \let\adforn@scale\@empty +\fi +% \end{macrocode} +% Provide \cs{ProcessKeyOptions}, \cs{IfFormatAtLeastTF} on older kernels. +% Joseph Wright: from \file{siunitx.sty} ; \url{https://chat.stackexchange.com/transcript/message/64327823#64327823} +% \begin{macrocode} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion } +\IfFormatAtLeastTF { 2022-06-01 } +{ + \ProcessKeyOptions [ adforn ] +}{ + \RequirePackage { l3keys2e } + \ProcessKeysOptions { adforn } +} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\ExplSyntaxOff +% \end{macrocode} +% \begin{macro}{\adforn@style} +% \mbox{} +% \begin{macrocode} +\DeclareRobustCommand{\adforn@style}{%% do NOT break line below! + \not@math@alphabet\adforn@style\relax + \fontencoding{U}\fontfamily{OrnementsADF}\fontseries{m}\fontshape{n}\selectfont +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adforn} +% \changes{v1.2}{2024-09-29}{Remove \lpack{pifont} dependency.} +% \mbox{} +% \begin{macrocode} +\newcommand*\adforn[1]{{\adforn@style\char#1}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfhalfleftarrowhead} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfhalfleftarrowhead}{\adforn{1}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfhalfrightarrowhead} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfhalfrightarrowhead}{\adforn{2}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfast} +% \mbox{} +% \begin{macrocode} +\gdef\adfast#1{% + \ifcase #1 \relax + \or \adforn{3}% + \or \adforn{4}% + \or \adforn{5}% + \or \adforn{6}% + \or \adforn{7}% + \or \adforn{8}% + \or \adforn{9}% + \or \adforn{10}% + \or \adforn{11}% + \or \adforn{12}% + \fi} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfhalfleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfhalfleafleft}{\adforn{13}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfdiamond} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfdiamond}{\adforn{14}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfhalfleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfhalfleafright}{\adforn{15}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfwavesleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfwavesleft}{\adforn{16}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfopenflourishleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfopenflourishleft}{\adforn{17}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfclosedflourishleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfclosedflourishleft}{\adforn{18}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfdoubleflourishleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfdoubleflourishleft}{\adforn{19}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflourishleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflourishleft}{\adforn{20}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflourishleftdouble} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflourishleftdouble}{\adforn{21}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsingleflourishleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsingleflourishleft}{\adforn{22}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsharpflourishleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsharpflourishleft}{\adforn{23}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfdoublesharpflourishleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfdoublesharpflourishleft}{\adforn{24}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsickleflourishleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsickleflourishleft}{\adforn{25}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adftripleflourishleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adftripleflourishleft}{\adforn{26}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflatdownhalfleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflatdownhalfleafright}{\adforn{27}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflatdownoutlineleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflatdownoutlineleafright}{\adforn{28}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflatleafoutlineright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflatleafoutlineright}{\adforn{29}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfoutlineleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfoutlineleafright}{\adforn{30}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsolidleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsolidleafright}{\adforn{31}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflowerright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflowerright}{\adforn{32}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfdownhalfleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfdownhalfleafright}{\adforn{33}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfhangingflatleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfhangingflatleafright}{\adforn{34}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfhangingleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfhangingleafleft}{\adforn{35}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflatleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflatleafright}{\adforn{36}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflatleafsolidright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflatleafsolidright}{\adforn{37}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfleafright}{\adforn{38}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfdownleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfdownleafright}{\adforn{39}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsmallleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsmallleafright}{\adforn{40}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsmallhangingleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsmallhangingleafright}{\adforn{41}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfleftarrowhead} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfleftarrowhead}{\adforn{42}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfrightarrowhead} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfrightarrowhead}{\adforn{43}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfwavesright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfwavesright}{\adforn{44}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfopenflourishright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfopenflourishright}{\adforn{45}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfclosedflourishright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfclosedflourishright}{\adforn{46}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfdoubleflourishright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfdoubleflourishright}{\adforn{47}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflourishright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflourishright}{\adforn{48}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflourishrightdouble} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflourishrightdouble}{\adforn{49}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsingleflourishright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsingleflourishright}{\adforn{50}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsharpflourishright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsharpflourishright}{\adforn{51}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfdoublesharpflourishright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfdoublesharpflourishright}{\adforn{52}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsickleflourishright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsickleflourishright}{\adforn{53}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adftripleflourishright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adftripleflourishright}{\adforn{54}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflatdownhalfleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflatdownhalfleafleft}{\adforn{55}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflatdownoutlineleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflatdownoutlineleafleft}{\adforn{56}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflatleafoutlineleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflatleafoutlineleft}{\adforn{57}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfoutlineleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfoutlineleafleft}{\adforn{58}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsolidleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsolidleafleft}{\adforn{59}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflowerleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflowerleft}{\adforn{60}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfdownhalfleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfdownhalfleafleft}{\adforn{61}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfhangingflatleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfhangingflatleafleft}{\adforn{62}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfhangingleafright} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfhangingleafright}{\adforn{63}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflatleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflatleafleft}{\adforn{64}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfflatleafsolidleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfflatleafsolidleft}{\adforn{65}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfleafleft}{\adforn{66}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfdownleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfdownleafleft}{\adforn{67}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsmallleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsmallleafleft}{\adforn{68}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsmallhangingleafleft} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsmallhangingleafleft}{\adforn{69}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfhalfleftarrow} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfhalfleftarrow}{\adforn{70}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfsquare} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfsquare}{\adforn{71}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfhalfrightarrow} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfhalfrightarrow}{\adforn{72}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfbullet} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfbullet}{\adforn{73}} +\newcommand*{\adfS}{\adforn{74}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\adfgee} +% \mbox{} +% \begin{macrocode} +\newcommand*{\adfgee}{\adforn{75}} +% \end{macrocode} +% \end{macro} +%^^A paid â chynnwys \endinput - docstrip yn chwilio amddo fe yn arbennigol +%^^A & bydd doctrip yn ei ychwanegu fe beth bynnag +%^^A (Martin Scharrer: https://tex.stackexchange.com/a/28997/) +% \begin{macrocode} +%% end adforn.sty +% \end{macrocode} +% \iffalse +%</sty> +% \fi +% +% The remaining files are not used directly, but are required to generate the files which allow \TeX{} and \LaTeX{} to use the fonts. +% The sources use \verb|fontinst| as explained in the (sparse) comments. +% While you can install these files into a \TeX{} tree, they are not required for typesetting. +% +% \subsection{Driver} +% +% The file does all the initial setup of the fonts. +% It organises the fonts into families, defines shapes and reencodes as required. +% +% \iffalse +%<*enc> +% \fi +% \begin{macrocode} +/OrnementsADFEncoding [ +/space +/parenleft +/parenright +/zero +/one +/two +/three +/four +/five +/six +/seven +/eight +/nine +/less +/equal +/greater +/A +/B +/C +/D +/E +/F +/G +/H +/I +/J +/K +/L +/M +/N +/O +/P +/Q +/R +/S +/T +/U +/V +/W +/X +/Y +/Z +/bracketleft +/bracketright +/a +/b +/c +/d +/e +/f +/g +/h +/i +/j +/k +/l +/m +/n +/o +/p +/q +/r +/s +/t +/u +/v +/w +/x +/y +/z +/braceleft +/bar +/braceright +/bullet +/section +/paragraph +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +/.notdef +] def +% \end{macrocode} +% \iffalse +%</enc> +% \fi +% +% \subsection{Font Definitions}\label{subsec:fds} +% +% \iffalse +%<*fd> +% \fi +% \begin{fntdefn}{uornementsadf.fd} +% Font declarations for OrnementsADF font +% \begin{macrocode} +\ProvidesFile{uornements.fd}[v1.2 2024/09/29 font definitions for U/OrnementsADF.] +% \end{macrocode} +% \changes{v1.2}{2024-09-29}{Support for scaling.} +% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25) +% \begin{macrocode} + \expandafter\ifx\csname adforn@scale\endcsname\relax + \let\adforn@@scale\@empty + \else + \edef\adforn@@scale{s*[\csname adforn@scale\endcsname]}% + \fi +\DeclareFontFamily{U}{OrnementsADF}{} +\DeclareFontShape{U}{OrnementsADF}{m}{n}{ + <-> \adforn@@scale OrnementsADF +}{} +\DeclareFontShape{U}{OrnementsADF}{m}{sc}{<->ssub * OrnementsADF/m/n}{} +\DeclareFontShape{U}{OrnementsADF}{m}{it}{<->ssub * OrnementsADF/m/sc}{} +\DeclareFontShape{U}{OrnementsADF}{m}{sl}{<->ssub * OrnementsADF/m/it}{} +\DeclareFontShape{U}{OrnementsADF}{m}{si}{<->ssub * OrnementsADF/m/sl}{} +\DeclareFontShape{U}{OrnementsADF}{m}{scit}{<->ssub * OrnementsADF/m/si}{} +\DeclareFontShape{U}{OrnementsADF}{m}{scsl}{<->ssub * OrnementsADF/m/scit}{} +\DeclareFontShape{U}{OrnementsADF}{b}{n}{<->ssub * OrnementsADF/m/scsl}{} +\DeclareFontShape{U}{OrnementsADF}{b}{sc}{<->ssub * OrnementsADF/b/n}{} +\DeclareFontShape{U}{OrnementsADF}{b}{it}{<->ssub * OrnementsADF/b/sc}{} +\DeclareFontShape{U}{OrnementsADF}{b}{sl}{<->ssub * OrnementsADF/b/it}{} +\DeclareFontShape{U}{OrnementsADF}{b}{si}{<->ssub * OrnementsADF/b/sl}{} +\DeclareFontShape{U}{OrnementsADF}{b}{scit}{<->ssub * OrnementsADF/b/si}{} +\DeclareFontShape{U}{OrnementsADF}{b}{scsl}{<->ssub * OrnementsADF/b/scit}{} +\DeclareFontShape{U}{OrnementsADF}{bx}{n}{<->ssub * OrnementsADF/b/scsl}{} +\DeclareFontShape{U}{OrnementsADF}{bx}{sc}{<->ssub * OrnementsADF/bx/n}{} +\DeclareFontShape{U}{OrnementsADF}{bx}{it}{<->ssub * OrnementsADF/bx/sc}{} +\DeclareFontShape{U}{OrnementsADF}{bx}{sl}{<->ssub * OrnementsADF/bx/it}{} +\DeclareFontShape{U}{OrnementsADF}{bx}{si}{<->ssub * OrnementsADF/bx/sl}{} +\DeclareFontShape{U}{OrnementsADF}{bx}{scit}{<->ssub * OrnementsADF/bx/si}{} +\DeclareFontShape{U}{OrnementsADF}{bx}{scsl}{<->ssub * OrnementsADF/bx/scit}{} +% \end{macrocode} +% \end{fntdefn} +% \iffalse +%</fd> +% \fi +% +% \iffalse +% \fi +% \iffalse +% \fi +% \iffalse +% \fi +% \iffalse +% \fi +%\Finale +%^^A vim: sw=2:et:tw=0: diff --git a/fonts/adforn/source/adforn.ins b/fonts/adforn/source/adforn.ins new file mode 100644 index 0000000000..570246b4a6 --- /dev/null +++ b/fonts/adforn/source/adforn.ins @@ -0,0 +1,183 @@ +%% $Id: adforn.ins 10435 2024-09-29 08:12:12Z cfrees $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% adforn.ins +%% Additions and changes Copyright (C) YYYY-2024 Clea F. Rees. +%% Code from skeleton.ins Copyright (C) 2015-2024 Scott Pakin (see below). +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% https://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2008-05-04 or later. +%% +%% This work has the LPPL maintenance status `maintained'. +%% +%% The Current Maintainer of this work is Clea F. Rees. +%% +%% This work consists of all files listed in manifest.txt. +%% +%% The file adforn.ins is a derived work under the terms of the +%% LPPL. It is based on version 2.4 of skeleton.ins which is part of +%% dtxtut by Scott Pakin. A copy of dtxtut, including the +%% unmodified version of skeleton.ins is available from +%% https://www.ctan.org/pkg/dtxtut and released under the LPPL. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\input docstrip.tex +\keepsilent + +\usedir{tex/latex/adforn} + +\begingroup +\obeyspaces +\let\maybenoexpand\noexpand +\xdef\mkpreamble{% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +^^J\DoubleperCent\space +Copyright (C) \maybenoexpand\targDates Clea F. Rees.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work may be distributed and/or modified under the^^J\DoubleperCent\space +conditions of the LaTeX Project Public License, either version 1.3c^^J\DoubleperCent\space +of this license or (at your option) any later version.^^J\DoubleperCent\space +The latest version of this license is in^^J\DoubleperCent\space + https://www.latex-project.org/lppl.txt^^J\DoubleperCent\space +and version 1.3c or later is part of all distributions of LaTeX^^J\DoubleperCent\space +version 2008-05-04 or later.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work has the LPPL maintenance status `maintained'.^^J\DoubleperCent\space +^^J\DoubleperCent\space +The Current Maintainer of this work is Clea F. Rees.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This file may only be distributed together with a copy of the package^^J\DoubleperCent\space +fontscripts. You may however distribute the package fontscripts without^^J\DoubleperCent\space +such generated files.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work consists of all files listed in manifest.txt.^^J\DoubleperCent\space +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +} +\xdef\mkderpreamble{% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +^^J\DoubleperCent\space +Additions and changes Copyright (C) \maybenoexpand\targDates Clea F. Rees.^^J\DoubleperCent\space +Code from \maybenoexpand\basePkgName Copyright (C) \maybenoexpand\baseDates \maybenoexpand\basePkgAu (see below)^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work may be distributed and/or modified under the^^J\DoubleperCent\space +conditions of the LaTeX Project Public License, either version 1.3c^^J\DoubleperCent\space +of this license or (at your option) any later version.^^J\DoubleperCent\space +The latest version of this license is in^^J\DoubleperCent\space + https://www.latex-project.org/lppl.txt^^J\DoubleperCent\space +and version 1.3c or later is part of all distributions of LaTeX^^J\DoubleperCent\space +version 2008-05-04 or later.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work has the LPPL maintenance status `maintained'.^^J\DoubleperCent\space +^^J\DoubleperCent\space +The Current Maintainer of this work is Clea F. Rees.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work consists of all files listed in manifest.txt.^^J\DoubleperCent\space +^^J\DoubleperCent\space +\maybenoexpand\targType\maybenoexpand\outFileName is a derived work under the terms of the^^J\DoubleperCent\space +LPPL. The original file, \maybenoexpand\baseFileName, is supplied with \maybenoexpand\basePkgName. A copy^^J\DoubleperCent\space +of \maybenoexpand\basePkgName including an unmodified copy of \maybenoexpand\baseFileName is available from^^J\DoubleperCent\space +https://www.ctan.org/pkg/\maybenoexpand\basePkgName.^^J\DoubleperCent\space +The main modifications made to this file are listed below.^^J\DoubleperCent\space +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +} +\xdef\mkbasedpreamble{% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +^^J\DoubleperCent\space +Additions and changes Copyright (C) \maybenoexpand\targDates Clea F. Rees.^^J\DoubleperCent\space +Code from \maybenoexpand\basePkgName Copyright (C) \maybenoexpand\baseDates \maybenoexpand\basePkgAu (see below)^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work may be distributed and/or modified under the^^J\DoubleperCent\space +conditions of the LaTeX Project Public License, either version 1.3c^^J\DoubleperCent\space +of this license or (at your option) any later version.^^J\DoubleperCent\space +The latest version of this license is in^^J\DoubleperCent\space + https://www.latex-project.org/lppl.txt^^J\DoubleperCent\space +and version 1.3c or later is part of all distributions of LaTeX^^J\DoubleperCent\space +version 2008-05-04 or later.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work has the LPPL maintenance status `maintained'.^^J\DoubleperCent\space +^^J\DoubleperCent\space +The Current Maintainer of this work is Clea F. Rees.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work consists of all files listed in manifest.txt.^^J\DoubleperCent\space +^^J\DoubleperCent\space +\maybenoexpand\targType\maybenoexpand\outFileName is a derived work under the terms of the LPPL. ^^J\DoubleperCent\space +It is based on \maybenoexpand\baseFileName from \maybenoexpand\basePkgName. A copy of \maybenoexpand\basePkgName ^^J\DoubleperCent\space +including a copy of \maybenoexpand\baseFileName is available from^^J\DoubleperCent\space +https://www.ctan.org/pkg/\maybenoexpand\basePkgName. See \maybenoexpand\baseFileName for commentary.^^J\DoubleperCent\space +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +} +\endgroup + +\def\targDates{2024} +\expandafter\declarepreamble\expandafter\safonol\mkpreamble +\endpreamble +\def\targDates{2008-2024} +\expandafter\declarepreamble\expandafter\safonolenc\mkpreamble +\endpreamble +\def\targType{The encoding } +\def\basePkgName{fontinst} +\def\baseFileName{t1.etx} +\def\basePkgAu{Alan Jeffrey and Sebastian^^J\DoubleperCent\space Rahtz and Ulrik Vieth and Lars Hellström (see below)} +\def\baseDates{2002} +\expandafter\declarepreamble\expandafter\derpreamblefi\mkderpreamble +\endpreamble +\def\targDates{2024} +\expandafter\declarepreamble\expandafter\derpreamblefin\mkderpreamble +\endpreamble +\def\baseFileName{ts1.etx} +\expandafter\declarepreamble\expandafter\derpreamblefintc\mkderpreamble +\endpreamble +\def\targDates{2008-2024} +\expandafter\declarepreamble\expandafter\derpreamblefitc\mkderpreamble +\endpreamble +\def\targType{The metrics file } +\def\baseFileName{newlatin.mtx} +\expandafter\declarepreamble\expandafter\derpreamblefim\mkderpreamble +\endpreamble +\def\baseFileName{lsmisc.mtx} +\expandafter\declarepreamble\expandafter\basedpreamblefimm\mkbasedpreamble +\endpreamble +\def\baseFileName{lsbuild.mtx} +\expandafter\declarepreamble\expandafter\basedpreamblefimb\mkbasedpreamble +\endpreamble + + + +\askforoverwritefalse +\askonceonly + +\usepreamble\safonol + +\generate{\file{adforn.sty}{\from{adforn.dtx}{sty}} + \file{OrnementsADF.enc}{\from{adforn.dtx}{enc}} + \file{uornementsadf.fd}{\from{adforn.dtx}{fd}} +} + +\obeyspaces +\Msg{*************************************************************} +\Msg{* *} +\Msg{* To finish the installation you have to move the following *} +\Msg{* files into a directory searched by TeX: *} +\Msg{* *} +\Msg{* adforn.sty *} +\Msg{* *.fd *} +\Msg{* *.map *} +\Msg{* *.pfb *} +\Msg{* *.tfm *} +\Msg{* *.enc *} +\Msg{* *} +\Msg{* update the filename database, if applicable, and install *} +\Msg{* the map file(s) with updmap-sys or similar. *} +\Msg{* *} +\Msg{* To produce the documentation run the file adforn.dtx *} +\Msg{* through LaTeX. *} +\Msg{* *} +\Msg{* Happy TeXing! *} +\Msg{* *} +\Msg{*************************************************************} + +\endbatchfile diff --git a/fonts/adforn/tfm/OrnementsADF.tfm b/fonts/adforn/tfm/OrnementsADF.tfm Binary files differnew file mode 100644 index 0000000000..0d00850e70 --- /dev/null +++ b/fonts/adforn/tfm/OrnementsADF.tfm diff --git a/fonts/adforn/OrnementsADF.pfb b/fonts/adforn/type1/OrnementsADF.pfb Binary files differindex 29021ba13a..29021ba13a 100644 --- a/fonts/adforn/OrnementsADF.pfb +++ b/fonts/adforn/type1/OrnementsADF.pfb diff --git a/fonts/adforn/uornementsadf.fd b/fonts/adforn/uornementsadf.fd deleted file mode 100644 index 1e0d4a6748..0000000000 --- a/fonts/adforn/uornementsadf.fd +++ /dev/null @@ -1,17 +0,0 @@ -% Font declarations for OrnementsADF font -\DeclareFontFamily{U}{OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{m}{n}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{m}{sc}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{m}{it}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{m}{sl}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{m}{si}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{b}{n}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{b}{sc}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{b}{it}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{b}{sl}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{b}{si}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{bx}{n}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{bx}{sc}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{bx}{it}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{bx}{sl}{<-> OrnementsADF}{} -\DeclareFontShape{U}{OrnementsADF}{bx}{si}{<-> OrnementsADF}{} diff --git a/fonts/libertinus-fonts/AUTHORS.txt b/fonts/libertinus-fonts/AUTHORS.txt index e86c623913..5d31e1fe9d 100644 --- a/fonts/libertinus-fonts/AUTHORS.txt +++ b/fonts/libertinus-fonts/AUTHORS.txt @@ -5,21 +5,27 @@ # Names should be added to this file as: # Name or Organization <email address> +Autumn <autumn@cyfox.net> Caleb Maclennan <caleb@alerque.com> Christoph Päper <christoph.paeper@crissov.de> +Cor Blom <cornelisbb@gmail.com> Dario Gjorgjevski <dario.gjorgjevski@zalando.de> Felix Kopecky <felix.kopecky@langsci-press.org> Gyuris Gellért <bubu@ujevangelizacio.hu> Héctor M. Monacci <hector.monacci@gmail.com> Ivo Straka <ivo.straka@gmail.com> -jco <julienco@protonmail.com> +Jendrik Stelzner <jendrikstelzner@web.de> +Jonas Ehrhard <jonas_ehrhard@yahoo.de> Jonathan Washington <jonathan.n.washington@gmail.com> Khaled Hosny <khaledhosny@eglug.org> Mark E. Shoulson <mark@kli.org> Maurizio M. Gavioli <mmg@vistamaresoft.com> -Nicolas Semrau <nhs@openmailbox.org> +Nicolas Semrau <nsemrau@mailfence.com> +Nicolas Semrau <nsemrau@mailfence.com> +Niko Savola <niko.savola@aalto.fi> Philipp H. Poll <gillian@linuxlibertine.org> Stefan Peev <context.bg@gmail.com> +jco <julienco@protonmail.com> Elsevier, Inc Skef Iterum diff --git a/fonts/libertinus-fonts/CONTRIBUTORS.txt b/fonts/libertinus-fonts/CONTRIBUTORS.txt index 16b8b6e137..1398cbd14a 100644 --- a/fonts/libertinus-fonts/CONTRIBUTORS.txt +++ b/fonts/libertinus-fonts/CONTRIBUTORS.txt @@ -9,18 +9,23 @@ # Names should be added to this file as: # Name <email address> +Autumn <autumn@cyfox.net> Caleb Maclennan <caleb@alerque.com> Christoph Päper <christoph.paeper@crissov.de> +Cor Blom <cornelisbb@gmail.com> Dario Gjorgjevski <dario.gjorgjevski@zalando.de> Felix Kopecky <felix.kopecky@langsci-press.org> Gyuris Gellért <bubu@ujevangelizacio.hu> Ivo Straka <ivo.straka@gmail.com> -jco <julienco@protonmail.com> +Jendrik Stelzner <jendrikstelzner@web.de> +Jonas Ehrhard <jonas_ehrhard@yahoo.de> Jonathan Washington <jonathan.n.washington@gmail.com> Khaled Hosny <khaledhosny@eglug.org> Mark E. Shoulson <mark@kli.org> Maurizio M. Gavioli <mmg@vistamaresoft.com> -Nicolas Semrau <nhs@openmailbox.org> +Nicolas Semrau <nsemrau@mailfence.com> +Niko Savola <niko.savola@aalto.fi> Philipp H. Poll <gillian@linuxlibertine.org> Skef Iterum Stefan Peev <context.bg@gmail.com> +jco <julienco@protonmail.com> diff --git a/fonts/libertinus-fonts/FONTLOG.txt b/fonts/libertinus-fonts/FONTLOG.txt index 18b209d7be..c931826fad 100644 --- a/fonts/libertinus-fonts/FONTLOG.txt +++ b/fonts/libertinus-fonts/FONTLOG.txt @@ -45,6 +45,11 @@ https://github.com/alerque/libertinus ChangeLog --------- +27 September 2024 (Caleb Maclennan) <Libertinus> Version 7.051 +- Re-typeset multilingual sample pages +- Enable builds of autohinted static TTF variants via Fontship +- Correct some errors in composite glyphs in Hebrew Italic + 21 September 2024 (Caleb Maclennan) <Libertinus> Version 7.050 - Redo Hebrew vowel marks - Add (for Hebrew) uniE801-3, uniFB29, shin variants, letters with dagesh, diff --git a/fonts/libertinus-fonts/OFL.txt b/fonts/libertinus-fonts/OFL.txt index 575daf6287..e85f1f4c41 100644 --- a/fonts/libertinus-fonts/OFL.txt +++ b/fonts/libertinus-fonts/OFL.txt @@ -1,4 +1,4 @@ -Copyright © 2012-2021 The Libertinus Project Authors, +Copyright © 2012-2024 The Libertinus Project Authors, with Reserved Font Name "Linux Libertine", "Biolinum", "STIX Fonts". This Font Software is licensed under the SIL Open Font License, Version 1.1. diff --git a/fonts/libertinus-fonts/documentation/Sample.pdf b/fonts/libertinus-fonts/documentation/Sample.pdf Binary files differdeleted file mode 100644 index 1d0371b23b..0000000000 --- a/fonts/libertinus-fonts/documentation/Sample.pdf +++ /dev/null diff --git a/fonts/libertinus-fonts/documentation/sample.pdf b/fonts/libertinus-fonts/documentation/sample.pdf Binary files differnew file mode 100644 index 0000000000..013609afc8 --- /dev/null +++ b/fonts/libertinus-fonts/documentation/sample.pdf diff --git a/fonts/libertinus-fonts/documentation/waterfalls.pdf b/fonts/libertinus-fonts/documentation/waterfalls.pdf Binary files differnew file mode 100644 index 0000000000..38b3f8e766 --- /dev/null +++ b/fonts/libertinus-fonts/documentation/waterfalls.pdf diff --git a/fonts/libertinus-fonts/otf/LibertinusKeyboard-Regular.otf b/fonts/libertinus-fonts/otf/LibertinusKeyboard-Regular.otf Binary files differindex 56d94b110a..5ce2405db0 100644 --- a/fonts/libertinus-fonts/otf/LibertinusKeyboard-Regular.otf +++ b/fonts/libertinus-fonts/otf/LibertinusKeyboard-Regular.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusMath-Regular.otf b/fonts/libertinus-fonts/otf/LibertinusMath-Regular.otf Binary files differindex 397144f190..d3ba6f974a 100644 --- a/fonts/libertinus-fonts/otf/LibertinusMath-Regular.otf +++ b/fonts/libertinus-fonts/otf/LibertinusMath-Regular.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusMono-Regular.otf b/fonts/libertinus-fonts/otf/LibertinusMono-Regular.otf Binary files differindex 3482354bec..7760fe2706 100644 --- a/fonts/libertinus-fonts/otf/LibertinusMono-Regular.otf +++ b/fonts/libertinus-fonts/otf/LibertinusMono-Regular.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusSans-Bold.otf b/fonts/libertinus-fonts/otf/LibertinusSans-Bold.otf Binary files differindex facc80ed9b..1df71132e6 100644 --- a/fonts/libertinus-fonts/otf/LibertinusSans-Bold.otf +++ b/fonts/libertinus-fonts/otf/LibertinusSans-Bold.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusSans-Italic.otf b/fonts/libertinus-fonts/otf/LibertinusSans-Italic.otf Binary files differindex bbd602a37c..ef733636bb 100644 --- a/fonts/libertinus-fonts/otf/LibertinusSans-Italic.otf +++ b/fonts/libertinus-fonts/otf/LibertinusSans-Italic.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusSans-Regular.otf b/fonts/libertinus-fonts/otf/LibertinusSans-Regular.otf Binary files differindex f0afa096ab..9b12262476 100644 --- a/fonts/libertinus-fonts/otf/LibertinusSans-Regular.otf +++ b/fonts/libertinus-fonts/otf/LibertinusSans-Regular.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusSerif-Bold.otf b/fonts/libertinus-fonts/otf/LibertinusSerif-Bold.otf Binary files differindex 3ab7ed7167..49b51debbf 100644 --- a/fonts/libertinus-fonts/otf/LibertinusSerif-Bold.otf +++ b/fonts/libertinus-fonts/otf/LibertinusSerif-Bold.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusSerif-BoldItalic.otf b/fonts/libertinus-fonts/otf/LibertinusSerif-BoldItalic.otf Binary files differindex 07fe49f281..14926a1c62 100644 --- a/fonts/libertinus-fonts/otf/LibertinusSerif-BoldItalic.otf +++ b/fonts/libertinus-fonts/otf/LibertinusSerif-BoldItalic.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusSerif-Italic.otf b/fonts/libertinus-fonts/otf/LibertinusSerif-Italic.otf Binary files differindex 2a73d29ff9..84b275f5ae 100644 --- a/fonts/libertinus-fonts/otf/LibertinusSerif-Italic.otf +++ b/fonts/libertinus-fonts/otf/LibertinusSerif-Italic.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusSerif-Regular.otf b/fonts/libertinus-fonts/otf/LibertinusSerif-Regular.otf Binary files differindex 11328f58fe..a5cd6da006 100644 --- a/fonts/libertinus-fonts/otf/LibertinusSerif-Regular.otf +++ b/fonts/libertinus-fonts/otf/LibertinusSerif-Regular.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusSerif-Semibold.otf b/fonts/libertinus-fonts/otf/LibertinusSerif-Semibold.otf Binary files differindex 232e4e56cd..19f35f12ae 100644 --- a/fonts/libertinus-fonts/otf/LibertinusSerif-Semibold.otf +++ b/fonts/libertinus-fonts/otf/LibertinusSerif-Semibold.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusSerif-SemiboldItalic.otf b/fonts/libertinus-fonts/otf/LibertinusSerif-SemiboldItalic.otf Binary files differindex c471d4407c..567ddd15d0 100644 --- a/fonts/libertinus-fonts/otf/LibertinusSerif-SemiboldItalic.otf +++ b/fonts/libertinus-fonts/otf/LibertinusSerif-SemiboldItalic.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusSerifDisplay-Regular.otf b/fonts/libertinus-fonts/otf/LibertinusSerifDisplay-Regular.otf Binary files differindex 1f62ee408a..5dbaae798e 100644 --- a/fonts/libertinus-fonts/otf/LibertinusSerifDisplay-Regular.otf +++ b/fonts/libertinus-fonts/otf/LibertinusSerifDisplay-Regular.otf diff --git a/fonts/libertinus-fonts/otf/LibertinusSerifInitials-Regular.otf b/fonts/libertinus-fonts/otf/LibertinusSerifInitials-Regular.otf Binary files differindex 680fbff13b..789b311064 100644 --- a/fonts/libertinus-fonts/otf/LibertinusSerifInitials-Regular.otf +++ b/fonts/libertinus-fonts/otf/LibertinusSerifInitials-Regular.otf diff --git a/fonts/utilities/fontscripts/README.md b/fonts/utilities/fontscripts/README.md new file mode 100644 index 0000000000..f24e304d7e --- /dev/null +++ b/fonts/utilities/fontscripts/README.md @@ -0,0 +1,65 @@ +$Id: README.md 10379 2024-09-24 20:56:31Z cfrees $ + +================================================= +# fontscripts +================================================= + +This work, which consists of all files listed in manifest.txt, is released +under the LaTeX Project Public Licence version 1.3c or later. See individual +files for details. + +================================================= +## Purpose +================================================= + +The package provides variant font encodings, support metrics and Lua script +fragments to automate the creation of TeX/LaTeXe font files for 8-bit engines +using l3build. A template-based system enables the automatic generation of +font tables and l3build tests. + +The scripts make it possible to automate the generation of TeX fonts (TeX font +metrics, virtual fonts, map files etc.). For tools which do not otherwise +support it, such as fontinst, the scripts enable the automatic addition of +variable scaling in font definition files. A semi-automatic system tries to +ensure font encoding names are unique. + +The script fragments are primarily designed for fontinst, but can be adapted +for use with other programmes. The default configuration is intended to be +cross-platform and requires only tools included in TeX Live, but the +documentation includes a simple adaption for integration with FontForge and +GNU make. + +The encoding and metric files support fonts which use variant names for +characters. For example, fonts may use 'emdash' and 'endash' or 'f_f'. They also +support some fonts converted from opentype which use suffixes to distinguish +small-caps, for example, rather than placing these characters in separate fonts. + +================================================= +## Revision History +================================================= + +Initial release. + +================================================= +## Code Repositories +================================================= + +Code is hosted at + https://codeberg.org/cfr/nfssext +For convenience, the repository is mirrored at + https://github.com/cfr42/nfssext + +================================================= +## Contact Details +================================================= + +Bug reports, feature requests etc. should be filed at + https://codeberg.org/cfr/nfssext/issues + + +Clea F. Rees +Version 0.1 +2024-09-24 + +================================================= +vim: et:tw=80:sw=0: diff --git a/fonts/utilities/fontscripts/fnt-ctan.lua b/fonts/utilities/fontscripts/fnt-ctan.lua new file mode 100644 index 0000000000..a26983d293 --- /dev/null +++ b/fonts/utilities/fontscripts/fnt-ctan.lua @@ -0,0 +1,105 @@ +-- $Id: fnt-ctan.lua 10399 2024-09-27 02:16:30Z cfrees $ +------------------------------------------------- +local exts = {} + +------------------------------------------------- +-- origcopyctan() +-- copy David Carlisle +origcopyctan = copyctan + +------------------------------------------------- +-- extname(filename) +function extname(filename) + local b = basename(filename) + ext = string.gsub(b, "^[^%.]*%.", "") + if ext == nil then + gwall("Failed to get extension ",ext,1) + end + return ext +end +------------------------------------------------- +-- copysubctan(files,srcdir,targdir) +function copysubctan(files,srcdir,targdir) + local errorlevel + local extdir + if not direxists(targdir) then + errorlevel = mkdir(targdir) + if errorlevel ~= 0 then return errorlevel end + end + for i,j in ipairs(files) do + local ext = extname(j) + if exts[ext] == nil then + extdir = ext + exts[ext] = ext + else + extdir = exts[ext] + end + if not direxists(targdir .. "/" .. extdir) then + errorlevel = mkdir(targdir .. "/" .. extdir) + if errorlevel ~= 0 then return errorlevel end + end + errorlevel = cp(j,srcdir,targdir .. "/" .. extdir) + if errorlevel ~= 0 then return errorlevel end + end + return 0 +end +------------------------------------------------- +-- copyctan() +function copyctan() + local keepdir = keepdir or sourcefiledir .. "/keep" + local errorlevel + local targdir = ctandir .. "/" .. ctanpkg + keptfiles = {} + if #exts == 0 then exts = {"afm","dtx","enc","fd","ins","map","md","otf","pdf","pfb","pfm","tex","tfm","txt","vf"} end + if not exts["pfb"] then exts["pfb"] = "type1" end + if not exts["pfm"] then exts["pfm"] = "type1" end + if not exts["ttf"] then exts["ttf"] = "truetype" end + if not exts["otf"] then exts["otf"] = "opentype" end + if not exts["fd"] then exts["fd"] = "latex" end + if not exts["dtx"] then exts["dtx"] = "source" end + if not exts["ins"] then exts["ins"] = "source" end + if not exts["md"] then exts["md"] = "doc" end + if not exts["txt"] then exts["txt"] = "doc" end + if not exts["tex"] then exts["tex"] = "doc" end + if not exts["pdf"] then exts["pdf"] = "doc" end + for i,j in ipairs(filelist(keepdir,"*.*")) do + if j ~= "." and j ~= ".." then + table.insert(keptfiles,j) + end + end + copysubctan(keptfiles,keepdir,targdir) + origcopyctan() + local g = {} + for i,j in ipairs(exts) do + local f = filelist(targdir,"*." .. j) + if #f ~= 0 then + for m,n in ipairs(f) do + if n ~= "README.md" and n ~= "README" then + table.insert(g,n) + end + end + end + end + if #g ~= 0 then + errorlevel = copysubctan(g,targdir,targdir) + if errorlevel ~= 0 then return errorlevel end + end + for i,j in ipairs(exts) do + errorlevel = rm(targdir, "*." .. j) + if errorlevel ~= 0 then return errorlevel end + end + if fileexists(targdir .. "/COPYING") then + if not direxists(targdir .. "/doc") then mkdir(targdir .. "/doc") end + errorlevel = cp("COPYING",targdir,targdir .. "/doc") + if errorlevel ~= 0 then return errorlevel end + errorlevel = rm(targdir, "COPYING") + if errorlevel ~= 0 then return errorlevel end + end + -- this is horrible: ctan() copies all the files, we deal with them, and then it copies all the textfiles a second time! + textfiles = {"README","README.md"} + return 0 +end +-- end copyctan() +------------------------------------------------- + +-- vim: ts=2:sw=2:et: diff --git a/fonts/utilities/fontscripts/fontinst.lua b/fonts/utilities/fontscripts/fontinst.lua new file mode 100644 index 0000000000..93abd34510 --- /dev/null +++ b/fonts/utilities/fontscripts/fontinst.lua @@ -0,0 +1,755 @@ +-- $Id: fontinst.lua 10430 2024-09-29 04:31:40Z cfrees $ +-- Build configuration for electrumadf +-- l3build.pdf listing 1 tudalen 9 +--[[ + os.setenv requires shell-escape (which l3build always enables) but will + *appear** to set the variable anyway i.e will report the value even though + it isn't set + os.execute("env") can be used to show the environment + os.setenv is luatex and not in the standard builtin os lua library + ref. https://tex.stackexchange.com/questions/720446/how-can-i-export-variables-to-the-environment-when-running-l3build?noredirect=1#comment1791863_720446 +--]] +os.setenv ("PATH", "/usr/local/texlive/bin:/usr/bin:") +os.setenv ("TEXMFHOME", ".") +os.setenv ("TEXMFLOCAL", ".") +os.setenv ("TEXMFARCH", ".") +------------------------------------------------- +-- copy non-public things from l3build +local os_newline_cp = "\n" +if os.type == "windows" then + if tonumber(status.luatex_version) < 100 or + (tonumber(status.luatex_version) == 100 + and tonumber(status.luatex_revision) < 4) then + os_newline_cp = "\r\n" + end +end +------------------------------------------------- +nifergwall = 0 +ntarg = "fnttarg" +utarg = "uniquifyencs" +function gwall (msg,file,rtn) + file = file or "current file" + msg = msg or "Error: " + rtn = rtn or 0 + if rtn ~= 0 then + nifergwall = nifergwall + rtn + print (msg .. file .. " failed (" .. rtn .. ")\n") + end +end +function finst (patt,dir,mode) + dir = dir or "." + mode = mode or "nonstopmode" + local cmd = "pdftex --interaction=" .. mode + local targs = {} + -- https://lunarmodules.github.io/luafilesystem/examples.html (expl) + -- l3build-file-functions.lua (filelist fn) + targs = filelist(dir,patt) + for i,j in ipairs(targs) do + local errorlevel = tex(j,dir,cmd) + gwall("Compilation of ", j, errorlevel) + end +end +function fntkeeper () + local dir = dir or unpackdir + local rtn = direxists(keepdir) + if not rtn then + local errorlevel = mkdir(keepdir) + if errorlevel ~= 0 then + print("DO NOT BUILD STANDARD TARGETS WITHOUT RESOLVING!!\n") + gwall("Attempt to create directory ", keepdir, errorlevel) + end + else + local errorlevel = cleandir(keepdir) + if errorlevel ~= 0 then + print("KEEP CONTAMINATED!\n") + gwall("Attempt to clean directory ",keepdir,errorlevel) + end + end + local keepdir = abspath(keepdir) -- abspath requires existence + if keepfiles ~= {} then + for i,j in ipairs(keepfiles) do + local rtn = cp(j, unpackdir, keepdir) + if rtn ~= 0 then + gwall("Copy ", j, errorlevel) + print("DO NOT BUILD STANDARD TARGETS WITHOUT RESOLVING!\n") + end + end + else + print("ARE YOU SURE YOU DON'T WANT TO KEEP THE FONTS??!!\n") + end + if keeptempfiles ~= {} then + rtn = direxists(keeptempdir) + if not rtn then + local errorlevel = mkdir(keeptempdir) + if errorlevel ~= 0 then + gwall("Attempt to create directory ", keeptempdir, errorlevel) + end + else + local errorlevel = cleandir(keeptempdir) + if errorlevel ~= 0 then + print("keeptemp contaminated!\n") + gwall("Attempt to clean directory ",keeptempdir,errorlevel) + end + end + for i,j in ipairs(keeptempfiles) do + local errorlevel = cp(j,unpackdir,keeptempdir) + if errorlevel ~= 0 then + gwall("Copy ", j, errorlevel) + end + end + end + return nifergwall +end +-- oherwydd fy mod i bron ag anfon pob un ac mae'n amlwg fy mod i wedi anfon bacedi heb ei wneud hwn yn y gorffennol, well i mi wneud rhywbeth (scriptiau gwneud-cyhoeddus a make-public yn argraffu rhybudd os encs yn y cymysg +-- (cymraeg yn ofnadwy hefyd) +function uniquify (tag) + local dir = "" + tag = tag or encodingtag or "" + local pkgbase = pkgbase or "" + if standalone then + dir = keepdir + if pkgbase == "" then + print("pkgbase unspecified. Trying to guess ... ") + if ctanpkg ~= module and module ~= "" and module ~= nil then + print("Guessing " .. module) + pkgbase = module + else + pkgbase = string.gsub(ctanpkg, "adf$", "") + if pkgbase ~= "" then + print("Guessing " .. pkgbase) + end + end + end + else + dir = unpackdir + if pkgbase == "" then + local pkglist = filelist(dir,"*.sty") + if #pkglist ~= 0 then + pkgbase = pkglist[1] + end + end + end + local encs = encs or filelist(dir,"*.enc") + local maps = maps or filelist(dir,"*.map") + if #encs == 0 then + return 0 + else + if tag == "" then + if #maps ~= 0 then + if #maps == 1 then + tag = string.gsub(maps[1],"%.map$","") + else + local t = "" + local tt = "" + for i,j in ipairs(maps) do + if tt == t then + tt = string.gsub(j,"%w%.map$","") + else + if t == "" then + t = string.gsub(j,"%w%.map$","") + end + end + end + if t == tt then + tag = tt + else + gwall("Attempt to find tag ","",1) + end + end + end + end + if tag ~= "" then + for i, j in ipairs(encs) do + if string.match(j,"-" .. tag .. "%.enc$") or string.match(j, module) or string.match(j,ctanpkg) or string.match(j,pkgbase) then + print(j .. " ... OK\n") + else + local targenc = (string.gsub(j,"%.enc$","-" .. tag .. ".enc")) + print("Target encoding is " .. targenc .. "\n") + if fileexists(dir .. "/" .. targenc) then + gwall("Target encoding exists !! ", targenc, 1) + return 1 + else + local f = assert(io.open(dir .. "/" .. j,"rb")) + local content = f:read("*all") + f:close() + local new_content = (string.gsub(content,"(\n%%%%BeginResource: encoding fontinst%-autoenc[^\n ]*)( *\n/fontinst%-autoenc[^ %[]*)( %[)","%1-" .. tag .. "%2-" .. tag .. "%3")) + if new_content ~= content then + print("Writing unique encoding to " .. targenc) + f = assert(io.open(dir .. "/" .. targenc,"w")) + -- this somehow removes the second value returned by string.gsub?? + f:write((string.gsub(new_content,"\n",os_newline_cp))) + f:close() + if fileexists(dir .. "/" .. targenc) then + local errorlevel = rm(dir,j) + if errorlevel ~= 0 then + gwall("Attempt to rm old encoding ",j,errorlevel) + end + if #maps ~= 0 then + local jpatt = string.gsub(j,"%-","%%-") + jpatt = string.gsub(jpatt,"%.","%%.") + for k,m in ipairs(maps) do + f = assert(io.open(dir .. "/" .. m,"rb")) + local mcontent = f:read("*all") + f:close() + local new_mcontent = (string.gsub(mcontent,"(%<%[?)" .. jpatt .. "( %<%w+%.pfb \" fontinst%-autoenc[%w%-_]*)( ReEncodeFont)", "%1" .. targenc .. "%2-" .. tag .. "%3")) + if new_mcontent ~= mcontent then + print("Writing adjusted map lines to " .. m) + f = assert(io.open(dir .. "/" .. m,"w")) + -- this somehow removes the second value returned by string.gsub?? + f:write((string.gsub(new_mcontent,"\n",os_newline_cp))) + f:close() + else + gwall("Amending map ",m,1) + end + end + else + print("FOUND NO MAPS??\n") + end + else + gwall("Attempt to write ",targenc,1) + end + else + gwall("Attempt to uniquify " .. j .. " as ",targenc,1) + end + end + end + end + end + return nifergwall + end + print("Something weird happened.\n") + return 1 +end +function fontinst (dir,mode) + dir = dir or unpackdir + mode = mode or "errorstopmode --halt-on-error" + standalone = false + encodingtag = encodingtag or "" + -- if not direxists(dir) then + -- print("Missing directory. Unpacking first.\n") + print("Unpacking ...\n") + local errorlevel = unpack() + -- end + local tfmfiles = filelist(dir,"*.tfm") + for i,j in ipairs(tfmfiles) do + local plname = string.gsub(j, "%.tfm$", ".pl") + if fileexists(unpackdir .. "/" .. plname) then + print(plname .. " already exists!") + return 1 + else + local cmd = "tftopl " .. j .. " " .. plname + local errorlevel = runcmd(cmd,dir) + gwall("Conversion to pl from tfm ",j,errorlevel) + -- remove tfm to reduce pollution of package later + rm(unpackdir,j) + gwall("Deletion of tfm ", j, errorlevel) + end + end + for i,j in ipairs(familymakers) do + local errorlevel = finst(j,dir,mode) + gwall("Compilation of driver ", j, errorlevel) + end + if nifergwall ~= 0 then return nifergwall end + for i,j in ipairs(mapmakers) do + local errorlevel = finst (j,dir,mode) + gwall("Compilation of map ", j, errorlevel) + end + if nifergwall ~= 0 then return nifergwall end + for i,j in ipairs(binmakers) do + local targs = filelist(dir,j) + -- https://www.lua.org/pil/21.1.html + for k,m in ipairs(targs) do + targ = dir .. "/" .. m + -- is this really the right way to do this? + -- surely it is not at all safe? + -- though presumably no worse than executing the script directly + for line in io.lines(targ) do + if string.match(line,"^pltotf [a-zA-Z0-9%-]+%.pl [a-zA-Z0-9%-]+%.tfm$") then + local errorlevel = runcmd(line,dir) + gwall("Creation of TFM using " .. line .. " from ", j, errorlevel) + else + print("Ignoring unexpected line \"" .. line .. "\" in " .. j .. ".\n") + nifergwall = nifergwall + 1 + end + end + end + end + if nifergwall ~= 0 then return nifergwall end + local targs = filelist(dir,"*.vpl") + for i,j in ipairs(targs) do + local cmd = "vptovf " .. j + local errorlevel = runcmd(cmd,dir) + gwall("Creation of virtual font from ", j, errorlevel) + end + -- edit the .fd files if a scale factor is declared because fontinst + -- doesn't allow us to do this and the last message to the mailing list + -- is from 2022 with no response from the maintainer + local fdfiles = filelist(unpackdir, "*.fd") + for i,j in ipairs(fdfiles) do + local f = assert(io.open(unpackdir .. "/" .. j,"rb")) + local content = f:read("*all") + f:close() + local new_content = content + local csscaleaux = string.match(content, "%<%-%> *\\([%a%d][%a%d]*@@scale)") + if csscaleaux ~= nil then + local csscale = string.gsub(csscaleaux, "@(@)", "%1") + if csscale ~= nil then + new_content = string.gsub(content, "(\\DeclareFontFamily{)", "%% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)\n\\expandafter\\ifx\\csname " .. csscale .. "\\endcsname\\relax\n \\let\\" .. csscaleaux .. "\\@empty\n\\else\n \\edef\\" .. csscaleaux .. "{s*[\\csname " .. csscale .. "\\endcsname]}%%\n\\fi\n\n%1") + end + end + csscaleaux = string.match(content, "\\DeclareFontFamily{[^}]*}{[^}]*}{[^}]*\\hyphenchar *\\font *=[^}\n]*}") + if csscaleaux ~= nil then + content = new_content + new_content = string.gsub(content, "(\\DeclareFontFamily{[^}]*}{[^}]*}{\\hyphenchar) *(\\font) *(=[^ }\n]*) *([^ }\n]* *})", "%1%2%3%4") + end + if new_content ~= content then + local f = assert(io.open(unpackdir .. "/" .. j,"w")) + -- this somehow removes the second value returned by string.gsub?? + f:write((string.gsub(new_content,"\n",os_newline_cp))) + f:close() + end + end + local errorlevel = uniquify(encodingtag) + if errorlevel ~= 0 then + gwall("Encodings not uniquified! Do not submit to CTAN! uniquify(" .. encodingtag .. ")","",errorlevel) + end + errorlevel = fntkeeper() + if errorlevel ~= 0 then + gwall("FONT KEEPER FAILED! DO NOT MAKE STANDARD TARGETS WITHOUT RESOLVING!! fntkeeper() ", unpackdir, errorlevel) + end + return nifergwall +end +dofile(maindir .. "/tag.lua") +-- fnt_test +function fnt_test (fntpkgname,fds,content,maps,fdsdir) + local coll = "" + -- suffix ly -> ly1 ; no suffix -> t1 + local collly = "" + local targname = fntpkgname .. "-auto-test.lvt" + local targnamely = fntpkgname .. "-auto-test-ly1.lvt" + local targfile = unpackdir .. "/" .. targname + local targfilely = unpackdir .. "/" .. targnamely + -- ly1 boolean + local yy = 0 + -- texnansi/ly1 fds + local lys = {} + -- ec/t1 fds + local ecs = {} + -- local mapsly = "" + print("Creating test file for " .. fntpkgname .. " with fds: ") + for i, j in ipairs(fds) do print("fd: " .. j) end + -- l3build-tagging.lua + for i, j in ipairs(fds) do + -- local errorlevel = cp(j, keepdir, unpackdir) + if string.match(j,"^ly1") then + yy = 1 + table.insert(lys,j) + else + table.insert(ecs,j) + end + if fdsdir ~= unpackdir then + local errorlevel = cp(j, fdsdir, unpackdir) + if errorlevel ~= 0 then + gwall("Copy ", j, errorlevel) + return errorlevel + end + end + end + -- restart so we get the filtered list (hopefully) + for i, j in ipairs(ecs) do + j = unpackdir .. "/" .. j + for line in io.lines(j) do + -- it would be much better to filter the file list ... + if string.match(line,"^\\DeclareFontShape%{[^%}]*%}%{[^%}]*%}%{[^%}]*%}%{[^%}]*%}%{$") then + coll = (coll .. string.gsub(string.gsub(line,"%{$","%%%%"),"^\\DeclareFontShape%{([^%}]*)%}%{([^%}]*)%}%{([^%}]*)%}%{([^%}]*)%}","\n\\TEST{test-%1-%2-%3-%4}{%%%%\n \\sampler{%1}{%2}{%3}{%4}%%%%\n}")) + end + end + end + if yy == 1 then + for i, j in ipairs(lys) do + j = unpackdir .. "/" .. j + for line in io.lines(j) do + -- it would be much better to filter the file list ... + if string.match(line,"^\\DeclareFontShape%{[^%}]*%}%{[^%}]*%}%{[^%}]*%}%{[^%}]*%}%{$") then + collly = (collly .. string.gsub(string.gsub(line,"%{$","%%%%"),"^\\DeclareFontShape%{([^%}]*)%}%{([^%}]*)%}%{([^%}]*)%}%{([^%}]*)%}","\n\\TEST{test-%1-%2-%3-%4}{%%%%\n \\sampler{%1}{%2}{%3}{%4}%%%%\n}")) + end + end + end + coll = maps .. "\n\\usepackage[enc=t1]{" .. fntpkgname .. "}\n\\begin{document}\n\\START\n" .. coll .. "\n\\END\n\\end{document}\n" + collly = maps .. "\n\\usepackage[enc=ly1]{" .. fntpkgname .. "}\n\\begin{document}\n\\START\n" .. collly .. "\n\\END\n\\end{document}\n" + else + -- assume package doesn't have an encoding option and is t1/ts1 only + coll = maps .. "\n\\usepackage{" .. fntpkgname .. "}\n\\begin{document}\n\\START\n" .. coll .. "\n\\END\n\\end{document}\n" + end + -- coll = maps .. "\n\\begin{document}\n\\START\n" .. coll .. "\n\\END\n\\end{document}\n" + local new_content = "%% Do not edit this file. It is generated by l3build and changes will be overwritten.\n" .. string.gsub(content, "\nSAMP *\n", coll) + local f = assert(io.open(targfile,"w")) + -- this somehow removes the second value returned by string.gsub?? + f:write((string.gsub(new_content,"\n",os_newline_cp))) + f:close() + if yy == 1 then + new_content = "%% Do not edit this file. It is generated by l3build and changes will be overwritten.\n" .. string.gsub(content, "\nSAMP *\n", collly) + local f = assert(io.open(targfilely,"w")) + -- this somehow removes the second value returned by string.gsub?? + f:write((string.gsub(new_content,"\n",os_newline_cp))) + f:close() + end + -- PAID Â CHEISIO YR ISOD!! + -- cp(targname,unpackdir,testfiledir) + local errorlevel = cp(targname,unpackdir,testdir) + if errorlevel ~= 0 then + gwall("Attempt to copy ", targname, errorlevel) + end + errorlevel = cp(targnamely,unpackdir,testdir) + if errorlevel ~= 0 then + gwall("Attempt to copy ", targnamely, errorlevel) + end + return nifergwall +end +-- checkinit_hook +function checkinit_hook () + local filename = "fnt-test.lvt" + local file = unpackdir .. "/" .. filename + local fnttestdir = maindir .. "/fnt-tests" + local maps = "" + local mapfiles=filelist(keepdir, "*.map") + local mapsdir = "" + local fdsdir = "" + if #mapfiles == 0 then + mapfiles=filelist(unpackdir, "*.map") + if #mapfiles == 0 then + gwall("Attempt to find map files ", ".map", 1) + return 1 + else + print("Using maps from " .. unpackdir .. "\n") + mapsdir = unpackdir + end + else + mapsdir = keepdir + print("Using maps from " .. keepdir .. "\n") + end + local fntpkgnames = fntpkgnames or filelist(unpackdir,"*.sty") + for i, j in ipairs(fntpkgnames) do + fntpkgnames[i] = string.gsub(j,"%.sty","") + end + ------- + local autotestfdstmp = filelist(keepdir, "*.fd") + -- if they're not kept, they may be source (e.g. berenisadf) + if #autotestfdstmp == 0 then + autotestfdstmp = filelist(unpackdir, "*.fd") + if #autotestfdstmp == 0 then + gwall("Attempt to find fd files ", ".fd", 1) + return 1 + else + fdsdir = unpackdir + print("Using fds from " .. unpackdir .. "\n") + end + else + fdsdir = keepdir + print("Using fds from " .. keepdir .. "\n") + end + if #autotestfdstmp == 0 then + print("Something is amiss - this code should never be executed!\n") + gwall("Attempt to locate fd files ", ".fd", 1) + else + if #autotestfds == 0 then + for i, j in ipairs(autotestfdstmp) do + if not string.match(j,"^ts1") then + table.insert (autotestfds, j) + end + end + end + end + ------- + -- if fntestfds.<package name> has been specified, use that (should be a table) + -- o/w assign the autotestfds table to fntestfds.<package name> + -- but remember fnttestfds may be pairs and/or ipairs ... + -- there must be a better way to do this ... + if #fnttestfds == 0 then + for i,j in ipairs(fntpkgnames) do + if fnttestfds[j] == nil then + print("Auto-assigning autotestfds to fnttestfds[" .. j .. "].\n") + fnttestfds[j] = {} + for a,b in ipairs(autotestfds) do + table.insert(fnttestfds[j],b) + end + end + end + else + local testmes = {} + for i,j in ipairs(fnttestfds) do + table.insert(testmes,j) + end + for i, j in ipairs(fntpkgnames) do + -- I really don't understand tables (and I know this is very, very basic) + if fnttestfds[j] == nil then + fnttestfds[j] = {} + -- use only if fnttestfds isn't specified either as table of tables or table of files/globs + -- this doesn't seem very robust + for k, l in ipairs(testmes) do + table.insert (fnttestfds[j], l) + end + end + end + end + ------- + for i, j in ipairs(mapfiles) do + maps = maps .. "\n\\pdfmapfile{-" .. j .. "}\n\\pdfmapfile{+" .. j .. "}" + end + -- maps = maps .. "\n\\pdfmapfile{+pdftex.map}" + if not fileexists(fnttestdir .. "/" .. filename) then + print("Skipping test creation.\n") + else + local errorlevel = cp(filename,fnttestdir,unpackdir) + -- local errorlevel = ren(unpackdir, filename, targname) + if errorlevel ~= 0 then + gwall("Copy ", filename, errorlevel) + return errorlevel + else + -- need to get content here + -- copy this from l3build-tagging.lua + local f = assert(io.open(file,"rb")) + local content = f:read("*all") + f:close() + -- ought to normalise line endings here + -- copied from l3build + -- but I don't understand why the first subs is needed + -- is it a problem if the file doesn't end with a newline? + content = string.gsub(content .. (string.match(content,"\n$") and "" or "\n"), "\r\n", "\n") + content = string.gsub(content, "\\RequirePackage%{svn%-prov%}\n\\ProvidesFileSVN%{[^%}]*%}%[[^%]]*%]%[[^%]]*%]\n", "") + for i, j in ipairs(fntpkgnames) do + -- create the test file for each package + -- errorlevel = fnt_test(j,fnttestfds[j],content,maps) + -- dyw fnttestfds.j ddim yn gweithio yma!! + errorlevel = fnt_test(j,fnttestfds[j],content,maps,fdsdir) + if errorlevel ~= 0 then + gwall("Font test creation ", j, errorlevel) + return errorlevel + end + end + rm(unpackdir,filename) + end + end + return 0 +end +-- doc_init +function docinit_hook () + -- local fdfiles = filelist(keepdir, "*.fd") + local fdfiles = filelist(unpackdir, "*.fd") + local filename = "fnt-tables.tex" + local targname = ctanpkg .. "-tables.tex" + local file = unpackdir .. "/" .. filename + local targfile = unpackdir .. "/" .. targname + local coll = "" + local fnttestdir = maindir .. "/fnt-tests" + local maps = "" + local mapfiles=filelist(unpackdir, "*.map") + local yy = 0 + for i, j in ipairs(mapfiles) do + maps = maps .. "\n\\pdfmapfile{-" .. j .. "}\n\\pdfmapfile{+" .. j .. "}" + end + if not fileexists(fnttestdir .. "/" .. filename) then + print("Skipping font tables.\n") + else + local errorlevel = cp(filename,fnttestdir,unpackdir) + -- local errorlevel = ren(unpackdir, filename, targname) + if errorlevel ~= 0 then + gwall("Copy ", filename, errorlevel) + return errorlevel + else + -- need to get content here + -- copy this from l3build-tagging.lua + local f = assert(io.open(file,"rb")) + local content = f:read("*all") + f:close() + -- ought to normalise line endings here + -- copied from l3build + -- but I don't understand why the first subs is needed + -- is it a problem if the file doesn't end with a newline? + content = string.gsub(content .. (string.match(content,"\n$") and "" or "\n"), "\r\n", "\n") + content = string.gsub(content, "\\RequirePackage%{svn%-prov%}\n\\ProvidesFileSVN%{[^%}]*%}%[[^%]]*%]%[[^%]]*%]\n", "") + -- l3build-tagging.lua + for i, j in ipairs(fdfiles) do + if string.match(j,"^ly1") then + yy = 1 + end + j = unpackdir .. "/" .. j + for line in io.lines(j) do + if string.match(line,"^\\DeclareFontShape%{[^%}]*%}%{[^%}]*%}%{[^%}]*%}%{[^%}]*%}%{$") then + coll = (coll .. string.gsub(string.gsub(line,"%{$","%%%%"),"^\\DeclareFontShape","\n\\sampletable")) + end + end + end + if yy == 1 then + maps = "\n\\input{ly1enc.def}\n" .. maps + end + coll = maps .. "\n\\begin{document}\n" .. coll .. "\n\\end{document}\n" + local new_content = "%% Do not edit this file. It is generated by l3build and changes will be overwritten.\n" .. string.gsub(content, "\n\\endinput *\n", coll) + local f = assert(io.open(targfile,"w")) + -- this somehow removes the second value returned by string.gsub?? + f:write((string.gsub(new_content,"\n",os_newline_cp))) + f:close() + rm(unpackdir,filename) + cp(targname,unpackdir,sourcefiledir) + end + end + return 0 +end +-- fontinst must be specified first +-- it just ain't TeX +-- ntarg +target_list[ntarg] = { + func = fontinst, + desc = "Creates TeX font file", + pre = function(names) + if names then + print("fontinst does not need names\n") + help() + exit(1) + end + return 0 + end +} +-- utarg +target_list[utarg] = { + func = uniquify, + desc = "Uniquifies encodings ONLY", + pre = function(names) + standalone = true + if names and #names > 1 then + print("Too many encoding tags specified; no more than one allowed") + help() + exit(1) + else + names = names or encodingtag or "" + end + return 0 + end +} +-- diwedd targets +------------------------------------------------- +autotestfds = autotestfds or {} +-- auxfiles = {"*.aux"} +bakext = ".bkup" +binaryfiles = {"*.pdf", "*.zip", "*.vf", "*.tfm", "*.pfb", "*.pfm", "*.ttf", "*.otf", "*.tar.gz"} +binmakers = {"*-pltotf.sh"} +-- maindir before checkdeps +-- maindir = "../.." +checkdeps = {maindir .. "/nfssext-cfr", maindir .. "/fnt-tests"} +checkengines = {"pdftex"} +checkformat = "latex" +-- checksuppfiles = {""} +cleanfiles = {keeptempfiles} +ctanreadme = "README.md" +demofiles = {"*-example.tex"} +familymakers = {"*-drv.tex"} +flatten = true +flattentds = false +fnttestfds = fnttestfds or {} +-- fntautotestfds = fntautotestfds or {} +installfiles = {"*.afm", "*.cls", "*.enc", "*.fd", "*.map", "*.otf", "*.pfb", "*.pfm", "*.sty", "*.tfm", "*.ttf", "*.vf"} +-- match default as not yet existent +sourcefiledir = sourcefiledir or "." +keepdir = keepdir or sourcefiledir .. "/keep" +keeptempdir = keeptempdir or sourcefiledir .. "/keeptemp" +keepfiles = keepfiles or {"*.enc", "*.fd", "*.map", "*.tfm", "*.vf"} +keeptempfiles = keeptempfiles or {"*.mtx", "*.pl", "*-pltotf.sh", "*-rec.tex", "*.vpl", "*.zz"} +manifestfile = "manifest.txt" +mapmakers = {"*-map.tex"} +packtdszip = false +-- need module test or default? +sourcefiles = {"*.afm", "afm/*.afm", "*.pfb", "*.pfm", "*.dtx", "*.ins", "opentype/*.otf", "*.otf", "tfm/*.tfm", "truetype/*.ttf", "*.ttf", "type1/*.pfb", "type1/*.pfm"} +tagfiles = {"*.dtx", "*.ins", "manifest.txt", "MANIFEST.txt", "README", "README.md"} +-- vendor and module must be specified before tdslocations +vendor = vendor or "public" +tdslocations = { + "fonts/afm/" .. vendor .. "/" .. module .. "/" .. "*.afm", + "fonts/enc/dvips/" .. module .. "/" .. "*.enc", + "fonts/map/dvips/" .. module .. "/" .. "*.map", + "fonts/opentype/" .. vendor .. "/" .. module .. "/" .. "*.otf", + "fonts/tfm/" .. vendor .. "/" .. module .. "/" .. "*.tfm", + "fonts/truetype/" .. vendor .. "/" .. module .. "/" .. "*.ttf", + "fonts/type1/" .. vendor .. "/" .. module .. "/" .. "*.pfb", + "fonts/type1/" .. vendor .. "/" .. module .. "/" .. "*.pfm", + "fonts/vf/" .. vendor .. "/" .. module .. "/" .. "*.vf", + "source/fonts/" .. module .. "/" .. "*.etx", + "source/fonts/" .. module .. "/" .. "*.mtx", + "source/fonts/" .. module .. "/" .. "*-drv.tex", + "source/fonts/" .. module .. "/" .. "*-map.tex", + "tex/latex/" .. module .. "/" .. "*.fd", + "tex/latex/" .. module .. "/" .. "*.sty" +} +-- after maindir +typesetdeps = {maindir .. "/nfssext-cfr"} +-- enable l3build doc/check to find font files +-- cannot concatenate variables here as they don't (yet?) exist +typesetexe = "TEXMFDOTDIR=.:../local: pdflatex" +typesetfiles = typesetfiles or {"*.dtx", "*-tables.tex", "*-example.tex"} +typesetsourcefiles = {keepdir .. "/*", "nfssext-cfr*.sty"} +unpackexe = "pdflatex" +unpackfiles = {"*.ins"} +------------------------------------------------- +if fileexists(maindir .. "/fnt-ctan.lua") then + dofile(maindir .. "/fnt-ctan.lua") +end +------------------------------------------------- +-- afmtotfm +-- only set this true for ultra simple symbol fonts! +afmtotfm = afmtotfm or false +------------------------------------------------- +-- fnt_afmtotfm (dir,mode) +function fnt_afmtotfm (dir,mode) + dir = dir or unpackdir + mode = mode or "errorstopmode --halt-on-error" + local fntbasename = fntbasename or module + local map = mapfile or fntbasename .. ".map" + print("Unpacking ...\n") + local errorlevel = unpack() + print("Running afm2tfm. Please be patient ...\n") + local afms = filelist(unpackdir,"*.afm") + local content = "" + for i,j in ipairs(afms) do + local rtn = fileexists(unpackdir .. "/" .. string.gsub(j,"%.afm",".enc")) + if not rtn then + errorlevel = run(dir, "afm2tfm " .. j .. " >> " .. dir .. "/" .. map .. ".tmp") + else + errorlevel = run(dir, "afm2tfm " .. j .. " -p " .. string.gsub(j,"%.afm",".enc") .. " > " .. dir .. "/" .. map .. ".tmp") + end + if errorlevel ~= 0 then + gwall("afm2tfm (" .. j ..") ",dir,errorlevel) + else + local g = assert(io.open(dir .. "/" .. map .. ".tmp","rb")) + local c = g:read("all") + g:close() + content = content .. string.gsub(c, "\n", " <" .. string.gsub(j,"%.afm",".pfb") .. "\n") + rm(dir, map .. ".tmp") + end + end + local f + f = assert(io.open(dir .. "/" .. map, "w")) + f:write((string.gsub(content,"\n",os_newline_cp))) + f:close() + errorlevel = fntkeeper() + if errorlevel ~= 0 then + gwall("FONT KEEPER FAILED! DO NOT MAKE STANDARD TARGETS WITHOUT RESOLVING!! ", unpackdir, errorlevel) + end + return nifergwall +end +------------------------------------------------- +-- fnt_afmtotfm -> fnttarg +if afmtotfm then + target_list[ntarg] = { + func = fnt_afmtotfm, + desc = "Creates TeX font files", + pre = function(names) + if names then + print("fntmake does not need names\n") + help() + exit(1) + end + return 0 + end + } +end +------------------------------------------------- +-- vim: ts=2:sw=2:et: diff --git a/fonts/utilities/fontscripts/fontscripts.dtx b/fonts/utilities/fontscripts/fontscripts.dtx new file mode 100644 index 0000000000..4c8c71148a --- /dev/null +++ b/fonts/utilities/fontscripts/fontscripts.dtx @@ -0,0 +1,12505 @@ +% \iffalse meta-comment +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% fontscripts.dtx +% Additions and changes Copyright (C) 2010-2024 Clea F. Rees. +% Code from skeleton.dtx Copyright (C) 2015-2024 Scott Pakin (see below). +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3c +% of this license or (at your option) any later version. +% The latest version of this license is in +% https://www.latex-project.org/lppl.txt +% and version 1.3c or later is part of all distributions of LaTeX +% version 2008-05-04 or later. +% +% This work has the LPPL maintenance status 'muaintained'. +% +% The Current Maintainer of this work is Clea F. Rees. +% +% This work consists of all files listed in manifest.txt. +% +% The file fontscripts.dtx is a derived work under the terms of the +% LPPL. It is based on version 2.4 of skeleton.dtx which is part of +% dtxtut by Scott Pakin. A copy of dtxtut, including the +% unmodified version of skeleton.dtx is available from +% https://www.ctan.org/pkg/dtxtut and released under the LPPL. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \fi +% +% \iffalse +%<*driver> +\RequirePackage{svn-prov} +\ProvidesFileSVN{$Id: fontscripts.dtx 10412 2024-09-27 15:10:34Z cfrees $}[v0.1 \revinfo][\filebase DTX: l3build scripts for font installation] +\DefineFileInfoSVN[fontscripts] +\documentclass[10pt,british,lm-default=false]{l3doc} +% l3doc loads fancyvrb +% fancyvrb overwrites svn-prov's macros without warning +% restore \fileversion \filerev in case we're using l3doc +\GetFileInfoSVN{fontscripts} +\EnableCrossrefs +\CodelineIndex +\RecordChanges +% \OnlyDescription +\DoNotIndex{\verb,\ProvidesPackageSVN,\NeedsTeXFormat,\ProcessKeyOptions} +\usepackage{babel} +\usepackage{fancyhdr} +\usepackage[rm={proportional,lining},sf={proportional,lining},tt={monowidth,lining,tabular}]{cfr-lm} +\usepackage[plain]{fancyref} +\usepackage{array,tabularx} +\usepackage{xcolor} +\usepackage{xurl} +\urlstyle{sf} +\usepackage{microtype} +% addaswyd o chronos.tex +\MakeAutoQuote{‘}{’} +\MakeAutoQuote*{“}{”} +\usepackage{caption} +\DeclareCaptionFont{lf}{\lstyle} +\captionsetup[table]{labelfont=lf} +% sicrhau hyperindex=false: llwytho CYN bookmark +\usepackage{hypdoc}% ateb Ulrike Fischer: https://tex.stackexchange.com/a/695555/ +\usepackage{bookmark} +\hypersetup{% + colorlinks=true, + citecolor={moss}, + extension=pdf, + linkcolor={strawberry}, + linktocpage=true, + pdfcreator={TeX}, + pdfproducer={pdfeTeX}, + urlcolor={blueberry}% +} +\NewDocElement[% + idxtype=etx, + idxgroup=font encodings, + printtype=\textit{etx}, +]{Etx}{encoding} +\NewDocElement[% + idxtype=mtx, + idxgroup=font metrics, + printtype=\textit{mtx}, +]{Mtx}{metrics} +\NewDocElement[% + idxtype=lua, + idxgroup=lua script fragments, + printtype=\textit{lua}, +]{Lua}{luafrag} +\NewDocElement[% + idxtype=tpt, + idxgroup=templates, + printtype=\textit{tpt}, +]{Tpt}{template} +\NewDocElement[% + idxtype=targ, + idxgroup=targets, + printtype=\textit{targ}, +]{Targ}{target} +\NewDocElement[% + idxtype=var, + idxgroup=variables, + printtype=\textit{var}, +]{lVar}{luavariable} +\NewDocElement[% + idxtype=fn, + idxgroup=functions, + printtype=\textit{fn}, +]{lFn}{luafunction} +\ExplSyntaxOn +\NewDocumentCommand \ivals { +m } +{ + { + \clist_if_empty:nF { #1 } + { + \normalfont + \itshape + < \clist_use:nn { #1 } { >\texttt{,} ~ < } > + } + } +} +\keys_define:nn { clm / doc } +{ + unknown .code:n = { + \cs_if_free:cT { \l_keys_key_str } + { + \tl_gset:cn { \l_keys_key_str } { #1 } + } + }, +} +\NewDocumentCommand \clmdocset { +m } +{ + \keys_set:nn { clm / doc } { #1 } +} +\ExplSyntaxOff +\clmdocset{% + bug={\href{https://codeberg.org/cfr/nfssext/issues}{\textsc{bugtracker}}}, + codeberg={\href{https://codeberg.org/cfr/nfssext}{\textsc{codeberg}}}, + github={\href{https://github.com/cfr42/nfssext}{\textsc{github}}}, + ctan={\href{https://ctan.org/}{\textsc{ctan}}}, +} +\newcommand*{\lpack}[1]{\textsf{#1}} +\title{\filebase} +\author{Clea F. Rees\thanks{% + Bug tracker: + \href{https://codeberg.org/cfr/nfssext/issues}{\url{codeberg.org/cfr/nfssext/issues}} + \textbar{} Code: + \href{https://codeberg.org/cfr/nfssext}{\url{codeberg.org/cfr/nfssext}} + \textbar{} Mirror: + \href{https://github.com/cfr42/nfssext}{\url{github.com/cfr42/nfssext}}% +}} +\date{\fileversion~\filedate} +\pagestyle{fancy} +\fancyhf{} +\fancyhf[lh]{\itshape\filebase} +\fancyhf[rh]{\itshape\fileversion} +\fancyhf[cf]{\itshape--- \thepage~/~\lastpage{} ---} +\ExplSyntaxOn +\hook_gput_code:nnn {shipout/lastpage} {.} +{ + \property_record:nn {t:lastpage}{abspage,page,pagenum} +} +\cs_new_protected_nopar:Npn \lastpage +{ + \property_ref:nn {t:lastpage}{page} +} +\NewDocumentCommand \plarg {+m} {{\ttfamily (\ivals{#1})}} +\ExplSyntaxOff +\NewDocumentCommand \istable{m}{\texttt{= \{}\ivals{#1}\texttt{\}}\par\noindent} +\NewDocumentCommand \isstring{m}{\texttt{= ''}\meta{#1}\texttt{''}\par\noindent} +\definecolor{strawberry}{rgb}{1.000,0.000,0.502} +\definecolor{blueberry}{rgb}{0.000,0.000,1.000} +\definecolor{moss}{rgb}{0.000,0.502,0.251} +\makeatletter +\def\@xobeysp{\leavevmode\penalty100\ } +\makeatother +\begin{document} +\DocInput{\filename} +\end{document} +%</driver> +% \fi +% +% \changes{v0.1}{2024-09-24}{First public release.} +% +% \maketitle\thispagestyle{empty} +% \pdfinfo{% +% /Creator (TeX) +% /Producer (pdfTeX) +% /Author (Clea F.\ Rees) +% /Title (fontscripts) +% /Subject (TeX) +% /Keywords (TeX,LaTeX,Clea,Rees)} +% \pdfcatalog{% +% /URL () +% /PageMode /UseOutlines} +% \setlength{\parindent}{0pt} +% \setlength{\parskip}{0.5em} +% +% +% \begin{abstract} +% \noindent +% \lpack{fontscripts} provides variant font encodings, support metrics and Lua script fragments to automate the creation of \TeX{}/\LaTeXe{} font files for 8-bit engines using \lpack{l3build}. +% A template-based system enables the automatic generation of font tables and \lpack{l3build} tests.\smallskip +% +% The script fragments\footnote{% +% The main script fragments are written in \emph{extremely elementary} Lua. +% This is the first thing I've ever attempted in Lua and I am not a programmer.% +% } make it possible to automate the generation of \TeX{} font metrics, virtual fonts, map files etc.\ and the conversion of fonts and encodings. +% For tools which do not otherwise support it, such as \lpack{fontinst}, the scripts enable the automatic addition of variable scaling in font definition files. +% A semi-automatic system tries to ensure font encoding names are unique.\smallskip +% +% The script fragments are primarily designed for \lpack{fontinst}, but can easily be modified to work with other tools. +% The default configuration is intended to be cross-platform and requires only tools included in \TeX{} Live, but the documentation includes a simple adaption for integration with FontForge and \textsc{gnu} make. +% \end{abstract} +% +% \tableofcontents +% +% \section{Lua Script Fragments}\label{sec:lua} +% +% \file{fontinst.lua} provides two custom \lpack{l3build} targets and five new Lua functions. +% In addition, it redefines three \lpack{l3build} functions (two of which do nothing by default). +% As well as those provided by \lpack{l3build}, a number of additional variables are used by these functions to determine what, where and how they should operate. +% +% \subsection{\lpack{l3build} Targets}\label{subsec:targs} +% +% \DescribeTarg{fnttarg} +% Runs \texttt{fontinst()}. +% +% Builds traditional \TeX{} font files for 8-bit engines. +% The building is done in \texttt{unpackdir}. +% The results are copied to \texttt{keepdir} and the intermediate results to \texttt{keeptempdir}. +% Files in the former are copied back into the \texttt{builddir} when building documentation, running tests etc. +% +% \DescribeTarg{uniquifyencs} \meta{encoding tag}\par\noindent +% Tries to ensure that the names of encoding files and font encodings are unique by editing font definition files and map file fragments in \texttt{keepdir}. +% \meta{encoding tag} is optional. +% If no argument is given and \texttt{encodingtag} is empty, a suitable tag will be determined automatically\footnote{Hopefully.}. +% +% \subsection{Lua Functions}\label{subsec:fns} +% +% \subsubsection{New Functions}\label{subsubsec:new} +% +% \DescribelFn{finst()} \texttt{finst}\plarg{patt,dir,mode}\par\noindent +% Compile the second \lpack{fontinst} stage. +% +% Called by \texttt{fontinst()}. +% There is usually no need to call this function directly. +% +% \DescribelFn{fontinst()} \texttt{fontinst}\plarg{dir,mode}\par\noindent +% The main function called by \texttt{fnttarg}. +% +% The function assumes \lpack{fontinst} is used but can be redefined to build files using alternative tools as appropriate. +% +% The default definition calls \texttt{finst()}, \texttt{fntkeeper()} and \texttt{uniquify()} in addition to performing initial compilation. +% The process requires the usual \lpack{fontinst} setup i.e.~a driver to generate the initial files and a second file to create map file fragments. +% +% If a variable scaling factor is used, the font definition files will be edited to ensure this works, since \lpack{fontinst} apparently supports scaling only by a fixed factor. +% For a simple demonstration of how to set this up, see, for example, \lpack{baskervaldadf}'s driver which includes +% \begin{verbatim} +% \declaresize{}{<-> \string\ybv@@scale} +% \end{verbatim} +% Shape declarations should then be written without scaling, +% \begin{verbatim} +% \installfont{ybvr8t}{ybvr8r,ybvr8sr,newlatin}{t1-baskervald}{T1}{ybv}{m}{n}{} +% \end{verbatim} +% since scaling will be added after the font definition files are created, +% \begin{verbatim} +% \expandafter\ifx\csname ybv@scale\endcsname\relax +% \let\ybv@@scale\@empty +% \else +% \edef\ybv@@scale{s*[\csname ybv@scale\endcsname]}% +% \fi +% +% \DeclareFontFamily{T1}{ybv}{} +% +% \DeclareFontShape{T1}{ybv}{m}{n}{ +% <-> \ybv@@scale ybvr8t +% }{} +% \end{verbatim} +% to enable a suitable option in the \texttt{sty} file. +% +% \DescribelFn{fnt_test()} \texttt{fnt_test}\plarg{fntpkgname,fds,content,maps,fdsdir}\par\noindent +% Auto-generates \texttt{lvt} files suitable for use with \texttt{l3build check} from a template. +% +% \DescribelFn{fntkeeper()} \texttt{fntkeeper}\plarg{}\par\noindent +% Copies generated files to \texttt{keepdir} and/or \texttt{keeptempdir} to prevent deletion by \texttt{l3build}. +% +% This function is called by \texttt{fontinst()} and may be useful if that function is redefined. +% +% \DescribelFn{uniquify()} \texttt{uniquify}\plarg{tag}\par\noindent +% Tries to ensure the names of font encodings and encoding files are unique by editing font definition files and map file fragments. +% +% This function is used by \texttt{fontinst()} or may be called directly using the \texttt{uniquifyencs} target. +% +% \subsubsection{Redefined Functions}\label{subsubsec:redef} +% +% \DescribelFn{checkinit_hook()} \texttt{checkinit_hook}\plarg{}\par\noindent +% This is a standard \lpack{l3build} function which does nothing by default. +% \file{fontinst.lua} redefines it to automatically generate test files suitable for use with \texttt{l3build check} if a test template is available. +% +% \DescribelFn{copyctan()} \texttt{copyctan}\plarg{}\par\noindent +% This is extended to copy files from \texttt{keepdir} and to impose a single-layer of sub-directories of the kind required by \ctan{} for font distributions. +% +% \DescribelFn{docinit_hook()} \texttt{docinit_hook}\plarg{}\par\noindent +% This is a standard \lpack{l3build} function which does nothing by default. +% \file{fontinst.lua} redefines it to automatically generate font tables suitable for use with \texttt{l3build doc} from a template. +% +% \subsection{Variables}\label{subsec:vars} +% +% \newcolumntype{e}{>{\ttfamily =}c} +% \begin{table} +% \centering +% \caption{\lpack{fontinst} defaults for \lpack{l3build} variables.}\label{tab:varia} +% \begin{tabularx}\linewidth{>{\ttfamily}le>{\ttfamily\raggedright\arraybackslash}X} +% \toprule +% \normalfont\textbf{Variable} & \multicolumn{1}{c}{} & \normalfont\textbf{Value} \\ +% \midrule +% bakext && ''.bkup''\\ +% checkdeps && \{maindir .. ''/nfssext-cfr'', maindir .. ''/fnt-tests''\}\\ +% checkengines && \{''pdftex''\}\\ +% checkformat && ''latex''\\ +% cleanfiles && \{keeptempfiles\}\\ +% ctanreadme && ''README.md''\\ +% demofiles && \{''*-example.tex''\}\\ +% flatten && true\\ +% flattentds && false\\ +% installfiles && \{''*.afm'', ''*.cls'', ''*.enc'', ''*.fd'', ''*.map'', ''*.otf'', ''*.pfb'', ''*.sty'', ''*.tfm'', ''*.ttf'', ''*.vf''\}\\ +% manifestfile && ''manifest.txt''\\ +% nifergwall && 0\\ +% ntarg && ''fnttarg''\\ +% packtdszip && true\\ +% sourcefiledir && sourcefiledir or ''.''\\ +% sourcefiles && \{''*.afm'', ''afm/*.afm'', ''*.pfb'', ''*.dtx'', ''*.ins'', ''opentype/*.otf'', ''*.otf'', ''tfm/*.tfm'', ''truetype/*.ttf'', ''*.ttf'', ''type1/*.pfb''\}\\ +% tagfiles && \{''*.dtx'', ''*.ins'', ''manifest.txt'', ''MANIFEST.txt'', ''README'', ''README.md''\}\\ +% tdslocations && \{% +% ''fonts/afm/'' .. vendor .. ''/'' .. module .. ''/'' .. ''*.afm'', +% ''fonts/enc/dvips/'' .. module .. ''/'' .. ''*.enc'', +% ''fonts/map/dvips/'' .. module .. ''/'' .. ''*.map'', +% ''fonts/opentype/'' .. vendor .. ''/'' .. module .. ''/'' .. ''*.otf'', +% ''fonts/tfm/'' .. vendor .. ''/'' .. module .. ''/'' .. ''*.tfm'', +% ''fonts/truetype/'' .. vendor .. ''/'' .. module .. ''/'' .. ''*.ttf'', +% ''fonts/type1/'' .. vendor .. ''/'' .. module .. ''/'' .. ''*.pfb'', +% ''fonts/type1/'' .. vendor .. ''/'' .. module .. ''/'' .. ''*.pfm'', +% ''fonts/vf/'' .. vendor .. ''/'' .. module .. ''/'' .. ''*.vf'', +% ''source/fonts/'' .. module .. ''/'' .. ''*.etx'', +% ''source/fonts/'' .. module .. ''/'' .. ''*.mtx'', +% ''source/fonts/'' .. module .. ''/'' .. ''*-drv.tex'', +% ''source/fonts/'' .. module .. ''/'' .. ''*-map.tex'', +% ''tex/latex/'' .. module .. ''/'' .. ''*.fd'', +% ''tex/latex/'' .. module .. ''/'' .. ''*.sty'' +% \} \\ +% typesetdeps && \{maindir .. ''/nfssext-cfr''\}\\ +% typesetexe && ''TEXMFDOTDIR=.:../local: pdflatex''\\ +% typesetfiles && typesetfiles or \{''*.dtx'', ''*-tables.tex'', ''*-example.tex''\}\\ +% typesetsourcefiles && \{keepdir .. ''/*'', ''nfssext-cfr*.sty''\}\\ +% unpackexe && ''pdflatex''\\ +% unpackfiles && \{''*.ins''\}\\ +% utarg && ''uniquifyencs''\\ +% \bottomrule +% \end{tabularx} +% \end{table} +% \begin{table} +% \centering +% \caption{\lpack{fontinst} defaults for \lpack{fontscript} variables.}\label{tab:varia-n} +% \begin{tabularx}\linewidth{>{\ttfamily}le>{\ttfamily\raggedright\arraybackslash}X} +% \toprule +% \normalfont\textbf{Variable} & \multicolumn{1}{c}{} & \normalfont\textbf{Value} \\ +% \midrule +% autotestfds && autotestfds or \{\}\\ +% binaryfiles && \{''*.pdf'', ''*.zip'', ''*.vf'', ''*.tfm'', ''*.pfb'', ''*.ttf'', ''*.otf'', ''*.tar.gz''\}\\ +% binmakers && \{''*-pltotf.sh''\}\\ +% familymakers && \{''*-drv.tex''\}\\ +% fnttestfds && fnttestfds or \{\}\\ +% keepdir && keepdir or sourcefiledir .. ''/keep''\\ +% keepfiles && keepfiles or \{''*.enc'', ''*.fd'', ''*.map'', ''*.tfm'', ''*.vf''\}\\ +% keeptempdir && keeptempdir or sourcefiledir .. ''/keeptemp''\\ +% keeptempfiles && keeptempfiles or \{''*.mtx'', ''*.pl'', ''*-pltotf.sh'', ''*-rec.tex'', ''*.vpl'', ''*.zz''\}\\ +% mapmakers && \{''*-map.tex''\}\\ +% vendor && vendor or ''public''\\ +% \bottomrule +% \end{tabularx} +% \end{table} +% +% Defaults assigned by \file{fontinst.lua} to both \lpack{l3build} and \lpack{fontscripts} variables are listed in \fref{tab:varia} and \fref{tab:varia-n} respectively. +% At least some of these variables would need adjustment in order to use \lpack{fontscripts} for a different project, let alone in a different environment. +% +% \DescribelVar{autotestfds}\texttt{autotestfds} \istable{globs} +% +% See also \texttt{testfds}. +% +% \DescribelVar{binmakers}\texttt{binmakers} \istable{globs} +% Scripts to run to convert human-readable \TeX{} font metrics/virtual font metrics into binary \TeX{} font metrics and virtual fonts. +% +% \DescribelVar{familymakers}\texttt{familymakers} \istable{globs} +% Source files \texttt{fontinst()} should compile to generate \TeX{} support files. +% +% For the default definition of \texttt{fontinst()} this variable should specify the driver or drivers to be compiled. +% +% \DescribelVar{fnttestfds}\texttt{fnttestfds} \istable{globs} +% Files to use when generating test files for \texttt{l3build}. +% +% \DescribelVar{keepdir}\texttt{keepdir} \isstring{dir} +% Directory to store final products of font creation e.g.~font definitions, map file fragments, \TeX{} font metrics, virtual fonts etc. +% +% \DescribelVar{keeptempdir}\texttt{keeptempdir} \isstring{dir} +% Directory to store intermediat products of font creation e.g.~human-readable \TeX{} font metrics, virtual font metrics etc. +% +% \DescribelVar{keepfiles}\texttt{keepfiles} \istable{globs} +% Files to copy to \texttt{keepdir}. +% +% \DescribelVar{keeptempfiles}\texttt{keeptempfiles} \istable{globs} +% Files to copy to \texttt{keeptempdir}. +% +% \DescribelVar{mapmakers}\texttt{mapmakers} \istable{globs} +% Source files \texttt{finst()} should compile to generate map file fragments etc. +% +% \DescribelVar{vendor}\texttt{mapmakers} \isstring{vendor} +% Vendor directory for font installation such as \texttt{public} or \texttt{arkandis}. +% +% \section{Templates}\label{sec:templates} +% +% By default, \file{fontinst.lua} is able to utilise two kinds of \texttt{tex} template. +% By default, it is assumed these templates are located in \path{maindir .. ''fnt-tests''}. +% In order for this to work, this directory must include a \file{build.lua} even though there is nothing to build. +% Otherwise, \texttt{l3build} cannot recognise the directory's contents as legitimate and fails to copy them correctly into the \texttt{build} directory. +% \iffalse +%<*verb> +% \fi +% \begin{verbatim} +% module = "fnt-tests" +% maindir = ".." +% sourcefiles = {"*.tex"} +% installfiles = {"*.tex"} +% \end{verbatim} +% \iffalse +%</verb> +% \fi +% +% Font packages should then be located in subdirectories or sub-subdirectories of \texttt{maindir} with \file{build.lua} scripts configured appropriately. +% +% \subsection{Font Tables}\label{subsec:tables} +% +% A template for producing font tables as part of package documentation is provided. +% The template is used in \file{fontinst.lua}'s \texttt{doc\_init()} hook to generate \texttt{tex} files populated with font information from font definition files. +% This is then compiled by \texttt{l3build doc} to produce font tables. +% +% \subsection{Font Tests}\label{subsec:tests} +% +% If a template is found in the font test directory, it will be used in \file{fontinst.lua}'s \texttt{check\_init()} hook to generate \texttt{lvt} files populated with font information from font definition files. +% These tests are then compiled by \texttt{l3build check} as part of the test suite. +% Certain file patterns are excluded from testing. +% In particular, separate tests are not generated for \texttt{ts1} \texttt{fd} files because these families are typically better tested along with their \texttt{t1} counterparts. +% +% +% \section{Customisation}\label{sec:custom} +% +% As in the case of \lpack{l3build}, you can replace functions and targets at will, albeit on a much more limited scale. +% Although it would be better to just not use \file{fontinst.lua} at all if you want to redefine everything, it can make sense to redefine \texttt{fontinst()} if, say, you want to use different font creation tools but make use of the functions for stashing generated files, generating font tables, testing etc. +% +% For example, \lpack{berenisadf} was built using a \file{build.lua} containing +% \begin{verbatim} +% autotcfds ={ "ts1ybd2j.fd", "ts1ybd2.fd", "ts1ybdj.fd", "ts1ybd.fd" } +% dofile(maindir .. "/fontinst.lua") +% function fntmake (dir,mode) +% dir = dir or unpackdir +% mode = mode or "errorstopmode --halt-on-error" +% print("Unpacking ...\n") +% local errorlevel = unpack() +% print("Running make. Please be patient ...\n") +% errorlevel = run(dir, "chmod +x ff-ybd.pe") +% if errorlevel ~=0 then +% gwall("Attempt to make fontforge script executable ", unpackdir, errorlevel) +% else +% errorlevel = run(dir, "make -f Makefile.make all") +% if errorlevel ~= 0 then +% gwall("make ", unpackdir, errorlevel) +% end +% -- make ts1 swash families so tc commands pick up the characters in ly1 +% for i, j in ipairs(autotcfds) do +% local jfam = string.gsub(j, "^ts1(.*)%.fd$", "%1") +% local jnewfam = jfam .. "w" +% local jnew = string.gsub(j, "(%.fd)$", "w%1") +% local f = assert(io.open(unpackdir .. "/" .. j,"rb")) +% local content = f:read("*all") +% f:close() +% -- copied from l3build +% -- but I don't understand why the first subs is needed +% -- is it a problem if the file doesn't end with a newline? +% content = string.gsub(content .. (string.match(content,"\n$") and "" or "\n"), "\r\n", "\n") +% local new_content = string.gsub(content, "{" .. jfam .. "}", "{" .. jnewfam .. "}") +% new_content = string.gsub(new_content, "(ts1[^%.]*)(%.fd)", "%1w%2") +% new_content = string.gsub(new_content, "(TS1/ybd[a-z0-9]*)", "%1w") +% f = assert(io.open(unpackdir .. "/" .. jnew,"w")) +% -- this somehow removes the second value returned by string.gsub?? +% f:write((string.gsub(new_content,"\n",os_newline_cp))) +% f:close() +% end +% errorlevel = fntkeeper() +% if errorlevel ~= 0 then +% gwall("FONT KEEPER FAILED! DO NOT MAKE STANDARD TARGETS WITHOUT RESOLVING!! ", unpackdir, errorlevel) +% end +% end +% return nifergwall +% end +% target_list[ntarg] = { +% func = fntmake, +% desc = "Creates TeX font files", +% pre = function(names) +% if names then +% print("fntmake does not need names\n") +% help() +% exit(1) +% end +% return 0 +% end +% } +% \end{verbatim} +% That is, \lpack{berenisadf} doesn't use \texttt{fontinst()} at all, but \texttt{fntmake()}, which simply invokes \texttt{gnu} \texttt{make} and calls \texttt{fntkeeper()}\footnote{% +% It does not ensure encoding names are unique, but it should.% +% }. +% +% \subsection{Examples}\label{subsec:eeiau} +% +% The latest versions of the following packages were developed using \lpack{fontscripts} and build using \lpack{l3build}\footnote{% +% Note that it is in no sense a dependency; it contains nothing ever required in typesetting.% +% }. +% Full details, including the use of templates and scaling are available on \codeberg{} or \github{}. +% \begin{itemize} +% \item \textsc{Gust}: +% \begin{itemize} +% \item \lpack{cfr-lm} +% \end{itemize} +% \item \textsc{Arkandis}: +% \begin{itemize} +% \item \lpack{baskervaldadf} +% \item \lpack{berenisadf} +% \item \lpack{electrumadf} +% \item \lpack{librisadf} +% \item \lpack{romandeadf} +% \item \lpack{venturisadf}. +% \end{itemize} +% \end{itemize} +% +% +% \MaybeStop{% +% \PrintChanges +% \PrintIndex +% } +% +% \section{Implementation} +% +% \iffalse +%<*tables> +% \fi +% \begin{template}{fnt-tables.tex} +% \begin{macrocode} +\pdftracingfonts=1 +\RequirePackage{svn-prov} +\ProvidesFileSVN{$Id: fontscripts.dtx 10412 2024-09-27 15:10:34Z cfrees $}[v0.1 \revinfo][\outFileName] +\DefineFileInfoSVN +% \end{macrocode} +% \iffalse +% ^^A Paid â defnyddio \GetFileInfoSVN*/\GetFileInfoSVN{} yn y fan hon!! +% \fi +% \begin{macrocode} +\documentclass[10pt,a4paper]{article} +\usepackage{geometry} +\usepackage{fonttable} +\newcommand\sampletable[4]{% + #1/#2/#3/#4:\par\noindent + \xfonttable{#1}{#2}{#3}{#4}% + \clearpage +} +% vim: ts=2:sw=2:tw=80:nospell +% \end{macrocode} +% \end{template} +% \iffalse +%</tables> +% \fi +% +% \subsection{Script Fragments}\label{subsec:lua} +% +% These are not standalone scripts, but files to be read by \texttt{l3build} to provide additional and/or divergent functions. +% Note that several are based on LPPL files not on \ctan{}, as the \LaTeX{} Project does not package their build scripts. +% +% \textbf{These script fragments were not written for general use and will \MakeUppercase{certainly fail} if not adapted to your build environment.} +% +% \subsubsection{fontinst.lua}\label{subsubsec:fontinst-lua} +% +% \begin{luafrag}{fontinst.lua} +% Use \texttt{dofile()} in \file{build.lua} to add to \lpack{l3build}. +% \newcommand*\FancyVerbStopString{ntarg = "fnttarg"} +% \VerbatimInput[gobble=0,numbers=left,numberblanklines=true,firstline=12]{fontinst.lua} +% \newcommand*\FancyVerbStartString{nifergwall = 0} +% \begin{target}{fnttarg} +% Create fonts. +% Default assumes \lpack{fontinst}. +% Redefine element in target list for alternative tools. +% For example, \lpack{berenisadf}'s \texttt{build.lua} redefines it to use \textsc{gnu} \texttt{make}, \textsc{FontForge} etc. +% \renewcommand*\FancyVerbStopString{utarg = "uniquifyencs"} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true]{fontinst.lua} +% \end{target} +% \begin{target}{uniquifyencs} +% To ensure unique encodings without rebuilding fonts. +% \renewcommand*\FancyVerbStartString{ntarg = "fnttarg"} +% \renewcommand*\FancyVerbStopString{function gwall (msg,file,rtn)} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true]{fontinst.lua} +% \end{target} +% \renewcommand*\FancyVerbStartString{utarg = "uniquifyencs"} +% \renewcommand*\FancyVerbStopString{function finst (patt,dir,mode)} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true]{fontinst.lua} +% \begin{luafunction}{finst()} +% Is to \texttt{finst} what \texttt{fontinst} is to \texttt{fontinst}. +% \renewcommand*\FancyVerbStartString{utarg = "uniquifyencs"} +% \renewcommand*\FancyVerbStopString{function fntkeeper ()} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=38]{fontinst.lua} +% \end{luafunction} +% \begin{luafunction}{fntkeeper()} +% Keep fonts between \texttt{l3build} runs unless \texttt{fnttarg} explicitly called. +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=52,lastline=102]{fontinst.lua} +% \end{luafunction} +% \begin{luafunction}{uniquify()} +% Ensure encoding names are unique. +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=105,lastline=222]{fontinst.lua} +% \end{luafunction} +% \begin{luafunction}{fontinst()} +% Configured for \lpack{fontinst}. +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=223,lastline=321]{fontinst.lua} +% \end{luafunction} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=322,lastline=323]{fontinst.lua} +% \begin{luafunction}{fnt_test()} +% Assumes a suitable template is available for testing. +% \renewcommand*\FancyVerbStartString{-- fnt_test} +% \renewcommand*\FancyVerbStopString{-- checkinit_hook} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true]{fontinst.lua} +% \end{luafunction} +% \begin{luafunction}{checkinit_hook()} +% Redefinition of standard \lpack{l3build} function. +% \renewcommand*\FancyVerbStartString{-- checkinit_hook} +% \renewcommand*\FancyVerbStopString{-- doc_init} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true]{fontinst.lua} +% \end{luafunction} +% \begin{luafunction}{docinit_hook()} +% Redefinition of standard \lpack{l3build} function. +% \renewcommand*\FancyVerbStartString{-- doc_init} +% \renewcommand*\FancyVerbStopString{-- fontinst must be specified first} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true]{fontinst.lua} +% \end{luafunction} +% \begin{target}{fnttarg} +% Main target definition. +% \renewcommand*\FancyVerbStartString{-- ntarg} +% \renewcommand*\FancyVerbStopString{-- utarg} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,]{fontinst.lua} +% \end{target} +% \begin{target}{uniquifyencs} +% Secondary target. +% It is not normally necessary to invoke this target separately if using the default definition of \texttt{fnttarg}. +% \renewcommand*\FancyVerbStartString{-- utarg} +% \renewcommand*\FancyVerbStopString{-- diwedd targets} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true]{fontinst.lua} +% \end{target} +% \begin{luavariable}{autotestfds} +% \texttt{fd} files to use when auto-generating build tests. +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=631,lastline=631]{fontinst.lua} +% \end{luavariable} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=633,lastline=634]{fontinst.lua} +% \begin{luavariable}{binmakers} +% Scripts to create binary \texttt{tfm} and/or \texttt{vf} from \texttt{pl} and/or \texttt{vpl}. +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=635,lastline=635]{fontinst.lua} +% \end{luavariable} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=638,lastline=644]{fontinst.lua} +% \begin{luavariable}{familymakers} +% Files to compile to generate font definition files, human-readable metrics etc. +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=645,lastline=645]{fontinst.lua} +% \end{luavariable} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,lastline=646,firstline=647]{fontinst.lua} +% \begin{luavariable}{fnttestfds} +% Font definition files to use when auto-generating tests. +% May be either a table of globs or a table of tables of package names and lists of globs. +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,lastline=648,firstline=648]{fontinst.lua} +% \end{luavariable} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,lastline=652,firstline=650]{fontinst.lua} +% \begin{luavariable}{keepdir,keeptempdir} +% Directories to stash generated font files and intermediate build products. +% These should \textbf{not} be subdirectories of \texttt{builddir}. +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=653,lastline=654]{fontinst.lua} +% \end{luavariable} +% \begin{luavariable}{keepfiles,keeptempfiles} +% Globs for generated font files and intermediate build products to stash in \path{keepdir} and \path{keeptempdir} respectively. +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=655,lastline=656]{fontinst.lua} +% \end{luavariable} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=657,lastline=657]{fontinst.lua} +% \begin{luavariable}{mapmakers} +% Files to compile to generate map file fragments. +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=658,lastline=658]{fontinst.lua} +% \end{luavariable} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=659,lastline=662]{fontinst.lua} +% \begin{luavariable}{vendor} +% Vendor directory when installing. +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=663,lastline=664]{fontinst.lua} +% \end{luavariable} +% \VerbatimInput[gobble=0,numbers=left,firstnumber=last,numberblanklines=true,firstline=665]{fontinst.lua} +% \end{luafrag} +% +% \subsubsection{fnt-ctan.lua}\label{subsubsec:fnt-ctan-lua} +% +% \begin{luafrag}{fnt-ctan.lua} +% Included by \file{fontinst.lua} if it exists in \texttt{maindir}. +% Changes the way the \texttt{ctan} target builds the archive to match \ctan{} requirements for font distributions. +% \VerbatimInput[gobble=0,numbers=left,numberblanklines=true,firstline=2,lastline=8,firstnumber=last]{fnt-ctan.lua} +% \begin{luafunction}{extname()} +% Get extension from filename. +% \newcommand*\FancyVerbStartString{-- extname(filename)} +% \newcommand*\FancyVerbStopString{-- copysubctan(files,srcdir,targdir)} +% \VerbatimInput[gobble=0,numbers=left,numberblanklines=true,firstnumber=last]{fnt-ctan.lua} +% \end{luafunction} +% \begin{luafunction}{copysubctan()} +% Sub-directories for \ctan. +% \newcommand*\FancyVerbStartString{-- copysubctan(files,srcdir,targdir)} +% \newcommand*\FancyVerbStopString{-- copyctan()} +% \VerbatimInput[gobble=0,numbers=left,numberblanklines=true,firstnumber=last]{fnt-ctan.lua} +% \end{luafunction} +% \begin{luafunction}{copyctan()} +% Redefine function used by \texttt{ctan}. +% \newcommand*\FancyVerbStartString{-- copyctan()} +% \newcommand*\FancyVerbStopString{-- end copyctan()} +% \VerbatimInput[gobble=0,numbers=left,numberblanklines=true,firstnumber=last]{fnt-ctan.lua} +% \end{luafunction} +% \end{luafrag} +% +% \subsubsection{tag.lua}\label{subsubsec:tag-lua} +% +% This is just a copy of the function from \file{l3build-tagging.lua}. +% It is here because \file{fontinst.lua} calls a file containing a custom \file{tag.lua} file locally\footnote{% +% This file is on \github{} for the morbidly curious, along with at least three attempts to create a \file{manifest.txt}.% +% }. +% For an example of how to do this, see the \file{build-config.lua} file for \LaTeXe{}. +% +% \iffalse +%<*tag> +% \fi +% \begin{luafrag}{tag.lua} +% \begin{macrocode} +function update_tag(filename,content,tagname,tagdate) + return content +end +% \end{macrocode} +% \end{luafrag} +% \iffalse +%</tag> +% \fi +% +% +% +% +% \subsection{Metrics}\label{subsec:mtx} +% +% These files influence the characters which end up in the \TeX{} fonts. +% For example, they may construct otherwise missing glyphs or adjust kerning pairs. +% +% +% \subsubsection{dotscbuild.mtx}\label{subsubsec:dotscbuild} +% +% \iffalse +%<*dotscbuild> +% \fi +% \begin{metrics}{dotscbuild.mtx} +% \begin{macrocode} +\relax + +\metrics + +\needsfontinstversion{1.917} + +\usemtxpackage{ltcmds} +\ProvidesMtxPackage{dotscbuild} + +\begincomment +\section{Proper latin small capitals} + +\subsection{Some utility commands} +\endcomment + +\setcommand\setcsctopglyph#1#2#3#4{ + \ifareglyphs{#2.sc,#3}\then + \setglyph{#1} + \topaccent{#2.sc}{#3}{#4} + \endsetglyph + \setleftrightkerning{#1}{#2.sc}{1000} + \Fi +} +\setcommand\setcscbotglyph#1#2#3#4{ + \ifareglyphs{#2.sc,#3}\then + \setglyph{#1} + \botaccent{#2.sc}{#3}{#4} + \endsetglyph + \setleftrightkerning{#1}{#2.sc}{1000} + \Fi +} +\begincomment\medskip +A \textbf{Try: Set glyph} is an ordinary \textbf{Set glyph} which is +conditional on that a set of glyphs (those used to construct the +composite glyph) are available. It is technically e.g. +\begin{quotation} + \setcsctopglyph{\macroparameter{1}}{\macroparameter{2}}% + {\macroparameter{3}}{\macroparameter{4}} + \setcscbotglyph{\macroparameter{1}}{\macroparameter{2}}% + {\macroparameter{3}}{\macroparameter{4}}\par +\end{quotation} +(both of which are implemented in the code as simple four argument +commands), but in the list of commands below those two commands will +be typeset as +\resetcommand\setcsctopglyph#1#2#3#4{% + \Aheading{Try: Set glyph `\TypesetStringExpression{#1}'} + \topaccent{#2.sc}{#3}{#4} + \setleftrightkerning{#1}{#2.sc}{1000} +} +\resetcommand\setcscbotglyph#1#2#3#4{% + \Aheading{Try: Set glyph `\TypesetStringExpression{#1}'} + \botaccent{#2.sc}{#3}{#4} + \setleftrightkerning{#1}{#2.sc}{1000} +} +\begin{quotation} + \setcsctopglyph{\macroparameter{1}}{\macroparameter{2}}% + {\macroparameter{3}}{\macroparameter{4}} + \setcscbotglyph{\macroparameter{1}}{\macroparameter{2}}% + {\macroparameter{3}}{\macroparameter{4}} +\end{quotation} +\endcomment + +\ifareglyphs{L,l.sc}\then + \setint{smallcapsscale}{ + \div{\mul{1000}{\height{l.sc}}}{\height{L}} + } +\Else + \setint{smallcapsscale}{800} +\Fi + + +\setcsctopglyph{aacute.sc}{a}{acute}{500} +\setcsctopglyph{abreve.sc}{a}{breve}{500} +\setcsctopglyph{acircumflex.sc}{a}{circumflex}{500} +\setcsctopglyph{adieresis.sc}{a}{dieresis}{500} +\setcsctopglyph{agrave.sc}{a}{grave}{500} +\setcscbotglyph{aogonek.sc}{a}{ogonek}{900} +\setcsctopglyph{aring.sc}{a}{ring}{500} +\setcsctopglyph{atilde.sc}{a}{tilde}{500} + +\setcsctopglyph{cacute.sc}{c}{acute}{500} +\setcsctopglyph{ccaron.sc}{c}{caron}{500} +\setcsctopglyph{ccedilla.sc}{c}{cedilla}{500} + +\setcsctopglyph{dcaron.sc}{d}{caron}{500} + +\setcsctopglyph{eacute.sc}{e}{acute}{500} +\setcsctopglyph{ecaron.sc}{e}{caron}{500} +\setcsctopglyph{ecircumflex.sc}{e}{circumflex}{500} +\setcsctopglyph{edieresis.sc}{e}{dieresis}{500} +\setcsctopglyph{egrave.sc}{e}{grave}{500} +\setcscbotglyph{eogonek.sc}{e}{ogonek}{850} + +\setcsctopglyph{gbreve.sc}{g}{breve}{500} + +\setcsctopglyph{iacute.sc}{i}{acute}{500} +\setcsctopglyph{icircumflex.sc}{i}{circumflex}{500} +\setcsctopglyph{idieresis.sc}{i}{dieresis}{500} +\setcsctopglyph{idotaccent.sc}{i}{dotaccent}{500} +\setcsctopglyph{igrave.sc}{i}{grave}{500} + +\setcsctopglyph{lacute.sc}{l}{acute}{250} + +\ifareglyphs{l.sc,quoteright}\then + \setglyph{lcaron.sc} + \glyph{l.sc}{1000} + \ifisint{monowidth}\then\Else \movert{-100} \Fi + \glyph{quoteright}{\int{smallcapsscale}} + \endsetglyph + \setleftkerning{lcaron.sc}{l.sc}{1000} +\Fi + +\setcsctopglyph{nacute.sc}{n}{acute}{500} +\setcsctopglyph{ncaron.sc}{n}{caron}{500} +\setcsctopglyph{ntilde.sc}{n}{tilde}{500} + +\setcsctopglyph{oacute.sc}{o}{acute}{500} +\setcsctopglyph{ocircumflex.sc}{o}{circumflex}{500} +\setcsctopglyph{odieresis.sc}{o}{dieresis}{500} +\setcsctopglyph{ograve.sc}{o}{grave}{500} +\setcsctopglyph{ohungarumlaut.sc}{o}{hungarumlaut}{500} +\setcsctopglyph{otilde.sc}{o}{tilde}{500} + +\setcsctopglyph{racute.sc}{r}{acute}{500} +\setcsctopglyph{rcaron.sc}{r}{caron}{500} + +\setcsctopglyph{sacute.sc}{s}{acute}{500} +\setcsctopglyph{scaron.sc}{s}{caron}{500} +\setcscbotglyph{scedilla.sc}{s}{cedilla}{500} + +\setcsctopglyph{tcaron.sc}{t}{caron}{500} +\setcscbotglyph{tcedilla.sc}{t}{cedilla}{500} + +\setcsctopglyph{uacute.sc}{u}{acute}{500} +\setcsctopglyph{ucircumflex.sc}{u}{circumflex}{500} +\setcsctopglyph{udieresis.sc}{u}{dieresis}{500} +\setcsctopglyph{ugrave.sc}{u}{grave}{500} +\setcsctopglyph{uhungarumlaut.sc}{u}{hungarumlaut}{500} +\setcsctopglyph{uring.sc}{u}{ring}{500} + +\setcsctopglyph{yacute.sc}{y}{acute}{500} +\setcsctopglyph{ydieresis.sc}{y}{dieresis}{500} + +\setcsctopglyph{zacute.sc}{z}{acute}{500} +\setcsctopglyph{zcaron.sc}{z}{caron}{500} +\setcsctopglyph{zdotaccent.sc}{z}{dotaccent}{500} + + +\begincomment +\subsection{Other glyphs that can be built} +\endcomment + +\ifisglyph{dcroat.sc}\then + \setglyph{dbar.sc} + \glyph{dcroat.sc}{1000} + \endsetglyph + \setleftrightkerning{dbar.sc}{dcroat.sc}{1000} +\Else\ifisglyph{eth.sc}\then + \setglyph{dbar.sc} + \glyph{eth.sc}{1000} + \endsetglyph + \setleftrightkerning{dbar.sc}{eth.sc}{1000} +\Fi\Fi + + +\endmetrics +% \end{macrocode} +% \end{metrics} +% \iffalse +%</dotscbuild> +% \fi +% +% +% \subsubsection{newlatin-dotsc.mtx}\label{subsubsec:newlatin-dotsc} +% +% \iffalse +%<*newlatin-dotsc> +% \fi +% \begin{metrics}{newlatin-dotsc.mtx} +% based on \file{newlatin.mtx} - because I couldn't figure out how to pass options... +% \begin{macrocode} +\relax + +\documentclass[twocolumn]{article} + +\metrics + +\needsfontinstversion{1.924} + +\usemtxpackage{llbuild} + +\usemtxpackage{lubuild} + +\ifoption{nosc}\then \Else + +\usemtxpackage{dotscbuild} +% \usemtxpackage{lsfake} +\usemtxpackage{dotscmisc} + +\Fi + +\usemtxpackage{ltpunct} + + +\usemtxpackage{ltcmds} + +\unfakable{Gamma} +\unfakable{Delta} +\unfakable{Theta} +\unfakable{Lambda} +\unfakable{Xi} +\unfakable{Pi} +\unfakable{Sigma} +\unfakable{Upsilon} +\unfakable{Upsilon1} +\unfakable{Phi} +\unfakable{Psi} +\unfakable{Omega} + +\foreach(accent){grave,acute,circumflex,tilde,dieresis,hungarumlaut,% + ring,caron,breve,macron,dotaccent} + \ifisglyph{\str{accent}}\then + \resetglyph{\str{accent}} + \glyph{\str{accent}}{1000} + \resetdepth{0} + \endresetglyph + \Fi +\endfor(accent) + + +\setglyph{ringfitted} + \movert{\half{\sub{\width{A}}{\width{ring}}}} + \glyph{ring}{1000} + \movert{\otherhalf{\sub{\width{A}}{\width{ring}}}} +\endsetglyph + + + +\setleftkerning{less}{guillemotleft}{1000} +\setleftkerning{greater}{guillemotright}{1000} + + +\endmetrics + +% \end{macrocode} +% \end{metrics} +% \iffalse +%</newlatin-dotsc> +% \fi +% +% +% \subsubsection{dotscmisc.mtx}\label{subsubsec:dotscmisc} +% +% \iffalse +%<*dotscmisc> +% \fi +% \begin{metrics}{dotscmisc.mtx} +% \begin{macrocode} +\relax + +\metrics + +\needsfontinstversion{1.917} + +\ProvidesMtxPackage{dotscmisc} + +\ifisglyph{i.sc}\then + \setglyph{dotlessi.sc} + \glyph{i.sc}{1000} + \setleftrightkerning{dotlessi.sc}{i.sc}{1000} + \endsetglyph +\Fi + +\ifisglyph{j.sc}\then + \setglyph{dotlessj.sc} + \glyph{j.sc}{1000} + \setleftrightkerning{dotlessj.sc}{j.sc}{1000} + \endsetglyph +\Fi + + +\setint{smallcapsspacing}{0} + +\ifisglyph{f.sc}\then + +\setglyph{ff.sc} + \glyph{f.sc}{1000} + \movert{\add{\kerning{f.sc}{f.sc}}{\int{smallcapsspacing}}} + \glyph{f.sc}{1000} +\endsetglyph +\setrightkerning{ff.sc}{f.sc}{1000} +\setglyph{f_f.sc} + \glyph{ff.sc}{1000} +\endsetglyph +\setrightkerning{f_f.sc}{ff.sc}{1000} + +\ifisglyph{i.sc}\then + \setglyph{fi.sc} + \glyph{f.sc}{1000} + \movert{\add{\kerning{f.sc}{i.sc}}{\int{smallcapsspacing}}} + \glyph{i.sc}{1000} + \endsetglyph + +% \setleftkerning{fi.sc}{f.sc}{1000} + \setrightkerning{fi.sc}{i.sc}{1000} + + \setglyph{f_i.sc} + \glyph{fi.sc}{1000} + \endsetglyph + \setrightkerning{f_i.sc}{fi.sc}{1000} + + \setglyph{ffi.sc} + \glyph{ff.sc}{1000} + \movert{\add{\kerning{f.sc}{i.sc}}{\int{smallcapsspacing}}} + \glyph{i.sc}{1000} + \endsetglyph + + \setglyph{f_f_i.sc} + \glyph{ffi.sc}{1000} + \endsetglyph + \setrightkerning{f_f_i.sc}{ffi.sc}{1000} + +% \setleftkerning{ffi.sc}{f.sc}{1000} + \setrightkerning{ffi.sc}{i.sc}{1000} +\fi + +\ifisglyph{l.sc}\then + \setglyph{fl.sc} + \glyph{f.sc}{1000} + \movert{\add{\kerning{f.sc}{l.sc}}{\int{smallcapsspacing}}} + \glyph{l.sc}{1000} + \endsetglyph + +% \setleftkerning{fl.sc}{f.sc}{1000} + \setrightkerning{fl.sc}{l.sc}{1000} + + \setglyph{f_l.sc} + \glyph{fl.sc}{1000} + \endsetglyph + \setrightkerning{f_l.sc}{fl.sc}{1000} + + \setglyph{ffl.sc} + \glyph{ff.sc}{1000} + \movert{\add{\kerning{f.sc}{l.sc}}{\int{smallcapsspacing}}} + \glyph{l.sc}{1000} + \endsetglyph + +% \setleftkerning{ffl.sc}{f.sc}{1000} + \setrightkerning{ffl.sc}{l.sc}{1000} + + \setglyph{f_f_l.sc} + \glyph{ffl.sc}{1000} + \endsetglyph + \setrightkerning{f_f_l.sc}{ffl.sc}{1000} + +\fi +\fi % ifisglyph{f.sc} + + +\ifareglyphs{i.sc,j.sc}\then + \setglyph{ij.sc} + \glyph{i.sc}{1000} + \movert{\add{\kerning{i.sc}{j.sc}}{\int{smallcapsspacing}}} + \glyph{j.sc}{1000} + \endsetglyph +% \setleftkerning{ij.sc}{i.sc}{1000} + \setrightkerning{ij.sc}{j.sc}{1000} +\fi + +\ifisglyph{ss.sc}\then + \setglyph{germandbls.sc} + \glyph{ss.sc}{1000} + \endsetglyph + \setleftrightkerning{germandbls.sc}{ss.sc}{1000} +\Else + \ifisglyph{s.sc}\then + \setglyph{germandbls.sc} + \glyph{s.sc}{1000} + \movert{\add{\kerning{s.sc}{s.sc}}{\int{smallcapsspacing}}} + \glyph{s.sc}{1000} + \endsetglyph + \setleftrightkerning{germandbls.sc}{s.sc}{1000} + \Fi +\Fi + +\endmetrics +% \end{macrocode} +% \end{metrics} +% \iffalse +%</dotscmisc> +% \fi +% +% +% \subsection{Encodings}\label{subsec:etx} +% +% None of these files are actually used in typesetting. +% Rather, they are converted to \texttt{.enc} files, renamed and automatically edited to ensure unique encoding names. +% These names are then substituted into \texttt{.map} files. +% +% \subsubsection{dotoldstyle.etx}\label{subsubsec:dotoldstyle} +% +% \iffalse +%<*dotoldstyle> +% \fi +% \begin{encoding}{dotoldstyle.etx} +% \begin{macrocode} +\relax +\encoding + \setcommand\digit#1{#1.oldstyle} +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</dotoldstyle> +% \fi +% +% +% \subsubsection{dotsc2.etx}\label{subsubsec:dotsc2} +% +% \iffalse +%<*dotsc2> +% \fi +% \begin{encoding}{dotsc2.etx} +% \begin{macrocode} +\relax + +\encoding + +\setcommand\lc#1#2{#2.sc} +\setcommand\uc#1#2{#1} +\setcommand\lctop#1#2{#2.sc} +\setcommand\uctop#1#2{#1} +\setcommand\lclig#1#2{#2.sc} +\setcommand\uclig#1#2{#1spaced} + + +\ifisint{capspacing}\then + \setint{letterspacing}{\int{capspacing}} +\fi + +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</dotsc2> +% \fi +% +% +% \subsubsection{dottaboldstyle.etx}\label{subsubsec:dottaboldstyle} +% +% \iffalse +%<*dottaboldstyle> +% \fi +% \begin{encoding}{dottaboldstyle.etx} +% \begin{macrocode} +\relax +\encoding + \setcommand\digit#1{#1.taboldstyle} +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</dottaboldstyle> +% \fi +% +% +% \subsubsection{lining.etx}\label{subsubsec:lining} +% +% \iffalse +%<*lining> +% \fi +% \begin{encoding}{lining.etx} +% \begin{macrocode} +\relax +\encoding +\setcommand\digit#1{#1lining} +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</lining> +% \fi +% +% +% \subsubsection{oldstyle.etx}\label{subsubsec:oldstyle} +% +% \iffalse +%<*oldstyle> +% \fi +% \begin{encoding}{oldstyle.etx} +% \begin{macrocode} +\relax +\encoding + \setcommand\digit#1{#1oldstyle} +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</oldstyle> +% \fi +% +% +% \subsubsection{t1-cfr.etx}\label{subsubsec:t1-cfr} +% +% \iffalse +%<*t1-cfr> +% \fi +% \begin{encoding}{t1-cfr.etx} +% \begin{macrocode} +%% +%% - The commentary in the original is deleted in this version. For +%% information about the T1 etc., typeset the original t1.etx +%% included with fontinst. +%% - Slots are altered to accommodate characters which are named +%% differently. For example, this encoding uses "endash" and "emdash" +%% whereas t1.etx called for "rangedash" and "punctdash". +%% - The original notices at the top of that file concerning authors, +%% maintenance etc. are replaced by this notice. +%% - The file is renamed. +%% - The encoding name is modified. +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\relax +\encoding + +\needsfontinstversion{1.910} + +\setcommand\lc#1#2{#2} +\setcommand\uc#1#2{#1} +\setcommand\lctop#1#2{#2} +\setcommand\uctop#1#2{#1} +\setcommand\lclig#1#2{#2} +\ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setcommand\uclig#1#2{#1spaced} + \comment{Here we set \verb|\uclig#1#2| to \verb|#1spaced|, but + you can't see it as \verb|\setcommand| commands are invisible in + the typeset output.} + \Fi +\Fi +\setcommand\uclig#1#2{#1} +\setcommand\digit#1{#1} + +\ifisint{monowidth}\then + \setint{ligaturing}{0} +\Else + % The following empty line is *important* to get the formatting + % right here (sigh)! (Remember that it is a \par token.) + + \ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setint{ligaturing}{0} + \Fi + \Fi + \setint{ligaturing}{1} +\Fi + +\setint{italicslant}{0} +\setint{quad}{1000} +\setint{baselineskip}{1200} + +\ifisglyph{x}\then + \setint{xheight}{\height{x}} +\Else + \setint{xheight}{500} +\Fi + +\ifisglyph{space}\then + \setint{interword}{\width{space}} +\Else\ifisglyph{i}\then + \setint{interword}{\width{i}} +\Else + \setint{interword}{333} +\Fi\Fi + +\ifisint{monowidth}\then + \setint{stretchword}{0} + \setint{shrinkword}{0} + \setint{extraspace}{\int{interword}} +\Else + \setint{stretchword}{\scale{\int{interword}}{600}} + \setint{shrinkword}{\scale{\int{interword}}{240}} + \setint{extraspace}{\scale{\int{interword}}{240}} +\Fi + +\ifisglyph{X}\then + \setint{capheight}{\height{X}} +\Else + \setint{capheight}{750} +\Fi + +\ifisglyph{d}\then + \setint{ascender}{\height{d}} +\Else\ifisint{capheight}\then + \setint{ascender}{\int{capheight}} +\Else + \setint{ascender}{750} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{acccapheight}{\height{Aring}} +\Else + \setint{acccapheight}{999} +\Fi + +\ifisint{descender_neg}\then + \setint{descender}{\neg{\int{descender_neg}}} +\Else\ifisglyph{p}\then + \setint{descender}{\depth{p}} +\Else + \setint{descender}{250} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{maxheight}{\height{Aring}} +\Else + \setint{maxheight}{1000} +\Fi + +\ifisint{maxdepth_neg}\then + \setint{maxdepth}{\neg{\int{maxdepth_neg}}} +\Else\ifisglyph{j}\then + \setint{maxdepth}{\depth{j}} +\Else + \setint{maxdepth}{250} +\Fi\Fi + +\ifisglyph{six}\then + \setint{digitwidth}{\width{six}} +\Else + \setint{digitwidth}{500} +\Fi + +\setint{capstem}{0} % not in AFM files + +\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 + +\ifnumber{\int{ligaturing}}<{0}\then + \comment{In this case, the codingscheme can be different from the + default, and therefore we refrain from setting it.} +\Else + \setstr{codingscheme}{EXTENDED TEX FONT ENCODING - LATIN CFR} +\Fi + +\setslot{\lc{Grave}{grave}} + \comment{The grave accent `\`{}'.} +\endsetslot + +\setslot{\lc{Acute}{acute}} + \comment{The acute accent `\'{}'.} +\endsetslot + +\setslot{\lc{Circumflex}{circumflex}} + \comment{The circumflex accent `\^{}'.} +\endsetslot + +\setslot{\lc{Tilde}{tilde}} + \comment{The tilde accent `\~{}'.} +\endsetslot + +\setslot{\lc{Dieresis}{dieresis}} + \comment{The umlaut or dieresis accent `\"{}'.} +\endsetslot + +\setslot{\lc{Hungarumlaut}{hungarumlaut}} + \comment{The long Hungarian umlaut `\H{}'.} +\endsetslot + +\setslot{\lc{Ring}{ring}} + \comment{The ring accent `\r{}'.} +\endsetslot + +\setslot{\lc{Caron}{caron}} + \comment{The caron or h\'a\v cek accent `\v{}'.} +\endsetslot + +\setslot{\lc{Breve}{breve}} + \comment{The breve accent `\u{}'.} +\endsetslot + +\setslot{\lc{Macron}{macron}} + \comment{The macron accent `\={}'.} +\endsetslot + +\setslot{\lc{Dotaccent}{dotaccent}} + \comment{The dot accent `\.{}'.} +\endsetslot + +\setslot{\lc{Cedilla}{cedilla}} + \comment{The cedilla accent `\c {}'.} +\endsetslot + +\setslot{\lc{Ogonek}{ogonek}} + \comment{The ogonek accent `\k {}'.} +\endsetslot + +\setslot{quotesinglbase} + \comment{A German single quote mark `\quotesinglbase' similar to a comma, + but with different sidebearings.} +\endsetslot + +\setslot{guilsinglleft} + \comment{A French single opening quote mark `\guilsinglleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guilsinglright} + \comment{A French single closing quote mark `\guilsinglright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{quotedblleft} + \comment{The English opening quote mark `\,\textquotedblleft\,'.} +\endsetslot + +\setslot{quotedblright} + \comment{The English closing quote mark `\,\textquotedblright\,'.} +\endsetslot + +\setslot{quotedblbase} + \comment{A German double quote mark `\quotedblbase' similar to two commas, + but with tighter letterspacing and different sidebearings.} +\endsetslot + +\setslot{guillemotleft} + \comment{A French double opening quote mark `\guillemotleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guillemotright} + \comment{A French closing opening quote mark `\guillemotright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{endash} + \ligature{LIG}{hyphen}{emdash} + \comment{The number range dash `1--9'. This is called `rangedash' by + fontinst's t1.etx, but it needs to be called `endash' to work right. The + `\textendash'. In a monowidth font, this might be set as + `\texttt{1{-}9}'.} +\endsetslot + +\setslot{emdash} + \comment{The punctuation dash `Oh---boy.' This is calle `punctdash' by + fontinst's t1.etx, but needs to be called `emdash' to work right. The + `\textemdash'. In a monowidth font, this might be set as + `\texttt{Oh{-}{-}boy.}'} +\endsetslot + +\setslot{compwordmark} + \comment{An invisible glyph, with zero width and depth, but the + height of lowercase letters without ascenders. + It is used to stop ligaturing in words like `shelf{}ful'.} +\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.} +\endsetslot + +\setslot{\lc{dotlessI}{dotlessi}} + \comment{A dotless i `\i', used to produce accented letters such as + `\=\i'.} +\endsetslot + +\setslot{\lc{dotlessJ}{dotlessj}} + \comment{A dotless j `\j', used to produce accented letters such as + `\=\j'. Most non-\TeX\ fonts do not have this glyph.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{5}\Else + +\setslot{\lclig{FF}{ff}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FFI}{ffi}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FFL}{ffl}} + \Fi + \comment{The `ff' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FI}{fi}} + \comment{The `fi' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FL}{fl}} + \comment{The `fl' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFI}{ffi}} + \comment{The `ffi' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFL}{ffl}} + \comment{The `ffl' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\Fi + +\setslot{visiblespace} + \comment{A visible space glyph `\textvisiblespace'.} +\endsetslot + +\setslot{exclam} + \ligature{LIG}{quoteleft}{exclamdown} + \comment{The exclamation mark `!'.} +\endsetslot + +\setslot{quotedbl} + \comment{The `neutral' double quotation mark `\,\textquotedbl\,', + included for use in monowidth fonts, or for setting computer + programs. Note that the inclusion of this glyph in this slot + means that \TeX\ documents which used `{\tt\char`\"}' as an + input character will no longer work.} +\endsetslot + +\setslot{numbersign} + \comment{The hash sign `\#'.} +\endsetslot + +\setslot{dollar} + \comment{The dollar sign `\$'.} +\endsetslot + +\setslot{percent} + \comment{The percent sign `\%'.} +\endsetslot + +\setslot{ampersand} + \comment{The ampersand sign `\&'.} +\endsetslot + +\setslot{quoteright} + \ligature{LIG}{quoteright}{quotedblright} + \comment{The English closing single quote mark `\,\textquoteright\,'.} +\endsetslot + +\setslot{parenleft} + \comment{The opening parenthesis `('.} +\endsetslot + +\setslot{parenright} + \comment{The closing parenthesis `)'.} +\endsetslot + +\setslot{asterisk} + \comment{The raised asterisk `*'.} +\endsetslot + +\setslot{plus} + \comment{The addition sign `+'.} +\endsetslot + +\setslot{comma} + \ligature{LIG}{comma}{quotedblbase} + \comment{The comma `,'.} +\endsetslot + +\setslot{hyphen} + \ligature{LIG}{hyphen}{endash} + \ligature{LIG}{hyphenchar}{hyphenchar} + \comment{The hyphen `-'.} +\endsetslot + +\setslot{period} + \comment{The period `.'.} +\endsetslot + +\setslot{slash} + \comment{The forward oblique `/'.} +\endsetslot + +\setslot{\digit{zero}} + \comment{The number `0'. This (and all the other numerals) may be + old style or ranging digits.} +\endsetslot + +\setslot{\digit{one}} + \comment{The number `1'.} +\endsetslot + +\setslot{\digit{two}} + \comment{The number `2'.} +\endsetslot + +\setslot{\digit{three}} + \comment{The number `3'.} +\endsetslot + +\setslot{\digit{four}} + \comment{The number `4'.} +\endsetslot + +\setslot{\digit{five}} + \comment{The number `5'.} +\endsetslot + +\setslot{\digit{six}} + \comment{The number `6'.} +\endsetslot + +\setslot{\digit{seven}} + \comment{The number `7'.} +\endsetslot + +\setslot{\digit{eight}} + \comment{The number `8'.} +\endsetslot + +\setslot{\digit{nine}} + \comment{The number `9'.} +\endsetslot + +\setslot{colon} + \comment{The colon punctuation mark `:'.} +\endsetslot + +\setslot{semicolon} + \comment{The semi-colon punctuation mark `;'.} +\endsetslot + +\setslot{less} + \ligature{LIG}{less}{guillemotleft} + \comment{The less-than sign `\textless'.} +\endsetslot + +\setslot{equal} + \comment{The equals sign `='.} +\endsetslot + +\setslot{greater} + \ligature{LIG}{greater}{guillemotright} + \comment{The greater-than sign `\textgreater'.} +\endsetslot + +\setslot{question} + \ligature{LIG}{quoteleft}{questiondown} + \comment{The question mark `?'.} +\endsetslot + +\setslot{at} + \comment{The at sign `@'.} +\endsetslot + +\setslot{\uc{A}{a}} + \comment{The letter `{A}'.} +\endsetslot + +\setslot{\uc{B}{b}} + \comment{The letter `{B}'.} +\endsetslot + +\setslot{\uc{C}{c}} + \comment{The letter `{C}'.} +\endsetslot + +\setslot{\uc{D}{d}} + \comment{The letter `{D}'.} +\endsetslot + +\setslot{\uc{E}{e}} + \comment{The letter `{E}'.} +\endsetslot + +\setslot{\uc{F}{f}} + \comment{The letter `{F}'.} +\endsetslot + +\setslot{\uc{G}{g}} + \comment{The letter `{G}'.} +\endsetslot + +\setslot{\uc{H}{h}} + \comment{The letter `{H}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + +\setslot{\uc{I}{i}} + \comment{The letter `{I}'.} +\endsetslot + +\Fi + +\setslot{\uc{J}{j}} + \comment{The letter `{J}'.} +\endsetslot + +\setslot{\uc{K}{k}} + \comment{The letter `{K}'.} +\endsetslot + +\setslot{\uc{L}{l}} + \comment{The letter `{L}'.} +\endsetslot + +\setslot{\uc{M}{m}} + \comment{The letter `{M}'.} +\endsetslot + +\setslot{\uc{N}{n}} + \comment{The letter `{N}'.} +\endsetslot + +\setslot{\uc{O}{o}} + \comment{The letter `{O}'.} +\endsetslot + +\setslot{\uc{P}{p}} + \comment{The letter `{P}'.} +\endsetslot + +\setslot{\uc{Q}{q}} + \comment{The letter `{Q}'.} +\endsetslot + +\setslot{\uc{R}{r}} + \comment{The letter `{R}'.} +\endsetslot + +\setslot{\uc{S}{s}} + \comment{The letter `{S}'.} +\endsetslot + +\setslot{\uc{T}{t}} + \comment{The letter `{T}'.} +\endsetslot + +\setslot{\uc{U}{u}} + \comment{The letter `{U}'.} +\endsetslot + +\setslot{\uc{V}{v}} + \comment{The letter `{V}'.} +\endsetslot + +\setslot{\uc{W}{w}} + \comment{The letter `{W}'.} +\endsetslot + +\setslot{\uc{X}{x}} + \comment{The letter `{X}'.} +\endsetslot + +\setslot{\uc{Y}{y}} + \comment{The letter `{Y}'.} +\endsetslot + +\setslot{\uc{Z}{z}} + \comment{The letter `{Z}'.} +\endsetslot + +\setslot{bracketleft} + \comment{The opening square bracket `['.} +\endsetslot + +\setslot{backslash} + \comment{The backwards oblique `\textbackslash'.} +\endsetslot + +\setslot{bracketright} + \comment{The closing square bracket `]'.} +\endsetslot + +\setslot{asciicircum} + \comment{The ASCII upward-pointing arrow head `\textasciicircum'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{underscore} + \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} + \ligature{LIG}{quoteleft}{quotedblleft} + \comment{The English opening single quote mark `\,\textquoteleft\,'.} +\endsetslot + +\setslot{\lc{A}{a}} + \comment{The letter `{a}'.} +\endsetslot + +\setslot{\lc{B}{b}} + \comment{The letter `{b}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{C}{c}} + \comment{The letter `{c}'.} + \endsetslot + +\Fi + +\setslot{\lc{D}{d}} + \comment{The letter `{d}'.} +\endsetslot + +\setslot{\lc{E}{e}} + \comment{The letter `{e}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{F}{f}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FI}{fi}} + \ligature{LIG}{\lc{F}{f}}{\lclig{FF}{ff}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FL}{fl}} + \Fi + \comment{The letter `{f}'.} + \endsetslot + +\Fi + +\setslot{\lc{G}{g}} + \comment{The letter `{g}'.} +\endsetslot + +\setslot{\lc{H}{h}} + \comment{The letter `{h}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{I}{i}} + \comment{The letter `{i}'.} + \endsetslot + +\Fi + +\setslot{\lc{J}{j}} + \comment{The letter `{j}'.} +\endsetslot + +\setslot{\lc{K}{k}} + \comment{The letter `{k}'.} +\endsetslot + +\setslot{\lc{L}{l}} + \comment{The letter `{l}'.} +\endsetslot + +\setslot{\lc{M}{m}} + \comment{The letter `{m}'.} +\endsetslot + +\setslot{\lc{N}{n}} + \comment{The letter `{n}'.} +\endsetslot + +\setslot{\lc{O}{o}} + \comment{The letter `{o}'.} +\endsetslot + +\setslot{\lc{P}{p}} + \comment{The letter `{p}'.} +\endsetslot + +\setslot{\lc{Q}{q}} + \comment{The letter `{q}'.} +\endsetslot + +\setslot{\lc{R}{r}} + \comment{The letter `{r}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{S}{s}} + \comment{The letter `{s}'.} + \endsetslot + +\Fi + +\setslot{\lc{T}{t}} + \comment{The letter `{t}'.} +\endsetslot + +\setslot{\lc{U}{u}} + \comment{The letter `{u}'.} +\endsetslot + +\setslot{\lc{V}{v}} + \comment{The letter `{v}'.} +\endsetslot + +\setslot{\lc{W}{w}} + \comment{The letter `{w}'.} +\endsetslot + +\setslot{\lc{X}{x}} + \comment{The letter `{x}'.} +\endsetslot + +\setslot{\lc{Y}{y}} + \comment{The letter `{y}'.} +\endsetslot + +\setslot{\lc{Z}{z}} + \comment{The letter `{z}'.} +\endsetslot + +\setslot{braceleft} + \comment{The opening curly brace `\textbraceleft'.} +\endsetslot + +\setslot{bar} + \comment{The ASCII vertical bar `\textbar'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{braceright} + \comment{The closing curly brace `\textbraceright'.} +\endsetslot + +\setslot{asciitilde} + \comment{The ASCII tilde `\textasciitilde'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{hyphenchar} + \comment{The glyph used for hyphenation in this font, which will + almost always be the same as `hyphen'.} +\endsetslot + +\setslot{\uctop{Abreve}{abreve}} + \comment{The letter `\u A'.} +\endsetslot + +\setslot{\uc{Aogonek}{aogonek}} + \comment{The letter `\k A'.} +\endsetslot + +\setslot{\uctop{Cacute}{cacute}} + \comment{The letter `\' C'.} +\endsetslot + +\setslot{\uctop{Ccaron}{ccaron}} + \comment{The letter `\v C'.} +\endsetslot + +\setslot{\uctop{Dcaron}{dcaron}} + \comment{The letter `\v D'.} +\endsetslot + +\setslot{\uctop{Ecaron}{ecaron}} + \comment{The letter `\v E'.} +\endsetslot + +\setslot{\uc{Eogonek}{eogonek}} + \comment{The letter `\k E'.} +\endsetslot + +\setslot{\uctop{Gbreve}{gbreve}} + \comment{The letter `\u G'.} +\endsetslot + +\setslot{\uctop{Lacute}{lacute}} + \comment{The letter `\' L'.} +\endsetslot + +\setslot{\uc{Lcaron}{lcaron}} + \comment{The letter `\v L'.} +\endsetslot + +\setslot{\uc{Lslash}{lslash}} + \comment{The letter `\L'.} +\endsetslot + +\setslot{\uctop{Nacute}{nacute}} + \comment{The letter `\' N'.} +\endsetslot + +\setslot{\uctop{Ncaron}{ncaron}} + \comment{The letter `\v N'.} +\endsetslot + +\setslot{\uc{Eng}{eng}} + \comment{The Sami letter `\NG'. It is unavailable in \plain\ \TeX. + This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as in t1.etx in + most cases, it seems.} +\endsetslot + +\setslot{\uctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H O'.} +\endsetslot + +\setslot{\uctop{Racute}{racute}} + \comment{The letter `\' R'.} +\endsetslot + +\setslot{\uctop{Rcaron}{rcaron}} + \comment{The letter `\v R'.} +\endsetslot + +\setslot{\uctop{Sacute}{sacute}} + \comment{The letter `\' S'.} +\endsetslot + +\setslot{\uctop{Scaron}{scaron}} + \comment{The letter `\v S'.} +\endsetslot + +\setslot{\uc{Scedilla}{scedilla}} + \comment{The letter `\c S'.} +\endsetslot + +\setslot{\uctop{Tcaron}{tcaron}} + \comment{The letter `\v T'.} +\endsetslot + +\setslot{\uc{Tcedilla}{tcedilla}} + \comment{The letter `\c T'.} +\endsetslot + +\setslot{\uctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H U'.} +\endsetslot + +\setslot{\uctop{Uring}{uring}} + \comment{The letter `\r U'.} +\endsetslot + +\setslot{\uctop{Ydieresis}{ydieresis}} + \comment{The letter `\" Y'.} +\endsetslot + +\setslot{\uctop{Zacute}{zacute}} + \comment{The letter `\' Z'.} +\endsetslot + +\setslot{\uctop{Zcaron}{zcaron}} + \comment{The letter `\v Z'.} +\endsetslot + +\setslot{\uctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. Z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\uclig{IJ}{ij}} + \comment{The letter `IJ'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{\uctop{Idotaccent}{idotaccent}} + \comment{The letter `\. I'.} +\endsetslot + +\setslot{\lc{Dbar}{dbar}} + \comment{The letter `\dj'.} +\endsetslot + +\setslot{section} + \comment{The section mark `\textsection'.} +\endsetslot + +\setslot{\lctop{Abreve}{abreve}} + \comment{The letter `\u a'.} +\endsetslot + +\setslot{\lc{Aogonek}{aogonek}} + \comment{The letter `\k a'.} +\endsetslot + +\setslot{\lctop{Cacute}{cacute}} + \comment{The letter `\' c'.} +\endsetslot + +\setslot{\lctop{Ccaron}{ccaron}} + \comment{The letter `\v c'.} +\endsetslot + +\setslot{\lctop{Dcaron}{dcaron}} + \comment{The letter `\v d'.} +\endsetslot + +\setslot{\lctop{Ecaron}{ecaron}} + \comment{The letter `\v e'.} +\endsetslot + +\setslot{\lc{Eogonek}{eogonek}} + \comment{The letter `\k e'.} +\endsetslot + +\setslot{\lctop{Gbreve}{gbreve}} + \comment{The letter `\u g'.} +\endsetslot + +\setslot{\lctop{Lacute}{lacute}} + \comment{The letter `\' l'.} +\endsetslot + +\setslot{\lc{Lcaron}{lcaron}} + \comment{The letter `\v l'.} +\endsetslot + +\setslot{\lc{Lslash}{lslash}} + \comment{The letter `\l'.} +\endsetslot + +\setslot{\lctop{Nacute}{nacute}} + \comment{The letter `\' n'.} +\endsetslot + +\setslot{\lctop{Ncaron}{ncaron}} + \comment{The letter `\v n'.} +\endsetslot + +\setslot{\lc{Eng}{eng}} + \comment{The Sami letter `\ng'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as it is in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\lctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H o'.} +\endsetslot + +\setslot{\lctop{Racute}{racute}} + \comment{The letter `\' r'.} +\endsetslot + +\setslot{\lctop{Rcaron}{rcaron}} + \comment{The letter `\v r'.} +\endsetslot + +\setslot{\lctop{Sacute}{sacute}} + \comment{The letter `\' s'.} +\endsetslot + +\setslot{\lctop{Scaron}{scaron}} + \comment{The letter `\v s'.} +\endsetslot + +\setslot{\lc{Scedilla}{scedilla}} + \comment{The letter `\c s'.} +\endsetslot + +\setslot{\lctop{Tcaron}{tcaron}} + \comment{The letter `\v t'.} +\endsetslot + +\setslot{\lc{Tcedilla}{tcedilla}} + \comment{The letter `\c t'.} +\endsetslot + +\setslot{\lctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H u'.} +\endsetslot + +\setslot{\lctop{Uring}{uring}} + \comment{The letter `\r u'.} +\endsetslot + +\setslot{\lctop{Ydieresis}{ydieresis}} + \comment{The letter `\" y'.} +\endsetslot + +\setslot{\lctop{Zacute}{zacute}} + \comment{The letter `\' z'.} +\endsetslot + +\setslot{\lctop{Zcaron}{zcaron}} + \comment{The letter `\v z'.} +\endsetslot + +\setslot{\lctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\lclig{IJ}{ij}} + \comment{The letter `ij'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{exclamdown} + \comment{The Spanish punctuation mark `!`'.} +\endsetslot + +\setslot{questiondown} + \comment{The Spanish punctuation mark `?`'.} +\endsetslot + +\setslot{sterling} + \comment{The British currency mark `\textsterling'.} +\endsetslot + +\setslot{\uctop{Agrave}{agrave}} + \comment{The letter `\` A'.} +\endsetslot + +\setslot{\uctop{Aacute}{aacute}} + \comment{The letter `\' A'.} +\endsetslot + +\setslot{\uctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ A'.} +\endsetslot + +\setslot{\uctop{Atilde}{atilde}} + \comment{The letter `\~ A'.} +\endsetslot + +\setslot{\uctop{Adieresis}{adieresis}} + \comment{The letter `\" A'.} +\endsetslot + +\setslot{\uctop{Aring}{aring}} + \comment{The letter `\r A'.} +\endsetslot + +\setslot{\uc{AE}{ae}} + \comment{The letter `\AE'. This is a single letter, and should not be + faked with `AE'.} +\endsetslot + +\setslot{\uc{Ccedilla}{ccedilla}} + \comment{The letter `\c C'.} +\endsetslot + +\setslot{\uctop{Egrave}{egrave}} + \comment{The letter `\` E'.} +\endsetslot + +\setslot{\uctop{Eacute}{eacute}} + \comment{The letter `\' E'.} +\endsetslot + +\setslot{\uctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ E'.} +\endsetslot + +\setslot{\uctop{Edieresis}{edieresis}} + \comment{The letter `\" E'.} +\endsetslot + +\setslot{\uctop{Igrave}{igrave}} + \comment{The letter `\` I'.} +\endsetslot + +\setslot{\uctop{Iacute}{iacute}} + \comment{The letter `\' I'.} +\endsetslot + +\setslot{\uctop{Icircumflex}{icircumflex}} + \comment{The letter `\^ I'.} +\endsetslot + +\setslot{\uctop{Idieresis}{idieresis}} + \comment{The letter `\" I'.} +\endsetslot + +\setslot{\uc{Eth}{eth}} + \comment{The uppercase Icelandic letter `Eth' similar to a `D' + with a horizontal bar through the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\uctop{Ntilde}{ntilde}} + \comment{The letter `\~ N'.} +\endsetslot + +\setslot{\uctop{Ograve}{ograve}} + \comment{The letter `\` O'.} +\endsetslot + +\setslot{\uctop{Oacute}{oacute}} + \comment{The letter `\' O'.} +\endsetslot + +\setslot{\uctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ O'.} +\endsetslot + +\setslot{\uctop{Otilde}{otilde}} + \comment{The letter `\~ O'.} +\endsetslot + +\setslot{\uctop{Odieresis}{odieresis}} + \comment{The letter `\" O'.} +\endsetslot + +\setslot{\uc{OE}{oe}} + \comment{The letter `\OE'. This is a single letter, and should not be + faked with `OE'.} +\endsetslot + +\setslot{\uc{Oslash}{oslash}} + \comment{The letter `\O'.} +\endsetslot + +\setslot{\uctop{Ugrave}{ugrave}} + \comment{The letter `\` U'.} +\endsetslot + +\setslot{\uctop{Uacute}{uacute}} + \comment{The letter `\' U'.} +\endsetslot + +\setslot{\uctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ U'.} +\endsetslot + +\setslot{\uctop{Udieresis}{udieresis}} + \comment{The letter `\" U'.} +\endsetslot + +\setslot{\uctop{Yacute}{yacute}} + \comment{The letter `\' Y'.} +\endsetslot + +\setslot{\uc{Thorn}{thorn}} + \comment{The Icelandic capital letter Thorn, similar to a `P' + with the bowl moved down. It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\uclig{SS}{germandbls}} + \comment{The ligature `SS', used to give an upper case `\ss'. + In a monowidth font it should be two letters wide.} +\endsetslot + +\setslot{\lctop{Agrave}{agrave}} + \comment{The letter `\` a'.} +\endsetslot + +\setslot{\lctop{Aacute}{aacute}} + \comment{The letter `\' a'.} +\endsetslot + +\setslot{\lctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ a'.} +\endsetslot + +\setslot{\lctop{Atilde}{atilde}} + \comment{The letter `\~ a'.} +\endsetslot + +\setslot{\lctop{Adieresis}{adieresis}} + \comment{The letter `\" a'.} +\endsetslot + +\setslot{\lctop{Aring}{aring}} + \comment{The letter `\r a'.} +\endsetslot + +\setslot{\lc{AE}{ae}} + \comment{The letter `\ae'. This is a single letter, and should not be + faked with `ae'.} +\endsetslot + +\setslot{\lc{Ccedilla}{ccedilla}} + \comment{The letter `\c c'.} +\endsetslot + +\setslot{\lctop{Egrave}{egrave}} + \comment{The letter `\` e'.} +\endsetslot + +\setslot{\lctop{Eacute}{eacute}} + \comment{The letter `\' e'.} +\endsetslot + +\setslot{\lctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ e'.} +\endsetslot + +\setslot{\lctop{Edieresis}{edieresis}} + \comment{The letter `\" e'.} +\endsetslot + +\setslot{\lctop{Igrave}{igrave}} + \comment{The letter `\`\i'.} +\endsetslot + +\setslot{\lctop{Iacute}{iacute}} + \comment{The letter `\'\i'.} +\endsetslot + +\setslot{\lctop{Icircumflex}{icircumflex}} + \comment{The letter `\^\i'.} +\endsetslot + +\setslot{\lctop{Idieresis}{idieresis}} + \comment{The letter `\"\i'.} +\endsetslot + +\setslot{\lc{Eth}{eth}} + \comment{The Icelandic lowercase letter `eth' similar to + a `$\partial$' with an oblique bar through the stem. + It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\lctop{Ntilde}{ntilde}} + \comment{The letter `\~ n'.} +\endsetslot + +\setslot{\lctop{Ograve}{ograve}} + \comment{The letter `\` o'.} +\endsetslot + +\setslot{\lctop{Oacute}{oacute}} + \comment{The letter `\' o'.} +\endsetslot + +\setslot{\lctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ o'.} +\endsetslot + +\setslot{\lctop{Otilde}{otilde}} + \comment{The letter `\~ o'.} +\endsetslot + +\setslot{\lctop{Odieresis}{odieresis}} + \comment{The letter `\" o'.} +\endsetslot + +\setslot{\lc{OE}{oe}} + \comment{The letter `\oe'. This is a single letter, and should not be + faked with `oe'.} +\endsetslot + +\setslot{\lc{Oslash}{oslash}} + \comment{The letter `\o'.} +\endsetslot + +\setslot{\lctop{Ugrave}{ugrave}} + \comment{The letter `\` u'.} +\endsetslot + +\setslot{\lctop{Uacute}{uacute}} + \comment{The letter `\' u'.} +\endsetslot + +\setslot{\lctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ u'.} +\endsetslot + +\setslot{\lctop{Udieresis}{udieresis}} + \comment{The letter `\" u'.} +\endsetslot + +\setslot{\lctop{Yacute}{yacute}} + \comment{The letter `\' y'.} +\endsetslot + +\setslot{\lc{Thorn}{thorn}} + \comment{The Icelandic lowercase letter `thorn', similar to a `p' + with an ascender rising from the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\lc{SS}{germandbls}} + \comment{The letter `\ss'.} +\endsetslot + +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</t1-cfr> +% \fi +% +% +% \subsubsection{t1-dotalt-f\_f.etx}\label{subsubsec:t1-dotalt-f-f} +% +% \iffalse +%<*t1-dotalt-f-f> +% \fi +% \begin{encoding}{t1-dotalt-f_f} +% \begin{macrocode} +%% +%% - The commentary in the original is deleted in this version. For +%% information about the T1 etc., typeset the original t1.etx +%% included with fontinst. +%% - Slots are altered to accommodate characters which are named +%% differently. For example, this encoding uses "endash" and "emdash" +%% whereas t1.etx called for "rangedash" and "punctdash". +%% - The original notices at the top of that file concerning authors, +%% maintenance etc. are replaced by this notice. +%% - The file is renamed. +%% - The encoding name is modified. +%% - f_f, f_f_i and f_f_l replace ff, ffi and ffl. +%% - lc, uc and accented lc, uc are set to characters named "a.alt" etc. +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\relax +\encoding + +\needsfontinstversion{1.910} + +\setcommand\lc#1#2{#2.alt} +\setcommand\uc#1#2{#1.alt} +\setcommand\lctop#1#2{#2.alt} +\setcommand\uctop#1#2{#1.alt} +\setcommand\lclig#1#2{#2} +\ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setcommand\uclig#1#2{#1spaced} + \comment{Here we set \verb|\uclig#1#2| to \verb|#1spaced|, but + you can't see it as \verb|\setcommand| commands are invisible in + the typeset output.} + \Fi +\Fi +\setcommand\uclig#1#2{#1} +\setcommand\digit#1{#1} + +\ifisint{monowidth}\then + \setint{ligaturing}{0} +\Else + % The following empty line is *important* to get the formatting + % right here (sigh)! (Remember that it is a \par token.) + + \ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setint{ligaturing}{0} + \Fi + \Fi + \setint{ligaturing}{1} +\Fi + +\setint{italicslant}{0} +\setint{quad}{1000} +\setint{baselineskip}{1200} + +\ifisglyph{x}\then + \setint{xheight}{\height{x}} +\Else + \setint{xheight}{500} +\Fi + +\ifisglyph{space}\then + \setint{interword}{\width{space}} +\Else\ifisglyph{i}\then + \setint{interword}{\width{i}} +\Else + \setint{interword}{333} +\Fi\Fi + +\ifisint{monowidth}\then + \setint{stretchword}{0} + \setint{shrinkword}{0} + \setint{extraspace}{\int{interword}} +\Else + \setint{stretchword}{\scale{\int{interword}}{600}} + \setint{shrinkword}{\scale{\int{interword}}{240}} + \setint{extraspace}{\scale{\int{interword}}{240}} +\Fi + +\ifisglyph{X}\then + \setint{capheight}{\height{X}} +\Else + \setint{capheight}{750} +\Fi + +\ifisglyph{d}\then + \setint{ascender}{\height{d}} +\Else\ifisint{capheight}\then + \setint{ascender}{\int{capheight}} +\Else + \setint{ascender}{750} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{acccapheight}{\height{Aring}} +\Else + \setint{acccapheight}{999} +\Fi + +\ifisint{descender_neg}\then + \setint{descender}{\neg{\int{descender_neg}}} +\Else\ifisglyph{p}\then + \setint{descender}{\depth{p}} +\Else + \setint{descender}{250} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{maxheight}{\height{Aring}} +\Else + \setint{maxheight}{1000} +\Fi + +\ifisint{maxdepth_neg}\then + \setint{maxdepth}{\neg{\int{maxdepth_neg}}} +\Else\ifisglyph{j}\then + \setint{maxdepth}{\depth{j}} +\Else + \setint{maxdepth}{250} +\Fi\Fi + +\ifisglyph{six}\then + \setint{digitwidth}{\width{six}} +\Else + \setint{digitwidth}{500} +\Fi + +\setint{capstem}{0} % not in AFM files + +\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 + +\ifnumber{\int{ligaturing}}<{0}\then + \comment{In this case, the codingscheme can be different from the + default, and therefore we refrain from setting it.} +\Else + \setstr{codingscheme}{EXTENDED TEX ENC - DOTALT F_F} +\Fi + +\setslot{\lc{Grave}{grave}} + \comment{The grave accent `\`{}'.} +\endsetslot + +\setslot{\lc{Acute}{acute}} + \comment{The acute accent `\'{}'.} +\endsetslot + +\setslot{\lc{Circumflex}{circumflex}} + \comment{The circumflex accent `\^{}'.} +\endsetslot + +\setslot{\lc{Tilde}{tilde}} + \comment{The tilde accent `\~{}'.} +\endsetslot + +\setslot{\lc{Dieresis}{dieresis}} + \comment{The umlaut or dieresis accent `\"{}'.} +\endsetslot + +\setslot{\lc{Hungarumlaut}{hungarumlaut}} + \comment{The long Hungarian umlaut `\H{}'.} +\endsetslot + +\setslot{\lc{Ring}{ring}} + \comment{The ring accent `\r{}'.} +\endsetslot + +\setslot{\lc{Caron}{caron}} + \comment{The caron or h\'a\v cek accent `\v{}'.} +\endsetslot + +\setslot{\lc{Breve}{breve}} + \comment{The breve accent `\u{}'.} +\endsetslot + +\setslot{\lc{Macron}{macron}} + \comment{The macron accent `\={}'.} +\endsetslot + +\setslot{\lc{Dotaccent}{dotaccent}} + \comment{The dot accent `\.{}'.} +\endsetslot + +\setslot{\lc{Cedilla}{cedilla}} + \comment{The cedilla accent `\c {}'.} +\endsetslot + +\setslot{\lc{Ogonek}{ogonek}} + \comment{The ogonek accent `\k {}'.} +\endsetslot + +\setslot{quotesinglbase} + \comment{A German single quote mark `\quotesinglbase' similar to a comma, + but with different sidebearings.} +\endsetslot + +\setslot{guilsinglleft} + \comment{A French single opening quote mark `\guilsinglleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guilsinglright} + \comment{A French single closing quote mark `\guilsinglright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{quotedblleft} + \comment{The English opening quote mark `\,\textquotedblleft\,'.} +\endsetslot + +\setslot{quotedblright} + \comment{The English closing quote mark `\,\textquotedblright\,'.} +\endsetslot + +\setslot{quotedblbase} + \comment{A German double quote mark `\quotedblbase' similar to two commas, + but with tighter letterspacing and different sidebearings.} +\endsetslot + +\setslot{guillemotleft} + \comment{A French double opening quote mark `\guillemotleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guillemotright} + \comment{A French closing opening quote mark `\guillemotright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{endash} + \ligature{LIG}{hyphen}{emdash} + \comment{The number range dash `1--9'. + This is called `rangedash' by fontinst's t1.etx, but it needs to be + called `endash' to work right. + The `\textendash'. In a monowidth font, this might be set as + `\texttt{1{-}9}'.} +\endsetslot + +\setslot{emdash} + \comment{The punctuation dash `Oh---boy.' + This is calle `punctdash' by fontinst's t1.etx, but needs to be + called `emdash' to work right. + The `\textemdash'. + In a monowidth font, this might be set as `\texttt{Oh{-}{-}boy.}'} +\endsetslot + +\setslot{compwordmark} + \comment{An invisible glyph, with zero width and depth, but the + height of lowercase letters without ascenders. + It is used to stop ligaturing in words like `shelf{}ful'.} +\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.} +\endsetslot + +\setslot{\lc{dotlessI}{dotlessi}} + \comment{A dotless i `\i', used to produce accented letters such as + `\=\i'.} +\endsetslot + +\setslot{\lc{dotlessJ}{dotlessj}} + \comment{A dotless j `\j', used to produce accented letters such as + `\=\j'. Most non-\TeX\ fonts do not have this glyph.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{5}\Else + +\setslot{\lclig{FF}{f_f}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FFI}{f_f_i}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FFL}{f_f_l}} + \Fi + \comment{The `ff' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FI}{fi}} + \comment{The `fi' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FL}{fl}} + \comment{The `fl' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFI}{f_f_i}} + \comment{The `ffi' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFL}{f_f_l}} + \comment{The `ffl' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\Fi + +\setslot{visiblespace} + \comment{A visible space glyph `\textvisiblespace'.} +\endsetslot + +\setslot{exclam} + \ligature{LIG}{quoteleft}{exclamdown} + \comment{The exclamation mark `!'.} +\endsetslot + +\setslot{quotedbl} + \comment{The `neutral' double quotation mark `\,\textquotedbl\,', + included for use in monowidth fonts, or for setting computer + programs. Note that the inclusion of this glyph in this slot + means that \TeX\ documents which used `{\tt\char`\"}' as an + input character will no longer work.} +\endsetslot + +\setslot{numbersign} + \comment{The hash sign `\#'.} +\endsetslot + +\setslot{dollar} + \comment{The dollar sign `\$'.} +\endsetslot + +\setslot{percent} + \comment{The percent sign `\%'.} +\endsetslot + +\setslot{ampersand} + \comment{The ampersand sign `\&'.} +\endsetslot + +\setslot{quoteright} + \ligature{LIG}{quoteright}{quotedblright} + \comment{The English closing single quote mark `\,\textquoteright\,'.} +\endsetslot + +\setslot{parenleft} + \comment{The opening parenthesis `('.} +\endsetslot + +\setslot{parenright} + \comment{The closing parenthesis `)'.} +\endsetslot + +\setslot{asterisk} + \comment{The raised asterisk `*'.} +\endsetslot + +\setslot{plus} + \comment{The addition sign `+'.} +\endsetslot + +\setslot{comma} + \ligature{LIG}{comma}{quotedblbase} + \comment{The comma `,'.} +\endsetslot + +\setslot{hyphen} + \ligature{LIG}{hyphen}{endash} + \ligature{LIG}{hyphenchar}{hyphenchar} + \comment{The hyphen `-'.} +\endsetslot + +\setslot{period} + \comment{The period `.'.} +\endsetslot + +\setslot{slash} + \comment{The forward oblique `/'.} +\endsetslot + +\setslot{\digit{zero}} + \comment{The number `0'. This (and all the other numerals) may be + old style or ranging digits.} +\endsetslot + +\setslot{\digit{one}} + \comment{The number `1'.} +\endsetslot + +\setslot{\digit{two}} + \comment{The number `2'.} +\endsetslot + +\setslot{\digit{three}} + \comment{The number `3'.} +\endsetslot + +\setslot{\digit{four}} + \comment{The number `4'.} +\endsetslot + +\setslot{\digit{five}} + \comment{The number `5'.} +\endsetslot + +\setslot{\digit{six}} + \comment{The number `6'.} +\endsetslot + +\setslot{\digit{seven}} + \comment{The number `7'.} +\endsetslot + +\setslot{\digit{eight}} + \comment{The number `8'.} +\endsetslot + +\setslot{\digit{nine}} + \comment{The number `9'.} +\endsetslot + +\setslot{colon} + \comment{The colon punctuation mark `:'.} +\endsetslot + +\setslot{semicolon} + \comment{The semi-colon punctuation mark `;'.} +\endsetslot + +\setslot{less} + \ligature{LIG}{less}{guillemotleft} + \comment{The less-than sign `\textless'.} +\endsetslot + +\setslot{equal} + \comment{The equals sign `='.} +\endsetslot + +\setslot{greater} + \ligature{LIG}{greater}{guillemotright} + \comment{The greater-than sign `\textgreater'.} +\endsetslot + +\setslot{question} + \ligature{LIG}{quoteleft}{questiondown} + \comment{The question mark `?'.} +\endsetslot + +\setslot{at} + \comment{The at sign `@'.} +\endsetslot + +\setslot{\uc{A}{a}} + \comment{The letter `{A}'.} +\endsetslot + +\setslot{\uc{B}{b}} + \comment{The letter `{B}'.} +\endsetslot + +\setslot{\uc{C}{c}} + \comment{The letter `{C}'.} +\endsetslot + +\setslot{\uc{D}{d}} + \comment{The letter `{D}'.} +\endsetslot + +\setslot{\uc{E}{e}} + \comment{The letter `{E}'.} +\endsetslot + +\setslot{\uc{F}{f}} + \comment{The letter `{F}'.} +\endsetslot + +\setslot{\uc{G}{g}} + \comment{The letter `{G}'.} +\endsetslot + +\setslot{\uc{H}{h}} + \comment{The letter `{H}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + +\setslot{\uc{I}{i}} + \comment{The letter `{I}'.} +\endsetslot + +\Fi + +\setslot{\uc{J}{j}} + \comment{The letter `{J}'.} +\endsetslot + +\setslot{\uc{K}{k}} + \comment{The letter `{K}'.} +\endsetslot + +\setslot{\uc{L}{l}} + \comment{The letter `{L}'.} +\endsetslot + +\setslot{\uc{M}{m}} + \comment{The letter `{M}'.} +\endsetslot + +\setslot{\uc{N}{n}} + \comment{The letter `{N}'.} +\endsetslot + +\setslot{\uc{O}{o}} + \comment{The letter `{O}'.} +\endsetslot + +\setslot{\uc{P}{p}} + \comment{The letter `{P}'.} +\endsetslot + +\setslot{\uc{Q}{q}} + \comment{The letter `{Q}'.} +\endsetslot + +\setslot{\uc{R}{r}} + \comment{The letter `{R}'.} +\endsetslot + +\setslot{\uc{S}{s}} + \comment{The letter `{S}'.} +\endsetslot + +\setslot{\uc{T}{t}} + \comment{The letter `{T}'.} +\endsetslot + +\setslot{\uc{U}{u}} + \comment{The letter `{U}'.} +\endsetslot + +\setslot{\uc{V}{v}} + \comment{The letter `{V}'.} +\endsetslot + +\setslot{\uc{W}{w}} + \comment{The letter `{W}'.} +\endsetslot + +\setslot{\uc{X}{x}} + \comment{The letter `{X}'.} +\endsetslot + +\setslot{\uc{Y}{y}} + \comment{The letter `{Y}'.} +\endsetslot + +\setslot{\uc{Z}{z}} + \comment{The letter `{Z}'.} +\endsetslot + +\setslot{bracketleft} + \comment{The opening square bracket `['.} +\endsetslot + +\setslot{backslash} + \comment{The backwards oblique `\textbackslash'.} +\endsetslot + +\setslot{bracketright} + \comment{The closing square bracket `]'.} +\endsetslot + +\setslot{asciicircum} + \comment{The ASCII upward-pointing arrow head `\textasciicircum'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{underscore} + \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} + \ligature{LIG}{quoteleft}{quotedblleft} + \comment{The English opening single quote mark `\,\textquoteleft\,'.} +\endsetslot + +\setslot{\lc{A}{a}} + \comment{The letter `{a}'.} +\endsetslot + +\setslot{\lc{B}{b}} + \comment{The letter `{b}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{C}{c}} + \comment{The letter `{c}'.} + \endsetslot + +\Fi + +\setslot{\lc{D}{d}} + \comment{The letter `{d}'.} +\endsetslot + +\setslot{\lc{E}{e}} + \comment{The letter `{e}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{F}{f}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FI}{fi}} + \ligature{LIG}{\lc{F}{f}}{\lclig{FF}{f_f}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FL}{fl}} + \Fi + \comment{The letter `{f}'.} + \endsetslot + +\Fi + +\setslot{\lc{G}{g}} + \comment{The letter `{g}'.} +\endsetslot + +\setslot{\lc{H}{h}} + \comment{The letter `{h}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{I}{i}} + \comment{The letter `{i}'.} + \endsetslot + +\Fi + +\setslot{\lc{J}{j}} + \comment{The letter `{j}'.} +\endsetslot + +\setslot{\lc{K}{k}} + \comment{The letter `{k}'.} +\endsetslot + +\setslot{\lc{L}{l}} + \comment{The letter `{l}'.} +\endsetslot + +\setslot{\lc{M}{m}} + \comment{The letter `{m}'.} +\endsetslot + +\setslot{\lc{N}{n}} + \comment{The letter `{n}'.} +\endsetslot + +\setslot{\lc{O}{o}} + \comment{The letter `{o}'.} +\endsetslot + +\setslot{\lc{P}{p}} + \comment{The letter `{p}'.} +\endsetslot + +\setslot{\lc{Q}{q}} + \comment{The letter `{q}'.} +\endsetslot + +\setslot{\lc{R}{r}} + \comment{The letter `{r}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{S}{s}} + \comment{The letter `{s}'.} + \endsetslot + +\Fi + +\setslot{\lc{T}{t}} + \comment{The letter `{t}'.} +\endsetslot + +\setslot{\lc{U}{u}} + \comment{The letter `{u}'.} +\endsetslot + +\setslot{\lc{V}{v}} + \comment{The letter `{v}'.} +\endsetslot + +\setslot{\lc{W}{w}} + \comment{The letter `{w}'.} +\endsetslot + +\setslot{\lc{X}{x}} + \comment{The letter `{x}'.} +\endsetslot + +\setslot{\lc{Y}{y}} + \comment{The letter `{y}'.} +\endsetslot + +\setslot{\lc{Z}{z}} + \comment{The letter `{z}'.} +\endsetslot + +\setslot{braceleft} + \comment{The opening curly brace `\textbraceleft'.} +\endsetslot + +\setslot{bar} + \comment{The ASCII vertical bar `\textbar'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{braceright} + \comment{The closing curly brace `\textbraceright'.} +\endsetslot + +\setslot{asciitilde} + \comment{The ASCII tilde `\textasciitilde'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{hyphenchar} + \comment{The glyph used for hyphenation in this font, which will + almost always be the same as `hyphen'.} +\endsetslot + +\setslot{\uctop{Abreve}{abreve}} + \comment{The letter `\u A'.} +\endsetslot + +\setslot{\uc{Aogonek}{aogonek}} + \comment{The letter `\k A'.} +\endsetslot + +\setslot{\uctop{Cacute}{cacute}} + \comment{The letter `\' C'.} +\endsetslot + +\setslot{\uctop{Ccaron}{ccaron}} + \comment{The letter `\v C'.} +\endsetslot + +\setslot{\uctop{Dcaron}{dcaron}} + \comment{The letter `\v D'.} +\endsetslot + +\setslot{\uctop{Ecaron}{ecaron}} + \comment{The letter `\v E'.} +\endsetslot + +\setslot{\uc{Eogonek}{eogonek}} + \comment{The letter `\k E'.} +\endsetslot + +\setslot{\uctop{Gbreve}{gbreve}} + \comment{The letter `\u G'.} +\endsetslot + +\setslot{\uctop{Lacute}{lacute}} + \comment{The letter `\' L'.} +\endsetslot + +\setslot{\uc{Lcaron}{lcaron}} + \comment{The letter `\v L'.} +\endsetslot + +\setslot{\uc{Lslash}{lslash}} + \comment{The letter `\L'.} +\endsetslot + +\setslot{\uctop{Nacute}{nacute}} + \comment{The letter `\' N'.} +\endsetslot + +\setslot{\uctop{Ncaron}{ncaron}} + \comment{The letter `\v N'.} +\endsetslot + +\setslot{\uc{Eng}{eng}} + \comment{The Sami letter `\NG'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\uctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H O'.} +\endsetslot + +\setslot{\uctop{Racute}{racute}} + \comment{The letter `\' R'.} +\endsetslot + +\setslot{\uctop{Rcaron}{rcaron}} + \comment{The letter `\v R'.} +\endsetslot + +\setslot{\uctop{Sacute}{sacute}} + \comment{The letter `\' S'.} +\endsetslot + +\setslot{\uctop{Scaron}{scaron}} + \comment{The letter `\v S'.} +\endsetslot + +\setslot{\uc{Scedilla}{scedilla}} + \comment{The letter `\c S'.} +\endsetslot + +\setslot{\uctop{Tcaron}{tcaron}} + \comment{The letter `\v T'.} +\endsetslot + +\setslot{\uc{Tcedilla}{tcedilla}} + \comment{The letter `\c T'.} +\endsetslot + +\setslot{\uctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H U'.} +\endsetslot + +\setslot{\uctop{Uring}{uring}} + \comment{The letter `\r U'.} +\endsetslot + +\setslot{\uctop{Ydieresis}{ydieresis}} + \comment{The letter `\" Y'.} +\endsetslot + +\setslot{\uctop{Zacute}{zacute}} + \comment{The letter `\' Z'.} +\endsetslot + +\setslot{\uctop{Zcaron}{zcaron}} + \comment{The letter `\v Z'.} +\endsetslot + +\setslot{\uctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. Z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\uclig{IJ}{ij}} + \comment{The letter `IJ'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{\uctop{Idotaccent}{idotaccent}} + \comment{The letter `\. I'.} +\endsetslot + +\setslot{\lc{Dbar}{dbar}} + \comment{The letter `\dj'.} +\endsetslot + +\setslot{section} + \comment{The section mark `\textsection'.} +\endsetslot + +\setslot{\lctop{Abreve}{abreve}} + \comment{The letter `\u a'.} +\endsetslot + +\setslot{\lc{Aogonek}{aogonek}} + \comment{The letter `\k a'.} +\endsetslot + +\setslot{\lctop{Cacute}{cacute}} + \comment{The letter `\' c'.} +\endsetslot + +\setslot{\lctop{Ccaron}{ccaron}} + \comment{The letter `\v c'.} +\endsetslot + +\setslot{\lctop{Dcaron}{dcaron}} + \comment{The letter `\v d'.} +\endsetslot + +\setslot{\lctop{Ecaron}{ecaron}} + \comment{The letter `\v e'.} +\endsetslot + +\setslot{\lc{Eogonek}{eogonek}} + \comment{The letter `\k e'.} +\endsetslot + +\setslot{\lctop{Gbreve}{gbreve}} + \comment{The letter `\u g'.} +\endsetslot + +\setslot{\lctop{Lacute}{lacute}} + \comment{The letter `\' l'.} +\endsetslot + +\setslot{\lc{Lcaron}{lcaron}} + \comment{The letter `\v l'.} +\endsetslot + +\setslot{\lc{Lslash}{lslash}} + \comment{The letter `\l'.} +\endsetslot + +\setslot{\lctop{Nacute}{nacute}} + \comment{The letter `\' n'.} +\endsetslot + +\setslot{\lctop{Ncaron}{ncaron}} + \comment{The letter `\v n'.} +\endsetslot + +\setslot{\lc{Eng}{eng}} + \comment{The Sami letter `\ng'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as it is in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\lctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H o'.} +\endsetslot + +\setslot{\lctop{Racute}{racute}} + \comment{The letter `\' r'.} +\endsetslot + +\setslot{\lctop{Rcaron}{rcaron}} + \comment{The letter `\v r'.} +\endsetslot + +\setslot{\lctop{Sacute}{sacute}} + \comment{The letter `\' s'.} +\endsetslot + +\setslot{\lctop{Scaron}{scaron}} + \comment{The letter `\v s'.} +\endsetslot + +\setslot{\lc{Scedilla}{scedilla}} + \comment{The letter `\c s'.} +\endsetslot + +\setslot{\lctop{Tcaron}{tcaron}} + \comment{The letter `\v t'.} +\endsetslot + +\setslot{\lc{Tcedilla}{tcedilla}} + \comment{The letter `\c t'.} +\endsetslot + +\setslot{\lctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H u'.} +\endsetslot + +\setslot{\lctop{Uring}{uring}} + \comment{The letter `\r u'.} +\endsetslot + +\setslot{\lctop{Ydieresis}{ydieresis}} + \comment{The letter `\" y'.} +\endsetslot + +\setslot{\lctop{Zacute}{zacute}} + \comment{The letter `\' z'.} +\endsetslot + +\setslot{\lctop{Zcaron}{zcaron}} + \comment{The letter `\v z'.} +\endsetslot + +\setslot{\lctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\lclig{IJ}{ij}} + \comment{The letter `ij'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{exclamdown} + \comment{The Spanish punctuation mark `!`'.} +\endsetslot + +\setslot{questiondown} + \comment{The Spanish punctuation mark `?`'.} +\endsetslot + +\setslot{sterling} + \comment{The British currency mark `\textsterling'.} +\endsetslot + +\setslot{\uctop{Agrave}{agrave}} + \comment{The letter `\` A'.} +\endsetslot + +\setslot{\uctop{Aacute}{aacute}} + \comment{The letter `\' A'.} +\endsetslot + +\setslot{\uctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ A'.} +\endsetslot + +\setslot{\uctop{Atilde}{atilde}} + \comment{The letter `\~ A'.} +\endsetslot + +\setslot{\uctop{Adieresis}{adieresis}} + \comment{The letter `\" A'.} +\endsetslot + +\setslot{\uctop{Aring}{aring}} + \comment{The letter `\r A'.} +\endsetslot + +\setslot{\uc{AE}{ae}} + \comment{The letter `\AE'. This is a single letter, and should not be + faked with `AE'.} +\endsetslot + +\setslot{\uc{Ccedilla}{ccedilla}} + \comment{The letter `\c C'.} +\endsetslot + +\setslot{\uctop{Egrave}{egrave}} + \comment{The letter `\` E'.} +\endsetslot + +\setslot{\uctop{Eacute}{eacute}} + \comment{The letter `\' E'.} +\endsetslot + +\setslot{\uctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ E'.} +\endsetslot + +\setslot{\uctop{Edieresis}{edieresis}} + \comment{The letter `\" E'.} +\endsetslot + +\setslot{\uctop{Igrave}{igrave}} + \comment{The letter `\` I'.} +\endsetslot + +\setslot{\uctop{Iacute}{iacute}} + \comment{The letter `\' I'.} +\endsetslot + +\setslot{\uctop{Icircumflex}{icircumflex}} + \comment{The letter `\^ I'.} +\endsetslot + +\setslot{\uctop{Idieresis}{idieresis}} + \comment{The letter `\" I'.} +\endsetslot + +\setslot{\uc{Eth}{eth}} + \comment{The uppercase Icelandic letter `Eth' similar to a `D' + with a horizontal bar through the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\uctop{Ntilde}{ntilde}} + \comment{The letter `\~ N'.} +\endsetslot + +\setslot{\uctop{Ograve}{ograve}} + \comment{The letter `\` O'.} +\endsetslot + +\setslot{\uctop{Oacute}{oacute}} + \comment{The letter `\' O'.} +\endsetslot + +\setslot{\uctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ O'.} +\endsetslot + +\setslot{\uctop{Otilde}{otilde}} + \comment{The letter `\~ O'.} +\endsetslot + +\setslot{\uctop{Odieresis}{odieresis}} + \comment{The letter `\" O'.} +\endsetslot + +\setslot{\uc{OE}{oe}} + \comment{The letter `\OE'. This is a single letter, and should not be + faked with `OE'.} +\endsetslot + +\setslot{\uc{Oslash}{oslash}} + \comment{The letter `\O'.} +\endsetslot + +\setslot{\uctop{Ugrave}{ugrave}} + \comment{The letter `\` U'.} +\endsetslot + +\setslot{\uctop{Uacute}{uacute}} + \comment{The letter `\' U'.} +\endsetslot + +\setslot{\uctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ U'.} +\endsetslot + +\setslot{\uctop{Udieresis}{udieresis}} + \comment{The letter `\" U'.} +\endsetslot + +\setslot{\uctop{Yacute}{yacute}} + \comment{The letter `\' Y'.} +\endsetslot + +\setslot{\uc{Thorn}{thorn}} + \comment{The Icelandic capital letter Thorn, similar to a `P' + with the bowl moved down. It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\uclig{SS}{germandbls}} + \comment{The ligature `SS', used to give an upper case `\ss'. + In a monowidth font it should be two letters wide.} +\endsetslot + +\setslot{\lctop{Agrave}{agrave}} + \comment{The letter `\` a'.} +\endsetslot + +\setslot{\lctop{Aacute}{aacute}} + \comment{The letter `\' a'.} +\endsetslot + +\setslot{\lctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ a'.} +\endsetslot + +\setslot{\lctop{Atilde}{atilde}} + \comment{The letter `\~ a'.} +\endsetslot + +\setslot{\lctop{Adieresis}{adieresis}} + \comment{The letter `\" a'.} +\endsetslot + +\setslot{\lctop{Aring}{aring}} + \comment{The letter `\r a'.} +\endsetslot + +\setslot{\lc{AE}{ae}} + \comment{The letter `\ae'. This is a single letter, and should not be + faked with `ae'.} +\endsetslot + +\setslot{\lc{Ccedilla}{ccedilla}} + \comment{The letter `\c c'.} +\endsetslot + +\setslot{\lctop{Egrave}{egrave}} + \comment{The letter `\` e'.} +\endsetslot + +\setslot{\lctop{Eacute}{eacute}} + \comment{The letter `\' e'.} +\endsetslot + +\setslot{\lctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ e'.} +\endsetslot + +\setslot{\lctop{Edieresis}{edieresis}} + \comment{The letter `\" e'.} +\endsetslot + +\setslot{\lctop{Igrave}{igrave}} + \comment{The letter `\`\i'.} +\endsetslot + +\setslot{\lctop{Iacute}{iacute}} + \comment{The letter `\'\i'.} +\endsetslot + +\setslot{\lctop{Icircumflex}{icircumflex}} + \comment{The letter `\^\i'.} +\endsetslot + +\setslot{\lctop{Idieresis}{idieresis}} + \comment{The letter `\"\i'.} +\endsetslot + +\setslot{\lc{Eth}{eth}} + \comment{The Icelandic lowercase letter `eth' similar to + a `$\partial$' with an oblique bar through the stem. + It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\lctop{Ntilde}{ntilde}} + \comment{The letter `\~ n'.} +\endsetslot + +\setslot{\lctop{Ograve}{ograve}} + \comment{The letter `\` o'.} +\endsetslot + +\setslot{\lctop{Oacute}{oacute}} + \comment{The letter `\' o'.} +\endsetslot + +\setslot{\lctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ o'.} +\endsetslot + +\setslot{\lctop{Otilde}{otilde}} + \comment{The letter `\~ o'.} +\endsetslot + +\setslot{\lctop{Odieresis}{odieresis}} + \comment{The letter `\" o'.} +\endsetslot + +\setslot{\lc{OE}{oe}} + \comment{The letter `\oe'. This is a single letter, and should not be + faked with `oe'.} +\endsetslot + +\setslot{\lc{Oslash}{oslash}} + \comment{The letter `\o'.} +\endsetslot + +\setslot{\lctop{Ugrave}{ugrave}} + \comment{The letter `\` u'.} +\endsetslot + +\setslot{\lctop{Uacute}{uacute}} + \comment{The letter `\' u'.} +\endsetslot + +\setslot{\lctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ u'.} +\endsetslot + +\setslot{\lctop{Udieresis}{udieresis}} + \comment{The letter `\" u'.} +\endsetslot + +\setslot{\lctop{Yacute}{yacute}} + \comment{The letter `\' y'.} +\endsetslot + +\setslot{\lc{Thorn}{thorn}} + \comment{The Icelandic lowercase letter `thorn', similar to a `p' + with an ascender rising from the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\lc{SS}{germandbls}} + \comment{The letter `\ss'.} +\endsetslot + +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</t1-dotalt-f-f> +% \fi +% +% +% \subsubsection{t1-dotinf.etx}\label{subsubsec:t1-dotinf} +% +% \iffalse +%<*t1-dotinf> +% \fi +% \begin{encoding}{t1-dotinf.etx} +% \begin{macrocode} +%% +%% - The original notices at the top of that file concerning authors, +%% maintenance etc. are replaced by this notice. +%% - The file is renamed. +%% - The encoding name is modified. +%% - The file is modified to accommodate differences in glyph names. +%% - The file is modified for use in encoding inferiors. +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\relax +\encoding + +\needsfontinstversion{1.910} + +\setcommand\lc#1#2{#2.inferior} +\setcommand\uc#1#2{#1.inferior} +\setcommand\lctop#1#2{#2.inferior} +\setcommand\uctop#1#2{#1.inferior} +\setcommand\lclig#1#2{#2.inferior} +\ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setcommand\uclig#1#2{#1spaced} + \comment{Here we set \verb|\uclig#1#2| to \verb|#1spaced|, but + you can't see it as \verb|\setcommand| commands are invisible in + the typeset output.} + \Fi +\Fi +\setcommand\uclig#1#2{#1.inferior} +\setcommand\digit#1{#1.inferior} + +\ifisint{monowidth}\then + \setint{ligaturing}{0} +\Else + % The following empty line is *important* to get the formatting + % right here (sigh)! (Remember that it is a \par token.) + + \ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setint{ligaturing}{0} + \Fi + \Fi + \setint{ligaturing}{1} +\Fi + +\setint{italicslant}{0} +\setint{quad}{1000} +\setint{baselineskip}{1200} + +\ifisglyph{x}\then + \setint{xheight}{\height{x}} +\Else + \setint{xheight}{500} +\Fi + +\ifisglyph{space}\then + \setint{interword}{\width{space}} +\Else\ifisglyph{i}\then + \setint{interword}{\width{i}} +\Else + \setint{interword}{333} +\Fi\Fi + +\ifisint{monowidth}\then + \setint{stretchword}{0} + \setint{shrinkword}{0} + \setint{extraspace}{\int{interword}} +\Else + \setint{stretchword}{\scale{\int{interword}}{600}} + \setint{shrinkword}{\scale{\int{interword}}{240}} + \setint{extraspace}{\scale{\int{interword}}{240}} +\Fi + +\ifisglyph{X}\then + \setint{capheight}{\height{X}} +\Else + \setint{capheight}{750} +\Fi + +\ifisglyph{d}\then + \setint{ascender}{\height{d}} +\Else\ifisint{capheight}\then + \setint{ascender}{\int{capheight}} +\Else + \setint{ascender}{750} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{acccapheight}{\height{Aring}} +\Else + \setint{acccapheight}{999} +\Fi + +\ifisint{descender_neg}\then + \setint{descender}{\neg{\int{descender_neg}}} +\Else\ifisglyph{p}\then + \setint{descender}{\depth{p}} +\Else + \setint{descender}{250} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{maxheight}{\height{Aring}} +\Else + \setint{maxheight}{1000} +\Fi + +\ifisint{maxdepth_neg}\then + \setint{maxdepth}{\neg{\int{maxdepth_neg}}} +\Else\ifisglyph{j}\then + \setint{maxdepth}{\depth{j}} +\Else + \setint{maxdepth}{250} +\Fi\Fi + +\ifisglyph{six}\then + \setint{digitwidth}{\width{six}} +\Else + \setint{digitwidth}{500} +\Fi + +\setint{capstem}{0} % not in AFM files + +\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 + +\ifnumber{\int{ligaturing}}<{0}\then + \comment{In this case, the codingscheme can be different from the + default, and therefore we refrain from setting it.} +\Else + \setstr{codingscheme}{EXTENDED TEX FONT ENCODING - DOTINF} +\Fi + +\setslot{\lc{Grave}{grave}} + \comment{The grave accent `\`{}'.} +\endsetslot + +\setslot{\lc{Acute}{acute}} + \comment{The acute accent `\'{}'.} +\endsetslot + +\setslot{\lc{Circumflex}{circumflex}} + \comment{The circumflex accent `\^{}'.} +\endsetslot + +\setslot{\lc{Tilde}{tilde}} + \comment{The tilde accent `\~{}'.} +\endsetslot + +\setslot{\lc{Dieresis}{dieresis}} + \comment{The umlaut or dieresis accent `\"{}'.} +\endsetslot + +\setslot{\lc{Hungarumlaut}{hungarumlaut}} + \comment{The long Hungarian umlaut `\H{}'.} +\endsetslot + +\setslot{\lc{Ring}{ring}} + \comment{The ring accent `\r{}'.} +\endsetslot + +\setslot{\lc{Caron}{caron}} + \comment{The caron or h\'a\v cek accent `\v{}'.} +\endsetslot + +\setslot{\lc{Breve}{breve}} + \comment{The breve accent `\u{}'.} +\endsetslot + +\setslot{\lc{Macron}{macron}} + \comment{The macron accent `\={}'.} +\endsetslot + +\setslot{\lc{Dotaccent}{dotaccent}} + \comment{The dot accent `\.{}'.} +\endsetslot + +\setslot{\lc{Cedilla}{cedilla}} + \comment{The cedilla accent `\c {}'.} +\endsetslot + +\setslot{\lc{Ogonek}{ogonek}} + \comment{The ogonek accent `\k {}'.} +\endsetslot + +\setslot{quotesinglbase.inferior} + \comment{A German single quote mark `\quotesinglbase' similar to a comma, + but with different sidebearings.} +\endsetslot + +\setslot{guilsinglleft.inferior} + \comment{A French single opening quote mark `\guilsinglleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guilsinglright.inferior} + \comment{A French single closing quote mark `\guilsinglright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{quotedblleft.inferior} + \comment{The English opening quote mark `\,\textquotedblleft\,'.} +\endsetslot + +\setslot{quotedblright.inferior} + \comment{The English closing quote mark `\,\textquotedblright\,'.} +\endsetslot + +\setslot{quotedblbase.inferior} + \comment{A German double quote mark `\quotedblbase' similar to two commas, + but with tighter letterspacing and different sidebearings.} +\endsetslot + +\setslot{guillemotleft.inferior} + \comment{A French double opening quote mark `\guillemotleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guillemotright.inferior} + \comment{A French closing opening quote mark `\guillemotright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{endash.inferior} + \ligature{LIG}{hyphen.inferior}{emdash.inferior} + \comment{The number range dash `1--9'. + This is called `rangedash' by fontinst's t1.etx, but it needs to be + called `endash' to work right. + The `\textendash'. + In a monowidth font, this might be set as `\texttt{1{-}9}'.} +\endsetslot + +\setslot{emdash.inferior} + \comment{The punctuation dash `Oh---boy.' + This is calle `punctdash' by fontinst's t1.etx, but needs to be + called `emdash' to work right. + The `\textemdash'. + In a monowidth font, this might be set as `\texttt{Oh{-}{-}boy.}'} +\endsetslot + +\setslot{compwordmark.inferior} + \comment{An invisible glyph, with zero width and depth, but the + height of lowercase letters without ascenders. + It is used to stop ligaturing in words like `shelf{}ful'.} +\endsetslot + +\setslot{perthousandzero.inferior} + \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.} +\endsetslot + +\setslot{\lc{dotlessI}{dotlessi}} + \comment{A dotless i `\i', used to produce accented letters such as + `\=\i'.} +\endsetslot + +\setslot{\lc{dotlessJ}{dotlessj}} + \comment{A dotless j `\j', used to produce accented letters such as + `\=\j'. Most non-\TeX\ fonts do not have this glyph.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{5}\Else + +\setslot{\lclig{FF}{ff}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FFI}{ffi}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FFL}{ffl}} + \Fi + \comment{The `ff' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FI}{fi}} + \comment{The `fi' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FL}{fl}} + \comment{The `fl' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFI}{ffi}} + \comment{The `ffi' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFL}{ffl}} + \comment{The `ffl' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\Fi + +\setslot{visiblespace.inferior} + \comment{A visible space glyph `\textvisiblespace'.} +\endsetslot + +\setslot{exclam.inferior} + \ligature{LIG}{quoteleft.inferior}{exclamdown.inferior} + \comment{The exclamation mark `!'.} +\endsetslot + +\setslot{quotedbl.inferior} + \comment{The `neutral' double quotation mark `\,\textquotedbl\,', + included for use in monowidth fonts, or for setting computer + programs. Note that the inclusion of this glyph in this slot + means that \TeX\ documents which used `{\tt\char`\"}' as an + input character will no longer work.} +\endsetslot + +\setslot{numbersign.inferior} + \comment{The hash sign `\#'.} +\endsetslot + +\setslot{dollar.inferior} + \comment{The dollar sign `\$'.} +\endsetslot + +\setslot{percent.inferior} + \comment{The percent sign `\%'.} +\endsetslot + +\setslot{ampersand.inferior} + \comment{The ampersand sign `\&'.} +\endsetslot + +\setslot{quoteright.inferior} + \ligature{LIG}{quoteright.inferior}{quotedblright.inferior} + \comment{The English closing single quote mark `\,\textquoteright\,'.} +\endsetslot + +\setslot{parenleft.inferior} + \comment{The opening parenthesis `('.} +\endsetslot + +\setslot{parenright.inferior} + \comment{The closing parenthesis `)'.} +\endsetslot + +\setslot{asterisk.inferior} + \comment{The raised asterisk `*'.} +\endsetslot + +\setslot{plus.inferior} + \comment{The addition sign `+'.} +\endsetslot + +\setslot{comma.inferior} + \ligature{LIG}{comma.inferior}{quotedblbase.inferior} + \comment{The comma `,'.} +\endsetslot + +\setslot{hyphen.inferior} + \ligature{LIG}{hyphen.inferior}{endash.inferior} + \ligature{LIG}{hyphenchar.inferior}{hyphenchar.inferior} + \comment{The hyphen `-'.} +\endsetslot + +\setslot{period.inferior} + \comment{The period `.'.} +\endsetslot + +\setslot{slash.inferior} + \comment{The forward oblique `/'.} +\endsetslot + +\setslot{\digit{zero}} + \comment{The number `0'. This (and all the other numerals) may be + old style or ranging digits.} +\endsetslot + +\setslot{\digit{one}} + \comment{The number `1'.} +\endsetslot + +\setslot{\digit{two}} + \comment{The number `2'.} +\endsetslot + +\setslot{\digit{three}} + \comment{The number `3'.} +\endsetslot + +\setslot{\digit{four}} + \comment{The number `4'.} +\endsetslot + +\setslot{\digit{five}} + \comment{The number `5'.} +\endsetslot + +\setslot{\digit{six}} + \comment{The number `6'.} +\endsetslot + +\setslot{\digit{seven}} + \comment{The number `7'.} +\endsetslot + +\setslot{\digit{eight}} + \comment{The number `8'.} +\endsetslot + +\setslot{\digit{nine}} + \comment{The number `9'.} +\endsetslot + +\setslot{colon.inferior} + \comment{The colon punctuation mark `:'.} +\endsetslot + +\setslot{semicolon.inferior} + \comment{The semi-colon punctuation mark `;'.} +\endsetslot + +\setslot{less.inferior} + \ligature{LIG}{less.inferior}{guillemotleft.inferior} + \comment{The less-than sign `\textless'.} +\endsetslot + +\setslot{equal.inferior} + \comment{The equals sign `='.} +\endsetslot + +\setslot{greater.inferior} + \ligature{LIG}{greater.inferior}{guillemotright.inferior} + \comment{The greater-than sign `\textgreater'.} +\endsetslot + +\setslot{question.inferior} + \ligature{LIG}{quoteleft.inferior}{questiondown.inferior} + \comment{The question mark `?'.} +\endsetslot + +\setslot{at.inferior} + \comment{The at sign `@'.} +\endsetslot + +\setslot{\uc{A}{a}} + \comment{The letter `{A}'.} +\endsetslot + +\setslot{\uc{B}{b}} + \comment{The letter `{B}'.} +\endsetslot + +\setslot{\uc{C}{c}} + \comment{The letter `{C}'.} +\endsetslot + +\setslot{\uc{D}{d}} + \comment{The letter `{D}'.} +\endsetslot + +\setslot{\uc{E}{e}} + \comment{The letter `{E}'.} +\endsetslot + +\setslot{\uc{F}{f}} + \comment{The letter `{F}'.} +\endsetslot + +\setslot{\uc{G}{g}} + \comment{The letter `{G}'.} +\endsetslot + +\setslot{\uc{H}{h}} + \comment{The letter `{H}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + +\setslot{\uc{I}{i}} + \comment{The letter `{I}'.} +\endsetslot + +\Fi + +\setslot{\uc{J}{j}} + \comment{The letter `{J}'.} +\endsetslot + +\setslot{\uc{K}{k}} + \comment{The letter `{K}'.} +\endsetslot + +\setslot{\uc{L}{l}} + \comment{The letter `{L}'.} +\endsetslot + +\setslot{\uc{M}{m}} + \comment{The letter `{M}'.} +\endsetslot + +\setslot{\uc{N}{n}} + \comment{The letter `{N}'.} +\endsetslot + +\setslot{\uc{O}{o}} + \comment{The letter `{O}'.} +\endsetslot + +\setslot{\uc{P}{p}} + \comment{The letter `{P}'.} +\endsetslot + +\setslot{\uc{Q}{q}} + \comment{The letter `{Q}'.} +\endsetslot + +\setslot{\uc{R}{r}} + \comment{The letter `{R}'.} +\endsetslot + +\setslot{\uc{S}{s}} + \comment{The letter `{S}'.} +\endsetslot + +\setslot{\uc{T}{t}} + \comment{The letter `{T}'.} +\endsetslot + +\setslot{\uc{U}{u}} + \comment{The letter `{U}'.} +\endsetslot + +\setslot{\uc{V}{v}} + \comment{The letter `{V}'.} +\endsetslot + +\setslot{\uc{W}{w}} + \comment{The letter `{W}'.} +\endsetslot + +\setslot{\uc{X}{x}} + \comment{The letter `{X}'.} +\endsetslot + +\setslot{\uc{Y}{y}} + \comment{The letter `{Y}'.} +\endsetslot + +\setslot{\uc{Z}{z}} + \comment{The letter `{Z}'.} +\endsetslot + +\setslot{bracketleft.inferior} + \comment{The opening square bracket `['.} +\endsetslot + +\setslot{backslash.inferior} + \comment{The backwards oblique `\textbackslash'.} +\endsetslot + +\setslot{bracketright.inferior} + \comment{The closing square bracket `]'.} +\endsetslot + +\setslot{asciicircum.inferior} + \comment{The ASCII upward-pointing arrow head `\textasciicircum'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{underscore.inferior} + \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.inferior} + \ligature{LIG}{quoteleft.inferior}{quotedblleft.inferior} + \comment{The English opening single quote mark `\,\textquoteleft\,'.} +\endsetslot + +\setslot{\lc{A}{a}} + \comment{The letter `{a}'.} +\endsetslot + +\setslot{\lc{B}{b}} + \comment{The letter `{b}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{C}{c}} + \comment{The letter `{c}'.} + \endsetslot + +\Fi + +\setslot{\lc{D}{d}} + \comment{The letter `{d}'.} +\endsetslot + +\setslot{\lc{E}{e}} + \comment{The letter `{e}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{F}{f}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FI}{fi}} + \ligature{LIG}{\lc{F}{f}}{\lclig{FF}{ff}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FL}{fl}} + \Fi + \comment{The letter `{f}'.} + \endsetslot + +\Fi + +\setslot{\lc{G}{g}} + \comment{The letter `{g}'.} +\endsetslot + +\setslot{\lc{H}{h}} + \comment{The letter `{h}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{I}{i}} + \comment{The letter `{i}'.} + \endsetslot + +\Fi + +\setslot{\lc{J}{j}} + \comment{The letter `{j}'.} +\endsetslot + +\setslot{\lc{K}{k}} + \comment{The letter `{k}'.} +\endsetslot + +\setslot{\lc{L}{l}} + \comment{The letter `{l}'.} +\endsetslot + +\setslot{\lc{M}{m}} + \comment{The letter `{m}'.} +\endsetslot + +\setslot{\lc{N}{n}} + \comment{The letter `{n}'.} +\endsetslot + +\setslot{\lc{O}{o}} + \comment{The letter `{o}'.} +\endsetslot + +\setslot{\lc{P}{p}} + \comment{The letter `{p}'.} +\endsetslot + +\setslot{\lc{Q}{q}} + \comment{The letter `{q}'.} +\endsetslot + +\setslot{\lc{R}{r}} + \comment{The letter `{r}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{S}{s}} + \comment{The letter `{s}'.} + \endsetslot + +\Fi + +\setslot{\lc{T}{t}} + \comment{The letter `{t}'.} +\endsetslot + +\setslot{\lc{U}{u}} + \comment{The letter `{u}'.} +\endsetslot + +\setslot{\lc{V}{v}} + \comment{The letter `{v}'.} +\endsetslot + +\setslot{\lc{W}{w}} + \comment{The letter `{w}'.} +\endsetslot + +\setslot{\lc{X}{x}} + \comment{The letter `{x}'.} +\endsetslot + +\setslot{\lc{Y}{y}} + \comment{The letter `{y}'.} +\endsetslot + +\setslot{\lc{Z}{z}} + \comment{The letter `{z}'.} +\endsetslot + +\setslot{braceleft.inferior} + \comment{The opening curly brace `\textbraceleft'.} +\endsetslot + +\setslot{bar.inferior} + \comment{The ASCII vertical bar `\textbar'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{braceright.inferior} + \comment{The closing curly brace `\textbraceright'.} +\endsetslot + +\setslot{asciitilde.inferior} + \comment{The ASCII tilde `\textasciitilde'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{hyphenchar.inferior} + \comment{The glyph used for hyphenation in this font, which will + almost always be the same as `hyphen'.} +\endsetslot + +\setslot{\uctop{Abreve}{abreve}} + \comment{The letter `\u A'.} +\endsetslot + +\setslot{\uc{Aogonek}{aogonek}} + \comment{The letter `\k A'.} +\endsetslot + +\setslot{\uctop{Cacute}{cacute}} + \comment{The letter `\' C'.} +\endsetslot + +\setslot{\uctop{Ccaron}{ccaron}} + \comment{The letter `\v C'.} +\endsetslot + +\setslot{\uctop{Dcaron}{dcaron}} + \comment{The letter `\v D'.} +\endsetslot + +\setslot{\uctop{Ecaron}{ecaron}} + \comment{The letter `\v E'.} +\endsetslot + +\setslot{\uc{Eogonek}{eogonek}} + \comment{The letter `\k E'.} +\endsetslot + +\setslot{\uctop{Gbreve}{gbreve}} + \comment{The letter `\u G'.} +\endsetslot + +\setslot{\uctop{Lacute}{lacute}} + \comment{The letter `\' L'.} +\endsetslot + +\setslot{\uc{Lcaron}{lcaron}} + \comment{The letter `\v L'.} +\endsetslot + +\setslot{\uc{Lslash}{lslash}} + \comment{The letter `\L'.} +\endsetslot + +\setslot{\uctop{Nacute}{nacute}} + \comment{The letter `\' N'.} +\endsetslot + +\setslot{\uctop{Ncaron}{ncaron}} + \comment{The letter `\v N'.} +\endsetslot + +\setslot{\uc{Eng}{eng}} + \comment{The Sami letter `\NG'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\uctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H O'.} +\endsetslot + +\setslot{\uctop{Racute}{racute}} + \comment{The letter `\' R'.} +\endsetslot + +\setslot{\uctop{Rcaron}{rcaron}} + \comment{The letter `\v R'.} +\endsetslot + +\setslot{\uctop{Sacute}{sacute}} + \comment{The letter `\' S'.} +\endsetslot + +\setslot{\uctop{Scaron}{scaron}} + \comment{The letter `\v S'.} +\endsetslot + +\setslot{\uc{Scedilla}{scedilla}} + \comment{The letter `\c S'.} +\endsetslot + +\setslot{\uctop{Tcaron}{tcaron}} + \comment{The letter `\v T'.} +\endsetslot + +\setslot{\uc{Tcedilla}{tcedilla}} + \comment{The letter `\c T'.} +\endsetslot + +\setslot{\uctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H U'.} +\endsetslot + +\setslot{\uctop{Uring}{uring}} + \comment{The letter `\r U'.} +\endsetslot + +\setslot{\uctop{Ydieresis}{ydieresis}} + \comment{The letter `\" Y'.} +\endsetslot + +\setslot{\uctop{Zacute}{zacute}} + \comment{The letter `\' Z'.} +\endsetslot + +\setslot{\uctop{Zcaron}{zcaron}} + \comment{The letter `\v Z'.} +\endsetslot + +\setslot{\uctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. Z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\uclig{IJ}{ij}} + \comment{The letter `IJ'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{\uctop{Idotaccent}{idotaccent}} + \comment{The letter `\. I'.} +\endsetslot + +\setslot{\lc{Dbar}{dbar}} + \comment{The letter `\dj'.} +\endsetslot + +\setslot{section.inferior} + \comment{The section mark `\textsection'.} +\endsetslot + +\setslot{\lctop{Abreve}{abreve}} + \comment{The letter `\u a'.} +\endsetslot + +\setslot{\lc{Aogonek}{aogonek}} + \comment{The letter `\k a'.} +\endsetslot + +\setslot{\lctop{Cacute}{cacute}} + \comment{The letter `\' c'.} +\endsetslot + +\setslot{\lctop{Ccaron}{ccaron}} + \comment{The letter `\v c'.} +\endsetslot + +\setslot{\lctop{Dcaron}{dcaron}} + \comment{The letter `\v d'.} +\endsetslot + +\setslot{\lctop{Ecaron}{ecaron}} + \comment{The letter `\v e'.} +\endsetslot + +\setslot{\lc{Eogonek}{eogonek}} + \comment{The letter `\k e'.} +\endsetslot + +\setslot{\lctop{Gbreve}{gbreve}} + \comment{The letter `\u g'.} +\endsetslot + +\setslot{\lctop{Lacute}{lacute}} + \comment{The letter `\' l'.} +\endsetslot + +\setslot{\lc{Lcaron}{lcaron}} + \comment{The letter `\v l'.} +\endsetslot + +\setslot{\lc{Lslash}{lslash}} + \comment{The letter `\l'.} +\endsetslot + +\setslot{\lctop{Nacute}{nacute}} + \comment{The letter `\' n'.} +\endsetslot + +\setslot{\lctop{Ncaron}{ncaron}} + \comment{The letter `\v n'.} +\endsetslot + +\setslot{\lc{Eng}{eng}} + \comment{The Sami letter `\ng'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as it is in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\lctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H o'.} +\endsetslot + +\setslot{\lctop{Racute}{racute}} + \comment{The letter `\' r'.} +\endsetslot + +\setslot{\lctop{Rcaron}{rcaron}} + \comment{The letter `\v r'.} +\endsetslot + +\setslot{\lctop{Sacute}{sacute}} + \comment{The letter `\' s'.} +\endsetslot + +\setslot{\lctop{Scaron}{scaron}} + \comment{The letter `\v s'.} +\endsetslot + +\setslot{\lc{Scedilla}{scedilla}} + \comment{The letter `\c s'.} +\endsetslot + +\setslot{\lctop{Tcaron}{tcaron}} + \comment{The letter `\v t'.} +\endsetslot + +\setslot{\lc{Tcedilla}{tcedilla}} + \comment{The letter `\c t'.} +\endsetslot + +\setslot{\lctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H u'.} +\endsetslot + +\setslot{\lctop{Uring}{uring}} + \comment{The letter `\r u'.} +\endsetslot + +\setslot{\lctop{Ydieresis}{ydieresis}} + \comment{The letter `\" y'.} +\endsetslot + +\setslot{\lctop{Zacute}{zacute}} + \comment{The letter `\' z'.} +\endsetslot + +\setslot{\lctop{Zcaron}{zcaron}} + \comment{The letter `\v z'.} +\endsetslot + +\setslot{\lctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\lclig{IJ}{ij}} + \comment{The letter `ij'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{exclamdown.inferior} + \comment{The Spanish punctuation mark `!`'.} +\endsetslot + +\setslot{questiondown.inferior} + \comment{The Spanish punctuation mark `?`'.} +\endsetslot + +\setslot{sterling.inferior} + \comment{The British currency mark `\textsterling'.} +\endsetslot + +\setslot{\uctop{Agrave}{agrave}} + \comment{The letter `\` A'.} +\endsetslot + +\setslot{\uctop{Aacute}{aacute}} + \comment{The letter `\' A'.} +\endsetslot + +\setslot{\uctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ A'.} +\endsetslot + +\setslot{\uctop{Atilde}{atilde}} + \comment{The letter `\~ A'.} +\endsetslot + +\setslot{\uctop{Adieresis}{adieresis}} + \comment{The letter `\" A'.} +\endsetslot + +\setslot{\uctop{Aring}{aring}} + \comment{The letter `\r A'.} +\endsetslot + +\setslot{\uc{AE}{ae}} + \comment{The letter `\AE'. This is a single letter, and should not be + faked with `AE'.} +\endsetslot + +\setslot{\uc{Ccedilla}{ccedilla}} + \comment{The letter `\c C'.} +\endsetslot + +\setslot{\uctop{Egrave}{egrave}} + \comment{The letter `\` E'.} +\endsetslot + +\setslot{\uctop{Eacute}{eacute}} + \comment{The letter `\' E'.} +\endsetslot + +\setslot{\uctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ E'.} +\endsetslot + +\setslot{\uctop{Edieresis}{edieresis}} + \comment{The letter `\" E'.} +\endsetslot + +\setslot{\uctop{Igrave}{igrave}} + \comment{The letter `\` I'.} +\endsetslot + +\setslot{\uctop{Iacute}{iacute}} + \comment{The letter `\' I'.} +\endsetslot + +\setslot{\uctop{Icircumflex}{icircumflex}} + \comment{The letter `\^ I'.} +\endsetslot + +\setslot{\uctop{Idieresis}{idieresis}} + \comment{The letter `\" I'.} +\endsetslot + +\setslot{\uc{Eth}{eth}} + \comment{The uppercase Icelandic letter `Eth' similar to a `D' + with a horizontal bar through the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\uctop{Ntilde}{ntilde}} + \comment{The letter `\~ N'.} +\endsetslot + +\setslot{\uctop{Ograve}{ograve}} + \comment{The letter `\` O'.} +\endsetslot + +\setslot{\uctop{Oacute}{oacute}} + \comment{The letter `\' O'.} +\endsetslot + +\setslot{\uctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ O'.} +\endsetslot + +\setslot{\uctop{Otilde}{otilde}} + \comment{The letter `\~ O'.} +\endsetslot + +\setslot{\uctop{Odieresis}{odieresis}} + \comment{The letter `\" O'.} +\endsetslot + +\setslot{\uc{OE}{oe}} + \comment{The letter `\OE'. This is a single letter, and should not be + faked with `OE'.} +\endsetslot + +\setslot{\uc{Oslash}{oslash}} + \comment{The letter `\O'.} +\endsetslot + +\setslot{\uctop{Ugrave}{ugrave}} + \comment{The letter `\` U'.} +\endsetslot + +\setslot{\uctop{Uacute}{uacute}} + \comment{The letter `\' U'.} +\endsetslot + +\setslot{\uctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ U'.} +\endsetslot + +\setslot{\uctop{Udieresis}{udieresis}} + \comment{The letter `\" U'.} +\endsetslot + +\setslot{\uctop{Yacute}{yacute}} + \comment{The letter `\' Y'.} +\endsetslot + +\setslot{\uc{Thorn}{thorn}} + \comment{The Icelandic capital letter Thorn, similar to a `P' + with the bowl moved down. It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\uclig{SS}{germandbls}} + \comment{The ligature `SS', used to give an upper case `\ss'. + In a monowidth font it should be two letters wide.} +\endsetslot + +\setslot{\lctop{Agrave}{agrave}} + \comment{The letter `\` a'.} +\endsetslot + +\setslot{\lctop{Aacute}{aacute}} + \comment{The letter `\' a'.} +\endsetslot + +\setslot{\lctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ a'.} +\endsetslot + +\setslot{\lctop{Atilde}{atilde}} + \comment{The letter `\~ a'.} +\endsetslot + +\setslot{\lctop{Adieresis}{adieresis}} + \comment{The letter `\" a'.} +\endsetslot + +\setslot{\lctop{Aring}{aring}} + \comment{The letter `\r a'.} +\endsetslot + +\setslot{\lc{AE}{ae}} + \comment{The letter `\ae'. This is a single letter, and should not be + faked with `ae'.} +\endsetslot + +\setslot{\lc{Ccedilla}{ccedilla}} + \comment{The letter `\c c'.} +\endsetslot + +\setslot{\lctop{Egrave}{egrave}} + \comment{The letter `\` e'.} +\endsetslot + +\setslot{\lctop{Eacute}{eacute}} + \comment{The letter `\' e'.} +\endsetslot + +\setslot{\lctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ e'.} +\endsetslot + +\setslot{\lctop{Edieresis}{edieresis}} + \comment{The letter `\" e'.} +\endsetslot + +\setslot{\lctop{Igrave}{igrave}} + \comment{The letter `\`\i'.} +\endsetslot + +\setslot{\lctop{Iacute}{iacute}} + \comment{The letter `\'\i'.} +\endsetslot + +\setslot{\lctop{Icircumflex}{icircumflex}} + \comment{The letter `\^\i'.} +\endsetslot + +\setslot{\lctop{Idieresis}{idieresis}} + \comment{The letter `\"\i'.} +\endsetslot + +\setslot{\lc{Eth}{eth}} + \comment{The Icelandic lowercase letter `eth' similar to + a `$\partial$' with an oblique bar through the stem. + It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\lctop{Ntilde}{ntilde}} + \comment{The letter `\~ n'.} +\endsetslot + +\setslot{\lctop{Ograve}{ograve}} + \comment{The letter `\` o'.} +\endsetslot + +\setslot{\lctop{Oacute}{oacute}} + \comment{The letter `\' o'.} +\endsetslot + +\setslot{\lctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ o'.} +\endsetslot + +\setslot{\lctop{Otilde}{otilde}} + \comment{The letter `\~ o'.} +\endsetslot + +\setslot{\lctop{Odieresis}{odieresis}} + \comment{The letter `\" o'.} +\endsetslot + +\setslot{\lc{OE}{oe}} + \comment{The letter `\oe'. This is a single letter, and should not be + faked with `oe'.} +\endsetslot + +\setslot{\lc{Oslash}{oslash}} + \comment{The letter `\o'.} +\endsetslot + +\setslot{\lctop{Ugrave}{ugrave}} + \comment{The letter `\` u'.} +\endsetslot + +\setslot{\lctop{Uacute}{uacute}} + \comment{The letter `\' u'.} +\endsetslot + +\setslot{\lctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ u'.} +\endsetslot + +\setslot{\lctop{Udieresis}{udieresis}} + \comment{The letter `\" u'.} +\endsetslot + +\setslot{\lctop{Yacute}{yacute}} + \comment{The letter `\' y'.} +\endsetslot + +\setslot{\lc{Thorn}{thorn}} + \comment{The Icelandic lowercase letter `thorn', similar to a `p' + with an ascender rising from the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\lc{SS}{germandbls}} + \comment{The letter `\ss'.} +\endsetslot + +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</t1-dotinf> +% \fi +% +% +% \subsubsection{t1-dotinferior.etx}\label{subsubsec:t1-dotinferior} +% +% \iffalse +%<*t1-dotinferior> +% \fi +% \begin{encoding}{t1-dotinferior.etx} +% \begin{macrocode} +%% +%% - The original notices at the top of that file concerning authors, +%% maintenance etc. are replaced by this notice. +%% - The file is renamed. +%% - The encoding name is modified. +%% - The file is modified to accommodate differences in glyph names. +%% - The file is modified for use in encoding inferiors. +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\relax +\encoding + +\needsfontinstversion{1.910} + +\setcommand\lc#1#2{#2.inferior} +\setcommand\uc#1#2{#1.inferior} +\setcommand\lctop#1#2{#2.inferior} +\setcommand\uctop#1#2{#1.inferior} +\setcommand\lclig#1#2{#2.inferior} +\ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setcommand\uclig#1#2{#1spaced} + \comment{Here we set \verb|\uclig#1#2| to \verb|#1spaced|, but + you can't see it as \verb|\setcommand| commands are invisible in + the typeset output.} + \Fi +\Fi +\setcommand\uclig#1#2{#1.inferior} +\setcommand\digit#1{#1.inferior} + +\ifisint{monowidth}\then + \setint{ligaturing}{0} +\Else + % The following empty line is *important* to get the formatting + % right here (sigh)! (Remember that it is a \par token.) + + \ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setint{ligaturing}{0} + \Fi + \Fi + \setint{ligaturing}{1} +\Fi + +\setint{italicslant}{0} +\setint{quad}{1000} +\setint{baselineskip}{1200} + +\ifisglyph{x}\then + \setint{xheight}{\height{x}} +\Else + \setint{xheight}{500} +\Fi + +\ifisglyph{space}\then + \setint{interword}{\width{space}} +\Else\ifisglyph{i}\then + \setint{interword}{\width{i}} +\Else + \setint{interword}{333} +\Fi\Fi + +\ifisint{monowidth}\then + \setint{stretchword}{0} + \setint{shrinkword}{0} + \setint{extraspace}{\int{interword}} +\Else + \setint{stretchword}{\scale{\int{interword}}{600}} + \setint{shrinkword}{\scale{\int{interword}}{240}} + \setint{extraspace}{\scale{\int{interword}}{240}} +\Fi + +\ifisglyph{X}\then + \setint{capheight}{\height{X}} +\Else + \setint{capheight}{750} +\Fi + +\ifisglyph{d}\then + \setint{ascender}{\height{d}} +\Else\ifisint{capheight}\then + \setint{ascender}{\int{capheight}} +\Else + \setint{ascender}{750} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{acccapheight}{\height{Aring}} +\Else + \setint{acccapheight}{999} +\Fi + +\ifisint{descender_neg}\then + \setint{descender}{\neg{\int{descender_neg}}} +\Else\ifisglyph{p}\then + \setint{descender}{\depth{p}} +\Else + \setint{descender}{250} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{maxheight}{\height{Aring}} +\Else + \setint{maxheight}{1000} +\Fi + +\ifisint{maxdepth_neg}\then + \setint{maxdepth}{\neg{\int{maxdepth_neg}}} +\Else\ifisglyph{j}\then + \setint{maxdepth}{\depth{j}} +\Else + \setint{maxdepth}{250} +\Fi\Fi + +\ifisglyph{six}\then + \setint{digitwidth}{\width{six}} +\Else + \setint{digitwidth}{500} +\Fi + +\setint{capstem}{0} % not in AFM files + +\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 + +\ifnumber{\int{ligaturing}}<{0}\then + \comment{In this case, the codingscheme can be different from the + default, and therefore we refrain from setting it.} +\Else + \setstr{codingscheme}{EXTENDED TEX FONT ENCODING - DOTINFERIOR} +\Fi + +\setslot{\lc{Grave}{grave}} + \comment{The grave accent `\`{}'.} +\endsetslot + +\setslot{\lc{Acute}{acute}} + \comment{The acute accent `\'{}'.} +\endsetslot + +\setslot{\lc{Circumflex}{circumflex}} + \comment{The circumflex accent `\^{}'.} +\endsetslot + +\setslot{\lc{Tilde}{tilde}} + \comment{The tilde accent `\~{}'.} +\endsetslot + +\setslot{\lc{Dieresis}{dieresis}} + \comment{The umlaut or dieresis accent `\"{}'.} +\endsetslot + +\setslot{\lc{Hungarumlaut}{hungarumlaut}} + \comment{The long Hungarian umlaut `\H{}'.} +\endsetslot + +\setslot{\lc{Ring}{ring}} + \comment{The ring accent `\r{}'.} +\endsetslot + +\setslot{\lc{Caron}{caron}} + \comment{The caron or h\'a\v cek accent `\v{}'.} +\endsetslot + +\setslot{\lc{Breve}{breve}} + \comment{The breve accent `\u{}'.} +\endsetslot + +\setslot{\lc{Macron}{macron}} + \comment{The macron accent `\={}'.} +\endsetslot + +\setslot{\lc{Dotaccent}{dotaccent}} + \comment{The dot accent `\.{}'.} +\endsetslot + +\setslot{\lc{Cedilla}{cedilla}} + \comment{The cedilla accent `\c {}'.} +\endsetslot + +\setslot{\lc{Ogonek}{ogonek}} + \comment{The ogonek accent `\k {}'.} +\endsetslot + +\setslot{quotesinglbase.inferior} + \comment{A German single quote mark `\quotesinglbase' similar to a comma, + but with different sidebearings.} +\endsetslot + +\setslot{guilsinglleft.inferior} + \comment{A French single opening quote mark `\guilsinglleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guilsinglright.inferior} + \comment{A French single closing quote mark `\guilsinglright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{quotedblleft.inferior} + \comment{The English opening quote mark `\,\textquotedblleft\,'.} +\endsetslot + +\setslot{quotedblright.inferior} + \comment{The English closing quote mark `\,\textquotedblright\,'.} +\endsetslot + +\setslot{quotedblbase.inferior} + \comment{A German double quote mark `\quotedblbase' similar to two commas, + but with tighter letterspacing and different sidebearings.} +\endsetslot + +\setslot{guillemotleft.inferior} + \comment{A French double opening quote mark `\guillemotleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guillemotright.inferior} + \comment{A French closing opening quote mark `\guillemotright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{endash.inferior} + \ligature{LIG}{hyphen.inferior}{emdash.inferior} + \comment{The number range dash `1--9'. + This is called `rangedash' by fontinst's t1.etx, but it needs to be + called `endash' to work right. + The `\textendash'. + In a monowidth font, this might be set as `\texttt{1{-}9}'.} +\endsetslot + +\setslot{emdash.inferior} + \comment{The punctuation dash `Oh---boy.' + This is calle `punctdash' by fontinst's t1.etx, but needs to be + called `emdash' to work right. + The `\textemdash'. + In a monowidth font, this might be set as `\texttt{Oh{-}{-}boy.}'} +\endsetslot + +\setslot{compwordmark.inferior} + \comment{An invisible glyph, with zero width and depth, but the + height of lowercase letters without ascenders. + It is used to stop ligaturing in words like `shelf{}ful'.} +\endsetslot + +\setslot{perthousandzero.inferior} + \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.} +\endsetslot + +\setslot{\lc{dotlessI}{dotlessi}} + \comment{A dotless i `\i', used to produce accented letters such as + `\=\i'.} +\endsetslot + +\setslot{\lc{dotlessJ}{dotlessj}} + \comment{A dotless j `\j', used to produce accented letters such as + `\=\j'. Most non-\TeX\ fonts do not have this glyph.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{5}\Else + +\setslot{\lclig{FF}{ff}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FFI}{ffi}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FFL}{ffl}} + \Fi + \comment{The `ff' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FI}{fi}} + \comment{The `fi' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FL}{fl}} + \comment{The `fl' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFI}{ffi}} + \comment{The `ffi' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFL}{ffl}} + \comment{The `ffl' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\Fi + +\setslot{visiblespace.inferior} + \comment{A visible space glyph `\textvisiblespace'.} +\endsetslot + +\setslot{exclam.inferior} + \ligature{LIG}{quoteleft.inferior}{exclamdown.inferior} + \comment{The exclamation mark `!'.} +\endsetslot + +\setslot{quotedbl.inferior} + \comment{The `neutral' double quotation mark `\,\textquotedbl\,', + included for use in monowidth fonts, or for setting computer + programs. Note that the inclusion of this glyph in this slot + means that \TeX\ documents which used `{\tt\char`\"}' as an + input character will no longer work.} +\endsetslot + +\setslot{numbersign.inferior} + \comment{The hash sign `\#'.} +\endsetslot + +\setslot{dollar.inferior} + \comment{The dollar sign `\$'.} +\endsetslot + +\setslot{percent.inferior} + \comment{The percent sign `\%'.} +\endsetslot + +\setslot{ampersand.inferior} + \comment{The ampersand sign `\&'.} +\endsetslot + +\setslot{quoteright.inferior} + \ligature{LIG}{quoteright.inferior}{quotedblright.inferior} + \comment{The English closing single quote mark `\,\textquoteright\,'.} +\endsetslot + +\setslot{parenleft.inferior} + \comment{The opening parenthesis `('.} +\endsetslot + +\setslot{parenright.inferior} + \comment{The closing parenthesis `)'.} +\endsetslot + +\setslot{asterisk.inferior} + \comment{The raised asterisk `*'.} +\endsetslot + +\setslot{plus.inferior} + \comment{The addition sign `+'.} +\endsetslot + +\setslot{comma.inferior} + \ligature{LIG}{comma.inferior}{quotedblbase.inferior} + \comment{The comma `,'.} +\endsetslot + +\setslot{hyphen.inferior} + \ligature{LIG}{hyphen.inferior}{endash.inferior} + \ligature{LIG}{hyphenchar.inferior}{hyphenchar.inferior} + \comment{The hyphen `-'.} +\endsetslot + +\setslot{period.inferior} + \comment{The period `.'.} +\endsetslot + +\setslot{slash.inferior} + \comment{The forward oblique `/'.} +\endsetslot + +\setslot{\digit{zero}} + \comment{The number `0'. This (and all the other numerals) may be + old style or ranging digits.} +\endsetslot + +\setslot{\digit{one}} + \comment{The number `1'.} +\endsetslot + +\setslot{\digit{two}} + \comment{The number `2'.} +\endsetslot + +\setslot{\digit{three}} + \comment{The number `3'.} +\endsetslot + +\setslot{\digit{four}} + \comment{The number `4'.} +\endsetslot + +\setslot{\digit{five}} + \comment{The number `5'.} +\endsetslot + +\setslot{\digit{six}} + \comment{The number `6'.} +\endsetslot + +\setslot{\digit{seven}} + \comment{The number `7'.} +\endsetslot + +\setslot{\digit{eight}} + \comment{The number `8'.} +\endsetslot + +\setslot{\digit{nine}} + \comment{The number `9'.} +\endsetslot + +\setslot{colon.inferior} + \comment{The colon punctuation mark `:'.} +\endsetslot + +\setslot{semicolon.inferior} + \comment{The semi-colon punctuation mark `;'.} +\endsetslot + +\setslot{less.inferior} + \ligature{LIG}{less.inferior}{guillemotleft.inferior} + \comment{The less-than sign `\textless'.} +\endsetslot + +\setslot{equal.inferior} + \comment{The equals sign `='.} +\endsetslot + +\setslot{greater.inferior} + \ligature{LIG}{greater.inferior}{guillemotright.inferior} + \comment{The greater-than sign `\textgreater'.} +\endsetslot + +\setslot{question.inferior} + \ligature{LIG}{quoteleft.inferior}{questiondown.inferior} + \comment{The question mark `?'.} +\endsetslot + +\setslot{at.inferior} + \comment{The at sign `@'.} +\endsetslot + +\setslot{\uc{A}{a}} + \comment{The letter `{A}'.} +\endsetslot + +\setslot{\uc{B}{b}} + \comment{The letter `{B}'.} +\endsetslot + +\setslot{\uc{C}{c}} + \comment{The letter `{C}'.} +\endsetslot + +\setslot{\uc{D}{d}} + \comment{The letter `{D}'.} +\endsetslot + +\setslot{\uc{E}{e}} + \comment{The letter `{E}'.} +\endsetslot + +\setslot{\uc{F}{f}} + \comment{The letter `{F}'.} +\endsetslot + +\setslot{\uc{G}{g}} + \comment{The letter `{G}'.} +\endsetslot + +\setslot{\uc{H}{h}} + \comment{The letter `{H}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + +\setslot{\uc{I}{i}} + \comment{The letter `{I}'.} +\endsetslot + +\Fi + +\setslot{\uc{J}{j}} + \comment{The letter `{J}'.} +\endsetslot + +\setslot{\uc{K}{k}} + \comment{The letter `{K}'.} +\endsetslot + +\setslot{\uc{L}{l}} + \comment{The letter `{L}'.} +\endsetslot + +\setslot{\uc{M}{m}} + \comment{The letter `{M}'.} +\endsetslot + +\setslot{\uc{N}{n}} + \comment{The letter `{N}'.} +\endsetslot + +\setslot{\uc{O}{o}} + \comment{The letter `{O}'.} +\endsetslot + +\setslot{\uc{P}{p}} + \comment{The letter `{P}'.} +\endsetslot + +\setslot{\uc{Q}{q}} + \comment{The letter `{Q}'.} +\endsetslot + +\setslot{\uc{R}{r}} + \comment{The letter `{R}'.} +\endsetslot + +\setslot{\uc{S}{s}} + \comment{The letter `{S}'.} +\endsetslot + +\setslot{\uc{T}{t}} + \comment{The letter `{T}'.} +\endsetslot + +\setslot{\uc{U}{u}} + \comment{The letter `{U}'.} +\endsetslot + +\setslot{\uc{V}{v}} + \comment{The letter `{V}'.} +\endsetslot + +\setslot{\uc{W}{w}} + \comment{The letter `{W}'.} +\endsetslot + +\setslot{\uc{X}{x}} + \comment{The letter `{X}'.} +\endsetslot + +\setslot{\uc{Y}{y}} + \comment{The letter `{Y}'.} +\endsetslot + +\setslot{\uc{Z}{z}} + \comment{The letter `{Z}'.} +\endsetslot + +\setslot{bracketleft.inferior} + \comment{The opening square bracket `['.} +\endsetslot + +\setslot{backslash.inferior} + \comment{The backwards oblique `\textbackslash'.} +\endsetslot + +\setslot{bracketright.inferior} + \comment{The closing square bracket `]'.} +\endsetslot + +\setslot{asciicircum.inferior} + \comment{The ASCII upward-pointing arrow head `\textasciicircum'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{underscore.inferior} + \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.inferior} + \ligature{LIG}{quoteleft.inferior}{quotedblleft.inferior} + \comment{The English opening single quote mark `\,\textquoteleft\,'.} +\endsetslot + +\setslot{\lc{A}{a}} + \comment{The letter `{a}'.} +\endsetslot + +\setslot{\lc{B}{b}} + \comment{The letter `{b}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{C}{c}} + \comment{The letter `{c}'.} + \endsetslot + +\Fi + +\setslot{\lc{D}{d}} + \comment{The letter `{d}'.} +\endsetslot + +\setslot{\lc{E}{e}} + \comment{The letter `{e}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{F}{f}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FI}{fi}} + \ligature{LIG}{\lc{F}{f}}{\lclig{FF}{ff}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FL}{fl}} + \Fi + \comment{The letter `{f}'.} + \endsetslot + +\Fi + +\setslot{\lc{G}{g}} + \comment{The letter `{g}'.} +\endsetslot + +\setslot{\lc{H}{h}} + \comment{The letter `{h}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{I}{i}} + \comment{The letter `{i}'.} + \endsetslot + +\Fi + +\setslot{\lc{J}{j}} + \comment{The letter `{j}'.} +\endsetslot + +\setslot{\lc{K}{k}} + \comment{The letter `{k}'.} +\endsetslot + +\setslot{\lc{L}{l}} + \comment{The letter `{l}'.} +\endsetslot + +\setslot{\lc{M}{m}} + \comment{The letter `{m}'.} +\endsetslot + +\setslot{\lc{N}{n}} + \comment{The letter `{n}'.} +\endsetslot + +\setslot{\lc{O}{o}} + \comment{The letter `{o}'.} +\endsetslot + +\setslot{\lc{P}{p}} + \comment{The letter `{p}'.} +\endsetslot + +\setslot{\lc{Q}{q}} + \comment{The letter `{q}'.} +\endsetslot + +\setslot{\lc{R}{r}} + \comment{The letter `{r}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{S}{s}} + \comment{The letter `{s}'.} + \endsetslot + +\Fi + +\setslot{\lc{T}{t}} + \comment{The letter `{t}'.} +\endsetslot + +\setslot{\lc{U}{u}} + \comment{The letter `{u}'.} +\endsetslot + +\setslot{\lc{V}{v}} + \comment{The letter `{v}'.} +\endsetslot + +\setslot{\lc{W}{w}} + \comment{The letter `{w}'.} +\endsetslot + +\setslot{\lc{X}{x}} + \comment{The letter `{x}'.} +\endsetslot + +\setslot{\lc{Y}{y}} + \comment{The letter `{y}'.} +\endsetslot + +\setslot{\lc{Z}{z}} + \comment{The letter `{z}'.} +\endsetslot + +\setslot{braceleft.inferior} + \comment{The opening curly brace `\textbraceleft'.} +\endsetslot + +\setslot{bar.inferior} + \comment{The ASCII vertical bar `\textbar'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{braceright.inferior} + \comment{The closing curly brace `\textbraceright'.} +\endsetslot + +\setslot{asciitilde.inferior} + \comment{The ASCII tilde `\textasciitilde'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{hyphenchar.inferior} + \comment{The glyph used for hyphenation in this font, which will + almost always be the same as `hyphen'.} +\endsetslot + +\setslot{\uctop{Abreve}{abreve}} + \comment{The letter `\u A'.} +\endsetslot + +\setslot{\uc{Aogonek}{aogonek}} + \comment{The letter `\k A'.} +\endsetslot + +\setslot{\uctop{Cacute}{cacute}} + \comment{The letter `\' C'.} +\endsetslot + +\setslot{\uctop{Ccaron}{ccaron}} + \comment{The letter `\v C'.} +\endsetslot + +\setslot{\uctop{Dcaron}{dcaron}} + \comment{The letter `\v D'.} +\endsetslot + +\setslot{\uctop{Ecaron}{ecaron}} + \comment{The letter `\v E'.} +\endsetslot + +\setslot{\uc{Eogonek}{eogonek}} + \comment{The letter `\k E'.} +\endsetslot + +\setslot{\uctop{Gbreve}{gbreve}} + \comment{The letter `\u G'.} +\endsetslot + +\setslot{\uctop{Lacute}{lacute}} + \comment{The letter `\' L'.} +\endsetslot + +\setslot{\uc{Lcaron}{lcaron}} + \comment{The letter `\v L'.} +\endsetslot + +\setslot{\uc{Lslash}{lslash}} + \comment{The letter `\L'.} +\endsetslot + +\setslot{\uctop{Nacute}{nacute}} + \comment{The letter `\' N'.} +\endsetslot + +\setslot{\uctop{Ncaron}{ncaron}} + \comment{The letter `\v N'.} +\endsetslot + +\setslot{\uc{Eng}{eng}} + \comment{The Sami letter `\NG'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\uctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H O'.} +\endsetslot + +\setslot{\uctop{Racute}{racute}} + \comment{The letter `\' R'.} +\endsetslot + +\setslot{\uctop{Rcaron}{rcaron}} + \comment{The letter `\v R'.} +\endsetslot + +\setslot{\uctop{Sacute}{sacute}} + \comment{The letter `\' S'.} +\endsetslot + +\setslot{\uctop{Scaron}{scaron}} + \comment{The letter `\v S'.} +\endsetslot + +\setslot{\uc{Scedilla}{scedilla}} + \comment{The letter `\c S'.} +\endsetslot + +\setslot{\uctop{Tcaron}{tcaron}} + \comment{The letter `\v T'.} +\endsetslot + +\setslot{\uc{Tcedilla}{tcedilla}} + \comment{The letter `\c T'.} +\endsetslot + +\setslot{\uctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H U'.} +\endsetslot + +\setslot{\uctop{Uring}{uring}} + \comment{The letter `\r U'.} +\endsetslot + +\setslot{\uctop{Ydieresis}{ydieresis}} + \comment{The letter `\" Y'.} +\endsetslot + +\setslot{\uctop{Zacute}{zacute}} + \comment{The letter `\' Z'.} +\endsetslot + +\setslot{\uctop{Zcaron}{zcaron}} + \comment{The letter `\v Z'.} +\endsetslot + +\setslot{\uctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. Z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\uclig{IJ}{ij}} + \comment{The letter `IJ'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{\uctop{Idotaccent}{idotaccent}} + \comment{The letter `\. I'.} +\endsetslot + +\setslot{\lc{Dbar}{dbar}} + \comment{The letter `\dj'.} +\endsetslot + +\setslot{section.inferior} + \comment{The section mark `\textsection'.} +\endsetslot + +\setslot{\lctop{Abreve}{abreve}} + \comment{The letter `\u a'.} +\endsetslot + +\setslot{\lc{Aogonek}{aogonek}} + \comment{The letter `\k a'.} +\endsetslot + +\setslot{\lctop{Cacute}{cacute}} + \comment{The letter `\' c'.} +\endsetslot + +\setslot{\lctop{Ccaron}{ccaron}} + \comment{The letter `\v c'.} +\endsetslot + +\setslot{\lctop{Dcaron}{dcaron}} + \comment{The letter `\v d'.} +\endsetslot + +\setslot{\lctop{Ecaron}{ecaron}} + \comment{The letter `\v e'.} +\endsetslot + +\setslot{\lc{Eogonek}{eogonek}} + \comment{The letter `\k e'.} +\endsetslot + +\setslot{\lctop{Gbreve}{gbreve}} + \comment{The letter `\u g'.} +\endsetslot + +\setslot{\lctop{Lacute}{lacute}} + \comment{The letter `\' l'.} +\endsetslot + +\setslot{\lc{Lcaron}{lcaron}} + \comment{The letter `\v l'.} +\endsetslot + +\setslot{\lc{Lslash}{lslash}} + \comment{The letter `\l'.} +\endsetslot + +\setslot{\lctop{Nacute}{nacute}} + \comment{The letter `\' n'.} +\endsetslot + +\setslot{\lctop{Ncaron}{ncaron}} + \comment{The letter `\v n'.} +\endsetslot + +\setslot{\lc{Eng}{eng}} + \comment{The Sami letter `\ng'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as it is in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\lctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H o'.} +\endsetslot + +\setslot{\lctop{Racute}{racute}} + \comment{The letter `\' r'.} +\endsetslot + +\setslot{\lctop{Rcaron}{rcaron}} + \comment{The letter `\v r'.} +\endsetslot + +\setslot{\lctop{Sacute}{sacute}} + \comment{The letter `\' s'.} +\endsetslot + +\setslot{\lctop{Scaron}{scaron}} + \comment{The letter `\v s'.} +\endsetslot + +\setslot{\lc{Scedilla}{scedilla}} + \comment{The letter `\c s'.} +\endsetslot + +\setslot{\lctop{Tcaron}{tcaron}} + \comment{The letter `\v t'.} +\endsetslot + +\setslot{\lc{Tcedilla}{tcedilla}} + \comment{The letter `\c t'.} +\endsetslot + +\setslot{\lctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H u'.} +\endsetslot + +\setslot{\lctop{Uring}{uring}} + \comment{The letter `\r u'.} +\endsetslot + +\setslot{\lctop{Ydieresis}{ydieresis}} + \comment{The letter `\" y'.} +\endsetslot + +\setslot{\lctop{Zacute}{zacute}} + \comment{The letter `\' z'.} +\endsetslot + +\setslot{\lctop{Zcaron}{zcaron}} + \comment{The letter `\v z'.} +\endsetslot + +\setslot{\lctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\lclig{IJ}{ij}} + \comment{The letter `ij'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{exclamdown.inferior} + \comment{The Spanish punctuation mark `!`'.} +\endsetslot + +\setslot{questiondown.inferior} + \comment{The Spanish punctuation mark `?`'.} +\endsetslot + +\setslot{sterling.inferior} + \comment{The British currency mark `\textsterling'.} +\endsetslot + +\setslot{\uctop{Agrave}{agrave}} + \comment{The letter `\` A'.} +\endsetslot + +\setslot{\uctop{Aacute}{aacute}} + \comment{The letter `\' A'.} +\endsetslot + +\setslot{\uctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ A'.} +\endsetslot + +\setslot{\uctop{Atilde}{atilde}} + \comment{The letter `\~ A'.} +\endsetslot + +\setslot{\uctop{Adieresis}{adieresis}} + \comment{The letter `\" A'.} +\endsetslot + +\setslot{\uctop{Aring}{aring}} + \comment{The letter `\r A'.} +\endsetslot + +\setslot{\uc{AE}{ae}} + \comment{The letter `\AE'. This is a single letter, and should not be + faked with `AE'.} +\endsetslot + +\setslot{\uc{Ccedilla}{ccedilla}} + \comment{The letter `\c C'.} +\endsetslot + +\setslot{\uctop{Egrave}{egrave}} + \comment{The letter `\` E'.} +\endsetslot + +\setslot{\uctop{Eacute}{eacute}} + \comment{The letter `\' E'.} +\endsetslot + +\setslot{\uctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ E'.} +\endsetslot + +\setslot{\uctop{Edieresis}{edieresis}} + \comment{The letter `\" E'.} +\endsetslot + +\setslot{\uctop{Igrave}{igrave}} + \comment{The letter `\` I'.} +\endsetslot + +\setslot{\uctop{Iacute}{iacute}} + \comment{The letter `\' I'.} +\endsetslot + +\setslot{\uctop{Icircumflex}{icircumflex}} + \comment{The letter `\^ I'.} +\endsetslot + +\setslot{\uctop{Idieresis}{idieresis}} + \comment{The letter `\" I'.} +\endsetslot + +\setslot{\uc{Eth}{eth}} + \comment{The uppercase Icelandic letter `Eth' similar to a `D' + with a horizontal bar through the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\uctop{Ntilde}{ntilde}} + \comment{The letter `\~ N'.} +\endsetslot + +\setslot{\uctop{Ograve}{ograve}} + \comment{The letter `\` O'.} +\endsetslot + +\setslot{\uctop{Oacute}{oacute}} + \comment{The letter `\' O'.} +\endsetslot + +\setslot{\uctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ O'.} +\endsetslot + +\setslot{\uctop{Otilde}{otilde}} + \comment{The letter `\~ O'.} +\endsetslot + +\setslot{\uctop{Odieresis}{odieresis}} + \comment{The letter `\" O'.} +\endsetslot + +\setslot{\uc{OE}{oe}} + \comment{The letter `\OE'. This is a single letter, and should not be + faked with `OE'.} +\endsetslot + +\setslot{\uc{Oslash}{oslash}} + \comment{The letter `\O'.} +\endsetslot + +\setslot{\uctop{Ugrave}{ugrave}} + \comment{The letter `\` U'.} +\endsetslot + +\setslot{\uctop{Uacute}{uacute}} + \comment{The letter `\' U'.} +\endsetslot + +\setslot{\uctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ U'.} +\endsetslot + +\setslot{\uctop{Udieresis}{udieresis}} + \comment{The letter `\" U'.} +\endsetslot + +\setslot{\uctop{Yacute}{yacute}} + \comment{The letter `\' Y'.} +\endsetslot + +\setslot{\uc{Thorn}{thorn}} + \comment{The Icelandic capital letter Thorn, similar to a `P' + with the bowl moved down. It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\uclig{SS}{germandbls}} + \comment{The ligature `SS', used to give an upper case `\ss'. + In a monowidth font it should be two letters wide.} +\endsetslot + +\setslot{\lctop{Agrave}{agrave}} + \comment{The letter `\` a'.} +\endsetslot + +\setslot{\lctop{Aacute}{aacute}} + \comment{The letter `\' a'.} +\endsetslot + +\setslot{\lctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ a'.} +\endsetslot + +\setslot{\lctop{Atilde}{atilde}} + \comment{The letter `\~ a'.} +\endsetslot + +\setslot{\lctop{Adieresis}{adieresis}} + \comment{The letter `\" a'.} +\endsetslot + +\setslot{\lctop{Aring}{aring}} + \comment{The letter `\r a'.} +\endsetslot + +\setslot{\lc{AE}{ae}} + \comment{The letter `\ae'. This is a single letter, and should not be + faked with `ae'.} +\endsetslot + +\setslot{\lc{Ccedilla}{ccedilla}} + \comment{The letter `\c c'.} +\endsetslot + +\setslot{\lctop{Egrave}{egrave}} + \comment{The letter `\` e'.} +\endsetslot + +\setslot{\lctop{Eacute}{eacute}} + \comment{The letter `\' e'.} +\endsetslot + +\setslot{\lctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ e'.} +\endsetslot + +\setslot{\lctop{Edieresis}{edieresis}} + \comment{The letter `\" e'.} +\endsetslot + +\setslot{\lctop{Igrave}{igrave}} + \comment{The letter `\`\i'.} +\endsetslot + +\setslot{\lctop{Iacute}{iacute}} + \comment{The letter `\'\i'.} +\endsetslot + +\setslot{\lctop{Icircumflex}{icircumflex}} + \comment{The letter `\^\i'.} +\endsetslot + +\setslot{\lctop{Idieresis}{idieresis}} + \comment{The letter `\"\i'.} +\endsetslot + +\setslot{\lc{Eth}{eth}} + \comment{The Icelandic lowercase letter `eth' similar to + a `$\partial$' with an oblique bar through the stem. + It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\lctop{Ntilde}{ntilde}} + \comment{The letter `\~ n'.} +\endsetslot + +\setslot{\lctop{Ograve}{ograve}} + \comment{The letter `\` o'.} +\endsetslot + +\setslot{\lctop{Oacute}{oacute}} + \comment{The letter `\' o'.} +\endsetslot + +\setslot{\lctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ o'.} +\endsetslot + +\setslot{\lctop{Otilde}{otilde}} + \comment{The letter `\~ o'.} +\endsetslot + +\setslot{\lctop{Odieresis}{odieresis}} + \comment{The letter `\" o'.} +\endsetslot + +\setslot{\lc{OE}{oe}} + \comment{The letter `\oe'. This is a single letter, and should not be + faked with `oe'.} +\endsetslot + +\setslot{\lc{Oslash}{oslash}} + \comment{The letter `\o'.} +\endsetslot + +\setslot{\lctop{Ugrave}{ugrave}} + \comment{The letter `\` u'.} +\endsetslot + +\setslot{\lctop{Uacute}{uacute}} + \comment{The letter `\' u'.} +\endsetslot + +\setslot{\lctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ u'.} +\endsetslot + +\setslot{\lctop{Udieresis}{udieresis}} + \comment{The letter `\" u'.} +\endsetslot + +\setslot{\lctop{Yacute}{yacute}} + \comment{The letter `\' y'.} +\endsetslot + +\setslot{\lc{Thorn}{thorn}} + \comment{The Icelandic lowercase letter `thorn', similar to a `p' + with an ascender rising from the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\lc{SS}{germandbls}} + \comment{The letter `\ss'.} +\endsetslot + +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</t1-dotinferior> +% \fi +% +% +% \subsubsection{t1-dotsup.etx}\label{subsubsec:t1-dotsup} +% +% \iffalse +%<*t1-dotsup> +% \fi +% \begin{encoding}{t1-dotsup.etx} +% \begin{macrocode} +%% +%% - The original notices at the top of that file concerning authors, +%% maintenance etc. are replaced by this notice. +%% - The file is renamed. +%% - The encoding name is modified. +%% - The file is modified to accommodate differences in glyph names. +%% - The file is modified for use in encoding superiors. +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\relax +\encoding + +\needsfontinstversion{1.910} + +\setcommand\lc#1#2{#2.superior} +\setcommand\uc#1#2{#1.superior} +\setcommand\lctop#1#2{#2.superior} +\setcommand\uctop#1#2{#1.superior} +\setcommand\lclig#1#2{#2.superior} +\ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setcommand\uclig#1#2{#1spaced} + \comment{Here we set \verb|\uclig#1#2| to \verb|#1spaced|, but + you can't see it as \verb|\setcommand| commands are invisible in + the typeset output.} + \Fi +\Fi +\setcommand\uclig#1#2{#1.superior} +\setcommand\digit#1{#1.superior} + +\ifisint{monowidth}\then + \setint{ligaturing}{0} +\Else + % The following empty line is *important* to get the formatting + % right here (sigh)! (Remember that it is a \par token.) + + \ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setint{ligaturing}{0} + \Fi + \Fi + \setint{ligaturing}{1} +\Fi + +\setint{italicslant}{0} +\setint{quad}{1000} +\setint{baselineskip}{1200} + +\ifisglyph{x}\then + \setint{xheight}{\height{x}} +\Else + \setint{xheight}{500} +\Fi + +\ifisglyph{space}\then + \setint{interword}{\width{space}} +\Else\ifisglyph{i}\then + \setint{interword}{\width{i}} +\Else + \setint{interword}{333} +\Fi\Fi + +\ifisint{monowidth}\then + \setint{stretchword}{0} + \setint{shrinkword}{0} + \setint{extraspace}{\int{interword}} +\Else + \setint{stretchword}{\scale{\int{interword}}{600}} + \setint{shrinkword}{\scale{\int{interword}}{240}} + \setint{extraspace}{\scale{\int{interword}}{240}} +\Fi + +\ifisglyph{X}\then + \setint{capheight}{\height{X}} +\Else + \setint{capheight}{750} +\Fi + +\ifisglyph{d}\then + \setint{ascender}{\height{d}} +\Else\ifisint{capheight}\then + \setint{ascender}{\int{capheight}} +\Else + \setint{ascender}{750} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{acccapheight}{\height{Aring}} +\Else + \setint{acccapheight}{999} +\Fi + +\ifisint{descender_neg}\then + \setint{descender}{\neg{\int{descender_neg}}} +\Else\ifisglyph{p}\then + \setint{descender}{\depth{p}} +\Else + \setint{descender}{250} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{maxheight}{\height{Aring}} +\Else + \setint{maxheight}{1000} +\Fi + +\ifisint{maxdepth_neg}\then + \setint{maxdepth}{\neg{\int{maxdepth_neg}}} +\Else\ifisglyph{j}\then + \setint{maxdepth}{\depth{j}} +\Else + \setint{maxdepth}{250} +\Fi\Fi + +\ifisglyph{six}\then + \setint{digitwidth}{\width{six}} +\Else + \setint{digitwidth}{500} +\Fi + +\setint{capstem}{0} % not in AFM files + +\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 + +\ifnumber{\int{ligaturing}}<{0}\then + \comment{In this case, the codingscheme can be different from the + default, and therefore we refrain from setting it.} +\Else + \setstr{codingscheme}{EXTENDED TEX FONT ENCODING - DOTSUP} +\Fi + +\setslot{\lc{Grave}{grave}} + \comment{The grave accent `\`{}'.} +\endsetslot + +\setslot{\lc{Acute}{acute}} + \comment{The acute accent `\'{}'.} +\endsetslot + +\setslot{\lc{Circumflex}{circumflex}} + \comment{The circumflex accent `\^{}'.} +\endsetslot + +\setslot{\lc{Tilde}{tilde}} + \comment{The tilde accent `\~{}'.} +\endsetslot + +\setslot{\lc{Dieresis}{dieresis}} + \comment{The umlaut or dieresis accent `\"{}'.} +\endsetslot + +\setslot{\lc{Hungarumlaut}{hungarumlaut}} + \comment{The long Hungarian umlaut `\H{}'.} +\endsetslot + +\setslot{\lc{Ring}{ring}} + \comment{The ring accent `\r{}'.} +\endsetslot + +\setslot{\lc{Caron}{caron}} + \comment{The caron or h\'a\v cek accent `\v{}'.} +\endsetslot + +\setslot{\lc{Breve}{breve}} + \comment{The breve accent `\u{}'.} +\endsetslot + +\setslot{\lc{Macron}{macron}} + \comment{The macron accent `\={}'.} +\endsetslot + +\setslot{\lc{Dotaccent}{dotaccent}} + \comment{The dot accent `\.{}'.} +\endsetslot + +\setslot{\lc{Cedilla}{cedilla}} + \comment{The cedilla accent `\c {}'.} +\endsetslot + +\setslot{\lc{Ogonek}{ogonek}} + \comment{The ogonek accent `\k {}'.} +\endsetslot + +\setslot{quotesinglbase.superior} + \comment{A German single quote mark `\quotesinglbase' similar to a comma, + but with different sidebearings.} +\endsetslot + +\setslot{guilsinglleft.superior} + \comment{A French single opening quote mark `\guilsinglleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guilsinglright.superior} + \comment{A French single closing quote mark `\guilsinglright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{quotedblleft.superior} + \comment{The English opening quote mark `\,\textquotedblleft\,'.} +\endsetslot + +\setslot{quotedblright.superior} + \comment{The English closing quote mark `\,\textquotedblright\,'.} +\endsetslot + +\setslot{quotedblbase.superior} + \comment{A German double quote mark `\quotedblbase' similar to two commas, + but with tighter letterspacing and different sidebearings.} +\endsetslot + +\setslot{guillemotleft.superior} + \comment{A French double opening quote mark `\guillemotleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guillemotright.superior} + \comment{A French closing opening quote mark `\guillemotright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{endash.superior} + \ligature{LIG}{hyphen.superior}{emdash.superior} + \comment{The number range dash `1--9'. + This is called `rangedash' by fontinst's t1.etx, but it needs to be + called `endash' to work right. + The `\textendash'. + In a monowidth font, this might be set as `\texttt{1{-}9}'.} +\endsetslot + +\setslot{emdash.superior} + \comment{The punctuation dash `Oh---boy.' + This is calle `punctdash' by fontinst's t1.etx, but needs to be + called `emdash' to work right. + The `\textemdash'. + In a monowidth font, this might be set as `\texttt{Oh{-}{-}boy.}'} +\endsetslot + +\setslot{compwordmark.superior} + \comment{An invisible glyph, with zero width and depth, but the + height of lowercase letters without ascenders. + It is used to stop ligaturing in words like `shelf{}ful'.} +\endsetslot + +\setslot{perthousandzero.superior} + \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.} +\endsetslot + +\setslot{\lc{dotlessI}{dotlessi}} + \comment{A dotless i `\i', used to produce accented letters such as + `\=\i'.} +\endsetslot + +\setslot{\lc{dotlessJ}{dotlessj}} + \comment{A dotless j `\j', used to produce accented letters such as + `\=\j'. Most non-\TeX\ fonts do not have this glyph.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{5}\Else + +\setslot{\lclig{FF}{ff}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FFI}{ffi}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FFL}{ffl}} + \Fi + \comment{The `ff' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FI}{fi}} + \comment{The `fi' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FL}{fl}} + \comment{The `fl' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFI}{ffi}} + \comment{The `ffi' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFL}{ffl}} + \comment{The `ffl' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\Fi + +\setslot{visiblespace.superior} + \comment{A visible space glyph `\textvisiblespace'.} +\endsetslot + +\setslot{exclam.superior} + \ligature{LIG}{quoteleft.superior}{exclamdown.superior} + \comment{The exclamation mark `!'.} +\endsetslot + +\setslot{quotedbl.superior} + \comment{The `neutral' double quotation mark `\,\textquotedbl\,', + included for use in monowidth fonts, or for setting computer + programs. Note that the inclusion of this glyph in this slot + means that \TeX\ documents which used `{\tt\char`\"}' as an + input character will no longer work.} +\endsetslot + +\setslot{numbersign.superior} + \comment{The hash sign `\#'.} +\endsetslot + +\setslot{dollar.superior} + \comment{The dollar sign `\$'.} +\endsetslot + +\setslot{percent.superior} + \comment{The percent sign `\%'.} +\endsetslot + +\setslot{ampersand.superior} + \comment{The ampersand sign `\&'.} +\endsetslot + +\setslot{quoteright.superior} + \ligature{LIG}{quoteright.superior}{quotedblright.superior} + \comment{The English closing single quote mark `\,\textquoteright\,'.} +\endsetslot + +\setslot{parenleft.superior} + \comment{The opening parenthesis `('.} +\endsetslot + +\setslot{parenright.superior} + \comment{The closing parenthesis `)'.} +\endsetslot + +\setslot{asterisk.superior} + \comment{The raised asterisk `*'.} +\endsetslot + +\setslot{plus.superior} + \comment{The addition sign `+'.} +\endsetslot + +\setslot{comma.superior} + \ligature{LIG}{comma.superior}{quotedblbase.superior} + \comment{The comma `,'.} +\endsetslot + +\setslot{hyphen.superior} + \ligature{LIG}{hyphen.superior}{endash.superior} + \ligature{LIG}{hyphenchar.superior}{hyphenchar.superior} + \comment{The hyphen `-'.} +\endsetslot + +\setslot{period.superior} + \comment{The period `.'.} +\endsetslot + +\setslot{slash.superior} + \comment{The forward oblique `/'.} +\endsetslot + +\setslot{\digit{zero}} + \comment{The number `0'. This (and all the other numerals) may be + old style or ranging digits.} +\endsetslot + +\setslot{\digit{one}} + \comment{The number `1'.} +\endsetslot + +\setslot{\digit{two}} + \comment{The number `2'.} +\endsetslot + +\setslot{\digit{three}} + \comment{The number `3'.} +\endsetslot + +\setslot{\digit{four}} + \comment{The number `4'.} +\endsetslot + +\setslot{\digit{five}} + \comment{The number `5'.} +\endsetslot + +\setslot{\digit{six}} + \comment{The number `6'.} +\endsetslot + +\setslot{\digit{seven}} + \comment{The number `7'.} +\endsetslot + +\setslot{\digit{eight}} + \comment{The number `8'.} +\endsetslot + +\setslot{\digit{nine}} + \comment{The number `9'.} +\endsetslot + +\setslot{colon.superior} + \comment{The colon punctuation mark `:'.} +\endsetslot + +\setslot{semicolon.superior} + \comment{The semi-colon punctuation mark `;'.} +\endsetslot + +\setslot{less.superior} + \ligature{LIG}{less.superior}{guillemotleft.superior} + \comment{The less-than sign `\textless'.} +\endsetslot + +\setslot{equal.superior} + \comment{The equals sign `='.} +\endsetslot + +\setslot{greater.superior} + \ligature{LIG}{greater.superior}{guillemotright.superior} + \comment{The greater-than sign `\textgreater'.} +\endsetslot + +\setslot{question.superior} + \ligature{LIG}{quoteleft.superior}{questiondown.superior} + \comment{The question mark `?'.} +\endsetslot + +\setslot{at.superior} + \comment{The at sign `@'.} +\endsetslot + +\setslot{\uc{A}{a}} + \comment{The letter `{A}'.} +\endsetslot + +\setslot{\uc{B}{b}} + \comment{The letter `{B}'.} +\endsetslot + +\setslot{\uc{C}{c}} + \comment{The letter `{C}'.} +\endsetslot + +\setslot{\uc{D}{d}} + \comment{The letter `{D}'.} +\endsetslot + +\setslot{\uc{E}{e}} + \comment{The letter `{E}'.} +\endsetslot + +\setslot{\uc{F}{f}} + \comment{The letter `{F}'.} +\endsetslot + +\setslot{\uc{G}{g}} + \comment{The letter `{G}'.} +\endsetslot + +\setslot{\uc{H}{h}} + \comment{The letter `{H}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + +\setslot{\uc{I}{i}} + \comment{The letter `{I}'.} +\endsetslot + +\Fi + +\setslot{\uc{J}{j}} + \comment{The letter `{J}'.} +\endsetslot + +\setslot{\uc{K}{k}} + \comment{The letter `{K}'.} +\endsetslot + +\setslot{\uc{L}{l}} + \comment{The letter `{L}'.} +\endsetslot + +\setslot{\uc{M}{m}} + \comment{The letter `{M}'.} +\endsetslot + +\setslot{\uc{N}{n}} + \comment{The letter `{N}'.} +\endsetslot + +\setslot{\uc{O}{o}} + \comment{The letter `{O}'.} +\endsetslot + +\setslot{\uc{P}{p}} + \comment{The letter `{P}'.} +\endsetslot + +\setslot{\uc{Q}{q}} + \comment{The letter `{Q}'.} +\endsetslot + +\setslot{\uc{R}{r}} + \comment{The letter `{R}'.} +\endsetslot + +\setslot{\uc{S}{s}} + \comment{The letter `{S}'.} +\endsetslot + +\setslot{\uc{T}{t}} + \comment{The letter `{T}'.} +\endsetslot + +\setslot{\uc{U}{u}} + \comment{The letter `{U}'.} +\endsetslot + +\setslot{\uc{V}{v}} + \comment{The letter `{V}'.} +\endsetslot + +\setslot{\uc{W}{w}} + \comment{The letter `{W}'.} +\endsetslot + +\setslot{\uc{X}{x}} + \comment{The letter `{X}'.} +\endsetslot + +\setslot{\uc{Y}{y}} + \comment{The letter `{Y}'.} +\endsetslot + +\setslot{\uc{Z}{z}} + \comment{The letter `{Z}'.} +\endsetslot + +\setslot{bracketleft.superior} + \comment{The opening square bracket `['.} +\endsetslot + +\setslot{backslash.superior} + \comment{The backwards oblique `\textbackslash'.} +\endsetslot + +\setslot{bracketright.superior} + \comment{The closing square bracket `]'.} +\endsetslot + +\setslot{asciicircum.superior} + \comment{The ASCII upward-pointing arrow head `\textasciicircum'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{underscore.superior} + \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.superior} + \ligature{LIG}{quoteleft.superior}{quotedblleft.superior} + \comment{The English opening single quote mark `\,\textquoteleft\,'.} +\endsetslot + +\setslot{\lc{A}{a}} + \comment{The letter `{a}'.} +\endsetslot + +\setslot{\lc{B}{b}} + \comment{The letter `{b}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{C}{c}} + \comment{The letter `{c}'.} + \endsetslot + +\Fi + +\setslot{\lc{D}{d}} + \comment{The letter `{d}'.} +\endsetslot + +\setslot{\lc{E}{e}} + \comment{The letter `{e}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{F}{f}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FI}{fi}} + \ligature{LIG}{\lc{F}{f}}{\lclig{FF}{ff}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FL}{fl}} + \Fi + \comment{The letter `{f}'.} + \endsetslot + +\Fi + +\setslot{\lc{G}{g}} + \comment{The letter `{g}'.} +\endsetslot + +\setslot{\lc{H}{h}} + \comment{The letter `{h}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{I}{i}} + \comment{The letter `{i}'.} + \endsetslot + +\Fi + +\setslot{\lc{J}{j}} + \comment{The letter `{j}'.} +\endsetslot + +\setslot{\lc{K}{k}} + \comment{The letter `{k}'.} +\endsetslot + +\setslot{\lc{L}{l}} + \comment{The letter `{l}'.} +\endsetslot + +\setslot{\lc{M}{m}} + \comment{The letter `{m}'.} +\endsetslot + +\setslot{\lc{N}{n}} + \comment{The letter `{n}'.} +\endsetslot + +\setslot{\lc{O}{o}} + \comment{The letter `{o}'.} +\endsetslot + +\setslot{\lc{P}{p}} + \comment{The letter `{p}'.} +\endsetslot + +\setslot{\lc{Q}{q}} + \comment{The letter `{q}'.} +\endsetslot + +\setslot{\lc{R}{r}} + \comment{The letter `{r}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{S}{s}} + \comment{The letter `{s}'.} + \endsetslot + +\Fi + +\setslot{\lc{T}{t}} + \comment{The letter `{t}'.} +\endsetslot + +\setslot{\lc{U}{u}} + \comment{The letter `{u}'.} +\endsetslot + +\setslot{\lc{V}{v}} + \comment{The letter `{v}'.} +\endsetslot + +\setslot{\lc{W}{w}} + \comment{The letter `{w}'.} +\endsetslot + +\setslot{\lc{X}{x}} + \comment{The letter `{x}'.} +\endsetslot + +\setslot{\lc{Y}{y}} + \comment{The letter `{y}'.} +\endsetslot + +\setslot{\lc{Z}{z}} + \comment{The letter `{z}'.} +\endsetslot + +\setslot{braceleft.superior} + \comment{The opening curly brace `\textbraceleft'.} +\endsetslot + +\setslot{bar.superior} + \comment{The ASCII vertical bar `\textbar'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{braceright.superior} + \comment{The closing curly brace `\textbraceright'.} +\endsetslot + +\setslot{asciitilde.superior} + \comment{The ASCII tilde `\textasciitilde'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{hyphenchar.superior} + \comment{The glyph used for hyphenation in this font, which will + almost always be the same as `hyphen'.} +\endsetslot + +\setslot{\uctop{Abreve}{abreve}} + \comment{The letter `\u A'.} +\endsetslot + +\setslot{\uc{Aogonek}{aogonek}} + \comment{The letter `\k A'.} +\endsetslot + +\setslot{\uctop{Cacute}{cacute}} + \comment{The letter `\' C'.} +\endsetslot + +\setslot{\uctop{Ccaron}{ccaron}} + \comment{The letter `\v C'.} +\endsetslot + +\setslot{\uctop{Dcaron}{dcaron}} + \comment{The letter `\v D'.} +\endsetslot + +\setslot{\uctop{Ecaron}{ecaron}} + \comment{The letter `\v E'.} +\endsetslot + +\setslot{\uc{Eogonek}{eogonek}} + \comment{The letter `\k E'.} +\endsetslot + +\setslot{\uctop{Gbreve}{gbreve}} + \comment{The letter `\u G'.} +\endsetslot + +\setslot{\uctop{Lacute}{lacute}} + \comment{The letter `\' L'.} +\endsetslot + +\setslot{\uc{Lcaron}{lcaron}} + \comment{The letter `\v L'.} +\endsetslot + +\setslot{\uc{Lslash}{lslash}} + \comment{The letter `\L'.} +\endsetslot + +\setslot{\uctop{Nacute}{nacute}} + \comment{The letter `\' N'.} +\endsetslot + +\setslot{\uctop{Ncaron}{ncaron}} + \comment{The letter `\v N'.} +\endsetslot + +\setslot{\uc{Eng}{eng}} + \comment{The Sami letter `\NG'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\uctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H O'.} +\endsetslot + +\setslot{\uctop{Racute}{racute}} + \comment{The letter `\' R'.} +\endsetslot + +\setslot{\uctop{Rcaron}{rcaron}} + \comment{The letter `\v R'.} +\endsetslot + +\setslot{\uctop{Sacute}{sacute}} + \comment{The letter `\' S'.} +\endsetslot + +\setslot{\uctop{Scaron}{scaron}} + \comment{The letter `\v S'.} +\endsetslot + +\setslot{\uc{Scedilla}{scedilla}} + \comment{The letter `\c S'.} +\endsetslot + +\setslot{\uctop{Tcaron}{tcaron}} + \comment{The letter `\v T'.} +\endsetslot + +\setslot{\uc{Tcedilla}{tcedilla}} + \comment{The letter `\c T'.} +\endsetslot + +\setslot{\uctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H U'.} +\endsetslot + +\setslot{\uctop{Uring}{uring}} + \comment{The letter `\r U'.} +\endsetslot + +\setslot{\uctop{Ydieresis}{ydieresis}} + \comment{The letter `\" Y'.} +\endsetslot + +\setslot{\uctop{Zacute}{zacute}} + \comment{The letter `\' Z'.} +\endsetslot + +\setslot{\uctop{Zcaron}{zcaron}} + \comment{The letter `\v Z'.} +\endsetslot + +\setslot{\uctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. Z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\uclig{IJ}{ij}} + \comment{The letter `IJ'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{\uctop{Idotaccent}{idotaccent}} + \comment{The letter `\. I'.} +\endsetslot + +\setslot{\lc{Dbar}{dbar}} + \comment{The letter `\dj'.} +\endsetslot + +\setslot{section.superior} + \comment{The section mark `\textsection'.} +\endsetslot + +\setslot{\lctop{Abreve}{abreve}} + \comment{The letter `\u a'.} +\endsetslot + +\setslot{\lc{Aogonek}{aogonek}} + \comment{The letter `\k a'.} +\endsetslot + +\setslot{\lctop{Cacute}{cacute}} + \comment{The letter `\' c'.} +\endsetslot + +\setslot{\lctop{Ccaron}{ccaron}} + \comment{The letter `\v c'.} +\endsetslot + +\setslot{\lctop{Dcaron}{dcaron}} + \comment{The letter `\v d'.} +\endsetslot + +\setslot{\lctop{Ecaron}{ecaron}} + \comment{The letter `\v e'.} +\endsetslot + +\setslot{\lc{Eogonek}{eogonek}} + \comment{The letter `\k e'.} +\endsetslot + +\setslot{\lctop{Gbreve}{gbreve}} + \comment{The letter `\u g'.} +\endsetslot + +\setslot{\lctop{Lacute}{lacute}} + \comment{The letter `\' l'.} +\endsetslot + +\setslot{\lc{Lcaron}{lcaron}} + \comment{The letter `\v l'.} +\endsetslot + +\setslot{\lc{Lslash}{lslash}} + \comment{The letter `\l'.} +\endsetslot + +\setslot{\lctop{Nacute}{nacute}} + \comment{The letter `\' n'.} +\endsetslot + +\setslot{\lctop{Ncaron}{ncaron}} + \comment{The letter `\v n'.} +\endsetslot + +\setslot{\lc{Eng}{eng}} + \comment{The Sami letter `\ng'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as it is in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\lctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H o'.} +\endsetslot + +\setslot{\lctop{Racute}{racute}} + \comment{The letter `\' r'.} +\endsetslot + +\setslot{\lctop{Rcaron}{rcaron}} + \comment{The letter `\v r'.} +\endsetslot + +\setslot{\lctop{Sacute}{sacute}} + \comment{The letter `\' s'.} +\endsetslot + +\setslot{\lctop{Scaron}{scaron}} + \comment{The letter `\v s'.} +\endsetslot + +\setslot{\lc{Scedilla}{scedilla}} + \comment{The letter `\c s'.} +\endsetslot + +\setslot{\lctop{Tcaron}{tcaron}} + \comment{The letter `\v t'.} +\endsetslot + +\setslot{\lc{Tcedilla}{tcedilla}} + \comment{The letter `\c t'.} +\endsetslot + +\setslot{\lctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H u'.} +\endsetslot + +\setslot{\lctop{Uring}{uring}} + \comment{The letter `\r u'.} +\endsetslot + +\setslot{\lctop{Ydieresis}{ydieresis}} + \comment{The letter `\" y'.} +\endsetslot + +\setslot{\lctop{Zacute}{zacute}} + \comment{The letter `\' z'.} +\endsetslot + +\setslot{\lctop{Zcaron}{zcaron}} + \comment{The letter `\v z'.} +\endsetslot + +\setslot{\lctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\lclig{IJ}{ij}} + \comment{The letter `ij'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{exclamdown.superior} + \comment{The Spanish punctuation mark `!`'.} +\endsetslot + +\setslot{questiondown.superior} + \comment{The Spanish punctuation mark `?`'.} +\endsetslot + +\setslot{sterling.superior} + \comment{The British currency mark `\textsterling'.} +\endsetslot + +\setslot{\uctop{Agrave}{agrave}} + \comment{The letter `\` A'.} +\endsetslot + +\setslot{\uctop{Aacute}{aacute}} + \comment{The letter `\' A'.} +\endsetslot + +\setslot{\uctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ A'.} +\endsetslot + +\setslot{\uctop{Atilde}{atilde}} + \comment{The letter `\~ A'.} +\endsetslot + +\setslot{\uctop{Adieresis}{adieresis}} + \comment{The letter `\" A'.} +\endsetslot + +\setslot{\uctop{Aring}{aring}} + \comment{The letter `\r A'.} +\endsetslot + +\setslot{\uc{AE}{ae}} + \comment{The letter `\AE'. This is a single letter, and should not be + faked with `AE'.} +\endsetslot + +\setslot{\uc{Ccedilla}{ccedilla}} + \comment{The letter `\c C'.} +\endsetslot + +\setslot{\uctop{Egrave}{egrave}} + \comment{The letter `\` E'.} +\endsetslot + +\setslot{\uctop{Eacute}{eacute}} + \comment{The letter `\' E'.} +\endsetslot + +\setslot{\uctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ E'.} +\endsetslot + +\setslot{\uctop{Edieresis}{edieresis}} + \comment{The letter `\" E'.} +\endsetslot + +\setslot{\uctop{Igrave}{igrave}} + \comment{The letter `\` I'.} +\endsetslot + +\setslot{\uctop{Iacute}{iacute}} + \comment{The letter `\' I'.} +\endsetslot + +\setslot{\uctop{Icircumflex}{icircumflex}} + \comment{The letter `\^ I'.} +\endsetslot + +\setslot{\uctop{Idieresis}{idieresis}} + \comment{The letter `\" I'.} +\endsetslot + +\setslot{\uc{Eth}{eth}} + \comment{The uppercase Icelandic letter `Eth' similar to a `D' + with a horizontal bar through the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\uctop{Ntilde}{ntilde}} + \comment{The letter `\~ N'.} +\endsetslot + +\setslot{\uctop{Ograve}{ograve}} + \comment{The letter `\` O'.} +\endsetslot + +\setslot{\uctop{Oacute}{oacute}} + \comment{The letter `\' O'.} +\endsetslot + +\setslot{\uctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ O'.} +\endsetslot + +\setslot{\uctop{Otilde}{otilde}} + \comment{The letter `\~ O'.} +\endsetslot + +\setslot{\uctop{Odieresis}{odieresis}} + \comment{The letter `\" O'.} +\endsetslot + +\setslot{\uc{OE}{oe}} + \comment{The letter `\OE'. This is a single letter, and should not be + faked with `OE'.} +\endsetslot + +\setslot{\uc{Oslash}{oslash}} + \comment{The letter `\O'.} +\endsetslot + +\setslot{\uctop{Ugrave}{ugrave}} + \comment{The letter `\` U'.} +\endsetslot + +\setslot{\uctop{Uacute}{uacute}} + \comment{The letter `\' U'.} +\endsetslot + +\setslot{\uctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ U'.} +\endsetslot + +\setslot{\uctop{Udieresis}{udieresis}} + \comment{The letter `\" U'.} +\endsetslot + +\setslot{\uctop{Yacute}{yacute}} + \comment{The letter `\' Y'.} +\endsetslot + +\setslot{\uc{Thorn}{thorn}} + \comment{The Icelandic capital letter Thorn, similar to a `P' + with the bowl moved down. It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\uclig{SS}{germandbls}} + \comment{The ligature `SS', used to give an upper case `\ss'. + In a monowidth font it should be two letters wide.} +\endsetslot + +\setslot{\lctop{Agrave}{agrave}} + \comment{The letter `\` a'.} +\endsetslot + +\setslot{\lctop{Aacute}{aacute}} + \comment{The letter `\' a'.} +\endsetslot + +\setslot{\lctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ a'.} +\endsetslot + +\setslot{\lctop{Atilde}{atilde}} + \comment{The letter `\~ a'.} +\endsetslot + +\setslot{\lctop{Adieresis}{adieresis}} + \comment{The letter `\" a'.} +\endsetslot + +\setslot{\lctop{Aring}{aring}} + \comment{The letter `\r a'.} +\endsetslot + +\setslot{\lc{AE}{ae}} + \comment{The letter `\ae'. This is a single letter, and should not be + faked with `ae'.} +\endsetslot + +\setslot{\lc{Ccedilla}{ccedilla}} + \comment{The letter `\c c'.} +\endsetslot + +\setslot{\lctop{Egrave}{egrave}} + \comment{The letter `\` e'.} +\endsetslot + +\setslot{\lctop{Eacute}{eacute}} + \comment{The letter `\' e'.} +\endsetslot + +\setslot{\lctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ e'.} +\endsetslot + +\setslot{\lctop{Edieresis}{edieresis}} + \comment{The letter `\" e'.} +\endsetslot + +\setslot{\lctop{Igrave}{igrave}} + \comment{The letter `\`\i'.} +\endsetslot + +\setslot{\lctop{Iacute}{iacute}} + \comment{The letter `\'\i'.} +\endsetslot + +\setslot{\lctop{Icircumflex}{icircumflex}} + \comment{The letter `\^\i'.} +\endsetslot + +\setslot{\lctop{Idieresis}{idieresis}} + \comment{The letter `\"\i'.} +\endsetslot + +\setslot{\lc{Eth}{eth}} + \comment{The Icelandic lowercase letter `eth' similar to + a `$\partial$' with an oblique bar through the stem. + It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\lctop{Ntilde}{ntilde}} + \comment{The letter `\~ n'.} +\endsetslot + +\setslot{\lctop{Ograve}{ograve}} + \comment{The letter `\` o'.} +\endsetslot + +\setslot{\lctop{Oacute}{oacute}} + \comment{The letter `\' o'.} +\endsetslot + +\setslot{\lctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ o'.} +\endsetslot + +\setslot{\lctop{Otilde}{otilde}} + \comment{The letter `\~ o'.} +\endsetslot + +\setslot{\lctop{Odieresis}{odieresis}} + \comment{The letter `\" o'.} +\endsetslot + +\setslot{\lc{OE}{oe}} + \comment{The letter `\oe'. This is a single letter, and should not be + faked with `oe'.} +\endsetslot + +\setslot{\lc{Oslash}{oslash}} + \comment{The letter `\o'.} +\endsetslot + +\setslot{\lctop{Ugrave}{ugrave}} + \comment{The letter `\` u'.} +\endsetslot + +\setslot{\lctop{Uacute}{uacute}} + \comment{The letter `\' u'.} +\endsetslot + +\setslot{\lctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ u'.} +\endsetslot + +\setslot{\lctop{Udieresis}{udieresis}} + \comment{The letter `\" u'.} +\endsetslot + +\setslot{\lctop{Yacute}{yacute}} + \comment{The letter `\' y'.} +\endsetslot + +\setslot{\lc{Thorn}{thorn}} + \comment{The Icelandic lowercase letter `thorn', similar to a `p' + with an ascender rising from the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\lc{SS}{germandbls}} + \comment{The letter `\ss'.} +\endsetslot + +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</t1-dotsup> +% \fi +% +% +% \subsubsection{t1-dotsuperior.etx}\label{subsubsec:t1-dotsuperior} +% +% \iffalse +%<*t1-dotsuperior> +% \fi +% \begin{encoding}{t1-dotsuperior.etx} +% \begin{macrocode} +%% +%% - The original notices at the top of that file concerning authors, +%% maintenance etc. are replaced by this notice. +%% - The file is renamed. +%% - The encoding name is modified. +%% - The file is modified to accommodate differences in glyph names. +%% - The file is modified for use in encoding superiors. +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\relax +\encoding + +\needsfontinstversion{1.910} + +\setcommand\lc#1#2{#2.superior} +\setcommand\uc#1#2{#1.superior} +\setcommand\lctop#1#2{#2.superior} +\setcommand\uctop#1#2{#1.superior} +\setcommand\lclig#1#2{#2.superior} +\ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setcommand\uclig#1#2{#1spaced} + \comment{Here we set \verb|\uclig#1#2| to \verb|#1spaced|, but + you can't see it as \verb|\setcommand| commands are invisible in + the typeset output.} + \Fi +\Fi +\setcommand\uclig#1#2{#1.superior} +\setcommand\digit#1{#1.superior} + +\ifisint{monowidth}\then + \setint{ligaturing}{0} +\Else + % The following empty line is *important* to get the formatting + % right here (sigh)! (Remember that it is a \par token.) + + \ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setint{ligaturing}{0} + \Fi + \Fi + \setint{ligaturing}{1} +\Fi + +\setint{italicslant}{0} +\setint{quad}{1000} +\setint{baselineskip}{1200} + +\ifisglyph{x}\then + \setint{xheight}{\height{x}} +\Else + \setint{xheight}{500} +\Fi + +\ifisglyph{space}\then + \setint{interword}{\width{space}} +\Else\ifisglyph{i}\then + \setint{interword}{\width{i}} +\Else + \setint{interword}{333} +\Fi\Fi + +\ifisint{monowidth}\then + \setint{stretchword}{0} + \setint{shrinkword}{0} + \setint{extraspace}{\int{interword}} +\Else + \setint{stretchword}{\scale{\int{interword}}{600}} + \setint{shrinkword}{\scale{\int{interword}}{240}} + \setint{extraspace}{\scale{\int{interword}}{240}} +\Fi + +\ifisglyph{X}\then + \setint{capheight}{\height{X}} +\Else + \setint{capheight}{750} +\Fi + +\ifisglyph{d}\then + \setint{ascender}{\height{d}} +\Else\ifisint{capheight}\then + \setint{ascender}{\int{capheight}} +\Else + \setint{ascender}{750} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{acccapheight}{\height{Aring}} +\Else + \setint{acccapheight}{999} +\Fi + +\ifisint{descender_neg}\then + \setint{descender}{\neg{\int{descender_neg}}} +\Else\ifisglyph{p}\then + \setint{descender}{\depth{p}} +\Else + \setint{descender}{250} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{maxheight}{\height{Aring}} +\Else + \setint{maxheight}{1000} +\Fi + +\ifisint{maxdepth_neg}\then + \setint{maxdepth}{\neg{\int{maxdepth_neg}}} +\Else\ifisglyph{j}\then + \setint{maxdepth}{\depth{j}} +\Else + \setint{maxdepth}{250} +\Fi\Fi + +\ifisglyph{six}\then + \setint{digitwidth}{\width{six}} +\Else + \setint{digitwidth}{500} +\Fi + +\setint{capstem}{0} % not in AFM files + +\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 + +\ifnumber{\int{ligaturing}}<{0}\then + \comment{In this case, the codingscheme can be different from the + default, and therefore we refrain from setting it.} +\Else + \setstr{codingscheme}{EXTENDED TEX FONT ENCODING - DOTSUPERIOR} +\Fi + +\setslot{\lc{Grave}{grave}} + \comment{The grave accent `\`{}'.} +\endsetslot + +\setslot{\lc{Acute}{acute}} + \comment{The acute accent `\'{}'.} +\endsetslot + +\setslot{\lc{Circumflex}{circumflex}} + \comment{The circumflex accent `\^{}'.} +\endsetslot + +\setslot{\lc{Tilde}{tilde}} + \comment{The tilde accent `\~{}'.} +\endsetslot + +\setslot{\lc{Dieresis}{dieresis}} + \comment{The umlaut or dieresis accent `\"{}'.} +\endsetslot + +\setslot{\lc{Hungarumlaut}{hungarumlaut}} + \comment{The long Hungarian umlaut `\H{}'.} +\endsetslot + +\setslot{\lc{Ring}{ring}} + \comment{The ring accent `\r{}'.} +\endsetslot + +\setslot{\lc{Caron}{caron}} + \comment{The caron or h\'a\v cek accent `\v{}'.} +\endsetslot + +\setslot{\lc{Breve}{breve}} + \comment{The breve accent `\u{}'.} +\endsetslot + +\setslot{\lc{Macron}{macron}} + \comment{The macron accent `\={}'.} +\endsetslot + +\setslot{\lc{Dotaccent}{dotaccent}} + \comment{The dot accent `\.{}'.} +\endsetslot + +\setslot{\lc{Cedilla}{cedilla}} + \comment{The cedilla accent `\c {}'.} +\endsetslot + +\setslot{\lc{Ogonek}{ogonek}} + \comment{The ogonek accent `\k {}'.} +\endsetslot + +\setslot{quotesinglbase.superior} + \comment{A German single quote mark `\quotesinglbase' similar to a comma, + but with different sidebearings.} +\endsetslot + +\setslot{guilsinglleft.superior} + \comment{A French single opening quote mark `\guilsinglleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guilsinglright.superior} + \comment{A French single closing quote mark `\guilsinglright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{quotedblleft.superior} + \comment{The English opening quote mark `\,\textquotedblleft\,'.} +\endsetslot + +\setslot{quotedblright.superior} + \comment{The English closing quote mark `\,\textquotedblright\,'.} +\endsetslot + +\setslot{quotedblbase.superior} + \comment{A German double quote mark `\quotedblbase' similar to two commas, + but with tighter letterspacing and different sidebearings.} +\endsetslot + +\setslot{guillemotleft.superior} + \comment{A French double opening quote mark `\guillemotleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guillemotright.superior} + \comment{A French closing opening quote mark `\guillemotright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{endash.superior} + \ligature{LIG}{hyphen.superior}{emdash.superior} + \comment{The number range dash `1--9'. + This is called `rangedash' by fontinst's t1.etx, but it needs to be + called `endash' to work right. + The `\textendash'. In a monowidth font, this might be set as + `\texttt{1{-}9}'.} +\endsetslot + +\setslot{emdash.superior} + \comment{The punctuation dash `Oh---boy.' + This is calle `punctdash' by fontinst's t1.etx, but needs to be called + `emdash' to work right. + The `\textemdash'. In a monowidth font, this might be set as + `\texttt{Oh{-}{-}boy.}'} +\endsetslot + +\setslot{compwordmark.superior} + \comment{An invisible glyph, with zero width and depth, but the + height of lowercase letters without ascenders. + It is used to stop ligaturing in words like `shelf{}ful'.} +\endsetslot + +\setslot{perthousandzero.superior} + \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.} +\endsetslot + +\setslot{\lc{dotlessI}{dotlessi}} + \comment{A dotless i `\i', used to produce accented letters such as + `\=\i'.} +\endsetslot + +\setslot{\lc{dotlessJ}{dotlessj}} + \comment{A dotless j `\j', used to produce accented letters such as + `\=\j'. Most non-\TeX\ fonts do not have this glyph.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{5}\Else + +\setslot{\lclig{FF}{ff}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FFI}{ffi}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FFL}{ffl}} + \Fi + \comment{The `ff' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FI}{fi}} + \comment{The `fi' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FL}{fl}} + \comment{The `fl' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFI}{ffi}} + \comment{The `ffi' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFL}{ffl}} + \comment{The `ffl' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\Fi + +\setslot{visiblespace.superior} + \comment{A visible space glyph `\textvisiblespace'.} +\endsetslot + +\setslot{exclam.superior} + \ligature{LIG}{quoteleft.superior}{exclamdown.superior} + \comment{The exclamation mark `!'.} +\endsetslot + +\setslot{quotedbl.superior} + \comment{The `neutral' double quotation mark `\,\textquotedbl\,', + included for use in monowidth fonts, or for setting computer + programs. Note that the inclusion of this glyph in this slot + means that \TeX\ documents which used `{\tt\char`\"}' as an + input character will no longer work.} +\endsetslot + +\setslot{numbersign.superior} + \comment{The hash sign `\#'.} +\endsetslot + +\setslot{dollar.superior} + \comment{The dollar sign `\$'.} +\endsetslot + +\setslot{percent.superior} + \comment{The percent sign `\%'.} +\endsetslot + +\setslot{ampersand.superior} + \comment{The ampersand sign `\&'.} +\endsetslot + +\setslot{quoteright.superior} + \ligature{LIG}{quoteright.superior}{quotedblright.superior} + \comment{The English closing single quote mark `\,\textquoteright\,'.} +\endsetslot + +\setslot{parenleft.superior} + \comment{The opening parenthesis `('.} +\endsetslot + +\setslot{parenright.superior} + \comment{The closing parenthesis `)'.} +\endsetslot + +\setslot{asterisk.superior} + \comment{The raised asterisk `*'.} +\endsetslot + +\setslot{plus.superior} + \comment{The addition sign `+'.} +\endsetslot + +\setslot{comma.superior} + \ligature{LIG}{comma.superior}{quotedblbase.superior} + \comment{The comma `,'.} +\endsetslot + +\setslot{hyphen.superior} + \ligature{LIG}{hyphen.superior}{endash.superior} + \ligature{LIG}{hyphenchar.superior}{hyphenchar.superior} + \comment{The hyphen `-'.} +\endsetslot + +\setslot{period.superior} + \comment{The period `.'.} +\endsetslot + +\setslot{slash.superior} + \comment{The forward oblique `/'.} +\endsetslot + +\setslot{\digit{zero}} + \comment{The number `0'. This (and all the other numerals) may be + old style or ranging digits.} +\endsetslot + +\setslot{\digit{one}} + \comment{The number `1'.} +\endsetslot + +\setslot{\digit{two}} + \comment{The number `2'.} +\endsetslot + +\setslot{\digit{three}} + \comment{The number `3'.} +\endsetslot + +\setslot{\digit{four}} + \comment{The number `4'.} +\endsetslot + +\setslot{\digit{five}} + \comment{The number `5'.} +\endsetslot + +\setslot{\digit{six}} + \comment{The number `6'.} +\endsetslot + +\setslot{\digit{seven}} + \comment{The number `7'.} +\endsetslot + +\setslot{\digit{eight}} + \comment{The number `8'.} +\endsetslot + +\setslot{\digit{nine}} + \comment{The number `9'.} +\endsetslot + +\setslot{colon.superior} + \comment{The colon punctuation mark `:'.} +\endsetslot + +\setslot{semicolon.superior} + \comment{The semi-colon punctuation mark `;'.} +\endsetslot + +\setslot{less.superior} + \ligature{LIG}{less.superior}{guillemotleft.superior} + \comment{The less-than sign `\textless'.} +\endsetslot + +\setslot{equal.superior} + \comment{The equals sign `='.} +\endsetslot + +\setslot{greater.superior} + \ligature{LIG}{greater.superior}{guillemotright.superior} + \comment{The greater-than sign `\textgreater'.} +\endsetslot + +\setslot{question.superior} + \ligature{LIG}{quoteleft.superior}{questiondown.superior} + \comment{The question mark `?'.} +\endsetslot + +\setslot{at.superior} + \comment{The at sign `@'.} +\endsetslot + +\setslot{\uc{A}{a}} + \comment{The letter `{A}'.} +\endsetslot + +\setslot{\uc{B}{b}} + \comment{The letter `{B}'.} +\endsetslot + +\setslot{\uc{C}{c}} + \comment{The letter `{C}'.} +\endsetslot + +\setslot{\uc{D}{d}} + \comment{The letter `{D}'.} +\endsetslot + +\setslot{\uc{E}{e}} + \comment{The letter `{E}'.} +\endsetslot + +\setslot{\uc{F}{f}} + \comment{The letter `{F}'.} +\endsetslot + +\setslot{\uc{G}{g}} + \comment{The letter `{G}'.} +\endsetslot + +\setslot{\uc{H}{h}} + \comment{The letter `{H}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + +\setslot{\uc{I}{i}} + \comment{The letter `{I}'.} +\endsetslot + +\Fi + +\setslot{\uc{J}{j}} + \comment{The letter `{J}'.} +\endsetslot + +\setslot{\uc{K}{k}} + \comment{The letter `{K}'.} +\endsetslot + +\setslot{\uc{L}{l}} + \comment{The letter `{L}'.} +\endsetslot + +\setslot{\uc{M}{m}} + \comment{The letter `{M}'.} +\endsetslot + +\setslot{\uc{N}{n}} + \comment{The letter `{N}'.} +\endsetslot + +\setslot{\uc{O}{o}} + \comment{The letter `{O}'.} +\endsetslot + +\setslot{\uc{P}{p}} + \comment{The letter `{P}'.} +\endsetslot + +\setslot{\uc{Q}{q}} + \comment{The letter `{Q}'.} +\endsetslot + +\setslot{\uc{R}{r}} + \comment{The letter `{R}'.} +\endsetslot + +\setslot{\uc{S}{s}} + \comment{The letter `{S}'.} +\endsetslot + +\setslot{\uc{T}{t}} + \comment{The letter `{T}'.} +\endsetslot + +\setslot{\uc{U}{u}} + \comment{The letter `{U}'.} +\endsetslot + +\setslot{\uc{V}{v}} + \comment{The letter `{V}'.} +\endsetslot + +\setslot{\uc{W}{w}} + \comment{The letter `{W}'.} +\endsetslot + +\setslot{\uc{X}{x}} + \comment{The letter `{X}'.} +\endsetslot + +\setslot{\uc{Y}{y}} + \comment{The letter `{Y}'.} +\endsetslot + +\setslot{\uc{Z}{z}} + \comment{The letter `{Z}'.} +\endsetslot + +\setslot{bracketleft.superior} + \comment{The opening square bracket `['.} +\endsetslot + +\setslot{backslash.superior} + \comment{The backwards oblique `\textbackslash'.} +\endsetslot + +\setslot{bracketright.superior} + \comment{The closing square bracket `]'.} +\endsetslot + +\setslot{asciicircum.superior} + \comment{The ASCII upward-pointing arrow head `\textasciicircum'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{underscore.superior} + \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.superior} + \ligature{LIG}{quoteleft.superior}{quotedblleft.superior} + \comment{The English opening single quote mark `\,\textquoteleft\,'.} +\endsetslot + +\setslot{\lc{A}{a}} + \comment{The letter `{a}'.} +\endsetslot + +\setslot{\lc{B}{b}} + \comment{The letter `{b}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{C}{c}} + \comment{The letter `{c}'.} + \endsetslot + +\Fi + +\setslot{\lc{D}{d}} + \comment{The letter `{d}'.} +\endsetslot + +\setslot{\lc{E}{e}} + \comment{The letter `{e}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{F}{f}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FI}{fi}} + \ligature{LIG}{\lc{F}{f}}{\lclig{FF}{ff}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FL}{fl}} + \Fi + \comment{The letter `{f}'.} + \endsetslot + +\Fi + +\setslot{\lc{G}{g}} + \comment{The letter `{g}'.} +\endsetslot + +\setslot{\lc{H}{h}} + \comment{The letter `{h}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{I}{i}} + \comment{The letter `{i}'.} + \endsetslot + +\Fi + +\setslot{\lc{J}{j}} + \comment{The letter `{j}'.} +\endsetslot + +\setslot{\lc{K}{k}} + \comment{The letter `{k}'.} +\endsetslot + +\setslot{\lc{L}{l}} + \comment{The letter `{l}'.} +\endsetslot + +\setslot{\lc{M}{m}} + \comment{The letter `{m}'.} +\endsetslot + +\setslot{\lc{N}{n}} + \comment{The letter `{n}'.} +\endsetslot + +\setslot{\lc{O}{o}} + \comment{The letter `{o}'.} +\endsetslot + +\setslot{\lc{P}{p}} + \comment{The letter `{p}'.} +\endsetslot + +\setslot{\lc{Q}{q}} + \comment{The letter `{q}'.} +\endsetslot + +\setslot{\lc{R}{r}} + \comment{The letter `{r}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{S}{s}} + \comment{The letter `{s}'.} + \endsetslot + +\Fi + +\setslot{\lc{T}{t}} + \comment{The letter `{t}'.} +\endsetslot + +\setslot{\lc{U}{u}} + \comment{The letter `{u}'.} +\endsetslot + +\setslot{\lc{V}{v}} + \comment{The letter `{v}'.} +\endsetslot + +\setslot{\lc{W}{w}} + \comment{The letter `{w}'.} +\endsetslot + +\setslot{\lc{X}{x}} + \comment{The letter `{x}'.} +\endsetslot + +\setslot{\lc{Y}{y}} + \comment{The letter `{y}'.} +\endsetslot + +\setslot{\lc{Z}{z}} + \comment{The letter `{z}'.} +\endsetslot + +\setslot{braceleft.superior} + \comment{The opening curly brace `\textbraceleft'.} +\endsetslot + +\setslot{bar.superior} + \comment{The ASCII vertical bar `\textbar'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{braceright.superior} + \comment{The closing curly brace `\textbraceright'.} +\endsetslot + +\setslot{asciitilde.superior} + \comment{The ASCII tilde `\textasciitilde'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{hyphenchar.superior} + \comment{The glyph used for hyphenation in this font, which will + almost always be the same as `hyphen'.} +\endsetslot + +\setslot{\uctop{Abreve}{abreve}} + \comment{The letter `\u A'.} +\endsetslot + +\setslot{\uc{Aogonek}{aogonek}} + \comment{The letter `\k A'.} +\endsetslot + +\setslot{\uctop{Cacute}{cacute}} + \comment{The letter `\' C'.} +\endsetslot + +\setslot{\uctop{Ccaron}{ccaron}} + \comment{The letter `\v C'.} +\endsetslot + +\setslot{\uctop{Dcaron}{dcaron}} + \comment{The letter `\v D'.} +\endsetslot + +\setslot{\uctop{Ecaron}{ecaron}} + \comment{The letter `\v E'.} +\endsetslot + +\setslot{\uc{Eogonek}{eogonek}} + \comment{The letter `\k E'.} +\endsetslot + +\setslot{\uctop{Gbreve}{gbreve}} + \comment{The letter `\u G'.} +\endsetslot + +\setslot{\uctop{Lacute}{lacute}} + \comment{The letter `\' L'.} +\endsetslot + +\setslot{\uc{Lcaron}{lcaron}} + \comment{The letter `\v L'.} +\endsetslot + +\setslot{\uc{Lslash}{lslash}} + \comment{The letter `\L'.} +\endsetslot + +\setslot{\uctop{Nacute}{nacute}} + \comment{The letter `\' N'.} +\endsetslot + +\setslot{\uctop{Ncaron}{ncaron}} + \comment{The letter `\v N'.} +\endsetslot + +\setslot{\uc{Eng}{eng}} + \comment{The Sami letter `\NG'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\uctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H O'.} +\endsetslot + +\setslot{\uctop{Racute}{racute}} + \comment{The letter `\' R'.} +\endsetslot + +\setslot{\uctop{Rcaron}{rcaron}} + \comment{The letter `\v R'.} +\endsetslot + +\setslot{\uctop{Sacute}{sacute}} + \comment{The letter `\' S'.} +\endsetslot + +\setslot{\uctop{Scaron}{scaron}} + \comment{The letter `\v S'.} +\endsetslot + +\setslot{\uc{Scedilla}{scedilla}} + \comment{The letter `\c S'.} +\endsetslot + +\setslot{\uctop{Tcaron}{tcaron}} + \comment{The letter `\v T'.} +\endsetslot + +\setslot{\uc{Tcedilla}{tcedilla}} + \comment{The letter `\c T'.} +\endsetslot + +\setslot{\uctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H U'.} +\endsetslot + +\setslot{\uctop{Uring}{uring}} + \comment{The letter `\r U'.} +\endsetslot + +\setslot{\uctop{Ydieresis}{ydieresis}} + \comment{The letter `\" Y'.} +\endsetslot + +\setslot{\uctop{Zacute}{zacute}} + \comment{The letter `\' Z'.} +\endsetslot + +\setslot{\uctop{Zcaron}{zcaron}} + \comment{The letter `\v Z'.} +\endsetslot + +\setslot{\uctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. Z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\uclig{IJ}{ij}} + \comment{The letter `IJ'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{\uctop{Idotaccent}{idotaccent}} + \comment{The letter `\. I'.} +\endsetslot + +\setslot{\lc{Dbar}{dbar}} + \comment{The letter `\dj'.} +\endsetslot + +\setslot{section.superior} + \comment{The section mark `\textsection'.} +\endsetslot + +\setslot{\lctop{Abreve}{abreve}} + \comment{The letter `\u a'.} +\endsetslot + +\setslot{\lc{Aogonek}{aogonek}} + \comment{The letter `\k a'.} +\endsetslot + +\setslot{\lctop{Cacute}{cacute}} + \comment{The letter `\' c'.} +\endsetslot + +\setslot{\lctop{Ccaron}{ccaron}} + \comment{The letter `\v c'.} +\endsetslot + +\setslot{\lctop{Dcaron}{dcaron}} + \comment{The letter `\v d'.} +\endsetslot + +\setslot{\lctop{Ecaron}{ecaron}} + \comment{The letter `\v e'.} +\endsetslot + +\setslot{\lc{Eogonek}{eogonek}} + \comment{The letter `\k e'.} +\endsetslot + +\setslot{\lctop{Gbreve}{gbreve}} + \comment{The letter `\u g'.} +\endsetslot + +\setslot{\lctop{Lacute}{lacute}} + \comment{The letter `\' l'.} +\endsetslot + +\setslot{\lc{Lcaron}{lcaron}} + \comment{The letter `\v l'.} +\endsetslot + +\setslot{\lc{Lslash}{lslash}} + \comment{The letter `\l'.} +\endsetslot + +\setslot{\lctop{Nacute}{nacute}} + \comment{The letter `\' n'.} +\endsetslot + +\setslot{\lctop{Ncaron}{ncaron}} + \comment{The letter `\v n'.} +\endsetslot + +\setslot{\lc{Eng}{eng}} + \comment{The Sami letter `\ng'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as it is in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\lctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H o'.} +\endsetslot + +\setslot{\lctop{Racute}{racute}} + \comment{The letter `\' r'.} +\endsetslot + +\setslot{\lctop{Rcaron}{rcaron}} + \comment{The letter `\v r'.} +\endsetslot + +\setslot{\lctop{Sacute}{sacute}} + \comment{The letter `\' s'.} +\endsetslot + +\setslot{\lctop{Scaron}{scaron}} + \comment{The letter `\v s'.} +\endsetslot + +\setslot{\lc{Scedilla}{scedilla}} + \comment{The letter `\c s'.} +\endsetslot + +\setslot{\lctop{Tcaron}{tcaron}} + \comment{The letter `\v t'.} +\endsetslot + +\setslot{\lc{Tcedilla}{tcedilla}} + \comment{The letter `\c t'.} +\endsetslot + +\setslot{\lctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H u'.} +\endsetslot + +\setslot{\lctop{Uring}{uring}} + \comment{The letter `\r u'.} +\endsetslot + +\setslot{\lctop{Ydieresis}{ydieresis}} + \comment{The letter `\" y'.} +\endsetslot + +\setslot{\lctop{Zacute}{zacute}} + \comment{The letter `\' z'.} +\endsetslot + +\setslot{\lctop{Zcaron}{zcaron}} + \comment{The letter `\v z'.} +\endsetslot + +\setslot{\lctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\lclig{IJ}{ij}} + \comment{The letter `ij'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{exclamdown.superior} + \comment{The Spanish punctuation mark `!`'.} +\endsetslot + +\setslot{questiondown.superior} + \comment{The Spanish punctuation mark `?`'.} +\endsetslot + +\setslot{sterling.superior} + \comment{The British currency mark `\textsterling'.} +\endsetslot + +\setslot{\uctop{Agrave}{agrave}} + \comment{The letter `\` A'.} +\endsetslot + +\setslot{\uctop{Aacute}{aacute}} + \comment{The letter `\' A'.} +\endsetslot + +\setslot{\uctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ A'.} +\endsetslot + +\setslot{\uctop{Atilde}{atilde}} + \comment{The letter `\~ A'.} +\endsetslot + +\setslot{\uctop{Adieresis}{adieresis}} + \comment{The letter `\" A'.} +\endsetslot + +\setslot{\uctop{Aring}{aring}} + \comment{The letter `\r A'.} +\endsetslot + +\setslot{\uc{AE}{ae}} + \comment{The letter `\AE'. This is a single letter, and should not be + faked with `AE'.} +\endsetslot + +\setslot{\uc{Ccedilla}{ccedilla}} + \comment{The letter `\c C'.} +\endsetslot + +\setslot{\uctop{Egrave}{egrave}} + \comment{The letter `\` E'.} +\endsetslot + +\setslot{\uctop{Eacute}{eacute}} + \comment{The letter `\' E'.} +\endsetslot + +\setslot{\uctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ E'.} +\endsetslot + +\setslot{\uctop{Edieresis}{edieresis}} + \comment{The letter `\" E'.} +\endsetslot + +\setslot{\uctop{Igrave}{igrave}} + \comment{The letter `\` I'.} +\endsetslot + +\setslot{\uctop{Iacute}{iacute}} + \comment{The letter `\' I'.} +\endsetslot + +\setslot{\uctop{Icircumflex}{icircumflex}} + \comment{The letter `\^ I'.} +\endsetslot + +\setslot{\uctop{Idieresis}{idieresis}} + \comment{The letter `\" I'.} +\endsetslot + +\setslot{\uc{Eth}{eth}} + \comment{The uppercase Icelandic letter `Eth' similar to a `D' + with a horizontal bar through the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\uctop{Ntilde}{ntilde}} + \comment{The letter `\~ N'.} +\endsetslot + +\setslot{\uctop{Ograve}{ograve}} + \comment{The letter `\` O'.} +\endsetslot + +\setslot{\uctop{Oacute}{oacute}} + \comment{The letter `\' O'.} +\endsetslot + +\setslot{\uctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ O'.} +\endsetslot + +\setslot{\uctop{Otilde}{otilde}} + \comment{The letter `\~ O'.} +\endsetslot + +\setslot{\uctop{Odieresis}{odieresis}} + \comment{The letter `\" O'.} +\endsetslot + +\setslot{\uc{OE}{oe}} + \comment{The letter `\OE'. This is a single letter, and should not be + faked with `OE'.} +\endsetslot + +\setslot{\uc{Oslash}{oslash}} + \comment{The letter `\O'.} +\endsetslot + +\setslot{\uctop{Ugrave}{ugrave}} + \comment{The letter `\` U'.} +\endsetslot + +\setslot{\uctop{Uacute}{uacute}} + \comment{The letter `\' U'.} +\endsetslot + +\setslot{\uctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ U'.} +\endsetslot + +\setslot{\uctop{Udieresis}{udieresis}} + \comment{The letter `\" U'.} +\endsetslot + +\setslot{\uctop{Yacute}{yacute}} + \comment{The letter `\' Y'.} +\endsetslot + +\setslot{\uc{Thorn}{thorn}} + \comment{The Icelandic capital letter Thorn, similar to a `P' + with the bowl moved down. It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\uclig{SS}{germandbls}} + \comment{The ligature `SS', used to give an upper case `\ss'. + In a monowidth font it should be two letters wide.} +\endsetslot + +\setslot{\lctop{Agrave}{agrave}} + \comment{The letter `\` a'.} +\endsetslot + +\setslot{\lctop{Aacute}{aacute}} + \comment{The letter `\' a'.} +\endsetslot + +\setslot{\lctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ a'.} +\endsetslot + +\setslot{\lctop{Atilde}{atilde}} + \comment{The letter `\~ a'.} +\endsetslot + +\setslot{\lctop{Adieresis}{adieresis}} + \comment{The letter `\" a'.} +\endsetslot + +\setslot{\lctop{Aring}{aring}} + \comment{The letter `\r a'.} +\endsetslot + +\setslot{\lc{AE}{ae}} + \comment{The letter `\ae'. This is a single letter, and should not be + faked with `ae'.} +\endsetslot + +\setslot{\lc{Ccedilla}{ccedilla}} + \comment{The letter `\c c'.} +\endsetslot + +\setslot{\lctop{Egrave}{egrave}} + \comment{The letter `\` e'.} +\endsetslot + +\setslot{\lctop{Eacute}{eacute}} + \comment{The letter `\' e'.} +\endsetslot + +\setslot{\lctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ e'.} +\endsetslot + +\setslot{\lctop{Edieresis}{edieresis}} + \comment{The letter `\" e'.} +\endsetslot + +\setslot{\lctop{Igrave}{igrave}} + \comment{The letter `\`\i'.} +\endsetslot + +\setslot{\lctop{Iacute}{iacute}} + \comment{The letter `\'\i'.} +\endsetslot + +\setslot{\lctop{Icircumflex}{icircumflex}} + \comment{The letter `\^\i'.} +\endsetslot + +\setslot{\lctop{Idieresis}{idieresis}} + \comment{The letter `\"\i'.} +\endsetslot + +\setslot{\lc{Eth}{eth}} + \comment{The Icelandic lowercase letter `eth' similar to + a `$\partial$' with an oblique bar through the stem. + It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\lctop{Ntilde}{ntilde}} + \comment{The letter `\~ n'.} +\endsetslot + +\setslot{\lctop{Ograve}{ograve}} + \comment{The letter `\` o'.} +\endsetslot + +\setslot{\lctop{Oacute}{oacute}} + \comment{The letter `\' o'.} +\endsetslot + +\setslot{\lctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ o'.} +\endsetslot + +\setslot{\lctop{Otilde}{otilde}} + \comment{The letter `\~ o'.} +\endsetslot + +\setslot{\lctop{Odieresis}{odieresis}} + \comment{The letter `\" o'.} +\endsetslot + +\setslot{\lc{OE}{oe}} + \comment{The letter `\oe'. This is a single letter, and should not be + faked with `oe'.} +\endsetslot + +\setslot{\lc{Oslash}{oslash}} + \comment{The letter `\o'.} +\endsetslot + +\setslot{\lctop{Ugrave}{ugrave}} + \comment{The letter `\` u'.} +\endsetslot + +\setslot{\lctop{Uacute}{uacute}} + \comment{The letter `\' u'.} +\endsetslot + +\setslot{\lctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ u'.} +\endsetslot + +\setslot{\lctop{Udieresis}{udieresis}} + \comment{The letter `\" u'.} +\endsetslot + +\setslot{\lctop{Yacute}{yacute}} + \comment{The letter `\' y'.} +\endsetslot + +\setslot{\lc{Thorn}{thorn}} + \comment{The Icelandic lowercase letter `thorn', similar to a `p' + with an ascender rising from the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\lc{SS}{germandbls}} + \comment{The letter `\ss'.} +\endsetslot + +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</t1-dotsuperior> +% \fi +% +% +% \subsubsection{t1-f\_f.etx}\label{subsubsec:t1-f-f} +% +% \iffalse +%<*t1-f-f> +% \fi +% \begin{encoding}{t1-f_f.etx} +% \begin{macrocode} +%% +%% - The commentary in the original is deleted in this version. For +%% information about the T1 etc., typeset the original t1.etx +%% included with fontinst. +%% - Slots are altered to accommodate characters which are named +%% differently. For example, this encoding uses "endash" and "emdash" +%% whereas t1.etx called for "rangedash" and "punctdash". +%% - The original notices at the top of that file concerning authors, +%% maintenance etc. are replaced by this notice. +%% - The file is renamed. +%% - The encoding name is modified. +%% - f_f, f_f_i and f_f_l replace ff, ffi and ffl. +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\relax +\encoding + +\needsfontinstversion{1.910} + +\setcommand\lc#1#2{#2} +\setcommand\uc#1#2{#1} +\setcommand\lctop#1#2{#2} +\setcommand\uctop#1#2{#1} +\setcommand\lclig#1#2{#2} +\ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setcommand\uclig#1#2{#1spaced} + \comment{Here we set \verb|\uclig#1#2| to \verb|#1spaced|, but + you can't see it as \verb|\setcommand| commands are invisible in + the typeset output.} + \Fi +\Fi +\setcommand\uclig#1#2{#1} +\setcommand\digit#1{#1} + +\ifisint{monowidth}\then + \setint{ligaturing}{0} +\Else + % The following empty line is *important* to get the formatting + % right here (sigh)! (Remember that it is a \par token.) + + \ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setint{ligaturing}{0} + \Fi + \Fi + \setint{ligaturing}{1} +\Fi + +\setint{italicslant}{0} +\setint{quad}{1000} +\setint{baselineskip}{1200} + +\ifisglyph{x}\then + \setint{xheight}{\height{x}} +\Else + \setint{xheight}{500} +\Fi + +\ifisglyph{space}\then + \setint{interword}{\width{space}} +\Else\ifisglyph{i}\then + \setint{interword}{\width{i}} +\Else + \setint{interword}{333} +\Fi\Fi + +\ifisint{monowidth}\then + \setint{stretchword}{0} + \setint{shrinkword}{0} + \setint{extraspace}{\int{interword}} +\Else + \setint{stretchword}{\scale{\int{interword}}{600}} + \setint{shrinkword}{\scale{\int{interword}}{240}} + \setint{extraspace}{\scale{\int{interword}}{240}} +\Fi + +\ifisglyph{X}\then + \setint{capheight}{\height{X}} +\Else + \setint{capheight}{750} +\Fi + +\ifisglyph{d}\then + \setint{ascender}{\height{d}} +\Else\ifisint{capheight}\then + \setint{ascender}{\int{capheight}} +\Else + \setint{ascender}{750} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{acccapheight}{\height{Aring}} +\Else + \setint{acccapheight}{999} +\Fi + +\ifisint{descender_neg}\then + \setint{descender}{\neg{\int{descender_neg}}} +\Else\ifisglyph{p}\then + \setint{descender}{\depth{p}} +\Else + \setint{descender}{250} +\Fi\Fi + +\ifisglyph{Aring}\then + \setint{maxheight}{\height{Aring}} +\Else + \setint{maxheight}{1000} +\Fi + +\ifisint{maxdepth_neg}\then + \setint{maxdepth}{\neg{\int{maxdepth_neg}}} +\Else\ifisglyph{j}\then + \setint{maxdepth}{\depth{j}} +\Else + \setint{maxdepth}{250} +\Fi\Fi + +\ifisglyph{six}\then + \setint{digitwidth}{\width{six}} +\Else + \setint{digitwidth}{500} +\Fi + +\setint{capstem}{0} % not in AFM files + +\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 + +\ifnumber{\int{ligaturing}}<{0}\then + \comment{In this case, the codingscheme can be different from the + default, and therefore we refrain from setting it.} +\Else + \setstr{codingscheme}{EXTENDED TEX ENC - F_F} +\Fi + +\setslot{\lc{Grave}{grave}} + \comment{The grave accent `\`{}'.} +\endsetslot + +\setslot{\lc{Acute}{acute}} + \comment{The acute accent `\'{}'.} +\endsetslot + +\setslot{\lc{Circumflex}{circumflex}} + \comment{The circumflex accent `\^{}'.} +\endsetslot + +\setslot{\lc{Tilde}{tilde}} + \comment{The tilde accent `\~{}'.} +\endsetslot + +\setslot{\lc{Dieresis}{dieresis}} + \comment{The umlaut or dieresis accent `\"{}'.} +\endsetslot + +\setslot{\lc{Hungarumlaut}{hungarumlaut}} + \comment{The long Hungarian umlaut `\H{}'.} +\endsetslot + +\setslot{\lc{Ring}{ring}} + \comment{The ring accent `\r{}'.} +\endsetslot + +\setslot{\lc{Caron}{caron}} + \comment{The caron or h\'a\v cek accent `\v{}'.} +\endsetslot + +\setslot{\lc{Breve}{breve}} + \comment{The breve accent `\u{}'.} +\endsetslot + +\setslot{\lc{Macron}{macron}} + \comment{The macron accent `\={}'.} +\endsetslot + +\setslot{\lc{Dotaccent}{dotaccent}} + \comment{The dot accent `\.{}'.} +\endsetslot + +\setslot{\lc{Cedilla}{cedilla}} + \comment{The cedilla accent `\c {}'.} +\endsetslot + +\setslot{\lc{Ogonek}{ogonek}} + \comment{The ogonek accent `\k {}'.} +\endsetslot + +\setslot{quotesinglbase} + \comment{A German single quote mark `\quotesinglbase' similar to a comma, + but with different sidebearings.} +\endsetslot + +\setslot{guilsinglleft} + \comment{A French single opening quote mark `\guilsinglleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guilsinglright} + \comment{A French single closing quote mark `\guilsinglright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{quotedblleft} + \comment{The English opening quote mark `\,\textquotedblleft\,'.} +\endsetslot + +\setslot{quotedblright} + \comment{The English closing quote mark `\,\textquotedblright\,'.} +\endsetslot + +\setslot{quotedblbase} + \comment{A German double quote mark `\quotedblbase' similar to two commas, + but with tighter letterspacing and different sidebearings.} +\endsetslot + +\setslot{guillemotleft} + \comment{A French double opening quote mark `\guillemotleft', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{guillemotright} + \comment{A French closing opening quote mark `\guillemotright', + unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{endash} + \ligature{LIG}{hyphen}{emdash} + \comment{The number range dash `1--9'. + This is called `rangedash' by fontinst's t1.etx, but it needs to be + called `endash' to work right. + The `\textendash'. In a monowidth font, this might be set as + `\texttt{1{-}9}'.} +\endsetslot + +\setslot{emdash} + \comment{The punctuation dash `Oh---boy.' + This is calle `punctdash' by fontinst's t1.etx, but needs to be + called `emdash' to work right. + The `\textemdash'. + In a monowidth font, this might be set as `\texttt{Oh{-}{-}boy.}'} +\endsetslot + +\setslot{compwordmark} + \comment{An invisible glyph, with zero width and depth, but the + height of lowercase letters without ascenders. + It is used to stop ligaturing in words like `shelf{}ful'.} +\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.} +\endsetslot + +\setslot{\lc{dotlessI}{dotlessi}} + \comment{A dotless i `\i', used to produce accented letters such as + `\=\i'.} +\endsetslot + +\setslot{\lc{dotlessJ}{dotlessj}} + \comment{A dotless j `\j', used to produce accented letters such as + `\=\j'. Most non-\TeX\ fonts do not have this glyph.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{5}\Else + +\setslot{\lclig{FF}{f_f}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FFI}{f_f_i}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FFL}{f_f_l}} + \Fi + \comment{The `ff' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FI}{fi}} + \comment{The `fi' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FL}{fl}} + \comment{The `fl' ligature. It should be two characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFI}{f_f_i}} + \comment{The `ffi' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\setslot{\lclig{FFL}{f_f_l}} + \comment{The `ffl' ligature. It should be three characters wide in a + monowidth font.} +\endsetslot + +\Fi + +\setslot{visiblespace} + \comment{A visible space glyph `\textvisiblespace'.} +\endsetslot + +\setslot{exclam} + \ligature{LIG}{quoteleft}{exclamdown} + \comment{The exclamation mark `!'.} +\endsetslot + +\setslot{quotedbl} + \comment{The `neutral' double quotation mark `\,\textquotedbl\,', + included for use in monowidth fonts, or for setting computer + programs. Note that the inclusion of this glyph in this slot + means that \TeX\ documents which used `{\tt\char`\"}' as an + input character will no longer work.} +\endsetslot + +\setslot{numbersign} + \comment{The hash sign `\#'.} +\endsetslot + +\setslot{dollar} + \comment{The dollar sign `\$'.} +\endsetslot + +\setslot{percent} + \comment{The percent sign `\%'.} +\endsetslot + +\setslot{ampersand} + \comment{The ampersand sign `\&'.} +\endsetslot + +\setslot{quoteright} + \ligature{LIG}{quoteright}{quotedblright} + \comment{The English closing single quote mark `\,\textquoteright\,'.} +\endsetslot + +\setslot{parenleft} + \comment{The opening parenthesis `('.} +\endsetslot + +\setslot{parenright} + \comment{The closing parenthesis `)'.} +\endsetslot + +\setslot{asterisk} + \comment{The raised asterisk `*'.} +\endsetslot + +\setslot{plus} + \comment{The addition sign `+'.} +\endsetslot + +\setslot{comma} + \ligature{LIG}{comma}{quotedblbase} + \comment{The comma `,'.} +\endsetslot + +\setslot{hyphen} + \ligature{LIG}{hyphen}{endash} + \ligature{LIG}{hyphenchar}{hyphenchar} + \comment{The hyphen `-'.} +\endsetslot + +\setslot{period} + \comment{The period `.'.} +\endsetslot + +\setslot{slash} + \comment{The forward oblique `/'.} +\endsetslot + +\setslot{\digit{zero}} + \comment{The number `0'. This (and all the other numerals) may be + old style or ranging digits.} +\endsetslot + +\setslot{\digit{one}} + \comment{The number `1'.} +\endsetslot + +\setslot{\digit{two}} + \comment{The number `2'.} +\endsetslot + +\setslot{\digit{three}} + \comment{The number `3'.} +\endsetslot + +\setslot{\digit{four}} + \comment{The number `4'.} +\endsetslot + +\setslot{\digit{five}} + \comment{The number `5'.} +\endsetslot + +\setslot{\digit{six}} + \comment{The number `6'.} +\endsetslot + +\setslot{\digit{seven}} + \comment{The number `7'.} +\endsetslot + +\setslot{\digit{eight}} + \comment{The number `8'.} +\endsetslot + +\setslot{\digit{nine}} + \comment{The number `9'.} +\endsetslot + +\setslot{colon} + \comment{The colon punctuation mark `:'.} +\endsetslot + +\setslot{semicolon} + \comment{The semi-colon punctuation mark `;'.} +\endsetslot + +\setslot{less} + \ligature{LIG}{less}{guillemotleft} + \comment{The less-than sign `\textless'.} +\endsetslot + +\setslot{equal} + \comment{The equals sign `='.} +\endsetslot + +\setslot{greater} + \ligature{LIG}{greater}{guillemotright} + \comment{The greater-than sign `\textgreater'.} +\endsetslot + +\setslot{question} + \ligature{LIG}{quoteleft}{questiondown} + \comment{The question mark `?'.} +\endsetslot + +\setslot{at} + \comment{The at sign `@'.} +\endsetslot + +\setslot{\uc{A}{a}} + \comment{The letter `{A}'.} +\endsetslot + +\setslot{\uc{B}{b}} + \comment{The letter `{B}'.} +\endsetslot + +\setslot{\uc{C}{c}} + \comment{The letter `{C}'.} +\endsetslot + +\setslot{\uc{D}{d}} + \comment{The letter `{D}'.} +\endsetslot + +\setslot{\uc{E}{e}} + \comment{The letter `{E}'.} +\endsetslot + +\setslot{\uc{F}{f}} + \comment{The letter `{F}'.} +\endsetslot + +\setslot{\uc{G}{g}} + \comment{The letter `{G}'.} +\endsetslot + +\setslot{\uc{H}{h}} + \comment{The letter `{H}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + +\setslot{\uc{I}{i}} + \comment{The letter `{I}'.} +\endsetslot + +\Fi + +\setslot{\uc{J}{j}} + \comment{The letter `{J}'.} +\endsetslot + +\setslot{\uc{K}{k}} + \comment{The letter `{K}'.} +\endsetslot + +\setslot{\uc{L}{l}} + \comment{The letter `{L}'.} +\endsetslot + +\setslot{\uc{M}{m}} + \comment{The letter `{M}'.} +\endsetslot + +\setslot{\uc{N}{n}} + \comment{The letter `{N}'.} +\endsetslot + +\setslot{\uc{O}{o}} + \comment{The letter `{O}'.} +\endsetslot + +\setslot{\uc{P}{p}} + \comment{The letter `{P}'.} +\endsetslot + +\setslot{\uc{Q}{q}} + \comment{The letter `{Q}'.} +\endsetslot + +\setslot{\uc{R}{r}} + \comment{The letter `{R}'.} +\endsetslot + +\setslot{\uc{S}{s}} + \comment{The letter `{S}'.} +\endsetslot + +\setslot{\uc{T}{t}} + \comment{The letter `{T}'.} +\endsetslot + +\setslot{\uc{U}{u}} + \comment{The letter `{U}'.} +\endsetslot + +\setslot{\uc{V}{v}} + \comment{The letter `{V}'.} +\endsetslot + +\setslot{\uc{W}{w}} + \comment{The letter `{W}'.} +\endsetslot + +\setslot{\uc{X}{x}} + \comment{The letter `{X}'.} +\endsetslot + +\setslot{\uc{Y}{y}} + \comment{The letter `{Y}'.} +\endsetslot + +\setslot{\uc{Z}{z}} + \comment{The letter `{Z}'.} +\endsetslot + +\setslot{bracketleft} + \comment{The opening square bracket `['.} +\endsetslot + +\setslot{backslash} + \comment{The backwards oblique `\textbackslash'.} +\endsetslot + +\setslot{bracketright} + \comment{The closing square bracket `]'.} +\endsetslot + +\setslot{asciicircum} + \comment{The ASCII upward-pointing arrow head `\textasciicircum'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{underscore} + \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} + \ligature{LIG}{quoteleft}{quotedblleft} + \comment{The English opening single quote mark `\,\textquoteleft\,'.} +\endsetslot + +\setslot{\lc{A}{a}} + \comment{The letter `{a}'.} +\endsetslot + +\setslot{\lc{B}{b}} + \comment{The letter `{b}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{C}{c}} + \comment{The letter `{c}'.} + \endsetslot + +\Fi + +\setslot{\lc{D}{d}} + \comment{The letter `{d}'.} +\endsetslot + +\setslot{\lc{E}{e}} + \comment{The letter `{e}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{F}{f}} + \ifnumber{\int{ligaturing}}>{0}\then + \ligature{LIG}{\lc{I}{i}}{\lclig{FI}{fi}} + \ligature{LIG}{\lc{F}{f}}{\lclig{FF}{f_f}} + \ligature{LIG}{\lc{L}{l}}{\lclig{FL}{fl}} + \Fi + \comment{The letter `{f}'.} + \endsetslot + +\Fi + +\setslot{\lc{G}{g}} + \comment{The letter `{g}'.} +\endsetslot + +\setslot{\lc{H}{h}} + \comment{The letter `{h}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{I}{i}} + \comment{The letter `{i}'.} + \endsetslot + +\Fi + +\setslot{\lc{J}{j}} + \comment{The letter `{j}'.} +\endsetslot + +\setslot{\lc{K}{k}} + \comment{The letter `{k}'.} +\endsetslot + +\setslot{\lc{L}{l}} + \comment{The letter `{l}'.} +\endsetslot + +\setslot{\lc{M}{m}} + \comment{The letter `{m}'.} +\endsetslot + +\setslot{\lc{N}{n}} + \comment{The letter `{n}'.} +\endsetslot + +\setslot{\lc{O}{o}} + \comment{The letter `{o}'.} +\endsetslot + +\setslot{\lc{P}{p}} + \comment{The letter `{p}'.} +\endsetslot + +\setslot{\lc{Q}{q}} + \comment{The letter `{q}'.} +\endsetslot + +\setslot{\lc{R}{r}} + \comment{The letter `{r}'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{-1}\then \skipslots{1}\Else + + \setslot{\lc{S}{s}} + \comment{The letter `{s}'.} + \endsetslot + +\Fi + +\setslot{\lc{T}{t}} + \comment{The letter `{t}'.} +\endsetslot + +\setslot{\lc{U}{u}} + \comment{The letter `{u}'.} +\endsetslot + +\setslot{\lc{V}{v}} + \comment{The letter `{v}'.} +\endsetslot + +\setslot{\lc{W}{w}} + \comment{The letter `{w}'.} +\endsetslot + +\setslot{\lc{X}{x}} + \comment{The letter `{x}'.} +\endsetslot + +\setslot{\lc{Y}{y}} + \comment{The letter `{y}'.} +\endsetslot + +\setslot{\lc{Z}{z}} + \comment{The letter `{z}'.} +\endsetslot + +\setslot{braceleft} + \comment{The opening curly brace `\textbraceleft'.} +\endsetslot + +\setslot{bar} + \comment{The ASCII vertical bar `\textbar'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{braceright} + \comment{The closing curly brace `\textbraceright'.} +\endsetslot + +\setslot{asciitilde} + \comment{The ASCII tilde `\textasciitilde'. + This is included for compatibility with typewriter fonts used + for computer listings.} +\endsetslot + +\setslot{hyphenchar} + \comment{The glyph used for hyphenation in this font, which will + almost always be the same as `hyphen'.} +\endsetslot + +\setslot{\uctop{Abreve}{abreve}} + \comment{The letter `\u A'.} +\endsetslot + +\setslot{\uc{Aogonek}{aogonek}} + \comment{The letter `\k A'.} +\endsetslot + +\setslot{\uctop{Cacute}{cacute}} + \comment{The letter `\' C'.} +\endsetslot + +\setslot{\uctop{Ccaron}{ccaron}} + \comment{The letter `\v C'.} +\endsetslot + +\setslot{\uctop{Dcaron}{dcaron}} + \comment{The letter `\v D'.} +\endsetslot + +\setslot{\uctop{Ecaron}{ecaron}} + \comment{The letter `\v E'.} +\endsetslot + +\setslot{\uc{Eogonek}{eogonek}} + \comment{The letter `\k E'.} +\endsetslot + +\setslot{\uctop{Gbreve}{gbreve}} + \comment{The letter `\u G'.} +\endsetslot + +\setslot{\uctop{Lacute}{lacute}} + \comment{The letter `\' L'.} +\endsetslot + +\setslot{\uc{Lcaron}{lcaron}} + \comment{The letter `\v L'.} +\endsetslot + +\setslot{\uc{Lslash}{lslash}} + \comment{The letter `\L'.} +\endsetslot + +\setslot{\uctop{Nacute}{nacute}} + \comment{The letter `\' N'.} +\endsetslot + +\setslot{\uctop{Ncaron}{ncaron}} + \comment{The letter `\v N'.} +\endsetslot + +\setslot{\uc{Eng}{eng}} + \comment{The Sami letter `\NG'. It is unavailable in \plain\ \TeX. This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as in t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\uctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H O'.} +\endsetslot + +\setslot{\uctop{Racute}{racute}} + \comment{The letter `\' R'.} +\endsetslot + +\setslot{\uctop{Rcaron}{rcaron}} + \comment{The letter `\v R'.} +\endsetslot + +\setslot{\uctop{Sacute}{sacute}} + \comment{The letter `\' S'.} +\endsetslot + +\setslot{\uctop{Scaron}{scaron}} + \comment{The letter `\v S'.} +\endsetslot + +\setslot{\uc{Scedilla}{scedilla}} + \comment{The letter `\c S'.} +\endsetslot + +\setslot{\uctop{Tcaron}{tcaron}} + \comment{The letter `\v T'.} +\endsetslot + +\setslot{\uc{Tcedilla}{tcedilla}} + \comment{The letter `\c T'.} +\endsetslot + +\setslot{\uctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H U'.} +\endsetslot + +\setslot{\uctop{Uring}{uring}} + \comment{The letter `\r U'.} +\endsetslot + +\setslot{\uctop{Ydieresis}{ydieresis}} + \comment{The letter `\" Y'.} +\endsetslot + +\setslot{\uctop{Zacute}{zacute}} + \comment{The letter `\' Z'.} +\endsetslot + +\setslot{\uctop{Zcaron}{zcaron}} + \comment{The letter `\v Z'.} +\endsetslot + +\setslot{\uctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. Z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\uclig{IJ}{ij}} + \comment{The letter `IJ'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{\uctop{Idotaccent}{idotaccent}} + \comment{The letter `\. I'.} +\endsetslot + +\setslot{\lc{Dbar}{dbar}} + \comment{The letter `\dj'.} +\endsetslot + +\setslot{section} + \comment{The section mark `\textsection'.} +\endsetslot + +\setslot{\lctop{Abreve}{abreve}} + \comment{The letter `\u a'.} +\endsetslot + +\setslot{\lc{Aogonek}{aogonek}} + \comment{The letter `\k a'.} +\endsetslot + +\setslot{\lctop{Cacute}{cacute}} + \comment{The letter `\' c'.} +\endsetslot + +\setslot{\lctop{Ccaron}{ccaron}} + \comment{The letter `\v c'.} +\endsetslot + +\setslot{\lctop{Dcaron}{dcaron}} + \comment{The letter `\v d'.} +\endsetslot + +\setslot{\lctop{Ecaron}{ecaron}} + \comment{The letter `\v e'.} +\endsetslot + +\setslot{\lc{Eogonek}{eogonek}} + \comment{The letter `\k e'.} +\endsetslot + +\setslot{\lctop{Gbreve}{gbreve}} + \comment{The letter `\u g'.} +\endsetslot + +\setslot{\lctop{Lacute}{lacute}} + \comment{The letter `\' l'.} +\endsetslot + +\setslot{\lc{Lcaron}{lcaron}} + \comment{The letter `\v l'.} +\endsetslot + +\setslot{\lc{Lslash}{lslash}} + \comment{The letter `\l'.} +\endsetslot + +\setslot{\lctop{Nacute}{nacute}} + \comment{The letter `\' n'.} +\endsetslot + +\setslot{\lctop{Ncaron}{ncaron}} + \comment{The letter `\v n'.} +\endsetslot + +\setslot{\lc{Eng}{eng}} + \comment{The Sami letter `\ng'. + It is unavailable in \plain\ \TeX. + This needs to be called `Eng'/`eng' rather than `Ng'/`ng' as it is in + t1.etx in most cases, it seems.} +\endsetslot + +\setslot{\lctop{Ohungarumlaut}{ohungarumlaut}} + \comment{The letter `\H o'.} +\endsetslot + +\setslot{\lctop{Racute}{racute}} + \comment{The letter `\' r'.} +\endsetslot + +\setslot{\lctop{Rcaron}{rcaron}} + \comment{The letter `\v r'.} +\endsetslot + +\setslot{\lctop{Sacute}{sacute}} + \comment{The letter `\' s'.} +\endsetslot + +\setslot{\lctop{Scaron}{scaron}} + \comment{The letter `\v s'.} +\endsetslot + +\setslot{\lc{Scedilla}{scedilla}} + \comment{The letter `\c s'.} +\endsetslot + +\setslot{\lctop{Tcaron}{tcaron}} + \comment{The letter `\v t'.} +\endsetslot + +\setslot{\lc{Tcedilla}{tcedilla}} + \comment{The letter `\c t'.} +\endsetslot + +\setslot{\lctop{Uhungarumlaut}{uhungarumlaut}} + \comment{The letter `\H u'.} +\endsetslot + +\setslot{\lctop{Uring}{uring}} + \comment{The letter `\r u'.} +\endsetslot + +\setslot{\lctop{Ydieresis}{ydieresis}} + \comment{The letter `\" y'.} +\endsetslot + +\setslot{\lctop{Zacute}{zacute}} + \comment{The letter `\' z'.} +\endsetslot + +\setslot{\lctop{Zcaron}{zcaron}} + \comment{The letter `\v z'.} +\endsetslot + +\setslot{\lctop{Zdotaccent}{zdotaccent}} + \comment{The letter `\. z'.} +\endsetslot + +\ifnumber{\int{ligaturing}}<{0}\then \skipslots{1}\Else + + \setslot{\lclig{IJ}{ij}} + \comment{The letter `ij'. This is a single letter, and in a + monowidth font should ideally be one letter wide.} + \endsetslot + +\Fi + +\setslot{exclamdown} + \comment{The Spanish punctuation mark `!`'.} +\endsetslot + +\setslot{questiondown} + \comment{The Spanish punctuation mark `?`'.} +\endsetslot + +\setslot{sterling} + \comment{The British currency mark `\textsterling'.} +\endsetslot + +\setslot{\uctop{Agrave}{agrave}} + \comment{The letter `\` A'.} +\endsetslot + +\setslot{\uctop{Aacute}{aacute}} + \comment{The letter `\' A'.} +\endsetslot + +\setslot{\uctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ A'.} +\endsetslot + +\setslot{\uctop{Atilde}{atilde}} + \comment{The letter `\~ A'.} +\endsetslot + +\setslot{\uctop{Adieresis}{adieresis}} + \comment{The letter `\" A'.} +\endsetslot + +\setslot{\uctop{Aring}{aring}} + \comment{The letter `\r A'.} +\endsetslot + +\setslot{\uc{AE}{ae}} + \comment{The letter `\AE'. This is a single letter, and should not be + faked with `AE'.} +\endsetslot + +\setslot{\uc{Ccedilla}{ccedilla}} + \comment{The letter `\c C'.} +\endsetslot + +\setslot{\uctop{Egrave}{egrave}} + \comment{The letter `\` E'.} +\endsetslot + +\setslot{\uctop{Eacute}{eacute}} + \comment{The letter `\' E'.} +\endsetslot + +\setslot{\uctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ E'.} +\endsetslot + +\setslot{\uctop{Edieresis}{edieresis}} + \comment{The letter `\" E'.} +\endsetslot + +\setslot{\uctop{Igrave}{igrave}} + \comment{The letter `\` I'.} +\endsetslot + +\setslot{\uctop{Iacute}{iacute}} + \comment{The letter `\' I'.} +\endsetslot + +\setslot{\uctop{Icircumflex}{icircumflex}} + \comment{The letter `\^ I'.} +\endsetslot + +\setslot{\uctop{Idieresis}{idieresis}} + \comment{The letter `\" I'.} +\endsetslot + +\setslot{\uc{Eth}{eth}} + \comment{The uppercase Icelandic letter `Eth' similar to a `D' + with a horizontal bar through the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\uctop{Ntilde}{ntilde}} + \comment{The letter `\~ N'.} +\endsetslot + +\setslot{\uctop{Ograve}{ograve}} + \comment{The letter `\` O'.} +\endsetslot + +\setslot{\uctop{Oacute}{oacute}} + \comment{The letter `\' O'.} +\endsetslot + +\setslot{\uctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ O'.} +\endsetslot + +\setslot{\uctop{Otilde}{otilde}} + \comment{The letter `\~ O'.} +\endsetslot + +\setslot{\uctop{Odieresis}{odieresis}} + \comment{The letter `\" O'.} +\endsetslot + +\setslot{\uc{OE}{oe}} + \comment{The letter `\OE'. This is a single letter, and should not be + faked with `OE'.} +\endsetslot + +\setslot{\uc{Oslash}{oslash}} + \comment{The letter `\O'.} +\endsetslot + +\setslot{\uctop{Ugrave}{ugrave}} + \comment{The letter `\` U'.} +\endsetslot + +\setslot{\uctop{Uacute}{uacute}} + \comment{The letter `\' U'.} +\endsetslot + +\setslot{\uctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ U'.} +\endsetslot + +\setslot{\uctop{Udieresis}{udieresis}} + \comment{The letter `\" U'.} +\endsetslot + +\setslot{\uctop{Yacute}{yacute}} + \comment{The letter `\' Y'.} +\endsetslot + +\setslot{\uc{Thorn}{thorn}} + \comment{The Icelandic capital letter Thorn, similar to a `P' + with the bowl moved down. It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\uclig{SS}{germandbls}} + \comment{The ligature `SS', used to give an upper case `\ss'. + In a monowidth font it should be two letters wide.} +\endsetslot + +\setslot{\lctop{Agrave}{agrave}} + \comment{The letter `\` a'.} +\endsetslot + +\setslot{\lctop{Aacute}{aacute}} + \comment{The letter `\' a'.} +\endsetslot + +\setslot{\lctop{Acircumflex}{acircumflex}} + \comment{The letter `\^ a'.} +\endsetslot + +\setslot{\lctop{Atilde}{atilde}} + \comment{The letter `\~ a'.} +\endsetslot + +\setslot{\lctop{Adieresis}{adieresis}} + \comment{The letter `\" a'.} +\endsetslot + +\setslot{\lctop{Aring}{aring}} + \comment{The letter `\r a'.} +\endsetslot + +\setslot{\lc{AE}{ae}} + \comment{The letter `\ae'. This is a single letter, and should not be + faked with `ae'.} +\endsetslot + +\setslot{\lc{Ccedilla}{ccedilla}} + \comment{The letter `\c c'.} +\endsetslot + +\setslot{\lctop{Egrave}{egrave}} + \comment{The letter `\` e'.} +\endsetslot + +\setslot{\lctop{Eacute}{eacute}} + \comment{The letter `\' e'.} +\endsetslot + +\setslot{\lctop{Ecircumflex}{ecircumflex}} + \comment{The letter `\^ e'.} +\endsetslot + +\setslot{\lctop{Edieresis}{edieresis}} + \comment{The letter `\" e'.} +\endsetslot + +\setslot{\lctop{Igrave}{igrave}} + \comment{The letter `\`\i'.} +\endsetslot + +\setslot{\lctop{Iacute}{iacute}} + \comment{The letter `\'\i'.} +\endsetslot + +\setslot{\lctop{Icircumflex}{icircumflex}} + \comment{The letter `\^\i'.} +\endsetslot + +\setslot{\lctop{Idieresis}{idieresis}} + \comment{The letter `\"\i'.} +\endsetslot + +\setslot{\lc{Eth}{eth}} + \comment{The Icelandic lowercase letter `eth' similar to + a `$\partial$' with an oblique bar through the stem. + It is unavailable in \plain\ \TeX.} +\endsetslot + +\setslot{\lctop{Ntilde}{ntilde}} + \comment{The letter `\~ n'.} +\endsetslot + +\setslot{\lctop{Ograve}{ograve}} + \comment{The letter `\` o'.} +\endsetslot + +\setslot{\lctop{Oacute}{oacute}} + \comment{The letter `\' o'.} +\endsetslot + +\setslot{\lctop{Ocircumflex}{ocircumflex}} + \comment{The letter `\^ o'.} +\endsetslot + +\setslot{\lctop{Otilde}{otilde}} + \comment{The letter `\~ o'.} +\endsetslot + +\setslot{\lctop{Odieresis}{odieresis}} + \comment{The letter `\" o'.} +\endsetslot + +\setslot{\lc{OE}{oe}} + \comment{The letter `\oe'. This is a single letter, and should not be + faked with `oe'.} +\endsetslot + +\setslot{\lc{Oslash}{oslash}} + \comment{The letter `\o'.} +\endsetslot + +\setslot{\lctop{Ugrave}{ugrave}} + \comment{The letter `\` u'.} +\endsetslot + +\setslot{\lctop{Uacute}{uacute}} + \comment{The letter `\' u'.} +\endsetslot + +\setslot{\lctop{Ucircumflex}{ucircumflex}} + \comment{The letter `\^ u'.} +\endsetslot + +\setslot{\lctop{Udieresis}{udieresis}} + \comment{The letter `\" u'.} +\endsetslot + +\setslot{\lctop{Yacute}{yacute}} + \comment{The letter `\' y'.} +\endsetslot + +\setslot{\lc{Thorn}{thorn}} + \comment{The Icelandic lowercase letter `thorn', similar to a `p' + with an ascender rising from the stem. It is unavailable + in \plain\ \TeX.} +\endsetslot + +\setslot{\lc{SS}{germandbls}} + \comment{The letter `\ss'.} +\endsetslot + +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</t1-f-f> +% \fi +% +% +% \subsubsection{t1j-f\_f.etx}\label{subsubsec:t1j-f-f} +% +% \iffalse +%<*t1j-f-f> +% \fi +% \begin{encoding}{t1j-f_f.etx} +% \begin{macrocode} +\relax + +% \end{macrocode} +% \file{t1j-f\_f.etx} -- install a T1-encoded roman font with oldstyle +% and f-ligatures named "f\_f" etc. +% +% We do not need to distinguish between roman and italic in T1, +% hence we simply call t1-f\_f.etx with oldstyle parameters. +% \begin{macrocode} + +\encoding + +\setcommand\lc#1#2{#2} +\setcommand\uc#1#2{#1} +\setcommand\lctop#1#2{#2} +\setcommand\uctop#1#2{#1} +\setcommand\lclig#1#2{#2} +\setcommand\uclig#1#2{#1} +\setcommand\digit#1{#1oldstyle} + +\inputetx{t1-f_f} + +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</t1j-f-f> +% \fi +% +% +% \subsubsection{ts1-dotinf.etx}\label{subsubsec:ts1-dotinf} +% +% \iffalse +%<*ts1-dotinf> +% \fi +% \begin{encoding}{ts1-dotinf.etx} +% \begin{macrocode} +%% +%% - The commentary in the original is deleted in this version. For +%% information about the TS1 etc., typeset the original ts1.etx +%% included with fontinst. +%% - The original notices at the top of that file concerning authors, +%% maintenance etc. are replaced by this notice. +%% - The file is renamed. +%% - The encoding name is modified. +%% - The file is modified to accommodate differences in glyph names. +%% - The file may be modified for use in encoding other characters. +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\relax + +\encoding + +\setstr{codingscheme}{TEX TEXT COMPANION 1---TS1 DOTINF} + +\ifisglyph{x}\then + \setint{xheight}{\height{x}} +\else + \setint{xheight}{500} +\fi + +\ifisglyph{space}\then + \setint{interword}{\width{space}} +\else\ifisglyph{i}\then + \setint{interword}{\width{i}} +\else + \setint{interword}{333} +\fi\fi + +\setint{italicslant}{0} + + +\setint{fontdimen(1)}{\int{italicslant}} % italic slant +\setint{fontdimen(2)}{\int{interword}} % interword space +\setint{fontdimen(3)}{0} % interword stretch +\setint{fontdimen(4)}{0} % interword shrink +\setint{fontdimen(5)}{\int{xheight}} % x-height +\setint{fontdimen(6)}{1000} % quad +\setint{fontdimen(7)}{\int{interword}} % extra space after . + +\nextslot{0} +\setslot{capitalgrave.inferior} + \comment{The grave accent `\capitalgrave{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalacute.inferior} + \comment{The acute accent `\capitalacute{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalcircumflex.inferior} + \comment{The circumflex accent `\capitalcircumflex{}', intended for + use with capital letters.} +\endsetslot + +\setslot{capitaltilde.inferior} + \comment{The tilde accent `\capitaltilde{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitaldieresis.inferior} + \comment{The umlaut or dieresis accent `\capitaldieresis{}', + intended for use with capital letters.} +\endsetslot + +\setslot{capitalhungarumlaut.inferior} + \comment{The long Hungarian umlaut `\capitalhungarumlaut{}', + intended for use with capital letters.} +\endsetslot + +\setslot{capitalring.inferior} + \comment{The ring accent `\capitalring{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalcaron.inferior} + \comment{The caron or h\'a\v cek accent `\capitalcaron{}', intended + for use with capital letters.} +\endsetslot + +\setslot{capitalbreve.inferior} + \comment{The breve accent `\capitalbreve{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalmacron.inferior} + \comment{The macron accent `\capitalmacron{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitaldotaccent.inferior} + \comment{The dot accent `\capitaldotaccent{}', intended for use with + capital letters.} +\endsetslot + +\setslot{cedilla.inferior} + \comment{The cedilla accent `\capitalcedilla{}', intended for use + with capital letters.} +\endsetslot + +\setslot{ogonek.inferior} + \comment{The ogonek accent `\capitalogonek{}', intended for use with + capital letters.} +\endsetslot + +\nextslot{13} +\setslot{quotesinglbase.inferior} + \comment{A straight single quote mark on the baseline, + `\textquotestraightbase'.} +\endsetslot + +\nextslot{18} +\setslot{quotedblbase.inferior} + \comment{A straight double quote mark on the baseline, + `\textquotestraightdblbase'.} +\endsetslot + +\nextslot{21} +\setslot{twelveudash.inferior} + \comment{A 2/3~em dash, `\texttwelveudash'.} +\endsetslot + +\setslot{threequartersemdash.inferior} + \comment{A 3/4~em dash, `\textthreequartersemdash'.} +\endsetslot + +\nextslot{23} +\setslot{capitalcompwordmark.inferior} + \comment{An invisible glyph, with zero width and depth, but the + height of capital letters. + It is used to stop ligaturing in words like `shelf{}ful'.} +\endsetslot + +\nextslot{24} +\setslot{arrowleft.inferior} + \comment{A left pointing arrow, `\textleftarrow', unavailable in + most PostScript fonts.} +\endsetslot + +\setslot{arrowright.inferior} + \comment{A right pointing arrow, `\textrightarrow', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{26} +\setslot{tieaccentlowercase.inferior} + \comment{The original tie accent `\t{}', intended for use with + lowercase letters.} +\endsetslot + +\setslot{tieaccentcapital.inferior} + \comment{The tie accent `\capitaltie{}', intended for use with + capital letters.} +\endsetslot + +\setslot{newtieaccentlowercase.inferior} + \comment{A new tie accent `\newtie{}', intended for use with + lowercase letters.} +\endsetslot + +\setslot{newtieaccentcapital.inferior} + \comment{A new tie accent `\capitalnewtie{}', intended for use + with capital letters.} +\endsetslot + +\nextslot{31} +\setslot{ascendercompwordmark.inferior} + \comment{An invisible glyph, with zero width and depth, but the + height of lowercase letters with ascenders. + It is used to stop ligaturing in words like `shelf{}ful'.} +\endsetslot + +\nextslot{32} +\setslot{blank.inferior} + \comment{The blank indicator `\textblank', similar to the letter `b' + with an oblique bar throgh the stem.} +\endsetslot + +\nextslot{36} +\setslot{dollar.inferior} + \comment{The dollar sign `\textdollar'.} +\endsetslot + +\nextslot{39} +\setslot{quotesingle.inferior} + \comment{A straight single quote mark, `\textquotesingle'.} +\endsetslot + +\nextslot{42} +\setslot{asteriskcentered.inferior} + \comment{The centered asterisk, `\textasteriskcentered'.} +\endsetslot + +\nextslot{44} +\setslot{comma.inferior} + \comment{The decimal comma `,'.} +\endsetslot + +\nextslot{45} +\setslot{hyphendbl.inferior} + \comment{An alternate double hyphen, `\textdblhyphen'.} +\endsetslot + +\nextslot{46} +\setslot{period.inferior} + \comment{The decimal point `.'.} +\endsetslot + +\nextslot{47} +\setslot{fraction.inferior} + \comment{The fraction slash `\textfractionsolidus'.} +\endsetslot + +\nextslot{48} +\setslot{zerooldstyle.inferior} + \comment{The oldstyle number `\oldstylenums{0}'.} +\endsetslot + +\setslot{oneoldstyle.inferior} + \comment{The oldstyle number `\oldstylenums{1}'.} +\endsetslot + +\setslot{twooldstyle.inferior} + \comment{The oldstyle number `\oldstylenums{2}'.} +\endsetslot + +\setslot{threeoldstyle.inferior} + \comment{The oldstyle number `\oldstylenums{3}'.} +\endsetslot + +\setslot{fouroldstyle.inferior} + \comment{The oldstyle number `\oldstylenums{4}'.} +\endsetslot + +\setslot{fiveoldstyle.inferior} + \comment{The oldstyle number `\oldstylenums{5}'.} +\endsetslot + +\setslot{sixoldstyle.inferior} + \comment{The oldstyle number `\oldstylenums{6}'.} +\endsetslot + +\setslot{sevenoldstyle.inferior} + \comment{The oldstyle number `\oldstylenums{7}'.} +\endsetslot + +\setslot{eightoldstyle.inferior} + \comment{The oldstyle number `\oldstylenums{8}'.} +\endsetslot + +\setslot{nineoldstyle.inferior} + \comment{The oldstyle number `\oldstylenums{9}'.} +\endsetslot + +\nextslot{60} +\setslot{angbracketleft.inferior} + \comment{The opening angle bracket `\textlangle', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{61} +\setslot{minus.inferior} + \comment{The subtraction sign `\textminus'.} +\endsetslot + +\nextslot{62} +\setslot{angbracketright.inferior} + \comment{The closing angle bracket `\textrangle', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{77} +\setslot{Omegainv.inferior} + \comment{The inverted Ohm sign `\textmho', unavailable in most fonts.} +\endsetslot + +\nextslot{79} + \comment{A circle `\textbigcircle', big enough to enclose a letter + as in `\textcopyright' or `\textregistered'.} +\setslot{bigcircle.inferior} +\endsetslot + +\nextslot{87} +\setslot{Omega.inferior} + \comment{The upright Ohm sign `\textohm', unavailable in most fonts. + Even if it is available in Mac-encoded fonts, it isn't directly + accessible in the 8r or 8y encodings.} +\endsetslot + +\nextslot{91} +\setslot{openbracketleft.inferior} + \comment{The opening double square bracket `\textlbrackdbl', + unavailable in most PostScript fonts.} +\endsetslot + +\nextslot{93} +\setslot{openbracketright.inferior} + \comment{The closing double square bracket `\textrbrackdbl', + unavailable in most PostScript fonts.} +\endsetslot + +\nextslot{94} +\setslot{arrowup.inferior} + \comment{An upwards pointing arrow `\textuparrow', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{95} +\setslot{arrowdown.inferior} + \comment{An downwards pointing arrow `\textdownarrow', unavailable + in most PostScript fonts.} +\endsetslot + +\nextslot{96} +\setslot{asciigrave.inferior} + \comment{An ASCII-style grave `\textasciigrave'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\nextslot{98} +\setslot{born.inferior} + \comment{The born symbol `\textborn', unavailable in most PostScript + fonts.} +\endsetslot + +\nextslot{99} +\setslot{divorced.inferior} + \comment{The divorced symbol `\textdivorced', unavailable in most + PostScript fonts.} +\endsetslot + +\nextslot{100} +\setslot{died.inferior} + \comment{The died symbol `\textdied', unavailable in most PostScript + fonts.} +\endsetslot + +\nextslot{108} +\setslot{leaf.inferior} + \comment{The leaf symbol `\textleaf', unavailable in most PostScript + fonts.} +\endsetslot + +\nextslot{109} +\setslot{married.inferior} + \comment{The married symbol `\textmarried', unavailable in most + PostScript fonts.} +\endsetslot + +\nextslot{110} +\setslot{musicalnote.inferior} + \comment{A musical note symbol `\textmusicalnote', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{126} +\setslot{tildelow.inferior} + \comment{A lowered tilde `\texttildelow'. In most PostScript fonts + it can be substituted by `asciitilde', while `\textasciitilde' + is supposed to be a raised `tilde'.} +\endsetslot + +\nextslot{127} +\setslot{hyphendblchar.inferior} + \comment{The glyph used for hyphenation in this font, which will + almost always be the same as `hyphendbl'.} +\endsetslot + +\nextslot{128} +\setslot{asciibreve.inferior} + \comment{An ASCII-style breve `\textasciibreve'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{asciicaron.inferior} + \comment{An ASCII-style caron `\textasciicaron'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{asciiacutedbl.inferior} + \comment{An ASCII-style double tick mark, `\textacutedbl'.} +\endsetslot + +\setslot{asciigravedbl.inferior} + \comment{An ASCII-style double backtick mark, `\textgravedbl'.} +\endsetslot + +\setslot{dagger.inferior} + \comment{The single dagger `\textdagger'.} +\endsetslot + +\setslot{daggerdbl.inferior} + \comment{The double dagger `\textdaggerdbl'.} +\endsetslot + +\setslot{bardbl.inferior} + \comment{The double vertical bar `\textbardbl'.} +\endsetslot + +\setslot{perthousand.inferior} + \comment{The perthousand sign `\textperthousand'.} +\endsetslot + +\setslot{bullet.inferior} + \comment{The centered bullet `\textbullet'.} +\endsetslot + +\setslot{centigrade.inferior} + \comment{The degree centigrade symbol `\textcelsius'.} +\endsetslot + +\setslot{dollaroldstyle.inferior} + \comment{An oldstyle dollar sign `\textdollaroldstyle'.} +\endsetslot + +\setslot{centoldstyle.inferior} + \comment{An oldstyle cent sign `\textcentoldstyle'.} +\endsetslot + +\setslot{florin.inferior} + \comment{The florin sign `\textflorin'.} +\endsetslot + +\setslot{colonmonetary.inferior} + \comment{The Colon currency sign `\textcolonmonetary', similar to + a capital `C' with a vertical bar through the middle.} +\endsetslot + +\setslot{won.inferior} + \comment{The Won currency sign `\textwon', similar to a capital `W' + with two horizontal bars.} +\endsetslot + +\setslot{naira.inferior} + \comment{The Naira currency sign `\textnaira', similar to a + capital `N' with two horizontal bars.} +\endsetslot + +\setslot{guarani.inferior} + \comment{The Guarani currency sign `\textguarani', similar to + a capital `G' with a vertical bar through the middle.} +\endsetslot + +\setslot{peso.inferior} + \comment{The Peso currency sign `\textpeso', similar to a capital `P' + with a horizontal bar through the bowl or below the bowl.} +\endsetslot + +\setslot{lira.inferior} + \comment{The Lira currency sign `\textlira', similar to a sterling + sign `\textsterling' with two horizontal bars.} +\endsetslot + +\setslot{recipe.inferior} + \comment{The recipe symbol `\textrecipe', similar to a capital `R' + with an oblique bar through the tail.} +\endsetslot + +\setslot{interrobang.inferior} + \comment{The interrobang symbol `\textinterrobang', similar to + a combination of an exclamation mark and a question mark.} +\endsetslot + +\setslot{interrobangdown.inferior} + \comment{The inverted interrobang symbol `\textinterrobangdown', + similar to a combination of an inverted exclamation mark + and an inverted question mark.} +\endsetslot + +\setslot{dong.inferior} + \comment{The Dong currency sign `\textdong', similar to a lowercase + `d' with a horizontal bar through the stem and another bar below + the letter.} +\endsetslot + +\setslot{trademark.inferior} + \comment{The trademark sign `\texttrademark', similar to the raised + letters `TM'.} +\endsetslot + +\setslot{pertenthousand.inferior} + \comment{The pertenthousand sign `\textpertenthousand', unavailable + in most PostScript fonts.} +\endsetslot + +\setslot{pilcrow.inferior} + \comment{The pilcrow mark `\textpilcrow', similar to a paragraph + mark `\textparagraph' with a single stem.} +\endsetslot + +\setslot{baht.inferior} + \comment{The Baht currency sign `\textbaht', similar to a capital `B' + with a vertical bar through the middle.} +\endsetslot + +\setslot{numero.inferior} + \comment{The numero sign `\textnumero', similar to the letter `N' + with a raised `o', unavailable in most PostScript fonts.} +\endsetslot + +\setslot{discount.inferior} + \comment{The discount sign `\textdiscount', similar to a stylized + percent sign, unavailable in most PostScript fonts.} +\endsetslot + +\setslot{estimated.inferior} + \comment{The estimated sign `\textestimated', similar to an enlarged + lowercase `e', unavailable in most PostScript fonts.} +\endsetslot + +\setslot{openbullet.inferior} + \comment{The centered open bullet `\textopenbullet'', unavailable + in most PostScript fonts.} +\endsetslot + +\setslot{servicemark.inferior} + \comment{The service mark sign `\textservicemark', similar to the + raised letters `SM', unavailable in most PostScript fonts.} +\endsetslot + +\nextslot{160} +\setslot{quillbracketleft.inferior} + \comment{The opening quill bracket `\textlquill', unavailable in + most PostScript fonts.} +\endsetslot + +\setslot{quillbracketright.inferior} + \comment{The closing quill bracket `\textrquill', unavailable in + most PostScript fonts.} +\endsetslot + +\setslot{cent.inferior} + \comment{The cent sign `\textcent'.} +\endsetslot + +\setslot{sterling.inferior} + \comment{The British currency sign, `\textsterling'.} +\endsetslot + +\setslot{currency.inferior} + \comment{The international currency sign, `\textcurrency'.} +\endsetslot + +\setslot{yen.inferior} + \comment{The Japanese currency sign, `\textyen'.} +\endsetslot + +\setslot{brokenbar.inferior} + \comment{A broken vertical bar, `\textbrokenbar', similar to + `\textbar' with a gap through the middle.} +\endsetslot + +\setslot{section.inferior} + \comment{The section mark `\textsection'.} +\endsetslot + +\setslot{asciidieresis.inferior} + \comment{An ASCII-style dieresis `\textasciidieresis'. This is + supposed to be character by itself rather than an accents.} +\endsetslot + +\setslot{copyright.inferior} + \comment{The copyright sign `\textcopyright', similar to a small + letter `C' enclosed by a circle.} +\endsetslot + +\setslot{ordfeminine.inferior} + \comment{The raised letter `\textordfeminine'.} +\endsetslot + +\setslot{copyleft.inferior} + \comment{The reversed copyright sign `\textcopyleft', similar to + a small reversed `C' enclosed by a circle.} +\endsetslot + +\setslot{logicalnot.inferior} + \comment{The logical not sign `\textlnot'.} +\endsetslot + +\setslot{circledP.inferior} + \comment{A small letter `P' enclosed by a circle, `\textcircledP', + unavailable in most fonts.} +\endsetslot + +\setslot{registered.inferior} + \comment{The registered trademark sign `\textregistered', similar to + a small letter `R' enclosed by a circle.} +\endsetslot + +\setslot{asciimacron.inferior} + \comment{An ASCII-style macron `\textasciimacron'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{degree.inferior} + \comment{The degree sign `\textdegree'.} +\endsetslot + +\setslot{plusminus.inferior} + \comment{The plus or minus sign `\textpm'.} +\endsetslot + +\setslot{two.superior} + \comment{The raised digit `\texttwosuperior'.} +\endsetslot + +\setslot{three.superior} + \comment{The raised digit `\textthreesuperior'.} +\endsetslot + +\setslot{asciiacute.inferior} + \comment{An ASCII-style acute `\textasciiacute'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{mu.inferior} + \comment{The lowercase Greek letter `\textmu', intended for use as + a prefix `micro' in physical units.} +\endsetslot + +\setslot{paragraph.inferior} + \comment{The paragraph mark `\textparagraph'.} +\endsetslot + +\setslot{periodcentered.inferior} + \comment{The centered period `\textperiodcentered'.} +\endsetslot + +\setslot{referencemark.inferior} + \comment{The reference mark `\textreferencemark', similar to + a combination of the `multiply' and `divide' symbols.} +\endsetslot + +\setslot{one.superior} + \comment{The raised digit `\textonesuperior'.} +\endsetslot + +\setslot{ordmasculine.inferior} + \comment{The raised letter `\textordmasculine'.} +\endsetslot + +\setslot{radical.inferior} + \comment{The radical sign `\textsurd', unavailable in most fonts. + Even if it is available in Mac-encoded fonts, it isn't directly + accessible in the 8r or 8y encodings.} +\endsetslot + +\setslot{onequarter.inferior} + \comment{The fraction `\textonequarter'.} +\endsetslot + +\setslot{onehalf.inferior} + \comment{The fraction `\textonehalf'.} +\endsetslot + +\setslot{threequarters.inferior} + \comment{The fraction `\textthreequarters'.} +\endsetslot + +\setslot{Euro.inferior} + \comment{The European currency sign, similar to `\texteuro'.} +\endsetslot + + +\nextslot{214} +\setslot{multiply.inferior} + \comment{The multiplication sign `\texttimes'. + This symbol was originally intended to be put into slot~215, + but ended up in this slot by mistake, at which time it was + considered too late to change it.} +\endsetslot + +\nextslot{246} +\setslot{divide.inferior} + \comment{The divison sign `\textdiv'. + This symbol was originally intended to be put into slot~247, + but ended up in this slot by mistake, at which time it was + onsidered too late to change it.} +\endsetslot + +\endencoding + +% \end{macrocode} +% \end{encoding} +% \iffalse +%</ts1-dotinf> +% \fi +% +% +% \subsubsection{ts1-dotsup.etx}\label{subsubsec:ts1-dotsup} +% +% \iffalse +%<*ts1-dotsup> +% \fi +% \begin{encoding}{ts1-dotsup.etx} +% \begin{macrocode} +%% +%% - The commentary in the original is deleted in this version. For +%% information about the TS1 etc., typeset the original ts1.etx +%% included with fontinst. +%% - The original notices at the top of that file concerning authors, +%% maintenance etc. are replaced by this notice. +%% - The file is renamed. +%% - The encoding name is modified. +%% - The file is modified to accommodate differences in glyph names. +%% - The file may be modified for use in encoding other characters. +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\relax + +\encoding + +\setstr{codingscheme}{TEX TEXT COMPANION 1---TS1 DOTSUP} + +\ifisglyph{x}\then + \setint{xheight}{\height{x}} +\else + \setint{xheight}{500} +\fi + +\ifisglyph{space}\then + \setint{interword}{\width{space}} +\else\ifisglyph{i}\then + \setint{interword}{\width{i}} +\else + \setint{interword}{333} +\fi\fi + +\setint{italicslant}{0} + + +\setint{fontdimen(1)}{\int{italicslant}} % italic slant +\setint{fontdimen(2)}{\int{interword}} % interword space +\setint{fontdimen(3)}{0} % interword stretch +\setint{fontdimen(4)}{0} % interword shrink +\setint{fontdimen(5)}{\int{xheight}} % x-height +\setint{fontdimen(6)}{1000} % quad +\setint{fontdimen(7)}{\int{interword}} % extra space after . + +\nextslot{0} +\setslot{capitalgrave.superior} + \comment{The grave accent `\capitalgrave{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalacute.superior} + \comment{The acute accent `\capitalacute{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalcircumflex.superior} + \comment{The circumflex accent `\capitalcircumflex{}', intended for + use with capital letters.} +\endsetslot + +\setslot{capitaltilde.superior} + \comment{The tilde accent `\capitaltilde{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitaldieresis.superior} + \comment{The umlaut or dieresis accent `\capitaldieresis{}', + intended for use with capital letters.} +\endsetslot + +\setslot{capitalhungarumlaut.superior} + \comment{The long Hungarian umlaut `\capitalhungarumlaut{}', + intended for use with capital letters.} +\endsetslot + +\setslot{capitalring.superior} + \comment{The ring accent `\capitalring{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalcaron.superior} + \comment{The caron or h\'a\v cek accent `\capitalcaron{}', intended + for use with capital letters.} +\endsetslot + +\setslot{capitalbreve.superior} + \comment{The breve accent `\capitalbreve{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalmacron.superior} + \comment{The macron accent `\capitalmacron{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitaldotaccent.superior} + \comment{The dot accent `\capitaldotaccent{}', intended for use with + capital letters.} +\endsetslot + +\setslot{cedilla.superior} + \comment{The cedilla accent `\capitalcedilla{}', intended for use + with capital letters.} +\endsetslot + +\setslot{ogonek.superior} + \comment{The ogonek accent `\capitalogonek{}', intended for use with + capital letters.} +\endsetslot + +\nextslot{13} +\setslot{quotesinglbase.superior} + \comment{A straight single quote mark on the baseline, + `\textquotestraightbase'.} +\endsetslot + +\nextslot{18} +\setslot{quotedblbase.superior} + \comment{A straight double quote mark on the baseline, + `\textquotestraightdblbase'.} +\endsetslot + +\nextslot{21} +\setslot{twelveudash.superior} + \comment{A 2/3~em dash, `\texttwelveudash'.} +\endsetslot + +\setslot{threequartersemdash.superior} + \comment{A 3/4~em dash, `\textthreequartersemdash'.} +\endsetslot + +\nextslot{23} +\setslot{capitalcompwordmark.superior} + \comment{An invisible glyph, with zero width and depth, but the + height of capital letters. + It is used to stop ligaturing in words like `shelf{}ful'.} +\endsetslot + +\nextslot{24} +\setslot{arrowleft.superior} + \comment{A left pointing arrow, `\textleftarrow', unavailable in + most PostScript fonts.} +\endsetslot + +\setslot{arrowright.superior} + \comment{A right pointing arrow, `\textrightarrow', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{26} +\setslot{tieaccentlowercase.superior} + \comment{The original tie accent `\t{}', intended for use with + lowercase letters.} +\endsetslot + +\setslot{tieaccentcapital.superior} + \comment{The tie accent `\capitaltie{}', intended for use with + capital letters.} +\endsetslot + +\setslot{newtieaccentlowercase.superior} + \comment{A new tie accent `\newtie{}', intended for use with + lowercase letters.} +\endsetslot + +\setslot{newtieaccentcapital.superior} + \comment{A new tie accent `\capitalnewtie{}', intended for use + with capital letters.} +\endsetslot + +\nextslot{31} +\setslot{ascendercompwordmark.superior} + \comment{An invisible glyph, with zero width and depth, but the + height of lowercase letters with ascenders. + It is used to stop ligaturing in words like `shelf{}ful'.} +\endsetslot + +\nextslot{32} +\setslot{blank.superior} + \comment{The blank indicator `\textblank', similar to the letter `b' + with an oblique bar throgh the stem.} +\endsetslot + +\nextslot{36} +\setslot{dollar.superior} + \comment{The dollar sign `\textdollar'.} +\endsetslot + +\nextslot{39} +\setslot{quotesingle.superior} + \comment{A straight single quote mark, `\textquotesingle'.} +\endsetslot + +\nextslot{42} +\setslot{asteriskcentered.superior} + \comment{The centered asterisk, `\textasteriskcentered'.} +\endsetslot + +\nextslot{44} +\setslot{comma.superior} + \comment{The decimal comma `,'.} +\endsetslot + +\nextslot{45} +\setslot{hyphendbl.superior} + \comment{An alternate double hyphen, `\textdblhyphen'.} +\endsetslot + +\nextslot{46} +\setslot{period.superior} + \comment{The decimal point `.'.} +\endsetslot + +\nextslot{47} +\setslot{fraction.superior} + \comment{The fraction slash `\textfractionsolidus'.} +\endsetslot + +\nextslot{48} +\setslot{zerooldstyle.superior} + \comment{The oldstyle number `\oldstylenums{0}'.} +\endsetslot + +\setslot{oneoldstyle.superior} + \comment{The oldstyle number `\oldstylenums{1}'.} +\endsetslot + +\setslot{twooldstyle.superior} + \comment{The oldstyle number `\oldstylenums{2}'.} +\endsetslot + +\setslot{threeoldstyle.superior} + \comment{The oldstyle number `\oldstylenums{3}'.} +\endsetslot + +\setslot{fouroldstyle.superior} + \comment{The oldstyle number `\oldstylenums{4}'.} +\endsetslot + +\setslot{fiveoldstyle.superior} + \comment{The oldstyle number `\oldstylenums{5}'.} +\endsetslot + +\setslot{sixoldstyle.superior} + \comment{The oldstyle number `\oldstylenums{6}'.} +\endsetslot + +\setslot{sevenoldstyle.superior} + \comment{The oldstyle number `\oldstylenums{7}'.} +\endsetslot + +\setslot{eightoldstyle.superior} + \comment{The oldstyle number `\oldstylenums{8}'.} +\endsetslot + +\setslot{nineoldstyle.superior} + \comment{The oldstyle number `\oldstylenums{9}'.} +\endsetslot + +\nextslot{60} +\setslot{angbracketleft.superior} + \comment{The opening angle bracket `\textlangle', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{61} +\setslot{minus.superior} + \comment{The subtraction sign `\textminus'.} +\endsetslot + +\nextslot{62} +\setslot{angbracketright.superior} + \comment{The closing angle bracket `\textrangle', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{77} +\setslot{Omegainv.superior} + \comment{The inverted Ohm sign `\textmho', unavailable in most fonts.} +\endsetslot + +\nextslot{79} + \comment{A circle `\textbigcircle', big enough to enclose a letter + as in `\textcopyright' or `\textregistered'.} +\setslot{bigcircle.superior} +\endsetslot + +\nextslot{87} +\setslot{Omega.superior} + \comment{The upright Ohm sign `\textohm', unavailable in most fonts. + Even if it is available in Mac-encoded fonts, it isn't directly + accessible in the 8r or 8y encodings.} +\endsetslot + +\nextslot{91} +\setslot{openbracketleft.superior} + \comment{The opening double square bracket `\textlbrackdbl', + unavailable in most PostScript fonts.} +\endsetslot + +\nextslot{93} +\setslot{openbracketright.superior} + \comment{The closing double square bracket `\textrbrackdbl', + unavailable in most PostScript fonts.} +\endsetslot + +\nextslot{94} +\setslot{arrowup.superior} + \comment{An upwards pointing arrow `\textuparrow', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{95} +\setslot{arrowdown.superior} + \comment{An downwards pointing arrow `\textdownarrow', unavailable + in most PostScript fonts.} +\endsetslot + +\nextslot{96} +\setslot{asciigrave.superior} + \comment{An ASCII-style grave `\textasciigrave'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\nextslot{98} +\setslot{born.superior} + \comment{The born symbol `\textborn', unavailable in most PostScript + fonts.} +\endsetslot + +\nextslot{99} +\setslot{divorced.superior} + \comment{The divorced symbol `\textdivorced', unavailable in most + PostScript fonts.} +\endsetslot + +\nextslot{100} +\setslot{died.superior} + \comment{The died symbol `\textdied', unavailable in most PostScript + fonts.} +\endsetslot + +\nextslot{108} +\setslot{leaf.superior} + \comment{The leaf symbol `\textleaf', unavailable in most PostScript + fonts.} +\endsetslot + +\nextslot{109} +\setslot{married.superior} + \comment{The married symbol `\textmarried', unavailable in most + PostScript fonts.} +\endsetslot + +\nextslot{110} +\setslot{musicalnote.superior} + \comment{A musical note symbol `\textmusicalnote', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{126} +\setslot{tildelow.superior} + \comment{A lowered tilde `\texttildelow'. In most PostScript fonts + it can be substituted by `asciitilde', while `\textasciitilde' + is supposed to be a raised `tilde'.} +\endsetslot + +\nextslot{127} +\setslot{hyphendblchar.superior} + \comment{The glyph used for hyphenation in this font, which will + almost always be the same as `hyphendbl'.} +\endsetslot + +\nextslot{128} +\setslot{asciibreve.superior} + \comment{An ASCII-style breve `\textasciibreve'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{asciicaron.superior} + \comment{An ASCII-style caron `\textasciicaron'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{asciiacutedbl.superior} + \comment{An ASCII-style double tick mark, `\textacutedbl'.} +\endsetslot + +\setslot{asciigravedbl.superior} + \comment{An ASCII-style double backtick mark, `\textgravedbl'.} +\endsetslot + +\setslot{dagger.superior} + \comment{The single dagger `\textdagger'.} +\endsetslot + +\setslot{daggerdbl.superior} + \comment{The double dagger `\textdaggerdbl'.} +\endsetslot + +\setslot{bardbl.superior} + \comment{The double vertical bar `\textbardbl'.} +\endsetslot + +\setslot{perthousand.superior} + \comment{The perthousand sign `\textperthousand'.} +\endsetslot + +\setslot{bullet.superior} + \comment{The centered bullet `\textbullet'.} +\endsetslot + +\setslot{centigrade.superior} + \comment{The degree centigrade symbol `\textcelsius'.} +\endsetslot + +\setslot{dollaroldstyle.superior} + \comment{An oldstyle dollar sign `\textdollaroldstyle'.} +\endsetslot + +\setslot{centoldstyle.superior} + \comment{An oldstyle cent sign `\textcentoldstyle'.} +\endsetslot + +\setslot{florin.superior} + \comment{The florin sign `\textflorin'.} +\endsetslot + +\setslot{colonmonetary.superior} + \comment{The Colon currency sign `\textcolonmonetary', similar to + a capital `C' with a vertical bar through the middle.} +\endsetslot + +\setslot{won.superior} + \comment{The Won currency sign `\textwon', similar to a capital `W' + with two horizontal bars.} +\endsetslot + +\setslot{naira.superior} + \comment{The Naira currency sign `\textnaira', similar to a + capital `N' with two horizontal bars.} +\endsetslot + +\setslot{guarani.superior} + \comment{The Guarani currency sign `\textguarani', similar to + a capital `G' with a vertical bar through the middle.} +\endsetslot + +\setslot{peso.superior} + \comment{The Peso currency sign `\textpeso', similar to a capital `P' + with a horizontal bar through the bowl or below the bowl.} +\endsetslot + +\setslot{lira.superior} + \comment{The Lira currency sign `\textlira', similar to a sterling + sign `\textsterling' with two horizontal bars.} +\endsetslot + +\setslot{recipe.superior} + \comment{The recipe symbol `\textrecipe', similar to a capital `R' + with an oblique bar through the tail.} +\endsetslot + +\setslot{interrobang.superior} + \comment{The interrobang symbol `\textinterrobang', similar to + a combination of an exclamation mark and a question mark.} +\endsetslot + +\setslot{interrobangdown.superior} + \comment{The inverted interrobang symbol `\textinterrobangdown', + similar to a combination of an inverted exclamation mark + and an inverted question mark.} +\endsetslot + +\setslot{dong.superior} + \comment{The Dong currency sign `\textdong', similar to a lowercase + `d' with a horizontal bar through the stem and another bar below + the letter.} +\endsetslot + +\setslot{trademark.superior} + \comment{The trademark sign `\texttrademark', similar to the raised + letters `TM'.} +\endsetslot + +\setslot{pertenthousand.superior} + \comment{The pertenthousand sign `\textpertenthousand', unavailable + in most PostScript fonts.} +\endsetslot + +\setslot{pilcrow.superior} + \comment{The pilcrow mark `\textpilcrow', similar to a paragraph + mark `\textparagraph' with a single stem.} +\endsetslot + +\setslot{baht.superior} + \comment{The Baht currency sign `\textbaht', similar to a capital `B' + with a vertical bar through the middle.} +\endsetslot + +\setslot{numero.superior} + \comment{The numero sign `\textnumero', similar to the letter `N' + with a raised `o', unavailable in most PostScript fonts.} +\endsetslot + +\setslot{discount.superior} + \comment{The discount sign `\textdiscount', similar to a stylized + percent sign, unavailable in most PostScript fonts.} +\endsetslot + +\setslot{estimated.superior} + \comment{The estimated sign `\textestimated', similar to an enlarged + lowercase `e', unavailable in most PostScript fonts.} +\endsetslot + +\setslot{openbullet.superior} + \comment{The centered open bullet `\textopenbullet'', unavailable + in most PostScript fonts.} +\endsetslot + +\setslot{servicemark.superior} + \comment{The service mark sign `\textservicemark', similar to the + raised letters `SM', unavailable in most PostScript fonts.} +\endsetslot + +\nextslot{160} +\setslot{quillbracketleft.superior} + \comment{The opening quill bracket `\textlquill', unavailable in + most PostScript fonts.} +\endsetslot + +\setslot{quillbracketright.superior} + \comment{The closing quill bracket `\textrquill', unavailable in + most PostScript fonts.} +\endsetslot + +\setslot{cent.superior} + \comment{The cent sign `\textcent'.} +\endsetslot + +\setslot{sterling.superior} + \comment{The British currency sign, `\textsterling'.} +\endsetslot + +\setslot{currency.superior} + \comment{The international currency sign, `\textcurrency'.} +\endsetslot + +\setslot{yen.superior} + \comment{The Japanese currency sign, `\textyen'.} +\endsetslot + +\setslot{brokenbar.superior} + \comment{A broken vertical bar, `\textbrokenbar', similar to + `\textbar' with a gap through the middle.} +\endsetslot + +\setslot{section.superior} + \comment{The section mark `\textsection'.} +\endsetslot + +\setslot{asciidieresis.superior} + \comment{An ASCII-style dieresis `\textasciidieresis'. This is + supposed to be character by itself rather than an accents.} +\endsetslot + +\setslot{copyright.superior} + \comment{The copyright sign `\textcopyright', similar to a small + letter `C' enclosed by a circle.} +\endsetslot + +\setslot{ordfeminine.superior} + \comment{The raised letter `\textordfeminine'.} +\endsetslot + +\setslot{copyleft.superior} + \comment{The reversed copyright sign `\textcopyleft', similar to + a small reversed `C' enclosed by a circle.} +\endsetslot + +\setslot{logicalnot.superior} + \comment{The logical not sign `\textlnot'.} +\endsetslot + +\setslot{circledP.superior} + \comment{A small letter `P' enclosed by a circle, `\textcircledP', + unavailable in most fonts.} +\endsetslot + +\setslot{registered.superior} + \comment{The registered trademark sign `\textregistered', similar to + a small letter `R' enclosed by a circle.} +\endsetslot + +\setslot{asciimacron.superior} + \comment{An ASCII-style macron `\textasciimacron'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{degree.superior} + \comment{The degree sign `\textdegree'.} +\endsetslot + +\setslot{plusminus.superior} + \comment{The plus or minus sign `\textpm'.} +\endsetslot + +\setslot{two.superior} + \comment{The raised digit `\texttwosuperior'.} +\endsetslot + +\setslot{three.superior} + \comment{The raised digit `\textthreesuperior'.} +\endsetslot + +\setslot{asciiacute.superior} + \comment{An ASCII-style acute `\textasciiacute'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{mu.superior} + \comment{The lowercase Greek letter `\textmu', intended for use as + a prefix `micro' in physical units.} +\endsetslot + +\setslot{paragraph.superior} + \comment{The paragraph mark `\textparagraph'.} +\endsetslot + +\setslot{periodcentered.superior} + \comment{The centered period `\textperiodcentered'.} +\endsetslot + +\setslot{referencemark.superior} + \comment{The reference mark `\textreferencemark', similar to + a combination of the `multiply' and `divide' symbols.} +\endsetslot + +\setslot{one.superior} + \comment{The raised digit `\textonesuperior'.} +\endsetslot + +\setslot{ordmasculine.superior} + \comment{The raised letter `\textordmasculine'.} +\endsetslot + +\setslot{radical.superior} + \comment{The radical sign `\textsurd', unavailable in most fonts. + Even if it is available in Mac-encoded fonts, it isn't directly + accessible in the 8r or 8y encodings.} +\endsetslot + +\setslot{onequarter.superior} + \comment{The fraction `\textonequarter'.} +\endsetslot + +\setslot{onehalf.superior} + \comment{The fraction `\textonehalf'.} +\endsetslot + +\setslot{threequarters.superior} + \comment{The fraction `\textthreequarters'.} +\endsetslot + +\setslot{Euro.superior} + \comment{The European currency sign, similar to `\texteuro'.} +\endsetslot + + +\nextslot{214} +\setslot{multiply.superior} + \comment{The multiplication sign `\texttimes'. + This symbol was originally intended to be put into slot~215, + but ended up in this slot by mistake, at which time it was + considered too late to change it.} +\endsetslot + +\nextslot{246} +\setslot{divide.superior} + \comment{The divison sign `\textdiv'. + This symbol was originally intended to be put into slot~247, + but ended up in this slot by mistake, at which time it was + onsidered too late to change it.} +\endsetslot + +\endencoding + +% \end{macrocode} +% \end{encoding} +% \iffalse +%</ts1-dotsup> +% \fi +% +% +% \subsubsection{ts1-euro.etx}\label{subsubsec:ts1-euro} +% +% \iffalse +%<*ts1-euro> +% \fi +% \begin{encoding}{ts1-euro.etx} +% \begin{macrocode} +%% +%% - The original notices at the top of that file concerning authors, +%% maintenance etc. are replaced by this notice. +%% - The file is renamed. +%% - The encoding is modified to accommodate euro/Euro.% +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\relax +\encoding + +\setstr{codingscheme}{TEX TEXT COMPANION 1---TS1 - EURO} + +\ifisglyph{x}\then + \setint{xheight}{\height{x}} +\else + \setint{xheight}{500} +\fi + +\ifisglyph{space}\then + \setint{interword}{\width{space}} +\else\ifisglyph{i}\then + \setint{interword}{\width{i}} +\else + \setint{interword}{333} +\fi\fi + + +\setint{italicslant}{0} + + +\setint{fontdimen(1)}{\int{italicslant}} % italic slant +\setint{fontdimen(2)}{\int{interword}} % interword space +\setint{fontdimen(3)}{0} % interword stretch +\setint{fontdimen(4)}{0} % interword shrink +\setint{fontdimen(5)}{\int{xheight}} % x-height +\setint{fontdimen(6)}{1000} % quad +\setint{fontdimen(7)}{\int{interword}} % extra space after . + + +\nextslot{0} +\setslot{capitalgrave} + \comment{The grave accent `\capitalgrave{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalacute} + \comment{The acute accent `\capitalacute{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalcircumflex} + \comment{The circumflex accent `\capitalcircumflex{}', intended for + use with capital letters.} +\endsetslot + +\setslot{capitaltilde} + \comment{The tilde accent `\capitaltilde{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitaldieresis} + \comment{The umlaut or dieresis accent `\capitaldieresis{}', + intended for use with capital letters.} +\endsetslot + +\setslot{capitalhungarumlaut} + \comment{The long Hungarian umlaut `\capitalhungarumlaut{}', + intended for use with capital letters.} +\endsetslot + +\setslot{capitalring} + \comment{The ring accent `\capitalring{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalcaron} + \comment{The caron or h\'a\v cek accent `\capitalcaron{}', intended + for use with capital letters.} +\endsetslot + +\setslot{capitalbreve} + \comment{The breve accent `\capitalbreve{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitalmacron} + \comment{The macron accent `\capitalmacron{}', intended for use with + capital letters.} +\endsetslot + +\setslot{capitaldotaccent} + \comment{The dot accent `\capitaldotaccent{}', intended for use with + capital letters.} +\endsetslot + +\setslot{cedilla} + \comment{The cedilla accent `\capitalcedilla{}', intended for use + with capital letters.} +\endsetslot + +\setslot{ogonek} + \comment{The ogonek accent `\capitalogonek{}', intended for use with + capital letters.} +\endsetslot + +\nextslot{13} +\setslot{quotesinglbase} + \comment{A straight single quote mark on the baseline, + `\textquotestraightbase'.} +\endsetslot + +\nextslot{18} +\setslot{quotedblbase} + \comment{A straight double quote mark on the baseline, + `\textquotestraightdblbase'.} +\endsetslot + +\nextslot{21} +\setslot{twelveudash} + \comment{A 2/3~em dash, `\texttwelveudash'.} +\endsetslot + +\setslot{threequartersemdash} + \comment{A 3/4~em dash, `\textthreequartersemdash'.} +\endsetslot + +\nextslot{23} +\setslot{capitalcompwordmark} + \comment{An invisible glyph, with zero width and depth, but the + height of capital letters. + It is used to stop ligaturing in words like `shelf{}ful'.} +\endsetslot + +\nextslot{24} +\setslot{arrowleft} + \comment{A left pointing arrow, `\textleftarrow', unavailable in + most PostScript fonts.} +\endsetslot + +\setslot{arrowright} + \comment{A right pointing arrow, `\textrightarrow', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{26} +\setslot{tieaccentlowercase} + \comment{The original tie accent `\t{}', intended for use with + lowercase letters.} +\endsetslot + +\setslot{tieaccentcapital} + \comment{The tie accent `\capitaltie{}', intended for use with + capital letters.} +\endsetslot + +\setslot{newtieaccentlowercase} + \comment{A new tie accent `\newtie{}', intended for use with + lowercase letters.} +\endsetslot + +\setslot{newtieaccentcapital} + \comment{A new tie accent `\capitalnewtie{}', intended for use + with capital letters.} +\endsetslot + +\nextslot{31} +\setslot{ascendercompwordmark} + \comment{An invisible glyph, with zero width and depth, but the + height of lowercase letters with ascenders. + It is used to stop ligaturing in words like `shelf{}ful'.} +\endsetslot + +\nextslot{32} +\setslot{blank} + \comment{The blank indicator `\textblank', similar to the letter `b' + with an oblique bar throgh the stem.} +\endsetslot + +\nextslot{36} +\setslot{dollar} + \comment{The dollar sign `\textdollar'.} +\endsetslot + +\nextslot{39} +\setslot{quotesingle} + \comment{A straight single quote mark, `\textquotesingle'.} +\endsetslot + +\nextslot{42} +\setslot{asteriskcentered} + \comment{The centered asterisk, `\textasteriskcentered'.} +\endsetslot + +\nextslot{44} +\setslot{comma} + \comment{The decimal comma `,'.} +\endsetslot + +\nextslot{45} +\setslot{hyphendbl} + \comment{An alternate double hyphen, `\textdblhyphen'.} +\endsetslot + +\nextslot{46} +\setslot{period} + \comment{The decimal point `.'.} +\endsetslot + +\nextslot{47} +\setslot{fraction} + \comment{The fraction slash `\textfractionsolidus'.} +\endsetslot + +\nextslot{48} +\setslot{zerooldstyle} + \comment{The oldstyle number `\oldstylenums{0}'.} +\endsetslot + +\setslot{oneoldstyle} + \comment{The oldstyle number `\oldstylenums{1}'.} +\endsetslot + +\setslot{twooldstyle} + \comment{The oldstyle number `\oldstylenums{2}'.} +\endsetslot + +\setslot{threeoldstyle} + \comment{The oldstyle number `\oldstylenums{3}'.} +\endsetslot + +\setslot{fouroldstyle} + \comment{The oldstyle number `\oldstylenums{4}'.} +\endsetslot + +\setslot{fiveoldstyle} + \comment{The oldstyle number `\oldstylenums{5}'.} +\endsetslot + +\setslot{sixoldstyle} + \comment{The oldstyle number `\oldstylenums{6}'.} +\endsetslot + +\setslot{sevenoldstyle} + \comment{The oldstyle number `\oldstylenums{7}'.} +\endsetslot + +\setslot{eightoldstyle} + \comment{The oldstyle number `\oldstylenums{8}'.} +\endsetslot + +\setslot{nineoldstyle} + \comment{The oldstyle number `\oldstylenums{9}'.} +\endsetslot + +\nextslot{60} +\setslot{angbracketleft} + \comment{The opening angle bracket `\textlangle', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{61} +\setslot{minus} + \comment{The subtraction sign `\textminus'.} +\endsetslot + +\nextslot{62} +\setslot{angbracketright} + \comment{The closing angle bracket `\textrangle', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{77} +\setslot{Omegainv} + \comment{The inverted Ohm sign `\textmho', unavailable in most fonts.} +\endsetslot + +\nextslot{79} + \comment{A circle `\textbigcircle', big enough to enclose a letter + as in `\textcopyright' or `\textregistered'.} +\setslot{bigcircle} +\endsetslot + +\nextslot{87} +\setslot{Omega} + \comment{The upright Ohm sign `\textohm', unavailable in most fonts. + Even if it is available in Mac-encoded fonts, it isn't directly + accessible in the 8r or 8y encodings.} +\endsetslot + +\nextslot{91} +\setslot{openbracketleft} + \comment{The opening double square bracket `\textlbrackdbl', + unavailable in most PostScript fonts.} +\endsetslot + +\nextslot{93} +\setslot{openbracketright} + \comment{The closing double square bracket `\textrbrackdbl', + unavailable in most PostScript fonts.} +\endsetslot + +\nextslot{94} +\setslot{arrowup} + \comment{An upwards pointing arrow `\textuparrow', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{95} +\setslot{arrowdown} + \comment{An downwards pointing arrow `\textdownarrow', unavailable + in most PostScript fonts.} +\endsetslot + +\nextslot{96} +\setslot{asciigrave} + \comment{An ASCII-style grave `\textasciigrave'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\nextslot{98} +\setslot{born} + \comment{The born symbol `\textborn', unavailable in most PostScript + fonts.} +\endsetslot + +\nextslot{99} +\setslot{divorced} + \comment{The divorced symbol `\textdivorced', unavailable in most + PostScript fonts.} +\endsetslot + +\nextslot{100} +\setslot{died} + \comment{The died symbol `\textdied', unavailable in most PostScript + fonts.} +\endsetslot + +\nextslot{108} +\setslot{leaf} + \comment{The leaf symbol `\textleaf', unavailable in most PostScript + fonts.} +\endsetslot + +\nextslot{109} +\setslot{married} + \comment{The married symbol `\textmarried', unavailable in most + PostScript fonts.} +\endsetslot + +\nextslot{110} +\setslot{musicalnote} + \comment{A musical note symbol `\textmusicalnote', unavailable in + most PostScript fonts.} +\endsetslot + +\nextslot{126} +\setslot{tildelow} + \comment{A lowered tilde `\texttildelow'. In most PostScript fonts + it can be substituted by `asciitilde', while `\textasciitilde' + is supposed to be a raised `tilde'.} +\endsetslot + +\nextslot{127} +\setslot{hyphendblchar} + \comment{The glyph used for hyphenation in this font, which will + almost always be the same as `hyphendbl'.} +\endsetslot + +\nextslot{128} +\setslot{asciibreve} + \comment{An ASCII-style breve `\textasciibreve'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{asciicaron} + \comment{An ASCII-style caron `\textasciicaron'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{asciiacutedbl} + \comment{An ASCII-style double tick mark, `\textacutedbl'.} +\endsetslot + +\setslot{asciigravedbl} + \comment{An ASCII-style double backtick mark, `\textgravedbl'.} +\endsetslot + +\setslot{dagger} + \comment{The single dagger `\textdagger'.} +\endsetslot + +\setslot{daggerdbl} + \comment{The double dagger `\textdaggerdbl'.} +\endsetslot + +\setslot{bardbl} + \comment{The double vertical bar `\textbardbl'.} +\endsetslot + +\setslot{perthousand} + \comment{The perthousand sign `\textperthousand'.} +\endsetslot + +\setslot{bullet} + \comment{The centered bullet `\textbullet'.} +\endsetslot + +\setslot{centigrade} + \comment{The degree centigrade symbol `\textcelsius'.} +\endsetslot + +\setslot{dollaroldstyle} + \comment{An oldstyle dollar sign `\textdollaroldstyle'.} +\endsetslot + +\setslot{centoldstyle} + \comment{An oldstyle cent sign `\textcentoldstyle'.} +\endsetslot + +\setslot{florin} + \comment{The florin sign `\textflorin'.} +\endsetslot + +\setslot{colonmonetary} + \comment{The Colon currency sign `\textcolonmonetary', similar to + a capital `C' with a vertical bar through the middle.} +\endsetslot + +\setslot{won} + \comment{The Won currency sign `\textwon', similar to a capital `W' + with two horizontal bars.} +\endsetslot + +\setslot{naira} + \comment{The Naira currency sign `\textnaira', similar to a + capital `N' with two horizontal bars.} +\endsetslot + +\setslot{guarani} + \comment{The Guarani currency sign `\textguarani', similar to + a capital `G' with a vertical bar through the middle.} +\endsetslot + +\setslot{peso} + \comment{The Peso currency sign `\textpeso', similar to a capital `P' + with a horizontal bar through the bowl or below the bowl.} +\endsetslot + +\setslot{lira} + \comment{The Lira currency sign `\textlira', similar to a sterling + sign `\textsterling' with two horizontal bars.} +\endsetslot + +\setslot{recipe} + \comment{The recipe symbol `\textrecipe', similar to a capital `R' + with an oblique bar through the tail.} +\endsetslot + +\setslot{interrobang} + \comment{The interrobang symbol `\textinterrobang', similar to + a combination of an exclamation mark and a question mark.} +\endsetslot + +\setslot{interrobangdown} + \comment{The inverted interrobang symbol `\textinterrobangdown', + similar to a combination of an inverted exclamation mark + and an inverted question mark.} +\endsetslot + +\setslot{dong} + \comment{The Dong currency sign `\textdong', similar to a lowercase + `d' with a horizontal bar through the stem and another bar below + the letter.} +\endsetslot + +\setslot{trademark} + \comment{The trademark sign `\texttrademark', similar to the raised + letters `TM'.} +\endsetslot + +\setslot{pertenthousand} + \comment{The pertenthousand sign `\textpertenthousand', unavailable + in most PostScript fonts.} +\endsetslot + +\setslot{pilcrow} + \comment{The pilcrow mark `\textpilcrow', similar to a paragraph + mark `\textparagraph' with a single stem.} +\endsetslot + +\setslot{baht} + \comment{The Baht currency sign `\textbaht', similar to a capital `B' + with a vertical bar through the middle.} +\endsetslot + +\setslot{numero} + \comment{The numero sign `\textnumero', similar to the letter `N' + with a raised `o', unavailable in most PostScript fonts.} +\endsetslot + +\setslot{discount} + \comment{The discount sign `\textdiscount', similar to a stylized + percent sign, unavailable in most PostScript fonts.} +\endsetslot + +\setslot{estimated} + \comment{The estimated sign `\textestimated', similar to an enlarged + lowercase `e', unavailable in most PostScript fonts.} +\endsetslot + +\setslot{openbullet} + \comment{The centered open bullet `\textopenbullet'', unavailable + in most PostScript fonts.} +\endsetslot + +\setslot{servicemark} + \comment{The service mark sign `\textservicemark', similar to the + raised letters `SM', unavailable in most PostScript fonts.} +\endsetslot + +\nextslot{160} +\setslot{quillbracketleft} + \comment{The opening quill bracket `\textlquill', unavailable in + most PostScript fonts.} +\endsetslot + +\setslot{quillbracketright} + \comment{The closing quill bracket `\textrquill', unavailable in + most PostScript fonts.} +\endsetslot + +\setslot{cent} + \comment{The cent sign `\textcent'.} +\endsetslot + +\setslot{sterling} + \comment{The British currency sign, `\textsterling'.} +\endsetslot + +\setslot{currency} + \comment{The international currency sign, `\textcurrency'.} +\endsetslot + +\setslot{yen} + \comment{The Japanese currency sign, `\textyen'.} +\endsetslot + +\setslot{brokenbar} + \comment{A broken vertical bar, `\textbrokenbar', similar to + `\textbar' with a gap through the middle.} +\endsetslot + +\setslot{section} + \comment{The section mark `\textsection'.} +\endsetslot + +\setslot{asciidieresis} + \comment{An ASCII-style dieresis `\textasciidieresis'. This is + supposed to be character by itself rather than an accents.} +\endsetslot + +\setslot{copyright} + \comment{The copyright sign `\textcopyright', similar to a small + letter `C' enclosed by a circle.} +\endsetslot + +\setslot{ordfeminine} + \comment{The raised letter `\textordfeminine'.} +\endsetslot + +\setslot{copyleft} + \comment{The reversed copyright sign `\textcopyleft', similar to + a small reversed `C' enclosed by a circle.} +\endsetslot + +\setslot{logicalnot} + \comment{The logical not sign `\textlnot'.} +\endsetslot + +\setslot{circledP} + \comment{A small letter `P' enclosed by a circle, `\textcircledP', + unavailable in most fonts.} +\endsetslot + +\setslot{registered} + \comment{The registered trademark sign `\textregistered', similar to + a small letter `R' enclosed by a circle.} +\endsetslot + +\setslot{asciimacron} + \comment{An ASCII-style macron `\textasciimacron'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{degree} + \comment{The degree sign `\textdegree'.} +\endsetslot + +\setslot{plusminus} + \comment{The plus or minus sign `\textpm'.} +\endsetslot + +\setslot{twosuperior} + \comment{The raised digit `\texttwosuperior'.} +\endsetslot + +\setslot{threesuperior} + \comment{The raised digit `\textthreesuperior'.} +\endsetslot + +\setslot{asciiacute} + \comment{An ASCII-style acute `\textasciiacute'. This is supposed + to be a character by itself rather than a combining accents.} +\endsetslot + +\setslot{mu} + \comment{The lowercase Greek letter `\textmu', intended for use as + a prefix `micro' in physical units.} +\endsetslot + +\setslot{paragraph} + \comment{The paragraph mark `\textparagraph'.} +\endsetslot + +\setslot{periodcentered} + \comment{The centered period `\textperiodcentered'.} +\endsetslot + +\setslot{referencemark} + \comment{The reference mark `\textreferencemark', similar to + a combination of the `multiply' and `divide' symbols.} +\endsetslot + +\setslot{onesuperior} + \comment{The raised digit `\textonesuperior'.} +\endsetslot + +\setslot{ordmasculine} + \comment{The raised letter `\textordmasculine'.} +\endsetslot + +\setslot{radical} + \comment{The radical sign `\textsurd', unavailable in most fonts. + Even if it is available in Mac-encoded fonts, it isn't directly + accessible in the 8r or 8y encodings.} +\endsetslot + +\setslot{onequarter} + \comment{The fraction `\textonequarter'.} +\endsetslot + +\setslot{onehalf} + \comment{The fraction `\textonehalf'.} +\endsetslot + +\setslot{threequarters} + \comment{The fraction `\textthreequarters'.} +\endsetslot + +\ifisglyph{euro}\then + \setslot{euro} + \comment{The European currency sign, similar to `\texteuro'.} + \endsetslot +\Else + \setslot{Euro} + \comment{The European currency sign, similar to `\texteuro'.} + \endsetslot +\Fi + +\setslot{Euro} + \comment{This just makes sure that any glyph labelled `Euro' in the font gets encoded. + The TS1 encoding will use the previous slot when the font is actually used by tex. + At least, I think so. + That is, since we've got spare slots in this encoding, we can use them to enable `either... or...' encoding options both for reencoding the fonts for fontinst and for the tex encodings. (?!)} +\endsetslot + +\setslot{euro} + \comment{This just makes sure that any glyph labelled `euro' in the font gets encoded. + The TS1 encoding will use the previous slot when the font is actually used by tex. + At least, I think so. + That is, since we've got spare slots in this encoding, we can use them to enable `either... or...' encoding options both for reencoding the fonts for fontinst and for the tex encodings. (?!)} +\endsetslot + +\nextslot{214} +\setslot{multiply} + \comment{The multiplication sign `\texttimes'. + This symbol was originally intended to be put into slot~215, + but ended up in this slot by mistake, at which time it was + considered too late to change it.} +\endsetslot + +\nextslot{246} +\setslot{divide} + \comment{The divison sign `\textdiv'. + This symbol was originally intended to be put into slot~247, + but ended up in this slot by mistake, at which time it was + onsidered too late to change it.} +\endsetslot + +\endencoding + + +% \end{macrocode} +% \end{encoding} +% \iffalse +%</ts1-euro> +% \fi +% +% +% \subsubsection{ucdotalt.etx}\label{subsubsec:ucdotalt} +% +% \iffalse +%<*ucdotalt> +% \fi +% \begin{encoding}{ucdotalt.etx} +% \begin{macrocode} +\relax +\encoding + +\setcommand\uc#1#2{#1.alt} +\setcommand\uctop#1#2{#1.alt} +\ifisint{letterspacing}\then + \ifnumber{\int{letterspacing}}={0}\then \Else + \setcommand\uclig#1#2{#1.altspaced} + \comment{Here we set \verb|\uclig#1#2| to \verb|#1.altspaced|, but + you can't see it as \verb|\setcommand| commands are invisible in + the typeset output.} + \Fi +\Fi +\setcommand\uclig#1#2{#1.alt} + +\endencoding +% \end{macrocode} +% \end{encoding} +% \iffalse +%</ucdotalt> +% \fi +% +%\Finale diff --git a/fonts/utilities/fontscripts/fontscripts.ins b/fonts/utilities/fontscripts/fontscripts.ins new file mode 100644 index 0000000000..131ef1ba97 --- /dev/null +++ b/fonts/utilities/fontscripts/fontscripts.ins @@ -0,0 +1,266 @@ +% $Id: fontscripts.ins 10383 2024-09-25 15:45:11Z cfrees $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% fontscripts.ins +%% Additions and changes Copyright (C) -2024 Clea F. Rees. +%% Code from skeleton.ins Copyright (C) 2015-2024 Scott Pakin (see below). +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% https://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2008-05-04 or later. +%% +%% This work has the LPPL maintenance status `maintained'. +%% +%% The Current Maintainer of this work is Clea F. Rees. +%% +%% This work consists of all files listed in manifest.txt. +%% +%% The file fontscripts.ins is a derived work under the terms of the +%% LPPL. It is based on version 2.4 of skeleton.ins which is part of +%% dtxtut by Scott Pakin. A copy of dtxtut, including the +%% unmodified version of skeleton.ins is available from +%% https://www.ctan.org/pkg/dtxtut and released under the LPPL. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\input docstrip.tex +\keepsilent + +%% ??? +\usedir{doc/fonts/fontscripts} + + + +\begingroup +\obeyspaces +\let\maybenoexpand\noexpand +\xdef\mkpreamble{% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +^^J\DoubleperCent\space +Copyright (C) \maybenoexpand\targDates Clea F. Rees.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work may be distributed and/or modified under the^^J\DoubleperCent\space +conditions of the LaTeX Project Public License, either version 1.3c^^J\DoubleperCent\space +of this license or (at your option) any later version.^^J\DoubleperCent\space +The latest version of this license is in^^J\DoubleperCent\space + https://www.latex-project.org/lppl.txt^^J\DoubleperCent\space +and version 1.3c or later is part of all distributions of LaTeX^^J\DoubleperCent\space +version 2008-05-04 or later.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work has the LPPL maintenance status `maintained'.^^J\DoubleperCent\space +^^J\DoubleperCent\space +The Current Maintainer of this work is Clea F. Rees.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This file may only be distributed together with a copy of the package^^J\DoubleperCent\space +fontscripts. You may however distribute the package fontscripts without^^J\DoubleperCent\space +such generated files.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work consists of all files listed in manifest.txt.^^J\DoubleperCent\space +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +} +\xdef\mkderpreamble{% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +^^J\DoubleperCent\space +Additions and changes Copyright (C) \maybenoexpand\targDates Clea F. Rees.^^J\DoubleperCent\space +Code from \maybenoexpand\basePkgName Copyright (C) \maybenoexpand\baseDates \maybenoexpand\basePkgAu (see below)^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work may be distributed and/or modified under the^^J\DoubleperCent\space +conditions of the LaTeX Project Public License, either version 1.3c^^J\DoubleperCent\space +of this license or (at your option) any later version.^^J\DoubleperCent\space +The latest version of this license is in^^J\DoubleperCent\space + https://www.latex-project.org/lppl.txt^^J\DoubleperCent\space +and version 1.3c or later is part of all distributions of LaTeX^^J\DoubleperCent\space +version 2008-05-04 or later.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work has the LPPL maintenance status `maintained'.^^J\DoubleperCent\space +^^J\DoubleperCent\space +The Current Maintainer of this work is Clea F. Rees.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work consists of all files listed in manifest.txt.^^J\DoubleperCent\space +^^J\DoubleperCent\space +\maybenoexpand\targType\maybenoexpand\outFileName is a derived work under the terms of the^^J\DoubleperCent\space +LPPL. The original file, \maybenoexpand\baseFileName, is supplied with \maybenoexpand\basePkgName. A copy^^J\DoubleperCent\space +of \maybenoexpand\basePkgName including an unmodified copy of \maybenoexpand\baseFileName is available from^^J\DoubleperCent\space +https://www.ctan.org/pkg/\maybenoexpand\basePkgName.^^J\DoubleperCent\space +The main modifications made to this file are listed below.^^J\DoubleperCent\space +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +} +\xdef\mkbasedpreamble{% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +^^J\DoubleperCent\space +Additions and changes Copyright (C) \maybenoexpand\targDates Clea F. Rees.^^J\DoubleperCent\space +Code from \maybenoexpand\basePkgName Copyright (C) \maybenoexpand\baseDates \maybenoexpand\basePkgAu (see below)^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work may be distributed and/or modified under the^^J\DoubleperCent\space +conditions of the LaTeX Project Public License, either version 1.3c^^J\DoubleperCent\space +of this license or (at your option) any later version.^^J\DoubleperCent\space +The latest version of this license is in^^J\DoubleperCent\space + https://www.latex-project.org/lppl.txt^^J\DoubleperCent\space +and version 1.3c or later is part of all distributions of LaTeX^^J\DoubleperCent\space +version 2008-05-04 or later.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work has the LPPL maintenance status `maintained'.^^J\DoubleperCent\space +^^J\DoubleperCent\space +The Current Maintainer of this work is Clea F. Rees.^^J\DoubleperCent\space +^^J\DoubleperCent\space +This work consists of all files listed in manifest.txt.^^J\DoubleperCent\space +^^J\DoubleperCent\space +\maybenoexpand\targType\maybenoexpand\outFileName is a derived work under the terms of the LPPL. ^^J\DoubleperCent\space +It is based on \maybenoexpand\baseFileName from \maybenoexpand\basePkgName. A copy of \maybenoexpand\basePkgName ^^J\DoubleperCent\space +including a copy of \maybenoexpand\baseFileName is available from^^J\DoubleperCent\space +https://www.ctan.org/pkg/\maybenoexpand\basePkgName. See \maybenoexpand\baseFileName for commentary.^^J\DoubleperCent\space +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +} +\endgroup +\def\targDates{2024} +\expandafter\declarepreamble\expandafter\safonol\mkpreamble +\endpreamble +\def\targDates{2008-2024} +\expandafter\declarepreamble\expandafter\safonolenc\mkpreamble +\endpreamble +\def\targType{The encoding } +\def\basePkgName{fontinst} +\def\baseFileName{t1.etx} +\def\basePkgAu{Alan Jeffrey and Sebastian^^J\DoubleperCent\space Rahtz and Ulrik Vieth and Lars Hellström (see below)} +\def\baseDates{2002} +\expandafter\declarepreamble\expandafter\derpreamblefi\mkderpreamble +\endpreamble +\def\targDates{2024} +\expandafter\declarepreamble\expandafter\derpreamblefin\mkderpreamble +\endpreamble +\def\baseFileName{ts1.etx} +\expandafter\declarepreamble\expandafter\derpreamblefintc\mkderpreamble +\endpreamble +\def\targDates{2008-2024} +\expandafter\declarepreamble\expandafter\derpreamblefitc\mkderpreamble +\endpreamble +\def\targType{The metrics file } +\def\baseFileName{newlatin.mtx} +\expandafter\declarepreamble\expandafter\derpreamblefim\mkderpreamble +\endpreamble +\def\baseFileName{lsmisc.mtx} +\expandafter\declarepreamble\expandafter\basedpreamblefimm\mkbasedpreamble +\endpreamble +\def\baseFileName{lsbuild.mtx} +\expandafter\declarepreamble\expandafter\basedpreamblefimb\mkbasedpreamble +\endpreamble + +\askforoverwritefalse + +\usepreamble\safonol + +\generate{% + \file{fnt-tables.tex}{\from{fontscripts.dtx}{tables}} + \usepreamble\safonolenc + \file{dotoldstyle.etx}{\from{fontscripts.dtx}{dotoldstyle}} + \file{dotsc2.etx}{\from{fontscripts.dtx}{dotsc2}} + \file{dottaboldstyle.etx}{\from{fontscripts.dtx}{dottaboldstyle}} + \file{lining.etx}{\from{fontscripts.dtx}{lining}} + \file{oldstyle.etx}{\from{fontscripts.dtx}{oldstyle}} + \file{t1j-f_f.etx}{\from{fontscripts.dtx}{t1j-f-f}} + \file{ucdotalt.etx}{\from{fontscripts.dtx}{ucdotalt}} + \usepreamble\derpreamblefi + \file{t1-cfr.etx}{\from{fontscripts.dtx}{t1-cfr}} + \file{t1-dotalt-f_f.etx}{\from{fontscripts.dtx}{t1-dotalt-f-f}} + \usepreamble\derpreamblefin + \file{t1-dotinf.etx}{\from{fontscripts.dtx}{t1-dotinf}} + \usepreamble\derpreamblefi + \file{t1-dotinferior.etx}{\from{fontscripts.dtx}{t1-dotinferior}} + \usepreamble\derpreamblefin + \file{t1-dotsup.etx}{\from{fontscripts.dtx}{t1-dotsup}} + \usepreamble\derpreamblefi + \file{t1-dotsuperior.etx}{\from{fontscripts.dtx}{t1-dotsuperior}} + \file{t1-f_f.etx}{\from{fontscripts.dtx}{t1-f-f}} + \usepreamble\derpreamblefintc + \file{ts1-dotinf.etx}{\from{fontscripts.dtx}{ts1-dotinf}} + \usepreamble\derpreamblefintc + \file{ts1-dotsup.etx}{\from{fontscripts.dtx}{ts1-dotsup}} + \usepreamble\derpreamblefitc + \file{ts1-euro.etx}{\from{fontscripts.dtx}{ts1-euro}} + \usepreamble\derpreamblefim + \file{newlatin-dotsc.mtx}{\from{fontscripts.dtx}{newlatin-dotsc}} + \usepreamble\basedpreamblefimb + \file{dotscbuild.mtx}{\from{fontscripts.dtx}{dotscbuild}} + \usepreamble\basedpreamblefimm + \file{dotscmisc.mtx}{\from{fontscripts.dtx}{dotscmisc}} +} + + +% don't pollute scripts with wrongly marked up comments +\edef\MetaPrefix{\string-\string-} +% redeclare preambles above with correct \MetaPrefix + +\def \baseFileName{} +\def \basePkgName{l3build} +\def \baseDates{2014-2024} +\def \targDates{2024} +\def \basePkgAu{The LaTeX Project Team} +\def \targType{The file } +\def \preChanges{- almost all content is deleted.} + +\declarepreamble\safonol +------------------------------------------------- +Copyright (C) 2024 Clea F. Rees. + +This work may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3c +of this license or (at your option) any later version. +The latest version of this license is in + https://www.latex-project.org/lppl.txt +and version 1.3c or later is part of all distributions of LaTeX +version 2008-05-04 or later. + +This work has the LPPL maintenance status `maintained'. + +The Current Maintainer of this work is Clea F. Rees. + +This file may only be distributed together with a copy of the package +fontscripts. You may however distribute the package fontscripts without +such generated files. + +This work consists of all files listed in manifest.txt. +------------------------------------------------- +\endpreamble + +\declarepreamble\tagpreamble +------------------------------------------------- +Additions and changes Copyright (C) 2024 Clea F. Rees. +Code from \basePkgName Copyright (C) \baseDates \basePkgAu (see below) + +This work may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3c +of this license or (at your option) any later version. +The latest version of this license is in + https://www.latex-project.org/lppl.txt +and version 1.3c or later is part of all distributions of LaTeX +version 2008-05-04 or later. + +This work has the LPPL maintenance status `maintained'. + +The Current Maintainer of this work is Clea F. Rees. + +This work consists of all files listed in manifest.txt. + +\targType\outFileName is a derived work under the terms of the +LPPL. The original file, \baseFileName, is supplied with \basePkgName. A copy +of \basePkgName including an unmodified copy of \baseFileName is available from +https://www.ctan.org/pkg/\basePkgName. +The main modifications made to this file are as follows: +\preChanges +------------------------------------------------- +\endpreamble + + +\generate{% + % \usepreamble\safonol + % \nopostamble + % \file{fontinst.lua}{\from{fontscripts.dtx}{fontinst}} + \askforoverwritetrue + \usepreamble\tagpreamble + % I really seriously doubt this should have a copyright notice at all + \file{tag.lua}{\from{fontscripts.dtx}{tag}} +} + +\endbatchfile diff --git a/fonts/utilities/fontscripts/fontscripts.pdf b/fonts/utilities/fontscripts/fontscripts.pdf Binary files differnew file mode 100644 index 0000000000..197fa29ad6 --- /dev/null +++ b/fonts/utilities/fontscripts/fontscripts.pdf diff --git a/fonts/utilities/fontscripts/manifest.txt b/fonts/utilities/fontscripts/manifest.txt new file mode 100644 index 0000000000..0d8c6e8628 --- /dev/null +++ b/fonts/utilities/fontscripts/manifest.txt @@ -0,0 +1,63 @@ +# Manifest for fontscripts + +Copyright (C) 2024 Clea F. Rees + +This work may be distributed and/or modified under the conditions of the LaTeX +Project Public License, either version 1.3c of this license or (at your option) +any later version. The latest version of this license is in + https://www.latex-project.org/lppl.txt +and version 1.3 or later is part of all distributions of LaTeX version +2008-05-04 or later. + +This work has the LPPL maintenance status `maintained'. + +The Current Maintainer of this work is Clea F. Rees. + +This work consists of all files listed in manifest.txt. + +This file was automatically generated by `l3build manifest`. + +## Source files + + +### Package files + +* fontscripts.dtx +* fontscripts.ins +* fontinst.lua +* fnt-ctan.lua +* README.md + + +## Derived files + + +### Package files + +* manifest.txt +* dotoldstyle.etx +* dotsc2.etx +* dottaboldstyle.etx +* lining.etx +* oldstyle.etx +* t1-cfr.etx +* t1-dotalt-f_f.etx +* t1-dotinf.etx +* t1-dotinferior.etx +* t1-dotsup.etx +* t1-dotsuperior.etx +* t1-f_f.etx +* t1j-f_f.etx +* ts1-dotinf.etx +* ts1-dotsup.etx +* ts1-euro.etx +* ucdotalt.etx +* tag.lua +* dotscbuild.mtx +* dotscmisc.mtx +* newlatin-dotsc.mtx +* fnt-tables.tex + +### Typeset documentation + +* fontscripts.pdf |