summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/man/man1/autoinst.1
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-05-02 22:48:32 +0000
committerKarl Berry <karl@freefriends.org>2019-05-02 22:48:32 +0000
commitc3ddc753d39a505f4714a4400a6138b8e45d8974 (patch)
treeefaf2e511aac8d3afb1b8dd08df9c8f50133d421 /Master/texmf-dist/doc/man/man1/autoinst.1
parent50e57eb2a5bb599dcf7329fa942bc83df1015085 (diff)
fontools (23apr19)
git-svn-id: svn://tug.org/texlive/trunk@50947 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/man/man1/autoinst.1')
-rw-r--r--Master/texmf-dist/doc/man/man1/autoinst.1253
1 files changed, 155 insertions, 98 deletions
diff --git a/Master/texmf-dist/doc/man/man1/autoinst.1 b/Master/texmf-dist/doc/man/man1/autoinst.1
index b00c7c897f3..41f97828c3a 100644
--- a/Master/texmf-dist/doc/man/man1/autoinst.1
+++ b/Master/texmf-dist/doc/man/man1/autoinst.1
@@ -133,14 +133,14 @@
.\" ========================================================================
.\"
.IX Title "AUTOINST 1"
-.TH AUTOINST 1 "2019-04-01" "fontools" "Marc Penninga"
+.TH AUTOINST 1 "2019-04-22" "fontools" "Marc Penninga"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
autoinst \- wrapper around the LCDF TypeTools,
-for installing and using OpenType fonts in (La)TeX.
+for installing and using OpenType fonts in LaTeX.
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
\&\fBautoinst\fR [\fIoptions\fR] \fBfontfile(s)\fR
@@ -171,25 +171,15 @@ Italic and slanted (sometimes called oblique) text
.IP "\fIsc\fR" 8
.IX Item "sc"
Small caps
-.IP "\fIsw\fR" 8
-.IX Item "sw"
-Swash
-.IP "\fItl\fR" 8
-.IX Item "tl"
-Titling shape. Meant for all-caps text; letterspacing and the positioning of
-punctuation characters have been adjusted to suit all-caps text.
-(This shape is only generated for the families with lining digits,
-since old-style digits make no sense with all-caps text.)
.IP "\fIscit\fR, \fIscsl\fR" 8
.IX Item "scit, scsl"
Italic and slanted small caps
+.IP "\fIsw\fR" 8
+.IX Item "sw"
+Swash
.IP "\fInw\fR" 8
.IX Item "nw"
-\&\*(L"Upright swash\*(R"; usually roman text with a few \*(L"oldstyle\*(R" ligatures
-like ct, sp and st.
-.IP "\fItlit\fR, \fItlsl\fR" 8
-.IX Item "tlit, tlsl"
-Italic and slanted titling text
+\&\*(L"Upright swash\*(R"
.RE
.RS 2
.RE
@@ -203,6 +193,12 @@ in roman, italic and slanted shapes.
Families with superiors, inferiors, numerators and denominators,
in roman, italic and slanted shapes.
.IP "\-" 3
+Families with \*(L"Titling\*(R" characters; these \*(L"... replace the default glyphs
+with corresponding forms designed specifically for titling.
+These may be all-capital and/or larger on the body,
+and adjusted for viewing at larger sizes\*(R"
+(according to the OpenType Specification).
+.IP "\-" 3
An ornament family, also in roman, italic and slanted shapes.
.RE
.RS 2
@@ -236,6 +232,9 @@ normal forms are used for other characters)
.IX Item "Inf"
inferior characters; usually only digits and some punctuation,
normal forms for other characters
+.IP "\fITitl\fR" 8
+.IX Item "Titl"
+Titling characters; see above.
.IP "\fIOrn\fR" 8
.IX Item "Orn"
ornaments
@@ -248,9 +247,18 @@ denominators
.PP
The individual fonts are named \fI<FontName>\-<suffix>\-<shape>\-<enc>\fR,
where \fI<suffix>\fR is the same as above (but in lowercase),
-\&\fI<shape>\fR is either empty, \*(L"sc\*(R", \*(L"swash\*(R" or \*(L"titling\*(R",
+\&\fI<shape>\fR is either empty, \*(L"sc\*(R" or \*(L"swash\*(R",
and \fI<enc>\fR is the encoding (also in lowercase).
A typical name in this scheme would be \*(L"FiraSans\-Light\-osf\-sc\-ly1\*(R".
+.SS "About the log file"
+.IX Subsection "About the log file"
+\&\fBautoinst\fR writes some info about what it thinks it's doing to a log file.
+By default this is called \fI<fontfamily>.log\fR,
+but this choice can be overridden by the user;
+see the \fI\-logfile\fR command-line option in \*(L"COMMAND-LINE \s-1OPTIONS\*(R"\s0 below.
+If this log file already exists, \fBautoinst\fR will append its data to the end
+rather than overwrite it.
+Use the \fI\-verbose\fR command-line option to ask for more detailed info.
.SS "A note for MiKTeX users"
.IX Subsection "A note for MiKTeX users"
Automatically installing the fonts into a suitable \s-1TEXMF\s0 tree
@@ -371,30 +379,35 @@ Other encodings can be chosen using the \fI\-encoding\fR option
(see \*(L"COMMAND-LINE \s-1OPTIONS\*(R"\s0 below).
.SS "\s-1NFSS\s0 codes"
.IX Subsection "NFSS codes"
-\&\fI\f(BI\s-1CAVEAT\s0\fI: this functionality was almost completely rewritten in release 2019\-03\-14.
+\&\fI\f(BI\s-1CAVEAT\s0\fI: this functionality was almost completely rewritten
+in release 2019\-03\-14.
Older versions tried to map all fonts directly to short \s-1NFSS\s0 codes,
but often had to invent non-standard codes in order to deal with the
many different weights and widths that occur in the wild.
-These non-standard \s-1NFSS\s0 codes used by older versions of \f(BIautoinst\fI will no longer
+Such non-standard \s-1NFSS\s0 codes will no longer
work for fonts installed with newer versions; for those you'll have to either
use the long names or stick to the standard \s-1NFSS\s0 codes.
-This change mainly concerns very light or very heavy weights and very condensed widths;
-for more moderate weights and widths, existing code will very probably continue to work.\fR
+(This change mainly concerns very light or very heavy weights
+and very condensed widths;
+for more moderate weights and widths,
+existing code will very probably continue to work.)\fR
.PP
LaTeX's New Font Selection System (\s-1NFSS\s0)
identifies fonts by a combination of family,
series (the concatenation of weight and width), shape and size.
-\&\fBautoinst\fR parses the font's metadata (more precisely: the output of \f(CW\*(C`otfinfo \-\-info\*(C'\fR)
+\&\fBautoinst\fR parses the font's metadata
+(more precisely: the output of \f(CW\*(C`otfinfo \-\-info\*(C'\fR)
to determine these parameters.
-When this fails (usually because the font family contains uncommon weights, widths
-or shapes),
+When this fails (usually because the font family contains uncommon weights,
+widths or shapes),
\&\fBautoinst\fR ends up with different fonts having the \fIsame\fR values
for these font parameters; such fonts cannot be used in \s-1NFSS,\s0
since there's no way distinguish them.
-When \fBautoinst\fR detects such a situation, it will print an error message and abort.
+When \fBautoinst\fR detects such a situation, it will print an error message
+and abort.
If that happens, either rerun \fBautoinst\fR on a smaller set of fonts,
-or add the missing widths, weights and shapes to the tables \f(CW%NFSS_WIDTH\fR,
-\&\f(CW%NFSS_WEIGHT\fR and \f(CW%NFSS_SHAPE\fR, near the top of the source code.
+or add the missing widths, weights and shapes to the tables \f(CW\*(C`NFSS_WIDTH\*(C'\fR,
+\&\f(CW\*(C`NFSS_WEIGHT\*(C'\fR and \f(CW\*(C`NFSS_SHAPE\*(C'\fR, near the top of the source code.
Please also send a bug report (see \s-1AUTHOR\s0 below).
.PP
The mapping of shapes to \s-1NFSS\s0 codes is done using the following table:
@@ -407,51 +420,42 @@ The mapping of shapes to \s-1NFSS\s0 codes is done using the following table:
\& Oblique, Slant(ed), Incline(d) sl
.Ve
.PP
-(\fIException:\fR Adobe Silentium Pro contains two Roman shapes; we map the first of these
-to \*(L"n\*(R", for the second one we [ab]use the \*(L"it\*(R" code as this family doesn't contain
-an Italic shape.)
+(\fIException:\fR Adobe Silentium Pro contains two Roman shapes;
+we map the first of these to \*(L"n\*(R", for the second one we (ab)use the \*(L"it\*(R" code
+as this family doesn't contain an Italic shape.)
.PP
-The mapping of weights and widths to \s-1NFSS\s0 code is a more complex, two-step proces.
+The mapping of weights and widths to \s-1NFSS\s0 codes is a more complex,
+two-step proces.
In the first step, all fonts are assigned a \*(L"series\*(R" name that is simply
-the concatenation of its full weight and width (after expanding any abbreviations
-and converting to lowercase).
-So a font with \*(L"Cond\*(R" width and \*(L"Ultra\*(R" weight will be known as \*(L"ultrablackcondensed\*(R".
+the concatenation of its weight and width
+(after expanding any abbreviations and converting to lowercase).
+A font with \*(L"Cond\*(R" width and \*(L"Ultra\*(R" weight will then be known
+as \*(L"ultrablackcondensed\*(R".
.PP
In the second step, \fBautoinst\fR tries to map all combinations of \s-1NFSS\s0 codes
(ul, el, l, sl, m, sb, b, eb and ub for weights;
uc, ec, c, sc, m, sx, x, ex and ux for widths) to actual fonts.
-Of course, not all 81 combinations of these \s-1NFSS\s0 weights and widths will map to
-existing fonts; and conversely it may not be possible to assign every existing font
+Of course, not all 81 combinations of these \s-1NFSS\s0 weights and widths will map
+to existing fonts;
+and conversely it may not be possible to assign every existing font
a unique code in a sane way (especially on the weight axis, some font families
offer more choices or finer granularity than \s-1NFSS\s0's codes can handle;
e.g., Fira Sans contains fifteen(!) different weights,
including an additional \*(L"Medium\*(R" weight between Regular and Semibold).
.PP
-This mapping between \s-1NFSS\s0 codes and actual fonts is based on a few principles:
-.IP "\fBUsefulness\fR. As many of the most commonly used \s-1NFSS\s0 codes as possible should point to actual fonts." 4
-.IX Item "Usefulness. As many of the most commonly used NFSS codes as possible should point to actual fonts."
-.PD 0
-.ie n .IP "\fBExactness\fR. Exact matches always win: if the font family contains a Semibold Condensed font, that's what the ""sbc"" code will map to." 4
-.el .IP "\fBExactness\fR. Exact matches always win: if the font family contains a Semibold Condensed font, that's what the ``sbc'' code will map to." 4
-.IX Item "Exactness. Exact matches always win: if the font family contains a Semibold Condensed font, that's what the sbc code will map to."
-.ie n .IP "\fBSanity\fR. A code like ""sb"" will always map to something semi-boldish. If there's no Semibold font it might map to Demibold or Medium, but never to Black. If there is no close match, the \s-1NFSS\s0 code will simply not be used." 4
-.el .IP "\fBSanity\fR. A code like ``sb'' will always map to something semi-boldish. If there's no Semibold font it might map to Demibold or Medium, but never to Black. If there is no close match, the \s-1NFSS\s0 code will simply not be used." 4
-.IX Item "Sanity. A code like sb will always map to something semi-boldish. If there's no Semibold font it might map to Demibold or Medium, but never to Black. If there is no close match, the NFSS code will simply not be used."
-.ie n .IP "\fBWell-ordering\fR. The mapping respects the ordering that is inherent in the \s-1NFSS\s0 codes, so ""sb"" will be heavier than ""m"" and lighter than ""b""." 4
-.el .IP "\fBWell-ordering\fR. The mapping respects the ordering that is inherent in the \s-1NFSS\s0 codes, so ``sb'' will be heavier than ``m'' and lighter than ``b''." 4
-.IX Item "Well-ordering. The mapping respects the ordering that is inherent in the NFSS codes, so sb will be heavier than m and lighter than b."
-.ie n .IP "\fBUniqueness\fR. No two \s-1NFSS\s0 codes will map to the same font (with the exception of ""bx""; since this is so ubiquitous in Latex, \fBautoinst\fR will treat it as a synonym for ""b"" if there is no BoldExtended font)." 4
-.el .IP "\fBUniqueness\fR. No two \s-1NFSS\s0 codes will map to the same font (with the exception of ``bx''; since this is so ubiquitous in Latex, \fBautoinst\fR will treat it as a synonym for ``b'' if there is no BoldExtended font)." 4
-.IX Item "Uniqueness. No two NFSS codes will map to the same font (with the exception of bx; since this is so ubiquitous in Latex, autoinst will treat it as a synonym for b if there is no BoldExtended font)."
-.PD
+\&\fBautoinst\fR tries hard to ensure that the most common \s-1NFSS\s0 codes
+(and high-level commands such as \f(CW\*(C`\ebfseries\*(C'\fR,
+which are built on top of those codes) will \*(L"just work\*(R".
.PP
-These rules should ensure that the standard \s-1NFSS\s0 codes (and high-level commands
-such as \f(CW\*(C`\ebfseries\*(C'\fR, which are built on top of these codes) will \*(L"just work\*(R".
-To access specific weights or widths, use the \f(CW\*(C`\efontseries\*(C'\fR command with
-the full series name (i.e., \f(CW\*(C`\efontseries{demibold}\eselectfont\*(C'\fR).
+To see exactly which \s-1NFSS\s0 codes map to which fonts, see the log file
+(pro tip: run \fBautoinst\fR with the \fI\-dryrun\fR option
+to check the chosen mapping beforehand).
+The \fI\-nfssweight\fR and \fI\-nfsswidth\fR command-line options can be used
+to finetune the mapping between \s-1NFSS\s0 codes and fonts.
.PP
-To see exactly which \s-1NFSS\s0 codes map to which fonts, please refer to
-the generated \fIfd\fR files.
+To access specific weights or widths,
+one can always use the \f(CW\*(C`\efontseries\*(C'\fR command with the full series name
+(i.e., \f(CW\*(C`\efontseries{demibold}\eselectfont\*(C'\fR).
.SH "COMMAND-LINE OPTIONS"
.IX Header "COMMAND-LINE OPTIONS"
\&\fBautoinst\fR tries hard to do The Right Thing (\s-1TM\s0) by default,
@@ -464,14 +468,23 @@ and option names may be shortened to a unique prefix
but \fB\-e\fR is ambiguous (it may mean either \fB\-encoding\fR or \fB\-extra\fR)).
.IP "\fB\-dryrun\fR" 4
.IX Item "-dryrun"
-Don't generate any output files; only parse the input fonts and create
-\&\fIautoinst.log\fR showing which fonts would have been generated.
+Don't generate output; just parse input fonts and write
+a log file saying what it would have done.
+.IP "\fB\-logfile\fR=\fIfilename\fR" 4
+.IX Item "-logfile=filename"
+Write log data to \fIfilename\fR instead of the default \fI<fontfamily>.log\fR.
+If the file already exist, \fBautoinst\fR appends to it;
+it doesn't overwrite an existing file.
+.IP "\fB\-verbose\fR" 4
+.IX Item "-verbose"
+Add more details to the log file. Repeat this option for even more info.
.IP "\fB\-encoding\fR=\fIencoding[,encoding]\fR" 4
.IX Item "-encoding=encoding[,encoding]"
-Generate the specified encoding(s) for the text fonts. Multiple text encodings may be
-specified as a comma-separated list: \f(CW\*(C`\-encoding=OT1,T1,LY1\*(C'\fR (without spaces!).
-The generated style file passes these encodings to \fIfontenc\fR in the specified order,
-so the last one will become the default text encoding for your document.
+Generate the specified encoding(s) for the text fonts.
+Multiple encodings may be specified as a comma-separated list:
+\&\f(CW\*(C`\-encoding=OT1,T1,LY1\*(C'\fR (without spaces!).
+The style file passes these to \fIfontenc\fR in the specified order,
+so the \fIlast\fR one will become the default text encoding of your document.
.Sp
The default choice of encodings is \*(L"\s-1OT1,T1,LY1\*(R".\s0
For each encoding, a file \fI<encoding>.enc\fR (in all \fIlowercase\fR!)
@@ -484,15 +497,11 @@ the \*(L"fontools_\*(R" prefix may be omitted.)
Control the creation of TS1\-encoded fonts. The default is \fB\-ts1\fR
if the text encodings (see \fI\-encoding\fR above) include T1,
\&\fB\-nots1\fR otherwise.
-.IP "\fB\-sanserif\fR" 4
-.IX Item "-sanserif"
-Install the font as a sanserif font, accessed via \f(CW\*(C`\esffamily\*(C'\fR and \f(CW\*(C`\etextsf\*(C'\fR.
-The generated style file redefines \f(CW\*(C`\efamilydefault\*(C'\fR,
-so including it will still make this font the default text font.
-.IP "\fB\-typewriter\fR" 4
-.IX Item "-typewriter"
-Install the font as a typewriter font, accessed via \f(CW\*(C`\ettfamily\*(C'\fR and
-\&\f(CW\*(C`\etexttt\*(C'\fR.
+.IP "\fB\-serif\fR, \fB\-sanserif\fR, \fB\-typewriter\fR" 4
+.IX Item "-serif, -sanserif, -typewriter"
+Install the font as a serif, sanserif or typewriter font, respectively.
+This changes how you access the font in LaTeX: with \f(CW\*(C`\ermfamily\*(C'\fR/\f(CW\*(C`\etextrm\*(C'\fR,
+\&\f(CW\*(C`\esffamily\*(C'\fR/\f(CW\*(C`\etextsf\*(C'\fR or \f(CW\*(C`\ettfamily\*(C'\fR/\f(CW\*(C`\etexttt\*(C'\fR.
The generated style file redefines \f(CW\*(C`\efamilydefault\*(C'\fR,
so including it will still make this font the default text font.
.IP "\fB\-lining\fR / \fB\-nolining\fR" 4
@@ -520,7 +529,7 @@ Control the creation of small caps fonts. The default is
Control the creation of swash fonts. The default is \fB\-swash\fR.
.IP "\fB\-titling\fR / \fB\-notitling\fR" 4
.IX Item "-titling / -notitling"
-Control the creation of titling fonts. The default is \fB\-titling\fR.
+Control the creation of titling families. The default is \fB\-titling\fR.
.IP "\fB\-superiors\fR / \fB\-nosuperiors\fR" 4
.IX Item "-superiors / -nosuperiors"
Control the creation of fonts with superior characters.
@@ -536,17 +545,22 @@ Alternatively, the value \*(L"auto\*(R" tells \fBautoinst\fR to use the first va
in the list \*(L"subs\*(R", \*(L"sinf\*(R" or \*(L"dnom\*(R" that is supported by the fonts.
The default value is \*(L"none\*(R".
.Sp
-\&\fINote that if you specify a style of inferiors that isn't
-present in the font, \f(BIautoinst\fI silently falls back to its default behaviour
-of not creating fonts with inferiors; it doesn't try to substitute one of
-the other features.\fR
+\&\fIIf you specify a style of inferiors that isn't present in the font,
+\&\f(BIautoinst\fI will fall back to its default behaviour of not creating fonts
+with inferiors at all; it won't try to substitute one of the other styles.\fR
.IP "\fB\-fractions\fR / \fB\-nofractions\fR" 4
.IX Item "-fractions / -nofractions"
Control the creation of fonts with numerators and denominators.
The default is \fB\-nofractions\fR.
-.IP "\fB\-ornaments\fR / \fB\-noornaments\fR" 4
-.IX Item "-ornaments / -noornaments"
-Control the creation of ornament fonts. The default is \fB\-ornaments\fR.
+.IP "\fB\-ligatures\fR / \fB\-noligatures\fR" 4
+.IX Item "-ligatures / -noligatures"
+Some fonts create glyphs for the standard f\-ligatures (ff, fi, fl, ffi, ffl),
+but don't provide a \*(L"liga\*(R" feature to access these.
+This option tells \fBautoinst\fR to add extra \f(CW\*(C`LIGKERN\*(C'\fR rules to
+the generated fonts to enable the use of these ligatures.
+Since this option is rarely necessary
+(most fonts with f\-ligatures do provide the matching \*(L"liga\*(R" feature),
+the default is \fB\-noligatures\fR.
.IP "\fB\-defaultlining\fR / \fB\-defaultoldstyle\fR" 4
.IX Item "-defaultlining / -defaultoldstyle"
.PD 0
@@ -572,9 +586,26 @@ Note that this option leads to very long commands (it adds
one hundred \fI \-\-ligkern\fR options), which may cause problems on some systems.
.IP "\fB\-mergewidths\fR / \fB\-nomergewidths\fR" 4
.IX Item "-mergewidths / -nomergewidths"
-Some font families put Condensed, Narrow, Extended etc. fonts in separate families;
-this option tells \fBautoinst\fR to merge those separate families into the main family.
-The default is \fB\-nomergewidths\fR.
+Some font families put their Condensed, Narrow, Extended etc. widths
+in separate families;
+this option tells \fBautoinst\fR to merge those separate families into
+the main family.
+The default is \fB\-mergewidths\fR.
+.IP "\fB\-mergesmallcaps\fR / \fB\-nomergesmallcaps\fR" 4
+.IX Item "-mergesmallcaps / -nomergesmallcaps"
+Even more annoyingly, some font families put their small caps fonts
+in a separate family;
+this option tells \fBautoinst\fR to merge the small caps fonts into
+the main family.
+The default is \fB\-mergesmallcaps\fR.
+.IP "\fB\-nfssweight\fR=\fIcode\fR=\fIweight\fR, \fB\-nfsswidth\fR=\fIcode\fR=\fIwidth\fR" 4
+.IX Item "-nfssweight=code=weight, -nfsswidth=code=width"
+Map the \s-1NFSS\s0 code \fIcode\fR to the given weight or width,
+overriding the built-in tables.
+Each of these options may be given multiple times,
+to override more than one \s-1NFSS\s0 code.
+Example: to map the \*(L"ul\*(R" code to the \*(L"Thin\*(R" weight, use \f(CW\*(C`\-nfssweight=ul=thin\*(C'\fR.
+To inhibit the use of the \*(L"ul\*(R" code completely, use \f(CW\*(C`\-nfssweight=ul=\*(C'\fR.
.IP "\fB\-extra\fR=\fItext\fR" 4
.IX Item "-extra=text"
Append \fItext\fR as extra options to the command lines for \fIotftotfm\fR.
@@ -583,7 +614,8 @@ it should be properly quoted.
.IP "\fB\-manual\fR" 4
.IX Item "-manual"
Manual mode; for users who want to post-process the generated files and commands.
-By default, \fBautoinst\fR immediately executes all \fIotftotfm\fR commands it generates;
+By default, \fBautoinst\fR immediately executes all \fIotftotfm\fR commands
+it generates;
in manual mode, these are instead written to a file \fIautoinst.bat\fR.
Furthermore it tells \fIotftotfm\fR to generate human readable (and editable)
\&\fIpl/vpl\fR files instead of the default \fItfm/vf\fR ones,
@@ -657,11 +689,11 @@ Minion Pro, Myriad Pro and Cronos Pro font families.
.IX Header "AUTHOR"
Marc Penninga (\fImarcpenninga@gmail.com\fR)
.PP
-When sending a bug report, please give as much relevant information as
-possible.
-If you see any error messages
-(whether from \fBautoinst\fR itself, from the \fI\s-1LCDF\s0 TypeTools\fR, from Perl
-or from the \s-1OS\s0), include these \fIverbatim\fR; don't paraphrase.
+When sending a bug report, please give as much relevant information as possible;
+this usually includes (but may not be limited to) the log file
+(please add the \fI\-verbose\fR command-line option, for extra info).
+If you see any error messages, please include these \fIverbatim\fR;
+don't paraphase.
.SH "COPYRIGHT"
.IX Header "COPYRIGHT"
Copyright (C) 2005\-2019 Marc Penninga.
@@ -682,6 +714,27 @@ but \s-1WITHOUT ANY WARRANTY\s0; without even the implied warranty of
.SH "RECENT CHANGES"
.IX Header "RECENT CHANGES"
(See the source for the full story, all the way back to 2005.)
+.IP "\fI2019\-04\-22\fR" 12
+.IX Item "2019-04-22"
+Fixed a bug in the generation of swash shapes.
+.IP "\fI2019\-04\-19\fR" 12
+.IX Item "2019-04-19"
+Fixed a bug that affected \-mergesmallcaps with multiple encodings.
+.IP "\fI2019\-04\-16\fR" 12
+.IX Item "2019-04-16"
+Added the <\-mergesmallcaps> option, to handle cases where
+the small caps fonts are in separate font families.
+Titling shape is now treated as a separate family instead of a distinct shape;
+it is generated only for fonts with the 'titl' feature.
+Only add f\-ligatures to fonts when explicitly asked to (<\-fligatures>).
+.IP "\fI2019\-04\-11\fR" 12
+.IX Item "2019-04-11"
+Tried to make the log file more relevant.
+Added the \fI\-nfssweight\fR and \fI\-nfsswidth\fR options,
+and finetuned the automatic mapping between fonts and \s-1NFSS\s0 codes.
+Changed the name of the generated log file to \fI<fontfamily>.log\fR,
+and revived the \fI\-logfile\fR option to allow overriding this choice.
+Made \fI\-mergewidths\fR the default (instead of \fI\-nomergewidths\fR).
.IP "\fI2019\-04\-01\fR" 12
.IX Item "2019-04-01"
Fine-tuned the decision where to put generated files;
@@ -692,15 +745,19 @@ In manual mode, or when we can't find a user-writable \s-1TEXMF\s0 tree,
put all generated files into a subdirectory \f(CW\*(C`./autoinst_output/\*(C'\fR
instead of all over the current working directory.
.Sp
-Added to \*(L"auto\*(R" value to the \fIinferiors\fR option,
+Added \*(L"auto\*(R" value to the \fIinferiors\fR option,
to tell \fBautoinst\fR to use whatever inferior characters are available.
-.IP "\fI2019\-03\-14\fR (never released to \s-1CTAN\s0)" 12
-.IX Item "2019-03-14 (never released to CTAN)"
+.IP "\fI2019\-03\-14\fR" 12
+.IX Item "2019-03-14"
+(never released to \s-1CTAN\s0)
+.Sp
Overhauled the mapping of fonts (more specifically of weights and widths;
-the mapping of shapes didn't change) to \s-1NFSS\s0 codes. Instead of inventing our own codes
-to deal with every possible weight and width out there, we now create \*(L"long\*(R" codes
-based on the names in the font metadata. Then we add \*(L"ssub\*(R" rules to the \fIfd\fR
-files to map the standard \s-1NFSS\s0 codes to our fancy names (see the section \fB\s-1NFSS\s0 codes\fR;
+the mapping of shapes didn't change) to \s-1NFSS\s0 codes.
+Instead of inventing our own codes to deal with every possible weight
+and width out there, we now create \*(L"long\*(R" codes based on the names
+in the font metadata.
+Then we add \*(L"ssub\*(R" rules to the \fIfd\fR files to map the standard \s-1NFSS\s0 codes
+to our fancy names (see the section \fB\s-1NFSS\s0 codes\fR;
based on discussions with Frank Mittelbach and Bob Tennent).
.IP "\fI2018\-08\-10\fR" 12
.IX Item "2018-08-10"