Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Patch babel for texlive 2021 #1716

Merged
merged 1 commit into from Dec 2, 2021

Conversation

dginev
Copy link
Collaborator

@dginev dginev commented Nov 19, 2021

Fixes #1715 .

Simply put, in texlive 2021, our babel tests end up loading txtbabel.def instead of babel.def, and thus never load the binding upgrades located in babel.def.ltxml.

As one simple patch, I factored those out in a new babel_support.sty.ltxml (or should it be .def.ltxml?) and tests pass again on texlive 2021.

Let's see if this PR passes the Miktex CI again...

@dginev dginev changed the title Patch CI for texlive 2021 Patch babel for texlive 2021 Nov 19, 2021
@dginev
Copy link
Collaborator Author

dginev commented Nov 19, 2021

Confirmed, CI is passing again, and the tests pass on texlive 2021 also on my local machine. So some variant of this PR is all that's needed to pass tests in texlive 2021.

@brucemiller
Copy link
Owner

Hmm, I have 2021, and what I'm seeing is not "instead", but that it loads txtbabel from babel.def; they're not equivalents, and so you probably don't want to move the code from babel to txtbabel (or both)

But, since this change does appear to fix the windows run, it must be because loading babel_support from txtbabel made the ltxml code (redefinitions?) available to the portion of babel after the \input txtbabel. So probably in babel.def we should have some of our defns before the InputDefinitions('babel'.... Since the test fail appears to be adding language attributes, I'd guess it would be the portion about bbl_language_map and \select@language. But moving those ahead is tricky since they wrap the babel defns, which aren't necessarily defined yet.

So, maybe it's necessary to patch both, afterall; noting that txtbabel is new as of 2017 it seems.

Hmm, ugh. Still, I suspect babel_support has too much stuff in it, and so is potentially confusing. I'd maybe experiment with moving all the special character stuff like \ij, and really as much as possible, back into babel.def.ltxml, Basically, move everything until just before it breaks :>

@dginev
Copy link
Collaborator Author

dginev commented Dec 2, 2021

@brucemiller

Hmm, I have 2021, and what I'm seeing is not "instead", but that it loads txtbabel from babel.def

Ah, let's figure this one out, so that I see that as well. Say I go to t/babel and run pdflatex german.tex. I get the following complete log.

This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2021) (preloaded format=pdflatex 2021.11.19)  2 DEC 2021 09:26
entering extended mode
 restricted \write18 enabled.
 %&-line parsing enabled.
**german.tex
(./german.tex
LaTeX2e <2021-11-15>
L3 programming layer <2021-11-12>
(/usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls
Document Class: report 2021/10/04 v1.4n Standard LaTeX document class
(/usr/local/texlive/2021/texmf-dist/tex/latex/base/size10.clo
File: size10.clo 2021/10/04 v1.4n Standard LaTeX file (size option)
)
\c@part=\count183
\c@chapter=\count184
\c@section=\count185
\c@subsection=\count186
\c@subsubsection=\count187
\c@paragraph=\count188
\c@subparagraph=\count189
\c@figure=\count190
\c@table=\count191
\abovecaptionskip=\skip47
\belowcaptionskip=\skip48
\bibindent=\dimen138
)
(/usr/local/texlive/2021/texmf-dist/tex/generic/babel/babel.sty
Package: babel 2021/11/08 3.66 The Babel package
\babel@savecnt=\count192
\U@D=\dimen139
\l@unhyphenated=\language87

(/usr/local/texlive/2021/texmf-dist/tex/generic/babel/txtbabel.def)
\bbl@readstream=\read2
\bbl@dirlevel=\count193

(/usr/local/texlive/2021/texmf-dist/tex/generic/babel-german/german.ldf
Language: german 2021/02/27 v2.13 German support for babel (pre-1996 orthograph
y)

(/usr/local/texlive/2021/texmf-dist/tex/generic/babel-german/germanb.ldf
Language: germanb 2021/02/27 v2.13 German support for babel (pre-1996 orthograp
hy)
Package babel Info: Making " an active character on input line 139.
)))
(/usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def
File: l3backend-pdftex.def 2021-10-18 L3 backend support: PDF output (pdfTeX)
\l__color_backend_stack_int=\count194
\l__pdf_internal_box=\box50
)
No file german.aux.
\openout1 = `german.aux'.

LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line 3.
LaTeX Font Info:    ... okay on input line 3.
LaTeX Font Info:    Checking defaults for OMS/cmsy/m/n on input line 3.
LaTeX Font Info:    ... okay on input line 3.
LaTeX Font Info:    Checking defaults for OT1/cmr/m/n on input line 3.
LaTeX Font Info:    ... okay on input line 3.
LaTeX Font Info:    Checking defaults for T1/cmr/m/n on input line 3.
LaTeX Font Info:    ... okay on input line 3.
LaTeX Font Info:    Checking defaults for TS1/cmr/m/n on input line 3.
LaTeX Font Info:    ... okay on input line 3.
LaTeX Font Info:    Checking defaults for OMX/cmex/m/n on input line 3.
LaTeX Font Info:    ... okay on input line 3.
LaTeX Font Info:    Checking defaults for U/cmr/m/n on input line 3.
LaTeX Font Info:    ... okay on input line 3.
LaTeX Font Info:    External font `cmex10' loaded for size
(Font)              <12> on input line 8.
LaTeX Font Info:    External font `cmex10' loaded for size
(Font)              <8> on input line 8.
LaTeX Font Info:    External font `cmex10' loaded for size
(Font)              <6> on input line 8.
[1

{/usr/local/texlive/2021/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
Kapitel 1.
LaTeX Font Info:    External font `cmex10' loaded for size
(Font)              <7> on input line 21.
LaTeX Font Info:    External font `cmex10' loaded for size
(Font)              <5> on input line 21.
[1

] (./german.aux) ) 
Here is how much of TeX's memory you used:
 1470 strings out of 478371
 25318 string characters out of 5848526
 340755 words of memory out of 5000000
 19639 multiletter control sequences out of 15000+600000
 407378 words of font info for 40 fonts, out of 8000000 for 9000
 1141 hyphenation exceptions out of 8191
 42i,7n,52p,177b,197s stack positions out of 5000i,500n,10000p,200000b,80000s
</usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfon
ts/cm/cmbx12.pfb></usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfont
s/cm/cmmi5.pfb></usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/
cm/cmr10.pfb></usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm
/cmr12.pfb></usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/c
mr17.pfb></usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cms
y5.pfb>
Output written on german.pdf (2 pages, 68147 bytes).
PDF statistics:
 41 PDF objects out of 1000 (max. 8388607)
 24 compressed objects within 1 object stream
 0 named destinations out of 1000 (max. 500000)
 1 words of extra memory for PDF output out of 10000 (max. 10000000)

It has no mention at all of babel.def. Indeed you can find the following code loading txtbabel.def in the raw babel.sty, line 2433:

\bbl@trace{Input engine specific macros}
\ifcase\bbl@engine
  \input txtbabel.def
\or
  \input luababel.def
\or
  \input xebabel.def
\fi

Let me know if I'm missing something...

@brucemiller
Copy link
Owner

Very curious indeed. I definitely get both babel.def and txtbabel.def loaded, and the snippet you quoted is in my babel.def, not in txtbabel. So, apparently we have different 2021 babels!

@dginev
Copy link
Collaborator Author

dginev commented Dec 2, 2021

Great, multiple variants even in 2021... Sigh. Maybe we really should do as you suggest and move all binding code as early as possible when babel.sty loads, locking everything down, and only then letting it do its texlive dance.

@dginev
Copy link
Collaborator Author

dginev commented Dec 2, 2021

Unsure if this is a good time for levity, but I am tempted to refer to your setup where babel.def is loading txtbabel.def as the "omicron babel variant"

@brucemiller
Copy link
Owner

I guess that's more edgy that "Babel Classic". FWIW, I just tested your patch against my installation, and it seems to work there too. So, maybe in this case the belt with suspenders approach is called for. I'll go ahead and merge, unless you want to explore more.

@dginev
Copy link
Collaborator Author

dginev commented Dec 2, 2021

Oh, if the patch in the PR produces the correct behavior on your setup, please feel free to merge - it's certainly the best I could come up with on the installations I had access to.

@brucemiller brucemiller merged commit b8c5d59 into brucemiller:master Dec 2, 2021
@brucemiller brucemiller deleted the texlive2021-babel-patch branch December 2, 2021 16:08
teepeemm added a commit to teepeemm/LaTeXML that referenced this pull request Dec 20, 2021
* Upgrades for converting arXiv:2105.00613 (brucemiller#1723)

* stub bindings, hyperref and latex.pool patches

* more idiomatic to leave \directlua undefined

* more portable pdftexcmds binding

* Table and ref fixes for arxiv:1804.11028 (brucemiller#1725)

* table and ref fixes for arxiv:1804.11028

* more disciplined Glue spec syntax in register

* enable babel.def treatment also for txtbabel.def (brucemiller#1716)

* Drop empty frontmatter; styled frontmatter notes (brucemiller#1717)

* frontmatter note class; drop empty frontmatter at construction; fix typo

* update to a generic ltx_frontmatter class for all deposits of insertFrontMatter

* Revert "update to a generic ltx_frontmatter class for all deposits of insertFrontMatter"

This reverts commit 473a657.

* Fixpoint dimensions (brucemiller#1724)

* Make Number truncate to int; add a Knuth-style rounding; move some methods to Dimension

* Float inherits from Number, but (obviously) should NOT be truncated or rounded

* Implement Dimension & Glue using fixedpoint numbers, to recover TeX's appropriate inaccuracy; TeX-like rounding and formatting (round trip)

* MuDimension and MuGlue are also fixedpoint, but represent scaled mu, not pt; thus also need an spValue method to get the length in scaled points

* Rework readers of Dimension, Glue & Mu variants to properly construct and round or truncate as TeX does

* Make isSpace boxes default lengths not specified to 0

* Have Font use metrics derived from TeX itself; FontMetric reads/represents a metric from TFM; StandardMetrics is a premade set of the most commonly used metrics created by compilemetrics

* Use appropriate font metrics for em,ex,mu

* Various tweaks to conform to new approach to Fonts and Dimensions

* Updated many test cases to reflect more correct dimensions

* Add new test case using font metrics

* A couple of cleanups suggested by @dginev

* tweak positining & sizing

* patch \graphicspath for ZIP inputs (brucemiller#1726)

* patch \graphicspath for ZIP inputs

* only concat in the relative graphics path case

* fully use pathname_absolute

* small tracing upgrade to register; closer spacing (brucemiller#1728)

* convert paths to urls (brucemiller#1655)

* convert paths to urls

* preserve ./ in pathname_canonical

* Correct right german quote marks (Thanks molke) (brucemiller#1730)

* [minor] variety robustness patches (brucemiller#1732)

* document ends preamble; helper macros from latex.ltx

* deduplicate searchpaths before writing out as PIs

* expand macros when used in counter slots

* a couple of stub ltx@ macros

* allow block content in IEEEbiography, handle name argument

* update test use of IEEEbiography

* Lexeme fixes from arXMLiv 2020 (brucemiller#1735)

* a couple of lexeme fixes from arXMLiv 2020

* simplify %to_add, thanks @brucemiller

* add tokenlimit guard; patch a couple of regressions (brucemiller#1736)

* \qed needs to be expandable for arXiv (brucemiller#1740)

* Unwrap quoted filenames in \input (brucemiller#1739)

* unwrap quoted filenames in input

* allow nested quote strings in inputs

* strange regex typo

* New guards: iflimit, absorblimit; subeqn.sty; misc patches (brucemiller#1741)

* add \icmladdress

* silence perl defined warnings in lexeme serialization

* add \@killglue

* add subeqn.sty and lock subequations

* \vsplit and locked math font switches

* add timeout guards: iflimit and absorblimit in latexml.sty

* add pushback limit guard

* add a ltx_tabbing styling hook; \par around {tabbing} (brucemiller#1743)

* new binding for ijcai confs (brucemiller#1745)

* Emulate more psfile options via includegraphics (brucemiller#1738)

* autocrop ps which usually come from \special

* map more of the psfile special options to includegraphics

* inline-block styling for ltx_parbox (brucemiller#1737)

* Subfigures via flexbox (brucemiller#1700)

* one approach to flex subfigure

* an XSLT technique for determining the max size of a flex figure row

* add landscape and portrait class hooks for CSS authors

* flexbox subfigures, with minimal CSS

* also handle subtable; less vendor-specific css

* add a square class for the third img case; regenerate test

* use sizing information to add breaks in subfigures surpassing textwidth

* compute flex row size on ltx:figure close

* leave it to the bindings to compute flex row sizes

* update test

* subfigures on tag close; track sizes of subgraphics; css touchup

* remove outdated css comment

* drop leftover print

* baseline subtable support, more CSS changes to come

* flex updates: subtables, minipage, listings, floats, more precise vertical sizing

* switch aspect ratio threshold to 1.24

* relative widths for minipage

* respect author-specified widths for subfigure breaks

* leave minipage width refactor for future work

* use a dedicated ltx_flex_cell wrapper; minor polish

* Fallback to case-insensitive path search (brucemiller#1744)

* if graphics path is not found in post-processing; fallback to case-insensitive

* case-insensitive fallback for all pathname_findall

* also support case-insensitive fallback with subdirs

* more robust path builder

* use \Q \E on pathname variables in regex

* reoptimize so that candidate_pathnames checks -f and is efficient

* more cleanup; thanks @brucemiller

* another -f leftover

* scaffold of support for \vdotswithin (brucemiller#1746)

* scaffold of support for \vdotswithin

* also update mathtools test

* Make \label not disappear on reversion, except for tex strings (brucemiller#1742)

* Make \label not disappear on reversion, except for tex strings

* Allow background to be set back to transparent on Font->merge

* Clean up processing of \hidden@noalign; make cases statements not increment equation counters and such

* subnumbered equationgroups don't get a tag; more careful about checking alignment firstcolumn; use hidden@noalign for eqnarray labels

* careful about managing row colors

* Drop tags from subequation equationgroups

* accidentally cleaned up output

* careful about missing italic correction

* Seemingly need to account for ALIGN_STATE with begin/endgroup (which is still wrong)

* boxes with alignmentPreserve not considered empty

* \hidden@noalign may smuggle alignmentPreserve boxes

* Stub in some latex3 hooks used in texlive 2020 (brucemiller#1747)

* stub in some latex3 hooks used in texlive 2020

* stub in \DeclareEncodingSubset; minor pdfcmds cleanup

* also stub resettimer

* remove leftover comments

* use the else branch for IfHook*

Co-authored-by: Deyan Ginev <deyan.ginev@gmail.com>
Co-authored-by: bruce miller <bruce.miller@nist.gov>
Co-authored-by: Vincenzo Mantova <1962985+xworld21@users.noreply.github.com>
teepeemm added a commit to teepeemm/LaTeXML that referenced this pull request Jan 4, 2022
* Upgrades for converting arXiv:2105.00613 (brucemiller#1723)

* stub bindings, hyperref and latex.pool patches

* more idiomatic to leave \directlua undefined

* more portable pdftexcmds binding

* Table and ref fixes for arxiv:1804.11028 (brucemiller#1725)

* table and ref fixes for arxiv:1804.11028

* more disciplined Glue spec syntax in register

* enable babel.def treatment also for txtbabel.def (brucemiller#1716)

* Drop empty frontmatter; styled frontmatter notes (brucemiller#1717)

* frontmatter note class; drop empty frontmatter at construction; fix typo

* update to a generic ltx_frontmatter class for all deposits of insertFrontMatter

* Revert "update to a generic ltx_frontmatter class for all deposits of insertFrontMatter"

This reverts commit 473a657.

* Fixpoint dimensions (brucemiller#1724)

* Make Number truncate to int; add a Knuth-style rounding; move some methods to Dimension

* Float inherits from Number, but (obviously) should NOT be truncated or rounded

* Implement Dimension & Glue using fixedpoint numbers, to recover TeX's appropriate inaccuracy; TeX-like rounding and formatting (round trip)

* MuDimension and MuGlue are also fixedpoint, but represent scaled mu, not pt; thus also need an spValue method to get the length in scaled points

* Rework readers of Dimension, Glue & Mu variants to properly construct and round or truncate as TeX does

* Make isSpace boxes default lengths not specified to 0

* Have Font use metrics derived from TeX itself; FontMetric reads/represents a metric from TFM; StandardMetrics is a premade set of the most commonly used metrics created by compilemetrics

* Use appropriate font metrics for em,ex,mu

* Various tweaks to conform to new approach to Fonts and Dimensions

* Updated many test cases to reflect more correct dimensions

* Add new test case using font metrics

* A couple of cleanups suggested by @dginev

* tweak positining & sizing

* patch \graphicspath for ZIP inputs (brucemiller#1726)

* patch \graphicspath for ZIP inputs

* only concat in the relative graphics path case

* fully use pathname_absolute

* small tracing upgrade to register; closer spacing (brucemiller#1728)

* convert paths to urls (brucemiller#1655)

* convert paths to urls

* preserve ./ in pathname_canonical

* Correct right german quote marks (Thanks molke) (brucemiller#1730)

* [minor] variety robustness patches (brucemiller#1732)

* document ends preamble; helper macros from latex.ltx

* deduplicate searchpaths before writing out as PIs

* expand macros when used in counter slots

* a couple of stub ltx@ macros

* allow block content in IEEEbiography, handle name argument

* update test use of IEEEbiography

* Lexeme fixes from arXMLiv 2020 (brucemiller#1735)

* a couple of lexeme fixes from arXMLiv 2020

* simplify %to_add, thanks @brucemiller

* add tokenlimit guard; patch a couple of regressions (brucemiller#1736)

* \qed needs to be expandable for arXiv (brucemiller#1740)

* Unwrap quoted filenames in \input (brucemiller#1739)

* unwrap quoted filenames in input

* allow nested quote strings in inputs

* strange regex typo

* New guards: iflimit, absorblimit; subeqn.sty; misc patches (brucemiller#1741)

* add \icmladdress

* silence perl defined warnings in lexeme serialization

* add \@killglue

* add subeqn.sty and lock subequations

* \vsplit and locked math font switches

* add timeout guards: iflimit and absorblimit in latexml.sty

* add pushback limit guard

* add a ltx_tabbing styling hook; \par around {tabbing} (brucemiller#1743)

* new binding for ijcai confs (brucemiller#1745)

* Emulate more psfile options via includegraphics (brucemiller#1738)

* autocrop ps which usually come from \special

* map more of the psfile special options to includegraphics

* inline-block styling for ltx_parbox (brucemiller#1737)

* Subfigures via flexbox (brucemiller#1700)

* one approach to flex subfigure

* an XSLT technique for determining the max size of a flex figure row

* add landscape and portrait class hooks for CSS authors

* flexbox subfigures, with minimal CSS

* also handle subtable; less vendor-specific css

* add a square class for the third img case; regenerate test

* use sizing information to add breaks in subfigures surpassing textwidth

* compute flex row size on ltx:figure close

* leave it to the bindings to compute flex row sizes

* update test

* subfigures on tag close; track sizes of subgraphics; css touchup

* remove outdated css comment

* drop leftover print

* baseline subtable support, more CSS changes to come

* flex updates: subtables, minipage, listings, floats, more precise vertical sizing

* switch aspect ratio threshold to 1.24

* relative widths for minipage

* respect author-specified widths for subfigure breaks

* leave minipage width refactor for future work

* use a dedicated ltx_flex_cell wrapper; minor polish

* Fallback to case-insensitive path search (brucemiller#1744)

* if graphics path is not found in post-processing; fallback to case-insensitive

* case-insensitive fallback for all pathname_findall

* also support case-insensitive fallback with subdirs

* more robust path builder

* use \Q \E on pathname variables in regex

* reoptimize so that candidate_pathnames checks -f and is efficient

* more cleanup; thanks @brucemiller

* another -f leftover

* scaffold of support for \vdotswithin (brucemiller#1746)

* scaffold of support for \vdotswithin

* also update mathtools test

* Make \label not disappear on reversion, except for tex strings (brucemiller#1742)

* Make \label not disappear on reversion, except for tex strings

* Allow background to be set back to transparent on Font->merge

* Clean up processing of \hidden@noalign; make cases statements not increment equation counters and such

* subnumbered equationgroups don't get a tag; more careful about checking alignment firstcolumn; use hidden@noalign for eqnarray labels

* careful about managing row colors

* Drop tags from subequation equationgroups

* accidentally cleaned up output

* careful about missing italic correction

* Seemingly need to account for ALIGN_STATE with begin/endgroup (which is still wrong)

* boxes with alignmentPreserve not considered empty

* \hidden@noalign may smuggle alignmentPreserve boxes

* Stub in some latex3 hooks used in texlive 2020 (brucemiller#1747)

* stub in some latex3 hooks used in texlive 2020

* stub in \DeclareEncodingSubset; minor pdfcmds cleanup

* also stub resettimer

* remove leftover comments

* use the else branch for IfHook*

* deflate the full ZIP output (brucemiller#1748)

* add \affilnum in OmniBus (brucemiller#1751)

* float marker must lead in replacement string (brucemiller#1750)

* New \lxRequireResource[options]{source} to require resources, such as javascript, css, etc (brucemiller#1754)

Co-authored-by: Deyan Ginev <deyan.ginev@gmail.com>
Co-authored-by: bruce miller <bruce.miller@nist.gov>
Co-authored-by: Vincenzo Mantova <1962985+xworld21@users.noreply.github.com>
teepeemm added a commit to teepeemm/LaTeXML that referenced this pull request Feb 11, 2022
* Upgrades for converting arXiv:2105.00613 (brucemiller#1723)

* stub bindings, hyperref and latex.pool patches

* more idiomatic to leave \directlua undefined

* more portable pdftexcmds binding

* Table and ref fixes for arxiv:1804.11028 (brucemiller#1725)

* table and ref fixes for arxiv:1804.11028

* more disciplined Glue spec syntax in register

* enable babel.def treatment also for txtbabel.def (brucemiller#1716)

* Drop empty frontmatter; styled frontmatter notes (brucemiller#1717)

* frontmatter note class; drop empty frontmatter at construction; fix typo

* update to a generic ltx_frontmatter class for all deposits of insertFrontMatter

* Revert "update to a generic ltx_frontmatter class for all deposits of insertFrontMatter"

This reverts commit 473a657.

* Fixpoint dimensions (brucemiller#1724)

* Make Number truncate to int; add a Knuth-style rounding; move some methods to Dimension

* Float inherits from Number, but (obviously) should NOT be truncated or rounded

* Implement Dimension & Glue using fixedpoint numbers, to recover TeX's appropriate inaccuracy; TeX-like rounding and formatting (round trip)

* MuDimension and MuGlue are also fixedpoint, but represent scaled mu, not pt; thus also need an spValue method to get the length in scaled points

* Rework readers of Dimension, Glue & Mu variants to properly construct and round or truncate as TeX does

* Make isSpace boxes default lengths not specified to 0

* Have Font use metrics derived from TeX itself; FontMetric reads/represents a metric from TFM; StandardMetrics is a premade set of the most commonly used metrics created by compilemetrics

* Use appropriate font metrics for em,ex,mu

* Various tweaks to conform to new approach to Fonts and Dimensions

* Updated many test cases to reflect more correct dimensions

* Add new test case using font metrics

* A couple of cleanups suggested by @dginev

* tweak positining & sizing

* patch \graphicspath for ZIP inputs (brucemiller#1726)

* patch \graphicspath for ZIP inputs

* only concat in the relative graphics path case

* fully use pathname_absolute

* small tracing upgrade to register; closer spacing (brucemiller#1728)

* convert paths to urls (brucemiller#1655)

* convert paths to urls

* preserve ./ in pathname_canonical

* Correct right german quote marks (Thanks molke) (brucemiller#1730)

* [minor] variety robustness patches (brucemiller#1732)

* document ends preamble; helper macros from latex.ltx

* deduplicate searchpaths before writing out as PIs

* expand macros when used in counter slots

* a couple of stub ltx@ macros

* allow block content in IEEEbiography, handle name argument

* update test use of IEEEbiography

* Lexeme fixes from arXMLiv 2020 (brucemiller#1735)

* a couple of lexeme fixes from arXMLiv 2020

* simplify %to_add, thanks @brucemiller

* add tokenlimit guard; patch a couple of regressions (brucemiller#1736)

* \qed needs to be expandable for arXiv (brucemiller#1740)

* Unwrap quoted filenames in \input (brucemiller#1739)

* unwrap quoted filenames in input

* allow nested quote strings in inputs

* strange regex typo

* New guards: iflimit, absorblimit; subeqn.sty; misc patches (brucemiller#1741)

* add \icmladdress

* silence perl defined warnings in lexeme serialization

* add \@killglue

* add subeqn.sty and lock subequations

* \vsplit and locked math font switches

* add timeout guards: iflimit and absorblimit in latexml.sty

* add pushback limit guard

* add a ltx_tabbing styling hook; \par around {tabbing} (brucemiller#1743)

* new binding for ijcai confs (brucemiller#1745)

* Emulate more psfile options via includegraphics (brucemiller#1738)

* autocrop ps which usually come from \special

* map more of the psfile special options to includegraphics

* inline-block styling for ltx_parbox (brucemiller#1737)

* Subfigures via flexbox (brucemiller#1700)

* one approach to flex subfigure

* an XSLT technique for determining the max size of a flex figure row

* add landscape and portrait class hooks for CSS authors

* flexbox subfigures, with minimal CSS

* also handle subtable; less vendor-specific css

* add a square class for the third img case; regenerate test

* use sizing information to add breaks in subfigures surpassing textwidth

* compute flex row size on ltx:figure close

* leave it to the bindings to compute flex row sizes

* update test

* subfigures on tag close; track sizes of subgraphics; css touchup

* remove outdated css comment

* drop leftover print

* baseline subtable support, more CSS changes to come

* flex updates: subtables, minipage, listings, floats, more precise vertical sizing

* switch aspect ratio threshold to 1.24

* relative widths for minipage

* respect author-specified widths for subfigure breaks

* leave minipage width refactor for future work

* use a dedicated ltx_flex_cell wrapper; minor polish

* Fallback to case-insensitive path search (brucemiller#1744)

* if graphics path is not found in post-processing; fallback to case-insensitive

* case-insensitive fallback for all pathname_findall

* also support case-insensitive fallback with subdirs

* more robust path builder

* use \Q \E on pathname variables in regex

* reoptimize so that candidate_pathnames checks -f and is efficient

* more cleanup; thanks @brucemiller

* another -f leftover

* scaffold of support for \vdotswithin (brucemiller#1746)

* scaffold of support for \vdotswithin

* also update mathtools test

* Make \label not disappear on reversion, except for tex strings (brucemiller#1742)

* Make \label not disappear on reversion, except for tex strings

* Allow background to be set back to transparent on Font->merge

* Clean up processing of \hidden@noalign; make cases statements not increment equation counters and such

* subnumbered equationgroups don't get a tag; more careful about checking alignment firstcolumn; use hidden@noalign for eqnarray labels

* careful about managing row colors

* Drop tags from subequation equationgroups

* accidentally cleaned up output

* careful about missing italic correction

* Seemingly need to account for ALIGN_STATE with begin/endgroup (which is still wrong)

* boxes with alignmentPreserve not considered empty

* \hidden@noalign may smuggle alignmentPreserve boxes

* Stub in some latex3 hooks used in texlive 2020 (brucemiller#1747)

* stub in some latex3 hooks used in texlive 2020

* stub in \DeclareEncodingSubset; minor pdfcmds cleanup

* also stub resettimer

* remove leftover comments

* use the else branch for IfHook*

Co-authored-by: Deyan Ginev <deyan.ginev@gmail.com>
Co-authored-by: bruce miller <bruce.miller@nist.gov>
Co-authored-by: Vincenzo Mantova <1962985+xworld21@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

xml:lang in babel.sty regression
2 participants