diff options
author | Norbert Preining <norbert@preining.info> | 2022-10-20 03:04:26 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2022-10-20 03:04:26 +0000 |
commit | 3b961a61ef9fb89adf20a89550d5de0bfe135448 (patch) | |
tree | e36f997e624c704dbb4ed2b5fdbd02835ea3c133 /support | |
parent | 7b6cdf4c23e6ed232601dabc70f5553a8dee9c9b (diff) |
CTAN sync 202210200304
Diffstat (limited to 'support')
-rw-r--r-- | support/TeX4ht/source/ChangeLog | 6 | ||||
-rw-r--r-- | support/TeX4ht/source/tex4ht-html4.tex | 17 | ||||
-rw-r--r-- | support/crossrefware/README | 13 | ||||
-rw-r--r-- | support/crossrefware/bbl2bib.1 | 6 | ||||
-rwxr-xr-x | support/crossrefware/bbl2bib.pl | 2 | ||||
-rw-r--r-- | support/crossrefware/bibdoiadd.1 | 6 | ||||
-rwxr-xr-x | support/crossrefware/bibdoiadd.pl | 2 | ||||
-rw-r--r-- | support/crossrefware/bibmradd.1 | 6 | ||||
-rwxr-xr-x | support/crossrefware/bibmradd.pl | 15 | ||||
-rw-r--r-- | support/crossrefware/biburl2doi.1 | 6 | ||||
-rwxr-xr-x | support/crossrefware/biburl2doi.pl | 2 | ||||
-rw-r--r-- | support/crossrefware/bibzbladd.1 | 6 | ||||
-rwxr-xr-x | support/crossrefware/bibzbladd.pl | 2 | ||||
-rw-r--r-- | support/crossrefware/crossrefware.pdf | bin | 233582 -> 233770 bytes | |||
-rw-r--r-- | support/crossrefware/ltx2crossrefxml.1 | 8 | ||||
-rwxr-xr-x | support/crossrefware/ltx2crossrefxml.pl | 51 |
16 files changed, 107 insertions, 41 deletions
diff --git a/support/TeX4ht/source/ChangeLog b/support/TeX4ht/source/ChangeLog index f291004937..b88a67a074 100644 --- a/support/TeX4ht/source/ChangeLog +++ b/support/TeX4ht/source/ChangeLog @@ -1,3 +1,9 @@ +2022-10-19 Michal Hoftich <michal.h21@gmail.com> + + * tex4ht-html4.tex (html4-math.4ht): calculate vertical alignment + for inline math. + https://tex.stackexchange.com/a/662257/2891 + 2022-10-17 Michal Hoftich <michal.h21@gmail.com> * tex4ht-4ht.tex (latex.4ht): declare \Configure{MathJaxSource} as diff --git a/support/TeX4ht/source/tex4ht-html4.tex b/support/TeX4ht/source/tex4ht-html4.tex index 145cb1ae28..d72179ac89 100644 --- a/support/TeX4ht/source/tex4ht-html4.tex +++ b/support/TeX4ht/source/tex4ht-html4.tex @@ -1,4 +1,4 @@ -% $Id: tex4ht-html4.tex 1203 2022-09-29 13:51:29Z michal_h21 $ +% $Id: tex4ht-html4.tex 1218 2022-10-19 12:57:24Z michal_h21 $ % Compile 4 times: latex tex4ht-html4 % Copy html4.4ht into the work directory before all but the last compilation. % @@ -6557,7 +6557,22 @@ The above should be sensitive to cases like the following one. \special{t4ht*=}% >>> +This version of PicMath tries to set the correct vertical alignment for inline math. +It typessets the math inside a box, measures depth and height, calculates +the alignment, and outputs it using CSS. It uses Expl3 features, so we need +to use it in LaTeX configuration. +\<configure html4 latex\><<< +\ExplSyntaxOn +\Configure{PicMath} +{\setbox0=} +{\Css{img[src="\PictureFile"]{% + vertical-align:-\fp_eval:n{ \dim_to_fp:n{\dp0}/(\dim_to_fp:n{\ht0}+\dim_to_fp:n{\dp0}) * 100}\% +}}\box0} +{} +{ class="math" } +\ExplSyntaxOff +>>> %%%%%%%%%%%%%%%%%% diff --git a/support/crossrefware/README b/support/crossrefware/README index 1682b98fe3..a1c9425ea3 100644 --- a/support/crossrefware/README +++ b/support/crossrefware/README @@ -1,5 +1,5 @@ Crossrefware Bundle - version 2021-10-02 + version 2022-10-10 Scripts useful for working with Crossref, MathSciNet and Zentralblatt MATH. @@ -30,7 +30,16 @@ Princeton University (Mathematics Department). Thank you! Changes: -2021-10-02 - changed TEXSELFAUTOPARENT to TEXMFROOT +2022-09-11 - add "***" prefix to bib warnings. + +2022-07-28 - find dev checkout of bibtexperllibs. + +2022-05-25 - consistently output both sequence number and contributor role. + +2022-11-01 - sort xml output by starting page, to be more or less stable. + +2021-10-02 - version 2.51 released. + - changed TEXSELFAUTOPARENT to TEXMFROOT 2021-01-18 - all conversions moved from ltx2crossrefxml to LaTeX::ToUnicode. - config file can provide a hook for processing. diff --git a/support/crossrefware/bbl2bib.1 b/support/crossrefware/bbl2bib.1 index 8cec0f740e..1fdd9e8dab 100644 --- a/support/crossrefware/bbl2bib.1 +++ b/support/crossrefware/bbl2bib.1 @@ -1,4 +1,4 @@ -.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) +.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== @@ -133,7 +133,7 @@ .\" ======================================================================== .\" .IX Title "bbl2bib 1" -.TH bbl2bib 1 "2021-10-02" "" "LATEX CROSSREFWARE" +.TH bbl2bib 1 "2022-10-18" "" "LATEX CROSSREFWARE" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l @@ -205,7 +205,7 @@ Each bibliography item starts from the line Boris Veytsman .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" -Copyright (C) 2014\-2021 Boris Veytsman +Copyright (C) 2014\-2022 Boris Veytsman .PP This is free software. You may redistribute copies of it under the terms of the \s-1GNU\s0 General Public License diff --git a/support/crossrefware/bbl2bib.pl b/support/crossrefware/bbl2bib.pl index 2e3df9b685..2babf10a37 100755 --- a/support/crossrefware/bbl2bib.pl +++ b/support/crossrefware/bbl2bib.pl @@ -86,7 +86,7 @@ Boris Veytsman =head1 COPYRIGHT AND LICENSE -Copyright (C) 2014-2021 Boris Veytsman +Copyright (C) 2014-2022 Boris Veytsman This is free software. You may redistribute copies of it under the terms of the GNU General Public License diff --git a/support/crossrefware/bibdoiadd.1 b/support/crossrefware/bibdoiadd.1 index 7c3e4ea3d0..90713407aa 100644 --- a/support/crossrefware/bibdoiadd.1 +++ b/support/crossrefware/bibdoiadd.1 @@ -1,4 +1,4 @@ -.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) +.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== @@ -133,7 +133,7 @@ .\" ======================================================================== .\" .IX Title "bibdoiadd 1" -.TH bibdoiadd 1 "2021-10-02" "" "LATEX CROSSREFWARE" +.TH bibdoiadd 1 "2022-10-18" "" "LATEX CROSSREFWARE" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l @@ -206,7 +206,7 @@ members. Boris Veytsman .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" -Copyright (C) 2014\-2021 Boris Veytsman +Copyright (C) 2014\-2022 Boris Veytsman .PP This is free software. You may redistribute copies of it under the terms of the \s-1GNU\s0 General Public License diff --git a/support/crossrefware/bibdoiadd.pl b/support/crossrefware/bibdoiadd.pl index bace84c000..c41cd31b4f 100755 --- a/support/crossrefware/bibdoiadd.pl +++ b/support/crossrefware/bibdoiadd.pl @@ -85,7 +85,7 @@ Boris Veytsman =head1 COPYRIGHT AND LICENSE -Copyright (C) 2014-2021 Boris Veytsman +Copyright (C) 2014-2022 Boris Veytsman This is free software. You may redistribute copies of it under the terms of the GNU General Public License diff --git a/support/crossrefware/bibmradd.1 b/support/crossrefware/bibmradd.1 index 2544d30900..1dcbdecfac 100644 --- a/support/crossrefware/bibmradd.1 +++ b/support/crossrefware/bibmradd.1 @@ -1,4 +1,4 @@ -.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) +.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== @@ -133,7 +133,7 @@ .\" ======================================================================== .\" .IX Title "bibmradd 1" -.TH bibmradd 1 "2021-10-02" "" "LATEX CROSSREFWARE" +.TH bibmradd 1 "2022-10-18" "" "LATEX CROSSREFWARE" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l @@ -174,7 +174,7 @@ is derived by adding the suffix \f(CW\*(C`_mr\*(C'\fR to the output file. Boris Veytsman .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" -Copyright (C) 2014\-2021 Boris Veytsman +Copyright (C) 2014\-2022 Boris Veytsman .PP This is free software. You may redistribute copies of it under the terms of the \s-1GNU\s0 General Public License diff --git a/support/crossrefware/bibmradd.pl b/support/crossrefware/bibmradd.pl index 5f6ae053d9..3fea62e3c5 100755 --- a/support/crossrefware/bibmradd.pl +++ b/support/crossrefware/bibmradd.pl @@ -52,7 +52,7 @@ Boris Veytsman =head1 COPYRIGHT AND LICENSE -Copyright (C) 2014-2021 Boris Veytsman +Copyright (C) 2014-2022 Boris Veytsman This is free software. You may redistribute copies of it under the terms of the GNU General Public License @@ -61,13 +61,24 @@ extent permitted by law. =cut -use strict; +use strict; use warnings; +use Cwd; +use File::Basename; +use File::Spec; + BEGIN { # find files relative to our installed location within TeX Live chomp(my $TLMaster = `kpsewhich -var-value=TEXMFROOT`); # TL root if (length($TLMaster)) { unshift @INC, "$TLMaster/texmf-dist/scripts/bibtexperllibs"; } + # find development bibtexperllibs in sibling checkout to this script, + # even if $0 is a symlink. All irrelevant when using from an installation. + my $real0 = Cwd::abs_path($0); + my $scriptdir = File::Basename::dirname($real0); + my $dev_btxperllibs = Cwd::abs_path("$scriptdir/../bibtexperllibs"); + # we need the lib/ subdirectories inside ... + unshift (@INC, glob ("$dev_btxperllibs/*/lib")) if -d $dev_btxperllibs; } use IO::File; use BibTeX::Parser; diff --git a/support/crossrefware/biburl2doi.1 b/support/crossrefware/biburl2doi.1 index 8222c42693..300a43d7b9 100644 --- a/support/crossrefware/biburl2doi.1 +++ b/support/crossrefware/biburl2doi.1 @@ -1,4 +1,4 @@ -.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) +.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== @@ -133,7 +133,7 @@ .\" ======================================================================== .\" .IX Title "biburl2doi 1" -.TH biburl2doi 1 "2021-10-02" "" "LATEX CROSSREFWARE" +.TH biburl2doi 1 "2022-10-18" "" "LATEX CROSSREFWARE" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l @@ -162,7 +162,7 @@ fields. Boris Veytsman .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" -Copyright (C) 2021 Boris Veytsman +Copyright (C) 2022 Boris Veytsman .PP This is free software. You may redistribute copies of it under the terms of the \s-1GNU\s0 General Public License diff --git a/support/crossrefware/biburl2doi.pl b/support/crossrefware/biburl2doi.pl index 33f7c67490..9482ba2931 100755 --- a/support/crossrefware/biburl2doi.pl +++ b/support/crossrefware/biburl2doi.pl @@ -39,7 +39,7 @@ Boris Veytsman =head1 COPYRIGHT AND LICENSE -Copyright (C) 2021 Boris Veytsman +Copyright (C) 2022 Boris Veytsman This is free software. You may redistribute copies of it under the terms of the GNU General Public License diff --git a/support/crossrefware/bibzbladd.1 b/support/crossrefware/bibzbladd.1 index 5894f1677a..a63765869c 100644 --- a/support/crossrefware/bibzbladd.1 +++ b/support/crossrefware/bibzbladd.1 @@ -1,4 +1,4 @@ -.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) +.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== @@ -133,7 +133,7 @@ .\" ======================================================================== .\" .IX Title "bibzbladd 1" -.TH bibzbladd 1 "2021-10-02" "" "LATEX CROSSREFWARE" +.TH bibzbladd 1 "2022-10-18" "" "LATEX CROSSREFWARE" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l @@ -174,7 +174,7 @@ is derived by adding the suffix \f(CW\*(C`_zbl\*(C'\fR to the output file. Boris Veytsman .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" -Copyright (C) 2014\-2021 Boris Veytsman +Copyright (C) 2014\-2022 Boris Veytsman .PP This is free software. You may redistribute copies of it under the terms of the \s-1GNU\s0 General Public License diff --git a/support/crossrefware/bibzbladd.pl b/support/crossrefware/bibzbladd.pl index c05a1137f7..4593e7e172 100755 --- a/support/crossrefware/bibzbladd.pl +++ b/support/crossrefware/bibzbladd.pl @@ -52,7 +52,7 @@ Boris Veytsman =head1 COPYRIGHT AND LICENSE -Copyright (C) 2014-2021 Boris Veytsman +Copyright (C) 2014-2022 Boris Veytsman This is free software. You may redistribute copies of it under the terms of the GNU General Public License diff --git a/support/crossrefware/crossrefware.pdf b/support/crossrefware/crossrefware.pdf Binary files differindex c40afb1dee..9d61473a3c 100644 --- a/support/crossrefware/crossrefware.pdf +++ b/support/crossrefware/crossrefware.pdf diff --git a/support/crossrefware/ltx2crossrefxml.1 b/support/crossrefware/ltx2crossrefxml.1 index cb8343aa60..b3cb433689 100644 --- a/support/crossrefware/ltx2crossrefxml.1 +++ b/support/crossrefware/ltx2crossrefxml.1 @@ -1,4 +1,4 @@ -.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) +.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== @@ -133,7 +133,7 @@ .\" ======================================================================== .\" .IX Title "ltx2crossrefxml 1" -.TH ltx2crossrefxml 1 "2021-10-02" "" "LATEX CROSSREFWARE" +.TH ltx2crossrefxml 1 "2022-10-18" "" "LATEX CROSSREFWARE" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l @@ -377,9 +377,9 @@ instead of these flat text dumps, that would be great. Boris Veytsman <https://github.com/borisveytsman/crossrefware> .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" -Copyright (C) 2012\-2021 Boris Veytsman +Copyright (C) 2012\-2022 Boris Veytsman .PP This is free software. You may redistribute copies of it under the -terms of the \s-1GNU\s0 General Public License +terms of the \s-1GNU\s0 General Public License (any version) <https://www.gnu.org/licenses/gpl.html>. There is \s-1NO WARRANTY,\s0 to the extent permitted by law. diff --git a/support/crossrefware/ltx2crossrefxml.pl b/support/crossrefware/ltx2crossrefxml.pl index 02f841361c..76df0427b6 100755 --- a/support/crossrefware/ltx2crossrefxml.pl +++ b/support/crossrefware/ltx2crossrefxml.pl @@ -88,7 +88,6 @@ upload. The variables which are used are these: $abbrevTitle = "ABBR. TTL."; # optional $coden = "CODEN"; # optional - For a given run, all C<.rpi> data read is assumed to belong to the journal that is specified in the configuration file. More precisely, the configuration data is written as a C<journal_metadata> element, with @@ -247,10 +246,10 @@ Boris Veytsman L<https://github.com/borisveytsman/crossrefware> =head1 COPYRIGHT AND LICENSE -Copyright (C) 2012-2021 Boris Veytsman +Copyright (C) 2012-2022 Boris Veytsman This is free software. You may redistribute copies of it under the -terms of the GNU General Public License +terms of the GNU General Public License (any version) L<https://www.gnu.org/licenses/gpl.html>. There is NO WARRANTY, to the extent permitted by law. @@ -313,13 +312,13 @@ Releases: https://ctan.org/pkg/crossrefware END my $VERSION = <<END; -ltx2crossrefxml (crossrefware) 2.51 +ltx2crossrefxml (crossrefware) 2.52 This is free software: you are free to change and redistribute it, under the terms of the GNU General Public License http://www.gnu.org/licenses/gpl.html (any version). There is NO WARRANTY, to the extent permitted by law. -Written by Boris Veytsman. +Written by Boris Veytsman with many additions by Karl Berry END use Getopt::Long; my %opts; @@ -390,7 +389,11 @@ END foreach my $issue (keys %{$papers{$year}->{$volume}}) { PrintIssueHead($year, $volume, $issue); my $paperList = $papers{$year}->{$volume}->{$issue}; - foreach my $paper (@{$paperList}) { + #warn "papers for year=$year, volume=$volume, issue=$issue\n"; + # Nice to have the issue.xml in some stable order, so sort + # by starting page. Doesn't matter if it's not perfect. + foreach my $paper (sort { $a->{startpage} cmp $b->{startpage} } + @{$paperList}) { PrintPaper($paper); } } @@ -456,6 +459,7 @@ sub AddPaper { open (RPI, $rpifile) or die "open($rpifile) failed: $! (did you process $file?)\n"; my %data; + #warn "reading rpi file: $rpifile\n"; while (<RPI>) { chomp; if (/^%([^=]*)\s*=\s*(.*)\s*$/) { @@ -478,13 +482,15 @@ sub AddPaper { # Die if the fields we use unconditionally are empty. Not all of # them are required by the schema, but we can wait to generalize. - foreach my $field (qw(title year volume issue startpage endpage doi)) { + foreach my $field (qw(title year volume issue startpage endpage doi + paperUrl)) { if (! $data{$field}) { die ("$0: field must not be empty: $field\n " . &debug_hash_as_string("whole hash", %data)); } } + #warn &debug_hash_as_string("new issue $data{volume}:$data{issue}", %data); push @{$papers{$data{year}}->{$data{volume}}->{$data{issue}}}, \%data; } @@ -558,10 +564,10 @@ sub AddBibliography { # We look in the .rpi files too, which will generally have none. if (@result == 0 && $bibfile =~ /\.bbl$/) { - warn "$0: no \\bibitems found in: $bibfile\n"; + warn "$0: *** no \\bibitems found in: $bibfile\n"; } elsif ($insidebibliography) { - warn "$0: no \\end{thebibliography} found in: $bibfile\n"; - warn "$0: so the last bib entry is missing.\n"; + warn "$0: *** no \\end{thebibliography} found in: $bibfile\n"; + warn "$0: so the last bib entry is missing!\n"; } return @result; } @@ -587,6 +593,7 @@ END ############################################################### sub PrintPaper { my $paper = shift; + #warn (&debug_hash_as_string ("doing paper", $paper)); my $title = SanitizeText($paper->{title}); my $url = GetURL($paper); my $publication_type = GetPublicationType($paper->{publicationType}); @@ -736,22 +743,27 @@ sub PrintAuthor { . " $orig_author\n"); } + # for both author types, organization and person, we have to output + # the sequence number and the contributor role, which we assume to + # be author. + my $author_elts = qq!sequence="$seq" contributor_role="author"!; # for organizations, nothing to do but output it. if ($organization) { my $line = SanitizeText($author); print OUT <<END; - <organization>$line</organization> + <organization $author_elts>$line</organization> END return; } # what's left is the common case of a person, not an organization. print OUT <<END; - <person_name sequence="$seq" contributor_role="author"> + <person_name $author_elts> END - + # must split the person's name. my $person=new BibTeX::Parser::Author ($author); + #warn (debug_list_as_string ($author, $person)); if ($person->first) { my $line = $person->first; @@ -883,3 +895,16 @@ sub debug_hash_as_string { return "$str\n"; } + +############################################################## +# debug_list_as_string($LABEL, LIST) +# +# Same but for lists. +############################################################## +sub debug_list_as_string { + my ($label) = shift; + my (@list) = (ref $_[0] && $_[0] =~ /.*ARRAY.*/) ? @{$_[0]} : @_; + + my $str = "$label [" . join (",", @list) . "]"; + return "$str\n"; +} |