diff options
author | Karl Berry <karl@freefriends.org> | 2018-01-09 22:35:27 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2018-01-09 22:35:27 +0000 |
commit | 1dbc8fa89c0f6fc256c3c480740e52bd6d47ba05 (patch) | |
tree | adad1223cb27d2c982f0b7d45806e6132c14e7b5 /Build | |
parent | a492b6280e5865d3e6cdf114d9fc46d6634e4899 (diff) |
fontools (9jan18)
git-svn-id: svn://tug.org/texlive/trunk@46264 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rwxr-xr-x | Build/source/texk/texlive/linked_scripts/fontools/autoinst | 108 | ||||
-rwxr-xr-x | Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl | 29 |
2 files changed, 88 insertions, 49 deletions
diff --git a/Build/source/texk/texlive/linked_scripts/fontools/autoinst b/Build/source/texk/texlive/linked_scripts/fontools/autoinst index 963bb89b2fc..3a5b6cdf3a1 100755 --- a/Build/source/texk/texlive/linked_scripts/fontools/autoinst +++ b/Build/source/texk/texlive/linked_scripts/fontools/autoinst @@ -4,7 +4,7 @@ ---------------------------------------------------------------------------- - Copyright (C) 2005-2017 Marc Penninga. + Copyright (C) 2005-2018 Marc Penninga. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License @@ -58,11 +58,15 @@ my $TODAY = sprintf "%04d/%02d/%02d", $y + 1900, $m + 1, $d; =cut my %FD_WEIGHT = ( + two => '2', + four => '4', + eight => '8', + hair => 'a', thin => 't', ultralight => 'ul', extralight => 'el', light => 'l', - book => '', + book => 'sl', regular => '', medium => 'mb', demibold => 'db', @@ -1395,7 +1399,7 @@ END_STY_XKEYVAL $defaults .= ",$default_bold" if $default_bold; my $default_regular; - for my $series (qw(light medium regular)) { + for my $series (qw(light medium book regular)) { if ($seen{$FD_WEIGHT{$series} || 'm'}) { print {$STY} "\\DeclareOptionX{$series}{\\edef\\mdseries\@$ARGV{nfss}", @@ -1494,6 +1498,17 @@ END_FD_SSUB } } + for my $shape (keys %{$data->{sl}}) { + if (!exists $data->{m}{$shape}) { + print {$FD} <<"END_FD_SSUB_SL"; +\\DeclareFontShape{$enc}{${fam}-${sty}}{m}{$shape}{ + <-> ssub * ${fam}-${sty}/sl/${shape} +}{} + +END_FD_SSUB_SL + } + } + for my $shape (keys %{$data->{b}}) { if (!exists $data->{bx}{$shape}) { print {$FD} <<"END_FD_SSUB_BX"; @@ -1786,16 +1801,6 @@ 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 -build on the facilities of the F<mweights> package instead. -If you use multiple B<autoinst>-generated font familes in the same document, -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 @@ -1821,35 +1826,36 @@ B<autoinst> maps widths, weights and shapes to NFSS codes using 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. +such as Helvetica Neue and Fira Sans. WEIGHT WIDTH - Thin t Ultra Compressed up - Ultra Light ul Extra Compressed ep - Extra Light el Compressed 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 sl [3] - Slanted sl [3] - Incline(d) sl [3] + + Two 2 [1] Ultra Compressed up + Four 4 [1] Extra Compressed ep + Eight 8 [1] Compressed p + Hair a Compact p + Thin t Ultra Condensed uc + Ultra Light ul Extra Condensed ec + Extra Light el Condensed c + Light l Narrow n + Book sl [2] Semicondensed sc + Regular [3] Regular [3] + Medium mb Semiextended sx + Demibold db Extended x + Semibold sb Expanded e + Bold b Wide w + Extra Bold eb + Ultra ub + Ultra Bold ub SHAPE + Black k + Extra Black ek Roman, Upright n [4] + Ultra Black uk Italic it + Heavy h Cursive, Kursiv it + Poster r Oblique sl [5] + Slanted sl [5] + Incline(d) sl [5] =head3 Notes @@ -1858,14 +1864,24 @@ such as Helvetica Neue. =item [1] -When I<both> weight and width are empty, the "series" attribute becomes "m". +These weights only occur (as far as I know) in Fira Sans. =item [2] +Since release 2018-01-09, B<autoinst> adds "ssub" rules to the F<fd> files +to substitute "Book" weight for "Regular" when the latter is missing. +Before that, "Book" was treated as a synonym for "Regular". + +=item [3] + +When I<both> weight and width are empty, the "series" attribute becomes "m". + +=item [4] + Adobe Silentium Pro contains two "Roman" shapes ("RomanI" and "RomanII"); the first of these is mapped to "n", the second one to "it". -=item [3] +=item [5] Since release 2014-01-21; before that, slanted shapes were mapped to "it". @@ -2114,13 +2130,13 @@ 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 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. +If you see any error messages (either from B<autoinst> itself, from the I<LCDF TypeTools>, +from Perl or from the OS), please include these I<verbatim> as well; don't paraphrase them. =head1 COPYRIGHT -Copyright (C) 2005-2017 Marc Penninga. +Copyright (C) 2005-2018 Marc Penninga. =head1 LICENSE @@ -2148,6 +2164,12 @@ GNU General Public License for more details. =over 12 +=item I<2018-01-09> + +Added the "sl" weight for font families (such as Fira Sans) that contain both +"Book" and "Regular" weights (reported by Bob Tennent). +Added the "Two", "Four", "Eight" and "Hair" weights. + =item I<2017-06-16> Changed the I<-inferiors> option from a binary yes-or-no choice to allow diff --git a/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl b/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl index 63ea4ec37b0..ec5fa4b2532 100755 --- a/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl +++ b/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl @@ -1,13 +1,13 @@ #!/usr/bin/env perl -# $Id: tlmgr.pl 46034 2017-12-11 01:54:21Z preining $ +# $Id: tlmgr.pl 46207 2018-01-04 18:34:36Z karl $ # # Copyright 2008-2017 Norbert Preining # This file is licensed under the GNU General Public License version 2 # or any later version. # -my $svnrev = '$Revision: 46034 $'; -my $datrev = '$Date: 2017-12-11 02:54:21 +0100 (Mon, 11 Dec 2017) $'; +my $svnrev = '$Revision: 46207 $'; +my $datrev = '$Date: 2018-01-04 19:34:36 +0100 (Thu, 04 Jan 2018) $'; my $tlmgrrevision; my $tlmgrversion; my $prg; @@ -364,6 +364,7 @@ my %globaloptions = ( "pause" => 1, "pin-file" => "=s", "print-platform|print-arch" => 1, + "print-platform-info" => 1, "usermode|user-mode" => 1, "usertree|user-tree" => "=s", "verify-downloads" => "!", @@ -417,8 +418,10 @@ sub main { if (!defined($action)) { if ($opts{"gui"}) { # -gui = gui $action = "gui"; - } elsif ($opts{"print-platform"}) { # -print-arch = print-arch + } elsif ($opts{"print-platform"}) { $action = "print-platform"; + } elsif ($opts{"print-platform-info"}) { + $action = "print-platform-info"; } else { $action = ""; } @@ -448,6 +451,14 @@ sub main { exit 0; } + if (defined($action) && $action eq "print-platform-info") { + print "config.guess ", `$::installerdir/tlpkg/installer/config.guess`; + my $plat = TeXLive::TLUtils::platform(); + print "platform ", $plat, "\n"; + print "platform_desc ", TeXLive::TLUtils::platform_desc($plat), "\n"; + exit 0; + } + # ACTION massaging # for backward compatibility and usability @@ -8190,6 +8201,11 @@ Print the TeX Live identifier for the detected platform (hardware/operating system) combination to standard output, and exit. C<--print-arch> is a synonym. +=head2 print-platform-info + +Print the TeX Live platform identifier, TL platform long name, and +original output from guess. + =head2 remove [I<option>]... I<pkg>... Remove each I<pkg> specified. Removing a collection removes all package @@ -8796,7 +8812,8 @@ currently not supported, but may be in a future release. Some C<tlmgr> actions don't need any write permissions and thus work the same in user mode and normal mode. Currently these are: C<check>, -C<help>, C<list>, C<print-platform>, C<search>, C<show>, C<version>. +C<help>, C<list>, C<print-platform>, C<print-platform-info>, C<search>, +C<show>, C<version>. On the other hand, most of the actions dealing with package management do need write permissions, and thus behave differently in user mode, as @@ -9333,7 +9350,7 @@ This script and its documentation were written for the TeX Live distribution (L<http://tug.org/texlive>) and both are licensed under the GNU General Public License Version 2 or later. -$Id: tlmgr.pl 46034 2017-12-11 01:54:21Z preining $ +$Id: tlmgr.pl 46207 2018-01-04 18:34:36Z karl $ =cut # to remake HTML version: pod2html --cachedir=/tmp tlmgr.pl >/tmp/tlmgr.html |