diff options
Diffstat (limited to 'Master/texmf/doc/man/man1/autoinst.1')
-rw-r--r-- | Master/texmf/doc/man/man1/autoinst.1 | 629 |
1 files changed, 346 insertions, 283 deletions
diff --git a/Master/texmf/doc/man/man1/autoinst.1 b/Master/texmf/doc/man/man1/autoinst.1 index 4f1ed4256ae..2e66e514d3b 100644 --- a/Master/texmf/doc/man/man1/autoinst.1 +++ b/Master/texmf/doc/man/man1/autoinst.1 @@ -1,4 +1,4 @@ -.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) +.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) .\" .\" Standard preamble: .\" ======================================================================== @@ -124,96 +124,88 @@ .\" ======================================================================== .\" .IX Title "AUTOINST 1" -.TH AUTOINST 1 "2011-06-15" "fontools" "fontools" +.TH AUTOINST 1 "2012-03-06" "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 script around the \fI\s-1LCDF\s0 TypeTools\fR, +autoinst \- wrapper around the LCDF TypeTools, for installing OpenType fonts in LaTeX. .SH "SYNOPSIS" .IX Header "SYNOPSIS" -autoinst [options] \fIfontfile\fR [\fIfontfile\fR ...] +\&\fBautoinst\fR [\fIoptions\fR] \fBfont(s)\fR .SH "DESCRIPTION" .IX Header "DESCRIPTION" -Eddie Kohler's \fITypeTools\fR, especially \fIotftotfm\fR, are great tools for -installing OpenType fonts for use with LaTeX, but their use (even in -automatic mode) is quite complicated because it needs lots of long -command lines and doesn't generate the \fIfd\fR and \fIsty\fR files LaTeX needs. -\&\fBautoinst\fR simplifies the font installation -process by generating and executing all commands for \fIotftotfm\fR -and by creating all necessary \fIfd\fR and \fIsty\fR files. +Eddie Kohler's \fITypeTools\fR, especially \fIotftotfm\fR, are superb tools +for installing OpenType fonts in LaTeX, but their use +(even in automatic mode) is complicated: they need many long +command lines and don't generate the \fIfd\fR and \fIsty\fR files LaTeX needs. +\&\fBautoinst\fR simplifies the font installation process with \fIotftotfm\fR +by generating and executing all command lines +and by creating and installing all \fIfd\fR and \fIsty\fR files. .PP -All the user then needs -to do is move these files to a suitable location -(\fI\f(CI$LOCALTEXMF\fI/tex/latex/<Supplier>/<FontFamily>/\fR is the -official choice) and update TeX's filename database. -.PP -Given a family of font files (in either \fI.ttf\fR or \fI.otf\fR format), +Given a family of font files (in either \fIotf\fR or \fIttf\fR format), \&\fBautoinst\fR will create several LaTeX font families: .RS 2 -.IP "\fB\-\fR" 2 -.IX Item "-" -Four text families (with lining and oldstyle figures, in tabular and +.IP "\-" 3 +Four text families (with lining and oldstyle digits, in tabular and proportional variants), each with the following shapes: +.RS 3 .RS 2 -.RS 2 -.IP "\fIn\fR" 4 +.IP "\fIn\fR" 6 .IX Item "n" Roman text -.IP "\fIsc\fR" 4 +.IP "\fIsc\fR" 6 .IX Item "sc" Small caps -.IP "\fInw\fR" 4 +.IP "\fInw\fR" 6 .IX Item "nw" -`Upright swash'; usually normal text with some extra `oldstyle' ligatures, +\&\*(L"Upright swash\*(R"; usually normal text with some extra \*(L"oldstyle\*(R" ligatures, such as ct, sp and st. -.IP "\fItl\fR" 4 +.IP "\fItl\fR" 6 .IX Item "tl" -Titling shape. Meant for all-caps text only (even though it sometimes contains -lowercase glyphs as well), where letterspacing and the positioning of -punctuation characters have been adjusted to suit all-caps text. -This shape is generated only for the families with lining figures. -.IP "\fIit\fR" 4 +Titling shape. Meant for all-caps text only (even though it sometimes contains +lowercase glyphs as well), where letterspacing and the positioning of +punctuation characters have been adjusted to suit all-caps text. +This shape is generated only for the families with lining digits, since +all-caps text doesn't mix with old-style digits. +.IP "\fIit\fR" 6 .IX Item "it" -Italic or oblique text -.IP "\fIscit\fR" 4 +Italic (or oblique) text +.IP "\fIscit\fR" 6 .IX Item "scit" Italic small caps -.IP "\fIsw\fR" 4 +.IP "\fIsw\fR" 6 .IX Item "sw" Swash -.IP "\fItlit\fR" 4 +.IP "\fItlit\fR" 6 .IX Item "tlit" Italic titling .RE .RS 2 .RE .RE -.RS 2 +.RS 3 .RE -.IP "\fB\-\fR" 2 -.IX Item "-" -For each text family: a family of TS1\-encoded symbol fonts, +.IP "\-" 3 +For each text family: a family of TS1\-encoded symbol fonts, in roman and italic shapes. -.IP "\fB\-\fR" 2 -.IX Item "-" +.IP "\-" 3 Four families with superiors, inferiors, numerators and denominators, in roman and italic shapes. -.IP "\fB\-\fR" 2 -.IX Item "-" +.IP "\-" 3 An ornament family, in roman and italic shapes. .RE .RS 2 .RE .PP -Of course, if the font doesn't contain oldstyle figures, small caps etc., -the corresponding shapes or families are not created; -furthermore, the creation of most families and shapes can be controlled by -command-line options (see below). +Of course, if the fonts don't contain 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 \s-1OPTIONS\s0\*(R" below). .PP -The generated font families are named \fI<FontFamily>\-<Suffix>\fR, +The generated font families are named \fI<FontFamily>\-<Suffix>\fR, where \fI<Suffix>\fR is one of .IP "\fI\s-1LF\s0\fR" 8 .IX Item "LF" @@ -229,12 +221,12 @@ proportional oldstyle figures tabular oldstyle figures .IP "\fISup\fR" 8 .IX Item "Sup" -superior characters (many fonts only have an incomplete set -of superiors: figures, some punctuation and the letters -\&\fIabdeilmnorst\fR; normal forms will be used for the other characters) +superior characters (many fonts have only an incomplete set of superiors: +digits, punctuation and the letters \fIabdeilmnorst\fR; +normal forms will be used for the other characters) .IP "\fIInf\fR" 8 .IX Item "Inf" -inferior characters; usually only figures and punctuation, +inferior characters; usually only digits and punctuation, normal forms for the other characters .IP "\fIOrn\fR" 8 .IX Item "Orn" @@ -246,313 +238,363 @@ numerators .IX Item "Dnom" denominators .PP -The generated fonts are named \fI<FontFile>\-<suffix>\-<shape>\-<enc>\fR, -where \fI<FontFile>\fR is the name of the OpenType file, \fI<suffix>\fR -is the same as above (but in lowercase), \fI<shape>\fR is either empty, -`sc', `swash' or `titling', and \fI<enc>\fR is the encoding. -A typical name in this scheme is \fIMinionPro\-Regular\-osf\-sc\-ly1\fR. +The generated 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", +and \fI<enc>\fR is the encoding. +A typical name in this scheme would be \*(L"MinionPro\-Regular\-osf\-sc\-ly1\*(R". .SS "On the choice of text encoding" .IX Subsection "On the choice of text encoding" -By default, all text families use the \s-1LY1\s0 encoding. This has been chosen -over T1 (Cork) because many OpenType fonts contain additional ligatures -such as fj and Th, and \s-1LY1\s0 has a number of empty slots to accommodate these. -Different encodings can be selected using the \fB \-\-encoding\fR -command line option (see below). -.SS "Using the fonts with LaTeX" -.IX Subsection "Using the fonts with LaTeX" -\&\fBautoinst\fR generates a style file for using the font in LaTeX documents, -named `<\fIFontFamily\fR>.sty'. This style file also takes care of loading the +By default, \fBautoinst\fR generates text fonts with \s-1OT1\s0, T1 and \s-1LY1\s0 +encodings, and the generated style files use \s-1LY1\s0 as the default text encoding. +\&\s-1LY1\s0 has been chosen over T1 because it has some empty slots to accomodate +the additional ligatures and alternate glyphs provided by many OpenType fonts. +Different encodings can be selected using the \fI\-encoding\fR +command-line option (see \*(L"COMMAND-LINE \s-1OPTIONS\s0\*(R" below). +.SS "Using the fonts in your LaTeX documents" +.IX Subsection "Using the fonts in your LaTeX documents" +\&\fBautoinst\fR generates a style file for using the font in LaTeX documents, +named \fI<FontFamily>.sty\fR. This style file also takes care of loading the \&\fIfontenc\fR and \fItextcomp\fR packages, if necessary. -To use the font, simply put \f(CW\*(C`\eusepackage{MinionPro}\*(C'\fR -(or whatever the font is called) in the preamble of your document. +To use the font, simply put \f(CW\*(C`\eusepackage{\f(CI<FontFamily>\f(CW}\*(C'\fR +in the preamble of your document. .PP This style file defines a number of options: .IP "\fIlining, oldstyle, tabular, proportional\fR" 4 .IX Item "lining, oldstyle, tabular, proportional" -Choose which figures will be used for the text fonts. -The defaults are `oldstyle' and `proportional' (if available). +Choose which digits will be used for the text fonts. +The defaults are \*(L"oldstyle\*(R" and \*(L"proportional\*(R" (if available). .IP "\fIultrablack, ultrabold, heavy, extrablack, black, extrabold, demibold, semibold, bold\fR" 4 .IX Item "ultrablack, ultrabold, heavy, extrablack, black, extrabold, demibold, semibold, bold" -Choose the weight that LaTeX will use for the `bold' weight +Choose the weight that LaTeX will use for the \*(L"bold\*(R" weight (i.e., the value of \f(CW\*(C`\ebfdefault\*(C'\fR). .IP "\fIlight, medium, regular\fR" 4 .IX Item "light, medium, regular" -Choose the weight that LaTeX will use for the `regular' weight +Choose the weight that LaTeX will use for the \*(L"regular\*(R" weight (i.e., the value of \f(CW\*(C`\emddefault\*(C'\fR). .IP "\fIscaled=<scale>\fR" 4 .IX Item "scaled=<scale>" -Scale the font by a factor of \fI<scale>\fR. +Scale the font by a factor of \fI<scale>\fR. For example: to increase the size of the font by 5%, use the command -\&\f(CW\*(C`\eusepackage[scaled=1.05]{MyriadPro}\*(C'\fR. +\&\f(CW\*(C`\eusepackage[scaled=1.05]{\f(CI<FontFamily>\f(CW}\*(C'\fR. .Sp This option is only available when the \fIxkeyval\fR package is found in your TeX installation. .PP -The style file will also try to load the \fIfontaxes\fR package (part of -the MinionPro for LaTeX project), which gives easy access to various font -shapes and styles. This package can be downloaded from the project's homepage -(\fIhttp://developer.berlios.de/projects/minionpro\fR) or directly through -the \s-1CVS\s0 web interface -(\fIhttp://cvs.berlios.de/cgi\-bin/viewcvs.cgi/minionpro/MinionPro/tex/\fR), -and is also available from \s-1CTAN\s0 as part of the archive \fImetrics\-base.zip\fR -(\fIhttp://www.ctan.org/tex\-archive/fonts/minionpro/metrics\-base.zip\fR). -.PP -Using the machinery set up by \fIfontaxes\fR, the generated style file -also defines a few commands (which take the text to be typeset as argument) -and declarations (which don't take arguments, but affect all text up to +The style file will also try to load the \fIfontaxes\fR package, +which gives easy access to various font shapes and styles. +It is available from \s-1CTAN\s0 +(\fIhttp://www.ctan.org/tex\-archive/macros/latex/contrib/fontaxes\fR). +Using the machinery set up by \fIfontaxes\fR, the generated style file also +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: .PP .Vb 1 \& DECLARATION COMMAND SHORT FORM OF COMMAND -\& +\& \& \etlshape \etexttitling \etexttl -\& \esufigures \etextsuperior \etextsu +\& \esufigures \etextsuperior \etextsu \& \einfigures \etextinferior \etextin .Ve .PP In addition, the \f(CW\*(C`\eswshape\*(C'\fR and \f(CW\*(C`\etextsw\*(C'\fR commands are redefined to place -swash on the secondary shape axis (\fIfontaxes\fR places it on the primary -shape axis); this allows the use of `upright swash'. -Just saying \f(CW\*(C`\eswshape\*(C'\fR will still give normal (italic) swash, -but \f(CW\*(C`\eswshape\eupshape\*(C'\fR results in upright swash. +swash on the secondary shape axis (\fIfontaxes\fR places it on the primary +shape axis); this makes these commands behave properly when nested, so that +\&\f(CW\*(C`\eswshape\eupshape\*(C'\fR will give upright swash. .PP -Note that there is no separate command for accessing the italic titling shape; -but these commands behave properly when nested, so \f(CW\*(C`\etlshape\eitshape\*(C'\fR gives -italic titling. -There are also no commands for accessing the numerator and denominator -fonts; these can be selected using \fIfontaxes\fR' low-level commands, +There are no commands for accessing the numerator and denominator +fonts; these can be selected using \fIfontaxes\fR' standard commands, e.g., \f(CW\*(C`\efontfigurestyle{numerator}\eselectfont\*(C'\fR. .PP -The style file also provides a command \f(CW\*(C`\eornament{\f(CI<number>\f(CW}\*(C'\fR, -where \f(CW\*(C`\f(CI<number>\f(CW\*(C'\fR is a number from 0 to the total number of -ornaments minus one. Ornaments are always typeset using the current family, +The style file also provides a command \f(CW\*(C`\eornament{\f(CI<number>\f(CW}\*(C'\fR, +where \f(CW\*(C`\f(CI<number>\f(CW\*(C'\fR is a number from 0 to the total number of +ornaments minus one. Ornaments are always typeset using the current family, series and shape. A list of all ornaments in a font can be created by -running LaTeX on the file \fInfssfont.tex\fR (part of a standard -LaTeX installation) and specifying the ornament font -(e.g., \fIMinionPro-Regular-orn-u\fR). +running LaTeX on the file \fInfssfont.tex\fR (part of a standard +LaTeX installation) and supplying the name of the ornament font. +.PP +To access the ornaments, \fBautoinst\fR creates a font-specific encoding file +\&\fI<FontFamily>_orn.enc\fR, but only if that file doesn't yet exist. +This means you can provide your own encoding vector, +e.g. if your fonts use non-standard glyph names for ornaments. .PP These commands are only generated for shapes and number styles -that actually exist; no commands are generated for shapes and styles +that actually exist; no commands are generated for shapes and styles that don't exist, or whose generation has been turned off. -.PP -This whole machinery builds on \fIfontaxes\fR; if that package cannot be found, -the style file doesn't provide high-level access to the more `exotic' -font shapes and styles. In that case, you're limited to using the lower-level -commands from standard \s-1NFSS\s0. +Please note that these commands are built on top of \fIfontaxes\fR; +if that package cannot be found, you're limited to using the +lower-level commands from standard \s-1NFSS\s0 (\f(CW\*(C`\efontfamily\*(C'\fR, \f(CW\*(C`\efontseries\*(C'\fR, +\&\f(CW\*(C`\efontshape\*(C'\fR etc.). .SS "Using multiple font families in one document" .IX Subsection "Using multiple font families in one document" -If you want to use several font families in one document, make sure -all fonts were installed using the same version of \fBautoinst\fR. -\&\fBautoinst\fR has seen some non-backward-compatible changes in the past, -and \fI.sty\fR and \fI.fd\fR files that were generated by different versions -of \fBautoinst\fR may not be able to coexist peacefully. +If you want to use more than one font family in a document, be aware +that style files generated by versions of \fBautoinst\fR older dan 2009 +are incompatible with those generated by newer versions. .SS "\s-1NFSS\s0 codes" .IX Subsection "NFSS codes" -In \s-1NFSS\s0, weight and width are concatenated into a single `series' attribute. -\&\fBautoinst\fR maps widths, weights and shapes to \s-1NFSS\s0 codes using -the following tables. These are based on the tables in Lehman's -\&\fIFont Installation Guide\fR, but some changes had to be made to avoid -name clashes for font families with many different widths and weights -(such as Helvetica Neue). +\&\s-1NFSS\s0 identifies fonts by a combination of family, series (weight plus width), +shape and size. +\&\fBautoinst\fR parses the output of \f(CW\*(C`otfinfo \-\-info\*(C'\fR to determine +these parameters. When this fails +(e.g., because the font family contains unusual widths or weights), +\&\fBautoinst\fR ends up with different fonts having the \fIsame\fR values +for the font parameters, which means that these fonts cannot be used in \s-1NFSS\s0. +\&\fBautoinst\fR will then split the font family into multiple subfamilies +(based on the font's \*(L"Subfamily\*(R" value) and try again. +(Since many font families overdo the \*(L"Subfamily\*(R" by making each font +a separate subfamily, this strategy is only used as a last resort.) +.PP +If this proliferation of font families is unwanted, +either rerun \fBautoinst\fR on a smaller set of fonts (omitting the ones that +failed to parse correctly) +or else add the missing widths, weights and shapes to the tables \f(CW%FD_WIDTH\fR, +\&\f(CW%FD_WEIGHT\fR and \f(CW%FD_SHAPE\fR, near the top of the source code. +Please also send a bug report (see \s-1AUTHOR\s0 below). +.PP +\&\fBautoinst\fR maps widths, weights and shapes to \s-1NFSS\s0 codes using +the following tables. These are based both on the standard \fIFontname\fR scheme +and on the tables in Philipp Lehman's \fIFont Installation Guide\fR, +but some changes had to be made to avoid name clashes in font families +with many different widths and weights. .PP .Vb 1 -\& WEIGHT WIDTH -\& -\& Thin t Ultra Condensed uc -\& Ultra Light ul Extra Condensed ec -\& Extra Light el Condensed c -\& Light l Semicondensed sc -\& Book [1] Regular [1] -\& Regular [1] Semiextended sx -\& Medium mb Extended x -\& Demibold db -\& Semibold sb -\& Bold b -\& Extra Bold eb SHAPES -\& Black a -\& Extra Black ea Roman n -\& Heavy h Italic it -\& Ultra ub Oblique it [2] -\& Ultra Bold ub RomanI n [3] -\& Ultra Black ua RomanII it [3] +\& WEIGHT WIDTH +\& +\& Thin t Ultra Compressed up +\& Ultra Light ul Extra Compressed ep +\& Extra Light el Compressed, Compact p +\& Light l Compact p +\& Book [1] Ultra Condensed uc +\& Regular [1] Extra Condensed ec +\& Medium mb Condensed c +\& Demibold db Narrow n +\& Semibold sb Semicondensed sc +\& Bold b Regular [1] +\& Extra Bold eb Semiextended sx +\& Ultra ub Extended x +\& Ultra Bold ub Expanded e +\& Black k Wide w +\& Extra Black ek +\& Ultra Black uk +\& Heavy h SHAPE +\& Poster r +\& Roman, Upright n [2] +\& Italic it +\& Cursive, Kursiv it +\& Oblique, Slanted it [3] +\& Incline(d) it [3] .Ve +.PP +\fINotes:\fR +.IX Subsection "Notes:" .IP "[1]" 4 .IX Item "[1]" -When \fIboth\fR weight and width are empty, the `series' attribute becomes `m'. +When \fIboth\fR weight and width are empty, the \*(L"series\*(R" attribute becomes \*(L"m\*(R". .IP "[2]" 4 .IX Item "[2]" -Mapping the `Oblique' shape to `it' instead of the canonical `sl' simplifies -\&\fBautoinst\fR. Since font families with both `Italic' and `Oblique' shapes -probably do not exist (apart from Computer Modern), -this shouldn't cause problems in real life. +Adobe Silentium Pro contains two \*(L"Roman\*(R" shapes (\*(L"RomanI\*(R" and \*(L"RomanII\*(R"); +the first of these is mapped to \*(L"n\*(R", the second one to \*(L"it\*(R". .IP "[3]" 4 .IX Item "[3]" -To the best of my knowledge, the only font family that has two `Roman' shapes -is Silentium; since this has no `Italic' shape, -the `it' code is (ab)used for the `RomanII' shape. -.SS "A note for MikTeX users" -.IX Subsection "A note for MikTeX users" -Calling \fIotftotfm\fR with the \fB \-\-automatic\fR option (as \fBautoinst\fR does by -default) requires a TeX-installation that uses the \fIkpathsea\fR library; with -TeX-installations that implement their own directory searching -(such as MiKTeX) \fIotftotfm\fR might complain that it -cannot find a writable \fItexmf\fR directory and leave all generated \fItfm\fR, -\&\fIvf\fR, \fIenc\fR and \fImap\fR files in the current working directory. -In that case, you need to move these to their correct destinations. -You also need to tell the dvi-driver (\fIdvips\fR, \fIdvipdfm\fR, \fIpdfTeX\fR etc.) -about the new font map files; see the documentation for how this is done. +Mapping the \*(L"Slanted\*(R", \*(L"Oblique\*(R" or \*(L"Inclined\*(R" shape to \*(L"it\*(R" instead of \*(L"sl\*(R" +simplifies \fBautoinst\fR. Since font families with both italic and slanted +shapes do \- to the best of my knowledge \- not exist +(apart from Computer Modern, of course), +this shouldn't cause problems in real life. +.SS "A note for MiKTeX users" +.IX Subsection "A note for MiKTeX users" +Automatically installing the fonts into a suitable \s-1TEXMF\s0 tree +(as \fBautoinst\fR does by default) requires a TeX-installation that uses +the \fIkpathsea\fR library; with TeX distributions that implement their +own directory searching (such as MiKTeX), \fBautoinst\fR will complain that +it cannot find the \fIkpsewhich\fR program and install all generated files +into subdirectories of the current directory. +If you use such a TeX distribution, you should either move these files +to their correct destinations by hand, or use the \fI\-target\fR option +(see \*(L"COMMAND-LINE \s-1OPTIONS\s0\*(R" below) to specify a \s-1TEXMF\s0 tree. .PP -Also, some OpenType fonts lead to \fIpl\fR and \fIvpl\fR files that are too -big for MiKTeX's \fIpltotf\fR and \fIvptovf\fR; the versions from TeXLive -(\fIhttp://tug.org/ftp/texlive/Contents/live/bin/win32/\fR) don't have this -problem. +Also, some OpenType fonts lead to \fIpl\fR and \fIvpl\fR files that +are too big for MiKTeX's \fIpltotf\fR and \fIvptovf\fR; +the versions that come with W32TeX (\fIhttp://www.w32tex.org\fR) +and TeXLive (\fIhttp://tug.org/texlive\fR) don't have this problem. .SH "COMMAND-LINE OPTIONS" .IX Header "COMMAND-LINE OPTIONS" -.IP "\fB \-\-encoding\fR=\fIencoding[,encoding]\fR" 4 -.IX Item " --encoding=encoding[,encoding]" -Use the encoding \fIencoding\fR for the text fonts. The default is `\s-1LY1\s0'. -A file named `<\fIencoding\fR>.enc' (in all \fIlowercase\fR) should be somewhere -where \fIotftotfm\fR can find it. Suitable encoding files -for \s-1LY1\s0, \s-1OT1\s0 and T1/TS1 come with \fIfontools\fR. (Note that these files are -called \fIfontools_xxx.enc\fR to avoid name clashes with other packages; -the `fontools_' prefix doesn't need to be specified.) +You may use either one or two dashes before options, +and option names may be shortened to a unique prefix +(e.g., \fB\-enc\fR instead of \fB\-encoding\fR). +.IP "\fB\-encoding\fR=\fIencoding[,encoding]\fR" 4 +.IX Item "-encoding=encoding[,encoding]" +Use the specified encodings for the text fonts. The default is \*(L"\s-1OT1\s0,T1,LY1\*(R". +For each encoding, a file \fI<encoding>.enc\fR (in all \fIlowercase\fR) +should be somewhere where \fIotftotfm\fR can find it. Suitable encoding files +for \s-1OT1\s0, T1/TS1 and \s-1LY1\s0 come with \fBautoinst\fR. (Note that these files are +called \fIfontools_ot1.enc\fR etc. to avoid name clashes with other packages; +the \*(L"fontools_\*(R" prefix doesn't need to be specified.) .Sp -Multiple text encodings can be specified as well: \f(CW\*(C` \-\-encoding=OT1,T1,LY1\*(C'\fR. -The encodings are passed to \fIfontenc\fR in the order specified, -so the last one will be the default text encoding. -.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. -Note that the generated style file redefines \f(CW\*(C`\efamilydefault\*(C'\fR, -so including it will 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. -Note that the generated style file redefines \f(CW\*(C`\efamilydefault\*(C'\fR, -so including it will make this font the default text font. -.IP "\fB \-\-ts1\fR" 4 -.IX Item " --ts1" +Multiple text encodings can be specified as a comma-separated list: +\&\f(CW\*(C`\-encoding=OT1,T1\*(C'\fR. The encodings are passed to \fIfontenc\fR in the order +specified, so the last one will be the default text encoding. +.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. +Note that 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. +Note that 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\-ts1\fR" 4 +.IX Item "-ts1" .PD 0 -.IP "\fB \-\-nots1\fR" 4 -.IX Item " --nots1" +.IP "\fB\-nots1\fR" 4 +.IX Item "-nots1" .PD -Turn the creation of TS1\-encoded fonts on or off. The default is \fB \-\-ts1\fR -if the text encodings (see \fI \-\-encoding\fR above) include T1, -\&\fB \-\-nots1\fR otherwise. -.IP "\fB \-\-smallcaps\fR" 4 -.IX Item " --smallcaps" +Turn the creation of TS1\-encoded fonts on or off. The default is \fB\-ts1\fR +if the text encodings (see \fI\-encoding\fR above) include T1, +\&\fB\-nots1\fR otherwise. +.IP "\fB\-smallcaps\fR" 4 +.IX Item "-smallcaps" .PD 0 -.IP "\fB \-\-nosmallcaps\fR" 4 -.IX Item " --nosmallcaps" +.IP "\fB\-nosmallcaps\fR" 4 +.IX Item "-nosmallcaps" .PD -Turn the creation of small caps fonts on or off. The default is -\&\fB \-\-smallcaps\fR. -.IP "\fB \-\-swash\fR" 4 -.IX Item " --swash" +Turn the creation of small caps fonts on or off. The default is +\&\fB\-smallcaps\fR. +.IP "\fB\-swash\fR" 4 +.IX Item "-swash" .PD 0 -.IP "\fB \-\-noswash\fR" 4 -.IX Item " --noswash" +.IP "\fB\-noswash\fR" 4 +.IX Item "-noswash" .PD -Turn the creation of swash fonts on or off. The default is \fB \-\-swash\fR. -.IP "\fB \-\-titling\fR" 4 -.IX Item " --titling" +Turn the creation of swash fonts on or off. The default is \fB\-swash\fR. +.IP "\fB\-titling\fR" 4 +.IX Item "-titling" .PD 0 -.IP "\fB \-\-notitling\fR" 4 -.IX Item " --notitling" +.IP "\fB\-notitling\fR" 4 +.IX Item "-notitling" .PD -Turn the creation of titling fonts on or off. The default is \fB \-\-notitling\fR. -.IP "\fB \-\-superiors\fR" 4 -.IX Item " --superiors" +Turn the creation of titling fonts on or off. The default is \fB\-titling\fR. +.IP "\fB\-superiors\fR" 4 +.IX Item "-superiors" .PD 0 -.IP "\fB \-\-nosuperiors\fR" 4 -.IX Item " --nosuperiors" +.IP "\fB\-nosuperiors\fR" 4 +.IX Item "-nosuperiors" .PD -Turn the creation of fonts with superior characters on or off. -The default is \fB \-\-superiors\fR. -.IP "\fB \-\-inferiors\fR" 4 -.IX Item " --inferiors" +Turn the creation of fonts with superior characters on or off. +The default is \fB\-superiors\fR. +.IP "\fB\-inferiors\fR" 4 +.IX Item "-inferiors" .PD 0 -.IP "\fB \-\-noinferiors\fR" 4 -.IX Item " --noinferiors" +.IP "\fB\-noinferiors\fR" 4 +.IX Item "-noinferiors" .PD -Turn the creation of fonts with inferior figures on or off. -The default is \fB \-\-noinferiors\fR. -.IP "\fB \-\-fractions\fR" 4 -.IX Item " --fractions" +Turn the creation of fonts with inferior digits on or off. +The default is \fB\-noinferiors\fR. +.IP "\fB\-fractions\fR" 4 +.IX Item "-fractions" .PD 0 -.IP "\fB \-\-nofractions\fR" 4 -.IX Item " --nofractions" +.IP "\fB\-nofractions\fR" 4 +.IX Item "-nofractions" .PD -Turn the creation of fonts with numerators and denominators on or off. -The default is \fB \-\-nofractions\fR. -.IP "\fB \-\-ornaments\fR" 4 -.IX Item " --ornaments" +Turn the creation of fonts with numerators and denominators on or off. +The default is \fB\-nofractions\fR. +.IP "\fB\-ornaments\fR" 4 +.IX Item "-ornaments" .PD 0 -.IP "\fB \-\-noornaments\fR" 4 -.IX Item " --noornaments" +.IP "\fB\-noornaments\fR" 4 +.IX Item "-noornaments" .PD -Turn the creation of ornament fonts on or off. The default is \fB \-\-ornaments\fR. -.IP "\fB \-\-manual\fR" 4 -.IX Item " --manual" -Manual mode. By default, \fBautoinst\fR immediately executes all \fIotftotfm\fR -command lines it generates; with the \fB \-\-manual\fR option, these commands are -instead written to a batch command file (named `<\fIfont\fR>.bat', to make things -easier for our friends on Windows). Also, the generated \fIotftotfm\fR command -lines specify the \fI \-\-pl\fR option and leave out the \fI \-\-automatic\fR option; -this causes human readable (and editable) \fIpl\fR and \fIvpl\fR files to be created -instead of the default \fItfm\fR and \fIvf\fR files. -.IP "\fB \-\-verbose\fR" 4 -.IX Item " --verbose" +Turn the creation of ornament fonts on or off. The default is \fB\-ornaments\fR. +.IP "\fB\-target\fR=\fI\s-1DIRECTORY\s0\fR" 4 +.IX Item "-target=DIRECTORY" +Install all generated files into the \s-1TEXMF\s0 tree at \fI\s-1DIRECTORY\s0\fR. +.Sp +By default, \fBautoinst\fR searches your \f(CW$TEXMFLOCAL\fR and \f(CW$TEXMFHOME\fR paths +and installs all files into subdirectories of the first writable \s-1TEXMF\s0 tree +it finds (or into subdirectories of the current directory, +if no writable directory is found). +.Sp +\&\fBNote\fR: this option gets overriden by the \fB\-manual\fR option! +.IP "\fB\-manual\fR" 4 +.IX Item "-manual" +Manual mode. By default, \fBautoinst\fR immediately executes all \fIotftotfm\fR +command lines it generates; with the \fB\-manual\fR option, these commands are +instead written to a file \fIautoinst.bat\fR. +Also, the generated \fIotftotfm\fR command lines specify the \fI \-\-pl\fR option +(which tells \fIotftotfm\fR to generate readable/editable \fIpl\fR and \fIvpl\fR files +instead of the default \fItfm\fR and \fIvf\fR files) +and leave out the \fI \-\-automatic\fR option (which tells \fIotftotfm\fR to +leave all generated files in the current directory, rather than install +them into your \s-1TEXMF\s0 tree). +.Sp +When using this option, you should run \fIpltotf\fR and \fIvptovf\fR after +executing all commands, +to convert the \fIpl\fR and \fIvf\fR files to \fItfm\fR and \fIvf\fR format. +.Sp +\&\fBNote\fR: this option overrides the \fB\-target\fR option! +.IP "\fB\-verbose\fR" 4 +.IX Item "-verbose" Verbose mode; print detailed info about what \fBautoinst\fR thinks it's doing. -.IP "\fB \-\-extra\fR=\fItext\fR" 4 -.IX Item " --extra=text" -Pass \fItext\fR as options to \fIotftotfm\fR. To prevent \fItext\fR from accidentily +.IP "\fB\-extra\fR=\fItext\fR" 4 +.IX Item "-extra=text" +Pass \fItext\fR as options to \fIotftotfm\fR. To prevent \fItext\fR from accidentily being interpreted as options to \fBautoinst\fR, it should be properly quoted. +.IP "\fB\-figurekern\fR" 4 +.IX Item "-figurekern" +.PD 0 +.IP "\fB\-nofigurekern\fR" 4 +.IX Item "-nofigurekern" +.PD +Some fonts provide kerning pairs for tabular figures. +This is probably unwanted (e.g., numbers in tables won't line up exactly). +The option \fB\-nofigurekern\fR adds extra \fI \-\-ligkern\fR options +to the command lines for \fIotftotfm\fR to suppress such kerns +(but only for the \*(L"\s-1TLF\s0\*(R" and \*(L"TOsF\*(R" families). +Since this leads to very long command lines (it adds one hundred such options) +and the problem affects only few fonts, the default is \fB\-figurekern\fR. .SH "SEE ALSO" .IX Header "SEE ALSO" Eddie Kohler's TypeTools (\fIhttp://www.lcdf.org/type\fR). .PP -Perl is usually pre-installed on Linux and Unix systems; -on Windows, try ActivePerl (available from \fIhttp://www.activestate.com\fR) +Perl is pre-installed on most Linux and Unix systems; +on Windows, try ActiveState's ActivePerl +(available from \fIhttp://www.activestate.com\fR) or Strawberry Perl (\fIhttp://strawberryperl.com\fR). .PP -XeTeX (\fIhttp://www.tug.org/xetex\fR) is an extension of TeX -that can natively use any font installed in the operating system -(including both flavours of OpenType fonts) -without additional support files. +XeTeX (\fIhttp://www.tug.org/xetex\fR) and LuaTeX (\fIhttp://www.luatex.org\fR) +are TeX extensions that can use any font (including both flavours of OpenType) +without TeX-specific support files. .PP -John Owens' \fIotfinst\fR (available from \s-1CTAN\s0) is another wrapper +John Owens' \fIotfinst\fR (available from \s-1CTAN\s0) is another wrapper around \fIotftotfm\fR, and may work when \fBautoinst\fR doesn't. .PP -The MinionPro for LaTeX project -(\fIhttp://developer.berlios.de/projects/minionpro/\fR, also on \s-1CTAN\s0) -developed very complete support files for Minion Pro (including math), +The MinionPro for LaTeX project +(\fIhttp://developer.berlios.de/projects/minionpro/\fR, also on \s-1CTAN\s0) +developed very complete support files for Minion Pro (including math), but the project appears to have been abandoned; -these files don't work with recent versions of Minion Pro. +these files don't work with the latest versions of Minion Pro. .SH "AUTHOR" .IX Header "AUTHOR" -Marc Penninga <marc@penninga.info> -.PP -When sending a bug report, please give as much relevant information as -possible; this usually includes (but may not be limited to) the output from -running \fBautoinst\fR with the \fB \-\-verbose\fR option. -Please make sure that this output includes all error messages (if any); -this can be done using the command +Marc Penninga <marcpenninga@gmail.com> .PP -\&\f(CW\*(C`autoinst \f(CI(... all options and files ...)\f(CW >autoinst.log 2>&1\*(C'\fR +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 \fBautoinst\fR with the \fI\-verbose\fR option. +Please make sure that this output includes all (if any) error messages. .SH "COPYRIGHT" .IX Header "COPYRIGHT" -Copyright (C) 2005, 2006, 2007, 2009, 2010, 2011 Marc Penninga. +Copyright (C) 2005\-2012 Marc Penninga. .SH "LICENSE" .IX Header "LICENSE" This program is free software; you can redistribute it and/or modify -it under the terms of the \s-1GNU\s0 General Public License -as published by the Free Software Foundation, -either version 2 of the License, or (at your option) -any later version. -A copy of the \s-1GNU\s0 General Public License is included with the \fIfontools\fR -collection; see the file \fIGPLv2.txt\fR. +it under the terms of the \s-1GNU\s0 General Public License as published +by the Free Software Foundation, either version 2 of the License, +or (at your option) any later version. +A copy of the \s-1GNU\s0 General Public License is included with \fBautoinst\fR; +see the file \fIGPLv2.txt\fR. .SH "DISCLAIMER" .IX Header "DISCLAIMER" This program is distributed in the hope that it will be useful, @@ -561,30 +603,51 @@ but \s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty \&\s-1GNU\s0 General Public License for more details. .SH "RECENT CHANGES" .IX Header "RECENT CHANGES" -(See the source code for the full story.) +(See the source code for the rest of the story.) +.IP "\fI2012\-03\-06\fR" 12 +.IX Item "2012-03-06" +Implemented the \*(L"splitting the font family into multiple subfamilies\*(R" +emergency strategy when font info parsing fails. +Added recognition for a number of unusual widths, weights and shapes. +.IP "\fI2012\-02\-29\fR" 12 +.IX Item "2012-02-29" +Fixed a bug in the font parsing code, +where possible widths, weights and shapes where tested in the wrong order; +this led to \*(L"ExtraLight\*(R" fonts being recognised as \*(L"Light\*(R". +Added recognition for \*(L"Narrow\*(R" and \*(L"Wide\*(R" widths. +Also added the \fI\-(no)figurekern\fR command-line option. +.IP "\fI2012\-02\-01\fR" 12 +.IX Item "2012-02-01" +Reorganised the code, and fixed some bugs in the process. +Added the \fI\-target\fR command-line option. +Made \fBautoinst\fR install the \fIfd\fR and \fIsty\fR files in +the same \s-1TEXMF\s0 tree as the other generated files. +Generate \s-1OT1\s0, T1 and \s-1LY1\s0 encoded text fonts by default. +Made \fI\-titling\fR a default option (instead of \fI\-notitling\fR). +Updated the documentation. .IP "\fI2011\-06\-15\fR" 12 .IX Item "2011-06-15" Fixed the font info parsing code for some fonts that are -too lazy to spell out 'Italic' in full. +too lazy to spell out \*(L"Italic\*(R" in full. .IP "\fI2010\-04\-29\fR" 12 .IX Item "2010-04-29" -The \f(CW\*(C` \-\-feature=kern\*(C'\fR option is only used for fonts that +The \fI \-\-feature=kern\fR option is only used for fonts that contain either a \fIkern\fR feature or a \fIkern\fR table. -Font feature selection commands in the \fI.sty\fR file are only -generated for shapes and figure styles that are supported +Font feature selection commands in the \fIsty\fR file are only +generated for shapes and figure styles that are supported by the current font, and whose generation has not been -turned off using the command line options. +turned off using the command-line options. Fixed the font info parsing to work with the Condensed fonts in the Minion Pro family. .IP "\fI2010\-04\-23\fR" 12 .IX Item "2010-04-23" -Always provide the \f(CW\*(C` \-\-feature=kern\*(C'\fR option to \fIotftotfm\fR, -even if the font doesn't have a \fIkern\fR feature; +Always provide the \fI \-\-feature=kern\fR option to \fIotftotfm\fR, +even if the font doesn't have a \fIkern\fR feature; this will make \fIotftotfm\fR use the \fIkern\fR table if present. -For fonts without a \fIliga\fR feature, add \f(CW\*(C` \-\-ligkern\*(C'\fR +For fonts without a \fIliga\fR feature, add \fI \-\-ligkern\fR options for the common f\-ligatures to the \fIotftotfm\fR command line, so that any ligatures present in the font will still be used. -Bug fix: the generated \fI.sty\fR files now work for font families +Bug fix: the generated \fIsty\fR files now work for font families with names containing digits. .IP "\fI2009\-04\-09\fR" 12 .IX Item "2009-04-09" @@ -592,6 +655,6 @@ Prefixed the filenames of the included encoding files with \&\fIfontools_\fR, to prevent name clashes with other packages. .IP "\fI2009\-04\-06\fR" 12 .IX Item "2009-04-06" -A small patch to the \f(CW\*(C`make_ornament_encoding\*(C'\fR subroutine; -it now also recognises the \fIbullet.xxx\fR ornament glyphs -in Adobe's Kepler Pro. +A small patch to the \f(CW\*(C`get_orn\*(C'\fR subroutine: +it now also recognises the \fIbullet.xxx\fR ornament glyphs +in Adobe Kepler Pro. |