summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/scripts/fontools
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-06-17 23:47:12 +0000
committerKarl Berry <karl@freefriends.org>2017-06-17 23:47:12 +0000
commit536a7489973eccaff138ee09ae1cbb4f1a43563a (patch)
tree51054b07720c5248f9165a567bd082642791935f /Master/texmf-dist/scripts/fontools
parenta70c3b1833479b4409e5b938d82f0dbb3539f4c4 (diff)
fontools (17jun17
git-svn-id: svn://tug.org/texlive/trunk@44626 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/scripts/fontools')
-rwxr-xr-xMaster/texmf-dist/scripts/fontools/autoinst302
1 files changed, 150 insertions, 152 deletions
diff --git a/Master/texmf-dist/scripts/fontools/autoinst b/Master/texmf-dist/scripts/fontools/autoinst
index ffbe7211c3d..963bb89b2fc 100755
--- a/Master/texmf-dist/scripts/fontools/autoinst
+++ b/Master/texmf-dist/scripts/fontools/autoinst
@@ -118,8 +118,8 @@ my %FD_SHAPE = (
=begin Comment
- The next table is used to generate extra DeclareFontShape rules
- in the .fd files to map missing slanted shapes to italic or vice versa.
+ The next table is used to generate extra DeclareFontShape rules in
+ the .fd files to map missing slanted shapes to italic or vice versa.
=end Comment
@@ -154,6 +154,9 @@ my %FD_SSUB = (
The 'reqd' and 'nice' subtables for the TLF, LF, TOsF and OsF styles
are empty; these are filled in at run time, depending on
which figure style is default for the current font.
+
+ The 'reqd' subtable for the Inf style is also empty; this may be filled
+ with either 'sinf' or 'subs' depending on the -inferiors options.
Ornaments are treated as a separate 'figure style'.
This may seem a bit weird, but that's the easiest way to handle them.
@@ -194,7 +197,7 @@ my %STYLE = (
shapes => ['normal'],
},
Inf => {
- reqd => ['sinf'],
+ reqd => [],
nice => [],
extra => '--ligkern="* {KL} *"',
shapes => ['normal'],
@@ -369,9 +372,7 @@ sub main {
[ $minsize, $maxsize, $item->{fontname} ];
}
- if ($ARGV{verbose}) {
- create_logfile(@worklist);
- }
+ create_logfile(@worklist);
if (!$ARGV{dryrun}) {
# Create the LaTeX support files
@@ -546,18 +547,16 @@ I'm using the following options:
swash: @{[ $ARGV{swash} ? 'yes' : 'no' ]}
titling: @{[ $ARGV{titling} ? 'yes' : 'no' ]}
superiors: @{[ $ARGV{superiors} ? 'yes' : 'no' ]}
- inferiors: @{[ $ARGV{inferiors} ? 'yes' : 'no' ]}
+ inferiors: $ARGV{inferiors}
ornaments: @{[ $ARGV{ornaments} ? 'yes' : 'no' ]}
fractions: @{[ $ARGV{fractions} ? 'yes' : 'no' ]}
- verbosity level: $ARGV{verbose}
-
- dryrun: @{[ $ARGV{dryrun} ? 'true' : 'false' ]}
- auto/manual: @{[ $ARGV{manual} ? 'manual' : 'auto' ]}
+ dry run/real: @{[ $ARGV{dryrun} ? 'dry run' : 'real' ]}
+ auto/manual: @{[ $ARGV{manual} ? 'manual' : 'auto' ]}
target: $ARGV{target}
extra: @{[ $ARGV{extra} || '<empty>' ]}
- figurekern: @{[ $ARGV{figurekern} ? 'keep' : 'discard' ]}
+ figurekern: @{[ $ARGV{figurekern} ? 'no action' : 'remove' ]}
font files:
@@ -569,7 +568,7 @@ END_ARGUMENTS
my @cmds;
for my $item (@worklist) {
if ($prevfn ne $item->{font}{filename}) {
- push @cmds, "\n" . '*' x 76 . "\n";
+ push @cmds, "\n" . '*' x 76;
print {$LOG} <<"END_FONTINFO";
@@ -610,14 +609,8 @@ END_FONTINFO
push @cmds, $item->{cmdline};
}
- if ($ARGV{verbose} >= 2) {
- print {$LOG} <<"END_COMMANDS";
-
- @{[ join "\n\n ", @cmds ]}
-
-END_COMMANDS
- }
-
+ print {$LOG} join "\n\n", @cmds;
+ print {$LOG} "\n";
close $LOG;
}
@@ -640,7 +633,7 @@ sub make_commands {
}
else {
if (grep { system $_ } @commands) {
- warn "[WARNING] 'otftotfm' returned non-zero; something's wrong!";
+ warn "[WARNING] 'otftotfm' returned non-zero; something's wrong!\n";
}
}
@@ -743,7 +736,7 @@ Possible options:
-(no)swash Toggle creation of swash shape
-(no)titling Toggle creation of titling shape
-(no)superiors Toggle creation of fonts with superior characters
- -(no)inferiors Toggle creation of fonts with inferior characters
+ -inferiors=[sinf|subs] Use this style for subscripts (see docs)
-(no)ornaments Toggle creation of ornament fonts
-(no)fractions Toggle creation of fonts with digits for fractions
@@ -766,11 +759,7 @@ Possible options:
-help Print this text and exit
-doc Print the complete documentation and exit
- -verbose Show info about which fonts are generated
- (repeat for even more detailed info)
- -logfile="LOGFILE" Print info to LOGFILE (default: autoinst.log)
-dryrun Don't generate fonts, only log what would be done
- (implies -verbose)
font[s] The fonts (.otf or .ttf format) to install.
@@ -789,7 +778,7 @@ END_USAGE
swash => '1', # 0 = no, 1 = yes
titling => '1', # 0 = no, 1 = yes
superiors => '1', # 0 = no, 1 = yes
- inferiors => '0', # 0 = no, 1 = yes
+ inferiors => '', # possible values: '', 'sinf', 'subs', 'dnom'
ornaments => '1', # 0 = no, 1 = yes
fractions => '0', # 0 = no, 1 = yes
nfss => 'rm',
@@ -802,7 +791,6 @@ END_USAGE
updmap => '1', # 0 = no, 1 = yes
manual => '0', # 0 = no, 1 = yes
dryrun => '0', # 0 = no, 1 = yes
- verbose => '0', # 0 = no, 1 = yes
logfile => 'autoinst.log',
figurekern => '1', # 0 = no, 1 = yes
);
@@ -811,7 +799,7 @@ END_USAGE
# Process command-line arguments
#-----------------------------------------------------------------------
sub parse_options {
- $ARGV{cmdline} = "$0 " . join ' ', @ARGV;
+ $ARGV{cmdline} = join ' ', ($0, @ARGV);
Getopt::Long::GetOptions(
'help|?' => sub { print $USAGE; exit; },
@@ -826,7 +814,7 @@ sub parse_options {
'swash!' => \$ARGV{swash},
'titling!' => \$ARGV{titling},
'superiors!' => \$ARGV{superiors},
- 'inferiors!' => \$ARGV{inferiors},
+ 'inferiors=s' => \$ARGV{inferiors},
'ornaments!' => \$ARGV{ornaments},
'fractions!' => \$ARGV{fractions},
'sanserif' => sub { $ARGV{nfss} = 'sf' },
@@ -843,8 +831,7 @@ sub parse_options {
'dryrun' => \$ARGV{dryrun},
'manual' => \$ARGV{manual},
'figurekern!' => \$ARGV{figurekern},
- 'verbose+' => \$ARGV{verbose},
- 'logfile=s' => \$ARGV{logfile},
+ 'verbose+' => sub {},
)
or die "$USAGE";
@@ -855,9 +842,17 @@ sub parse_options {
delete $SHAPE{titling} unless $ARGV{titling};
delete $STYLE{Sup} unless $ARGV{superiors};
- delete $STYLE{Inf} unless $ARGV{inferiors};
delete $STYLE{Orn} unless $ARGV{ornaments};
delete @STYLE{qw(Numr Dnom)} unless $ARGV{fractions};
+ if ($ARGV{inferiors} eq 'sinf') { $STYLE{Inf}{reqd} = ['sinf'] }
+ elsif ($ARGV{inferiors} eq 'subs') { $STYLE{Inf}{reqd} = ['subs'] }
+ elsif ($ARGV{inferiors} eq 'dnom') { $STYLE{Inf}{reqd} = ['dnom'] }
+ else {
+ warn "[WARNING] unknown value -inferiors=$ARGV{inferiors} ignored!\n"
+ if $ARGV{inferiors};
+ $ARGV{inferiors} = 'no';
+ delete $STYLE{Inf}
+ }
$ARGV{encoding} =~ s/\s+//xmsg;
my @textencodings = grep { $_ ne 'TS1' }
@@ -884,7 +879,7 @@ sub parse_options {
delete @STYLE{qw(TLF TOsF)} unless $ARGV{tabular};
if ($ARGV{manual}) {
- warn "[WARNING] option '--target' overridden by '--manual'!"
+ warn "[WARNING] option '-target' overridden by '-manual'!\n"
if $ARGV{target};
$ARGV{target} = File::Spec->curdir();
}
@@ -907,10 +902,6 @@ sub parse_options {
$STYLE{TLF}{extra} = $tkern;
$STYLE{TOsF}{extra} = $tkern;
}
-
- if ($ARGV{dryrun} && $ARGV{verbose} == 0) {
- $ARGV{verbose} = 1;
- }
}
@@ -1546,7 +1537,7 @@ __END__
=head1 NAME
autoinst - wrapper around the F<LCDF TypeTools>,
-for installing OpenType fonts in LaTeX.
+for installing and using OpenType fonts in (La)TeX.
=head1 SYNOPSIS
@@ -1573,8 +1564,8 @@ B<autoinst> will create several LaTeX font families:
=item -
-Four text families (with lining and oldstyle digits, in both tabular
-and proportional variants), each with the following shapes:
+Four text families (with lining and oldstyle digits, each in both tabular
+and proportional variants), all with the following shapes:
=over 2
@@ -1610,7 +1601,8 @@ Italic and slanted small caps
=item I<nw>
-"Upright swash"; usually normal text with "oldstyle" ligatures such as ct, sp and st.
+"Upright swash"; usually roman text with a few "oldstyle" ligatures
+like ct, sp and st.
=item I<tlit>, I<tlsl>
@@ -1622,12 +1614,12 @@ Italic and slanted titling text
=item -
-For each text family: a family of TS1-encoded symbol fonts,
+For each T1-encoded text family: a family of TS1-encoded symbol fonts,
in roman, italic and slanted shapes.
=item -
-Four families with superiors, inferiors, numerators and denominators,
+Families with superiors, inferiors, numerators and denominators,
in roman, italic and slanted shapes.
=item -
@@ -1640,8 +1632,8 @@ An ornament family, in roman, italic and slanted shapes.
Of course, if the fonts don't contain italics, oldstyle digits, small caps
etc., the corresponding shapes and families are not created.
-Furthermore, the creation of most families and shapes can be controlled by
-command-line options (see L</"COMMAND-LINE OPTIONS"> below).
+In addition, the creation of most families and shapes can be controlled
+by options (see L</"COMMAND-LINE OPTIONS"> below).
These families use the I<FontPro> project's naming scheme:
I<< <FontFamily>-<Suffix> >>, where I<< <Suffix> >> is:
@@ -1666,8 +1658,8 @@ tabular oldstyle figures
=item I<Sup>
-superior characters (many fonts have only an incomplete set of superior
-characters: digits, some punctuation and the letters I<abdeilmnorst>;
+superior characters (note that most fonts have only an incomplete set of
+superior characters: digits, some punctuation and the letters I<abdeilmnorst>;
normal forms are used for other characters)
=item I<Inf>
@@ -1692,17 +1684,17 @@ denominators
The generated fonts are named I<< <FontName>-<suffix>-<shape>-<enc> >>,
where I<< <suffix> >> is the same as above (but in lowercase),
I<< <shape> >> is either empty, "sc", "swash" or "titling",
-and I<< <enc> >> is the encoding.
-A typical name in this scheme is "LinLibertineO-osf-sc-ly1".
+and I<< <enc> >> is the encoding (also in lowercase).
+A typical name in this scheme would be "FiraSans-Light-osf-sc-ly1".
=head2 On the choice of text encoding
By default, B<autoinst> generates text fonts with OT1, T1 and LY1
encodings, and the generated style files use LY1 as the default text encoding.
-LY1 has been chosen over T1 because it has some empty slots to accomodate
+LY1 has been chosen over T1 because it has some empty slots to accommodate
the additional ligatures provided by many OpenType fonts.
-Different encodings can be chosen using the I<-encoding> command-line option
+Other encodings can be chosen using the I<-encoding> option
(see L</"COMMAND-LINE OPTIONS"> below).
@@ -1711,7 +1703,7 @@ Different encodings can be chosen using the I<-encoding> command-line option
B<autoinst> generates a style file for using the font in LaTeX documents,
named F<< <FontFamily>.sty >>. This style file also takes care of loading the
F<fontenc> and F<textcomp> packages.
-To use the font, simply put C<<< \usepackage{I<< <FontFamily> >>} >>>
+To use the font, put the command C<<< \usepackage{I<< <FontFamily> >>} >>>
in the preamble of your document.
This style file defines a number of options:
@@ -1726,33 +1718,35 @@ The defaults are "oldstyle" and "proportional" (if available).
=item C<<< scale=I<< <number> >> >>>
Scale the font by a factor of I<< <number> >>.
-For example: to increase the size of the font by 5%, use
+E.g., to increase the size of the font by 5%, use
C<<< \usepackage[scale=1.05]{I<< <FontFamily> >>} >>>.
May also be spelled C<scaled>.
This option is only available when you have the F<xkeyval> package installed.
-=item C<ultrablack>, C<ultrabold>, C<heavy>, C<extrablack>, C<black>,
- C<extrabold>, C<demibold>, C<semibold>, C<bold>
+=item C<light>, C<medium>, C<regular>
-Choose the weight that LaTeX will use for the "bold" weight.
+Select the weight that LaTeX will use as the "regular" weight;
+the default is C<regular>.
-=item C<light>, C<medium>, C<regular>
+=item C<ultrablack>, C<ultrabold>, C<heavy>, C<extrablack>, C<black>,
+ C<extrabold>, C<demibold>, C<semibold>, C<bold>
-Choose the weight that LaTeX will use for the "regular" weight.
+Select the weight that LaTeX will use as the "bold" weight;
+the default is C<bold>.
=back
-These last two groups of options will only work if
+The previous two groups of options will only work if
you have the F<mweights> package installed.
The style file will also try to load the F<fontaxes> package
-(available on CTAN),
-which gives easy access to various font shapes and styles.
+(available on CTAN), which gives easy access to various font shapes and styles.
Using the machinery set up by F<fontaxes>, the generated style file
defines a number of commands (which take the text to be typeset as argument)
and declarations (which don't take arguments, but affect all text up to
-the end of the current group) of its own:
+the end of the current group) to access titling, superior and inferior
+characters:
DECLARATION COMMAND SHORT FORM OF COMMAND
@@ -1764,7 +1758,7 @@ the end of the current group) of its own:
In addition, the C<\swshape> and C<\textsw> commands are redefined to place
swash on the secondary shape axis (F<fontaxes> places it on the primary
-shape axis); this makes these commands behave properly when nested, so that
+shape axis) to make them behave properly when nested, so that
C<\swshape\upshape> will give upright swash.
There are no commands for accessing the numerator and denominator
@@ -1786,27 +1780,26 @@ encoding vector, e.g. if your fonts use non-standard glyph names for ornaments.
These commands are only generated for existing shapes and number styles;
no commands are generated for shapes and styles that don't exist,
-or whose generation has been turned off using command-line options.
-Also: these commands are built on top of F<fontaxes>;
-if that package cannot be found, you're limited to using the
-lower-level commands from standard NFSS (C<\fontfamily>, C<\fontseries>,
-C<\fontshape> etc.).
+or whose generation was turned off by the user.
+Also these commands are built on top of F<fontaxes>, so if that package
+cannot be found, you're limited to using the lower-level commands from
+standard NFSS (C<\fontfamily>, C<\fontseries>, C<\fontshape> etc.).
=head2 Using multiple font families in one document
Style files generated by versions of B<autoinst> older dan 2013-07-25
redefined C<\mddefault> and C<\bfdefault>, whereas newer style files
-use the F<mweights> package instead.
+build on the facilities of the F<mweights> package instead.
If you use multiple B<autoinst>-generated font familes in the same document,
-it is best if all style files are generated by the same version of
+it might be best if all style files are generated by the same version of
B<autoinst>; re-generate the older families if necessary.
=head2 NFSS codes
-NFSS identifies fonts by a combination of family, series (weight plus width),
-shape and size.
+NFSS identifies fonts by a combination of family, series
+(the concatenation of weight and width), shape and size.
B<autoinst> parses the output of C<otfinfo --info> to determine
these parameters. When this fails
(e.g., because the font family contains uncommon widths or weights),
@@ -1821,15 +1814,14 @@ this strategy is only used as a last resort.)
If such a proliferation of font families is unwanted,
either run B<autoinst> on a smaller set of fonts or
add the missing widths, weights and shapes to the tables C<%FD_WIDTH>,
-C<%FD_WEIGHT> and C<%FD_SHAPE>, at the top of the source code.
+C<%FD_WEIGHT> and C<%FD_SHAPE>, at the beginning of the source code.
Please also send a bug report (see L<AUTHOR> below).
B<autoinst> maps widths, weights and shapes to NFSS codes using
-the following tables. These are based as much as possible
-on the standard I<Fontname> scheme and Philipp Lehman's
-F<Font Installation Guide>,
-but some changes were made to avoid name clashes in font families
-with many widths and weights.
+the following tables. These are based on the standard I<Fontname> scheme
+and Philipp Lehman's F<Font Installation Guide>, but some changes were made
+to avoid name clashes in font families with many different widths and weights,
+such as Helvetica Neue.
WEIGHT WIDTH
@@ -1860,7 +1852,7 @@ with many widths and weights.
Incline(d) sl [3]
-=head3 Notes:
+=head3 Notes
=over 4
@@ -1875,7 +1867,7 @@ the first of these is mapped to "n", the second one to "it".
=item [3]
-New in release 2014-01-21; before that, slanted fonts were mapped to "it".
+Since release 2014-01-21; before that, slanted shapes were mapped to "it".
=back
@@ -1883,7 +1875,7 @@ New in release 2014-01-21; before that, slanted fonts were mapped to "it".
=head2 A note for MiKTeX users
Automatically installing the fonts into a suitable TEXMF tree
-(as B<autoinst> does by default) requires a TeX-installation that uses
+(as B<autoinst> tries to do by default) requires a TeX-installation that uses
the F<kpathsea> library; with TeX distributions that implement their
own directory searching (such as MiKTeX), B<autoinst> will complain that
it cannot find the F<kpsewhich> program and install all generated files
@@ -1895,41 +1887,41 @@ to their correct destinations by hand, or use the I<-target> option
Also, some OpenType fonts may lead to F<pl> and F<vpl> files that
are too big for MiKTeX's F<pltotf> and F<vptovf>;
the versions that come with W32TeX (F<http://www.w32tex.org>)
-and TeXLive (F<http://tug.org/texlive>) don't have this problem.
+and TeXLive (F<http://tug.org/texlive>) don't seem to have this problem.
=head1 COMMAND-LINE OPTIONS
B<autoinst> tries hard to do The Right Thing (TM) by default,
so in many cases you won't need these options;
-but most aspects of its operation can be changed if you want to.
+but most aspects of its operation can be fine-tuned if you want to.
You may use either one or two dashes before options,
and option names may be shortened to a unique prefix
(e.g., B<-encoding> may be abbreviated to B<-enc> or even B<-en>,
-but B<-e> is ambiguous (B<-encoding>, B<-extra>).
+but B<-e> is ambiguous (it may mean either B<-encoding> or B<-extra>)).
=over 4
=item B<-dryrun>
-Don't actually generate any fonts and files, only create a logfile
-showing which fonts would be generated.
-By default, this information is written to F<autoinst.log>;
-use the B<-logfile> option to specify a different filename.
+Don't actually do anything, only create the logfile F<autoinst.log>
+showing which fonts would have been generated.
=item B<-encoding>=I<encoding[,encoding]>
-Generate the specified encoding(s) for the text fonts. The default is "OT1,T1,LY1".
-For each encoding, a file F<< <encoding>.enc >> (I<lowercase>)
+Generate the specified encoding(s) for the text fonts. The default is
+"OT1,T1,LY1".
+For each encoding, a file F<< <encoding>.enc >> (in all I<lowercase>!)
should be somewhere where F<otftotfm> can find it. Suitable encoding files
for OT1, T1/TS1 and LY1 come with B<autoinst>. (These files are
called F<fontools_ot1.enc> etc. to avoid name clashes with other packages;
the "fontools_" prefix may be omitted.)
Multiple text encodings can be specified as a comma-separated list:
-C<-encoding=OT1,T1>. The encodings are passed to F<fontenc> in the order
-specified, so the last one will be the default text encoding.
+C<-encoding=OT1,T1> (without spaces!). The generated style file passes these encodings
+to F<fontenc> in the specified order, so the last one will become
+the default text encoding for your documents.
=item B<-ts1> / B<-nots1>
@@ -1988,10 +1980,20 @@ Control the creation of titling fonts. The default is B<-titling>.
Control the creation of fonts with superior characters.
The default is B<-superiors>.
-=item B<-inferiors> / B<-noinferiors>
+=item B<-inferiors>=[ B<sinf> | B<subs> | B<dnom> ]
+
+The OpenType standard defines several kinds of digits that might be used
+as inferiors or subscripts: "Scientific Inferiors"
+(OpenType feature "sinf"), "Subscripts" ("subs") and "Denominators" ("dnom").
+This option allows the user to determine which of these styles B<autoinst>
+should use for the inferior characters. The default is not to create fonts
+with inferior characters.
-Control the creation of fonts with inferior digits.
-The default is B<-noinferiors>.
+Note that many fonts contain only one (or even none) of these types
+of inferior characters. If you specify a style of inferiors that isn't
+actually present in the font, B<autoinst> silently falls back to its default
+of not creating fonts with inferiors; it doesn't try to substitute one of
+the other features.
=item B<-fractions> / B<-nofractions>
@@ -2002,17 +2004,6 @@ The default is B<-nofractions>.
Control the creation of ornament fonts. The default is B<-ornaments>.
-=item B<-verbose>
-
-Verbose mode; print detailed information about which fonts B<autoinst>
-is generating. By default, this information is written to F<autoinst.log>;
-a different filename can be specified using the B<-logfile> option.
-Repeat this option for even more detailed information.
-
-=item B<-logfile>=I<LOGFILE>
-
-Write the logging information to F<LOGFILE> instead of F<autoinst.log>.
-
=item B<-defaultlining> / B<-defaultoldstyle>
=item B<-defaulttabular> / B<-defaultproportional>
@@ -2020,49 +2011,48 @@ Write the logging information to F<LOGFILE> instead of F<autoinst.log>.
Tell B<autoinst> which figure style is the current font family's default
(i.e., which figures you get when you don't specify any OpenType features).
-I<< Don't use these options unless you are certain you need them!
+I<Don't use these options unless you are certain you need them!>
They are only needed for fonts that don't provide OpenType features
for their default figure style; and even in that case,
-the default values (B<-defaultlining> and B<-defaulttabular>)
-are usually correct. >>
+B<autoinst>'s default values (B<-defaultlining> and B<-defaulttabular>)
+are usually correct.
-=item B<-figurekern> / B<-nofigurekern>
+=item B<-nofigurekern>
Some fonts provide kerning pairs for tabular figures.
This is very probably not what you want
(e.g., numbers in tables won't line up exactly).
-The option B<-nofigurekern> adds extra I< --ligkern> options
-to the commands for I<otftotfm> to suppress such kerns
-(but of course only for the families with tabular figures).
-Since this leads to very long commands (one hundred such options in total!)
-and the problem only occurs in very few fonts,
-the default is B<-figurekern>.
+This option adds extra I< --ligkern> options
+to the commands for I<otftotfm> to suppress such kerns.
+Note that this option leads to very long commands (it adds
+one hundred I< --ligkern> options), which may cause problems on some systems.
=item B<-extra>=I<text>
-Add I<text> to the command line to I<otftotfm>. To prevent I<text> from
-accidentily being interpreted as options to B<autoinst>, it should be
-properly quoted.
+Append I<text> as extra options to the command lines for I<otftotfm>.
+To prevent I<text> from accidentily being interpreted as options to B<autoinst>,
+it should be properly quoted.
=item B<-manual>
-Manual mode. By default, B<autoinst> executes all F<otftotfm>
+Manual mode. By default, B<autoinst> immediately executes all F<otftotfm>
commands it generates; with the B<-manual> option, these commands are
instead written to a file F<autoinst.bat>.
-Also, the generated F<otftotfm> commands specify the I< --pl> option
+Furthermore it adds the I< --pl> option
(which tells F<otftotfm> to generate human readable/editable F<pl>
and F<vpl> files instead of the default F<tfm> and F<vf> files)
-and omit the I< --automatic> option (which causes F<otftotfm> to
+and omits the I< --automatic> option (which causes F<otftotfm> to
leave all generated files in the current directory, rather than install
-them into your TEXMF tree).
+them into your TEXMF tree). Manual mode is meant to enable tweaking
+the generated commands and post-processing the generated files.
-When using this option, you should run F<pltotf> and F<vptovf> after
-executing all commands,
-to convert the F<pl> and F<vf> files to F<tfm> and F<vf> format.
+When using this option, run F<pltotf> and F<vptovf> after executing
+the commands (to convert the F<pl> and F<vf> files to F<tfm> and F<vf> format)
+and move all generated files to their proper destinations.
=back
-The following options are only meaningful in automatic mode,
+All following options are only meaningful in automatic mode,
and hence ignored in manual mode:
=over 4
@@ -2100,18 +2090,18 @@ The default is B<-updmap>.
Eddie Kohler's B<TypeTools> (F<http://www.lcdf.org/type>).
-B<Perl> can be downloaded from F<http://www.perl.org>; it is
-pre-installed on many Linux distributions.
+B<Perl> can be obtained from F<http://www.perl.org>;
+it is a standard part of many Linux distributions.
For Windows, try ActivePerl (F<http://www.activestate.com>)
or Strawberry Perl (F<http://strawberryperl.com>).
-The B<FontPro> project (F<https://github.com/sebschub/FontPro>)
-offers very complete LaTeX support for Adobe's Minion Pro and Myriad Pro
-(including math), and is currently working on Cronos Pro.
-
B<XeTeX> (F<http://www.tug.org/xetex>) and B<LuaTeX> (F<http://www.luatex.org>)
-are TeX engines that can use fonts in many formats
-(including both flavours of OpenType) without TeX-specific support files.
+are Unicode-aware TeX engines that can use OpenType fonts directly,
+without the need for any (La)TeX-specific support files.
+
+The B<FontPro> project (F<https://github.com/sebschub/FontPro>)
+offers very complete LaTeX support (including math) for Adobe's Minion Pro,
+Myriad Pro and Cronos Pro font families.
John Owens' B<otfinst> (available from CTAN) is another wrapper
around F<otftotfm>.
@@ -2122,9 +2112,10 @@ around F<otftotfm>.
Marc Penninga <marcpenninga@gmail.com>
When sending a bug report, please give as much relevant information as
-possible; this includes at least (but may not be limited to) the output
-from running B<autoinst> with the I<-verbose> option.
-Please include all (if any) error messages as well.
+possible; this includes at least (but may not be limited to)
+the log file F<autoinst.log>.
+If you see any error messages (either from B<autoinst> itself, from Perl or
+from the OS), please include these I<verbatim> as well; don't paraphrase them.
=head1 COPYRIGHT
@@ -2153,13 +2144,27 @@ GNU General Public License for more details.
=head1 RECENT CHANGES
-(See the source code for the rest of the story.)
+(See the source for the full story, all the way back to 2005.)
=over 12
+=item I<2017-06-16>
+
+Changed the I<-inferiors> option from a binary yes-or-no choice to allow
+the user to choose one of the "sinf", "subs" and "dnom" features.
+B<autoinst> now always creates a log file.
+
=item I<2017-03-21>
-Updated the F<fontools_ot1.enc> encoding file to include the Lslash and lslash glyphs (thanks to Bob Tennent).
+Updated the F<fontools_ot1.enc> encoding file to include the "Lslash"
+and "lslash" glyphs (thanks to Bob Tennent).
+
+=back
+
+
+=begin Really_old_history
+
+=over 12
=item I<2015-11-22>
@@ -2186,13 +2191,6 @@ Added the I<-lining>, I<-oldstyle>, I<-tabular> and I<-proportional>
options; the old options with those names have been renamed to
I<-defaultlining>, I<-defaultoldstyle> etc.
-=back
-
-
-=begin Really_old_history
-
-=over 12
-
=item I<2013-10-31>
The previous change required Perl v5.14 or newer;
@@ -2368,8 +2366,8 @@ Also elaborated the documentation somewhat and fixed a small bug.
=item I<2005-09-22>
Added check to see if filename parsing succeeded;
-updated the filename parsing code to cater for GaramondPremier, Silentium
-and some non-Adobe fonts;
+updated the filename parsing code to cater for GaramondPremier Pro,
+Silentium Pro and some non-Adobe fonts;
added the I<-sanserif> and I<-typewriter> options and hacked the
style files to support using several different font families in one document.
@@ -2383,7 +2381,7 @@ and improved the layout of the generated files.
=item I<2005-08-11>
-The generated commands weren't actually executed, only printed....
+The generated commands weren't actually executed, only printed...
Also added a small hack to cater for fonts
(such as some recent versions of MinionPro)
that contain swash characters but don't provide a "swsh" feature.