Skip to content

Commit

Permalink
synchronized texlive 51630.
Browse files Browse the repository at this point in the history
  • Loading branch information
clerkma committed Jul 13, 2019
1 parent 528cdc2 commit a8360d2
Show file tree
Hide file tree
Showing 15 changed files with 395 additions and 75 deletions.
4 changes: 2 additions & 2 deletions texlive/texk/texlive/linked_scripts/fontools/afm2afm
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ use File::Basename;
use Getopt::Long;
use Pod::Usage;

my $VERSION = "20190625";
my $VERSION = "20190712";

parse_commandline();

Expand Down Expand Up @@ -421,7 +421,7 @@ See the GNU General Public License for more details.
=head1 VERSION
This document describes B<afm2afm> version 20190625.
This document describes B<afm2afm> version 20190712.
=head1 RECENT CHANGES
Expand Down
98 changes: 58 additions & 40 deletions texlive/texk/texlive/linked_scripts/fontools/autoinst
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ use Getopt::Long ();
use Pod::Usage ();
use POSIX ();

my $VERSION = '20190625';
my $VERSION = '20190712';

my ($d, $m, $y) = (localtime time)[3 .. 5];
my $TODAY = sprintf "%04d/%02d/%02d", $y + 1900, $m + 1, $d;
Expand Down Expand Up @@ -782,8 +782,8 @@ I'm using the following options:
fractions: @{[ $ARGV{fractions} ? 'yes' : 'no' ]}
ligatures: @{[ $ARGV{ligatures} ? 'yes' : 'no' ]}
dry run/real: @{[ $ARGV{dryrun} ? 'dry run' : 'real' ]}
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>' ]}
Expand Down Expand Up @@ -1228,22 +1228,25 @@ sub parse_options {

# Determine NFSS classification of this family, if the user
# didn't explicitly specify it
if ( !$ARGV{nfss} ) {
# EXPERIMENTAL: parse "post" table to see if font is fixed-width
open my $otfinfo, '-|:raw', qq(otfinfo --dump-table 'post' "$ARGV[0]")
or die "[ERROR] could not fork(): $!";
my $post_table = do { local $/; <$otfinfo> };
close $otfinfo
or die "[ERROR] 'otfinfo --dump-table post $ARGV[0]' failed";

my $is_fixed_pitch = unpack '@12N', $post_table;

$ARGV{nfss} = $is_fixed_pitch ? 'tt'
: $ARGV[0] =~ m/mono(?!type)/xmsi ? 'tt'
: $ARGV[0] =~ m/sans/xmsi ? 'sf'
: 'rm'
;
}
eval {
if ( !$ARGV{nfss} ) {
# EXPERIMENTAL: parse "post" table to see if font is fixed-width
my $cmd = qq(otfinfo --dump-table "post" "$ARGV[0]");
open my $otfinfo, '-|:raw', $cmd
or die "could not fork(): $!";
my $post_table = do { local $/; <$otfinfo> };
close $otfinfo
or die "'$cmd' failed";

my $is_fixed_pitch = unpack '@12N', $post_table;

$ARGV{nfss} = $is_fixed_pitch ? 'tt'
: $ARGV[0] =~ m/mono(?!type)/xmsi ? 'tt'
: $ARGV[0] =~ m/sans/xmsi ? 'sf'
: 'rm'
;
}
} or warn "[WARNING] $@";

# If the user didn't explicitly say anything about ligatures,
# activate them unless the font is a typewriter font.
Expand Down Expand Up @@ -1337,6 +1340,8 @@ sub parse_fontinfo {
minsize => 0,
maxsize => 0,
is_smallcaps => 0,
weight_class => 0,
width_class => 0,
};

parse_basicinfo($info);
Expand All @@ -1355,7 +1360,8 @@ my @DIGITS = qw(Zero One Two Three Four Five Six Seven Eight Nine);
sub parse_basicinfo {
my $info = shift;

open my $otfinfo, '-|', qq(otfinfo --info "$info->{filename}")
my $cmd = qq(otfinfo --info "$info->{filename}");
open my $otfinfo, '-|', $cmd
or die "[ERROR] could not fork(): $!";
my %data = map { my ($k,$v) = m/\A\s* ([^:]+?) \s*:\s* ([^\r\n]+)/xms;
$k =~ s/\s+//xmsg;
Expand All @@ -1364,7 +1370,7 @@ sub parse_basicinfo {
}
grep { m/\A\s* [^:]+? \s*:\s* [^\r\n]+/xms } <$otfinfo>;
close $otfinfo
or die "[ERROR] 'otfinfo --info $info->{filename}' failed";
or die "[ERROR] '$cmd' failed";

$data{family} = $data{preferredfamily} || $data{family};
$data{subfamily} = $data{preferredsubfamily} || $data{subfamily};
Expand Down Expand Up @@ -1507,14 +1513,15 @@ sub parse_basicinfo {

# EXPERIMENTAL: we extract the usWeightClass and usWidthClass
# properties from the font's OS/2 table
open $otfinfo,
'-|:raw',
qq(otfinfo --dump-table 'OS/2' "$info->{filename}")
or die "[ERROR] could not fork(): $!";
my $os2_table = do { local $/; <$otfinfo> };
close $otfinfo
or die "[ERROR] 'otfinfo --dump-table $info->{filename}' failed";
@{$info}{qw(weight_class width_class)} = unpack '@4n @6n', $os2_table;
eval {
my $cmd = qq(otfinfo --dump-table "OS/2" "$info->{filename}");
open $otfinfo, '-|:raw', $cmd
or die "could not fork(): $!";
my $os2_table = do { local $/; <$otfinfo> };
close $otfinfo
or die "'$cmd' failed";
@{$info}{qw(weight_class width_class)} = unpack '@4n @6n', $os2_table;
} or warn "[WARNING] $@";

return;
}
Expand All @@ -1538,17 +1545,19 @@ sub mqrs {
sub parse_features {
my $info = shift;

open my $otfinfo, '-|', qq(otfinfo --features "$info->{filename}")
my $cmd = qq(otfinfo --features "$info->{filename}");
open my $otfinfo, '-|', $cmd
or die "[ERROR] could not fork(): $!";
%{$info->{feature}} = map { (substr($_, 0, 4) => 1) } <$otfinfo>;
close $otfinfo
or die "[ERROR] 'otfinfo --features $info->{filename}' failed";
or die "[ERROR] '$cmd' failed";

open $otfinfo, '-|', qq(otfinfo --tables "$info->{filename}")
$cmd = qq(otfinfo --tables "$info->{filename}");
open $otfinfo, '-|', $cmd
or die "[ERROR] could not fork(): $!";
$info->{feature}{kern} = 1 if grep { m/\d+ \s+ kern/xms } <$otfinfo>;
close $otfinfo
or die "[ERROR] 'otfinfo --tables $info->{filename}' failed";
or die "[ERROR] '$cmd' failed";

return;
}
Expand All @@ -1560,7 +1569,8 @@ sub parse_features {
sub parse_sizeinfo {
my $info = shift;

open my $otfinfo, '-|', qq(otfinfo --optical-size "$info->{filename}")
my $cmd = qq(otfinfo --optical-size "$info->{filename}");
open my $otfinfo, '-|', $cmd
or die "[ERROR] could not fork(): $!";

if (my ($minsize, $maxsize)
Expand Down Expand Up @@ -1595,7 +1605,7 @@ sub parse_sizeinfo {
@{$info}{qw(minsize maxsize)} = ($minsize, $maxsize);
}
close $otfinfo
or die "[ERROR] 'otfinfo --optical-size $info->{filename}' failed";
or die "[ERROR] '$cmd' failed";

return;
}
Expand Down Expand Up @@ -1675,11 +1685,12 @@ sub get_orn {
# Default ornament names: 'orn.' plus three digits
my @encoding = map { sprintf "orn.%03d", $_ } 1 .. 256;

open my $otfinfo, '-|', qq(otfinfo --glyphs "$font->{filename}")
my $cmd = qq(otfinfo --glyphs "$font->{filename}");
open my $otfinfo, '-|', $cmd
or die "[ERROR] could not fork(): $!";
chop(my @glyphnames = <$otfinfo>);
close $otfinfo
or die "[ERROR] 'otfinfo --glyphs $font->{filename}' failed";
or die "[ERROR] '$cmd' failed";

# Test for some known alternative names (probably not exhaustive)
my @ornaments
Expand Down Expand Up @@ -1741,7 +1752,8 @@ sub write_stylefile {
$ARGV{target}, 'tex', 'latex', $ARGV{typeface} || $fam);
File::Path::make_path($dir);
$fn = File::Spec->catfile($dir, $fn);
open my $STY, '>', $fn or die "[ERROR] Can't create '$fn': $!";
open my $STY, '>', $fn
or die "[ERROR] Can't create '$fn': $!";

print {$STY} <<"END_STY_HEADER";
%% Generated by autoinst on $TODAY
Expand Down Expand Up @@ -1948,7 +1960,8 @@ sub write_fdfile {
$ARGV{target}, 'tex', 'latex', $ARGV{typeface} || $fam);
File::Path::make_path($dir);
$fn = File::Spec->catfile($dir, $fn);
open my $FD, '>', $fn or die "[ERROR] Can't create '$fn': $!";
open my $FD, '>', $fn
or die "[ERROR] Can't create '$fn': $!";

print {$FD} <<"END_FD_HEADER";
%% Generated by autoinst on $TODAY
Expand Down Expand Up @@ -2769,7 +2782,7 @@ GNU General Public License for more details.
=head1 VERSION
This document describes B<autoinst> version 20190625.
This document describes B<autoinst> version 20190712.
=head1 RECENT CHANGES
Expand All @@ -2778,6 +2791,11 @@ This document describes B<autoinst> version 20190625.
=over 12
=item I<2019-07-12>
Replaced single quotes in calls to F<otfinfo> with double quotes,
as they caused problems on Windows 10.
=item I<2019-06-25>
=over 3
Expand Down
4 changes: 2 additions & 2 deletions texlive/texk/texlive/linked_scripts/fontools/ot2kpx
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ use Getopt::Long ();
use List::Util @List::Util::EXPORT_OK;
use Pod::Usage;

my $VERSION = "20190625";
my $VERSION = "20190712";

our ($NUM_GLYPHS, $UNITS_PER_EM, %kern);

Expand Down Expand Up @@ -858,7 +858,7 @@ See the GNU General Public License for more details.
=head1 VERSION
This document describes B<ot2kpx> version 20190625.
This document describes B<ot2kpx> version 20190712.
=head1 RECENT CHANGES
Expand Down
10 changes: 7 additions & 3 deletions texlive/texk/texlive/linked_scripts/tlcockpit/tlcockpit.sh
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
#!/bin/sh
# Public domain. Originally written by Norbert Preining and Karl Berry, 2018.
#!/bin/bash
# Public domain. Originally written by Norbert Preining and Karl Berry, 2018-2019.

scriptname=`basename "$0"`
jar="$scriptname.jar"
javaVersion=$(java -version 2>&1 | head -1)
case "$javaVersion" in
*"1.8"*) jar="$scriptname-jdk8".jar ;;
*) jar="$scriptname.jar" ;;
esac
jarpath=`kpsewhich --progname="$scriptname" --format=texmfscripts "$jar"`

kernel=`uname -s 2>/dev/null`
Expand Down
14 changes: 14 additions & 0 deletions texlive/texk/web2c/eptexdir/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
2019-07-09 Hironori Kitagawa <[email protected]>

* pdfutils.ch: Add primitive \ifincsname.
* eptex.ech: Revise \iffontchar and \fontchar?? to treat
negative value as char_type.
- \iffontchar (Japanese font f) (number c):
- c >= 0: true iff is_char_kanji(c)
- c < 0: true iff f has char_type -(c+1)
- \fontcharwd (Japanese font f) (number c):
- c >= 0: return the width of character c
- c < 0: return the width of char_type -(c+1)
* tests/fontchar.{sh,tex}, tests/zero_search.tex: Added.
* eptex.ech, eptex_version.h: e-pTeX version 190709.

2019-05-28 Hironobu Yamashita <[email protected]>

* am/eptex.am: Add a new test.
Expand Down
Loading

0 comments on commit a8360d2

Please sign in to comment.