diff options
Diffstat (limited to 'macros/latex')
18 files changed, 330 insertions, 220 deletions
diff --git a/macros/latex/contrib/asmeconf/README.md b/macros/latex/contrib/asmeconf/README.md index c45516e710..803a5efda5 100644 --- a/macros/latex/contrib/asmeconf/README.md +++ b/macros/latex/contrib/asmeconf/README.md @@ -1,7 +1,7 @@ #asmeconf: A latex template for ASME conference papers# - Version 1.29 dated 2022/03/10. + Version 1.30 dated 2022/03/14. ####Overview#### This class provides a LaTeX template for ASME Conference papers formatted according to @@ -79,6 +79,10 @@ --- ####Change log#### + v1.30 (2022/03/14) + - Edit code loading fonts for Greek, Vietnamese, and cyrillic languages under pdflatex, to ensure compatibility with newtx v1.71. These options now require LaTeX distributions 2020/02/02 or later. + - Edit font loading for the case when luaLaTeX is called without fontspec. + v1.29 (2022/03/10) - Include current date and venue for 2022 IMECE (subject to change) - Edit example .tex file for asmewide.sty to remove description of unreleased development code diff --git a/macros/latex/contrib/asmeconf/asmeconf-template.pdf b/macros/latex/contrib/asmeconf/asmeconf-template.pdf Binary files differindex 1544f87ee3..49f14f87d9 100644 --- a/macros/latex/contrib/asmeconf/asmeconf-template.pdf +++ b/macros/latex/contrib/asmeconf/asmeconf-template.pdf diff --git a/macros/latex/contrib/asmeconf/asmeconf-template.tex b/macros/latex/contrib/asmeconf/asmeconf-template.tex index 8d3fbfb485..432e888617 100644 --- a/macros/latex/contrib/asmeconf/asmeconf-template.tex +++ b/macros/latex/contrib/asmeconf/asmeconf-template.tex @@ -4,7 +4,7 @@ %% This file is asmeconf-template.tex, a LaTeX template to format ASME Conference papers according to %% the requirements on ASME's conference web pages, and including hypertext support for the pdf. %% -%% This file is version 1.29 dated 2022/03/10 +%% This file is version 1.30 dated 2022/03/14 %% %% As of version 1.11, this template defaults to ASME's newer conference guidelines first posted July 2019. %% Those guidelines changed the requested author block formatting to be inline. @@ -84,13 +84,25 @@ %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% New pdf management code (June 2021); with this, the class option [pdf-a] can be omitted. +%% This change to the LaTeX kernel is being phased-in by the LaTeX3 team. Can delete if it gives you trouble. +%% Under LuaLaTeX, choose pdfstandard=A-3b (and be cautious when loading extra fonts) + +%\RequirePackage{pdfmanagement-testphase}% +% \DocumentMetadata{% +% pdfstandard=A-3b,% A-2b, A-2u, A-3b, or A-3u +% pdfversion=1.7, +% lang=en-US, +% }% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %% Class options are described above. Change these options as desired. %% If you are not using the language options, remove them (together with Appendices B and C) %% Remove the [colorlinks] option before *final* submission to ASME, to get black text for printing, %% but keep that option for other uses. -\documentclass[balance,upint,subscriptcorrection,varvw,mathalfa=cal=boondoxo,spanish,french,greek,russian,vietnamese,pdf-a,fontspec,colorlinks]{asmeconf} - +\documentclass[balance,upint,subscriptcorrection,varvw,mathalfa=cal=boondoxo,spanish,french,vietnamese,russian,greek,pdf-a,fontspec,colorlinks]{asmeconf} %%%%% pdf metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -204,7 +216,6 @@ This paper is an example of and a {\upshape\LaTeX} template for typesetting ASM %%%%%%%%% BODY OF PAPER %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Introduction} - The \texttt{\hrefurl{https://ctan.org/pkg/asmeconf}{asmeconf}} class typesets papers with margins, fonts, headings, captions, and reference formats that follow the specifications for conference papers of the American Society of Mechanical Engineers (ASME). In contrast to older ASME \LaTeX\ templates, \texttt{asmeconf} will set internal and external hyperlinks, and the pdf file will contain bookmarks and metadata. Many other useful features have been incorporated. This class is not a publication of ASME, but the author has published in ASME conferences since 1983. The \texttt{.tex} file may be written using standard \LaTeX\ commands, although some specific initial commands are needed to format the blocks containing the author[s], title, and abstract. This class loads a number of other packages, all of which are contained in up-to-date versions of \hrefurl{https://www.tug.org/texlive/}{\TeX\ Live}, \hrefurl{http://www.tug.org/mactex/}{Mac\TeX}, and similar platforms. If you get an error message about a missing package, you may download it at no cost from CTAN (\hrefurl{https://ctan.org}{ctan.org}). diff --git a/macros/latex/contrib/asmeconf/asmeconf.cls b/macros/latex/contrib/asmeconf/asmeconf.cls index e513eee7b8..c6a5d4a914 100644 --- a/macros/latex/contrib/asmeconf/asmeconf.cls +++ b/macros/latex/contrib/asmeconf/asmeconf.cls @@ -5,8 +5,8 @@ %% ASME conference requirements as represented on ASME's conference web pages in 2022. %% %% This file's version and date: - \def\versionno{1.29} - \def\versiondate{2022/03/10\space} + \def\versionno{1.30} + \def\versiondate{2022/03/14\space} %% %% Author: John H. Lienhard, V %% Department of Mechanical Engineering @@ -458,7 +458,7 @@ \else \pdfminorversion=7 % this selection is not essential. \fi - \RequirePackage[T1,\ac@TtwoA,\ac@LGR,\ac@Tfive]{fontenc}% T2A to support Cyrillic (w/o babel warning); LGR - Greek; T5 - Vietnamese + \RequirePackage[\ac@TtwoA,\ac@LGR,\ac@Tfive,T1]{fontenc}% T2A - Cyrillic (w/o babel warning); LGR - Greek; T5 - Vietnamese; put T1 last 22/03/10 \RequirePackage[utf8]{inputenc} % for backward compatibility with pre-2018 LaTeX distributions \else \ifluatex @@ -905,10 +905,25 @@ \babelprovide[import, captions/abstract = Muhtasari, language = Default]{swahili} % \else % use lualatex without font support for other languages (easier set-up and still enables luacode for numerics) - \RequirePackage[nofontspec,helvratio=0.91]{newtxtext}% will lose some accented characters this way ... better to use fontspec - \RequirePackage[varqu,varl,scale=1.05]{inconsolata}% sans typewriter font - \RequirePackage[]{newtxmath} - \fi + % extensive edits 2022/03/14 + \renewcommand*\rmdefault{ntxtlf} % roman font for math + \RequirePackage[T1]{fontenc} % qhv and zi4 are not TU encoded, 2021/12/24 + \DeclareFontFamily{T1}{\sfdefault}{} % sf for math + \DeclareFontShape{T1}{\sfdefault}{m}{n}{<-> s*[0.94] ec-qhvr}{} %% see t1qhv.fd; 0.9-->0.94 2022/01/15 + \DeclareFontFamily{T1}{zi4}{}% typewriter (Inconsolata) + \DeclareFontShape{T1}{zi4}{m}{n}{<-> s*[1.05] t1-zi4r-5}{}% with options varl and var qu + \DeclareFontShape{T1}{zi4}{b}{n}{<-> s*[1.05] t1-zi4b-5}{} + \DeclareFontShape{T1}{zi4}{bx}{n}{<-> s*[1.05] t1-zi4b-5}{} + \RequirePackage[]{newtxmath} % options will be as passed from newtx + \RequirePackage[type1text,nofontspec,helvratio=0.91]{newtxtext}% will lose some accented characters this way ... better to use fontspec + \@ifpackagelater{newtxtext}{2022/02/28}{\relax}{% + \ClassWarning{asmeconf}{Your copy of the newtxtext package is older than 2022/02/28, so you will see error messages about unknown options 'type1text' and 'nofontspec'. You can click through these for now, but I recommend you update your LaTeX installation for best results.} + } + \providecommand*{\DeclareFontFamilySubstitution}[3]{\relax}% folks with old latex formats will get a different typewriter font... + \AtBeginDocument{% + \DeclareFontFamilySubstitution{T1}{\ttdefault}{zi4} + } + \fi \fi \RequirePackage[]{mathalfa}% load optional fonts for Calligraphy, Script, Fraktur. Key format: mathalfa=cal=euler (etc.) @@ -1872,167 +1887,217 @@ %%%%%%%%%%%%%%%%%% Times-like fonts for specific languages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ifpdftex % Under lualatex, babel has problems with the following approach. Use [fontspec] option instead. + % Several modifications made in response to newtx v1.71, 2022/03/14 \ifac@vietnamese +% + \IfFormatAtLeastTF{2020/02/02}{\relax}{% + \ClassError{asmeconf}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the [vietnamese] option with pdflatex}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. Alternatively, delete the class option [vietnamese].}% + } +% + \AtBeginDocument{% + \let\babel@aux\@gobbletwo % eliminate warnings about missing .fd. Brute force approach, revisit later. 2022/03/14 + \DeclareFontFamilySubstitution{T5}{\rmdefault}{qtm} % new in 02/20/2020 format of LaTeX! Need to test. + \DeclareFontFamilySubstitution{T5}{\ttdefault}{qcr} + } % 2021/12/24 removed substitute font package % Vietnamese is in T5 encoding, can use Tex Gyre Termes font (qtm); % qhv = Heros (helvetica). We get the right font w/o loading this. % qcr = Cursor (monospaced) is poor match to inconsolata; qhv (the sf font) matches better, but isn't monospaced. - +% % From TeX Gyre Termes and Cursor .fd files by B. Jackowski and J. M. Nowacki, released under the GUST license \begingroup \nfss@catcodes - +% \def\qtm@scale{s*[0.97]} - \DeclareFontFamily{T5}{\rmdefault}{}% not adjusting wordspacing - \DeclareFontShape{T5}{\rmdefault}{b}{sc}{<-> \qtm@scale t5-qtmb-sc}{} - \DeclareFontShape{T5}{\rmdefault}{b}{n}{<-> \qtm@scale t5-qtmb}{} - \DeclareFontShape{T5}{\rmdefault}{b}{scit}{<-> \qtm@scale t5-qtmbi-sc}{} - \DeclareFontShape{T5}{\rmdefault}{b}{it}{<-> \qtm@scale t5-qtmbi}{} - \DeclareFontShape{T5}{\rmdefault}{m}{sc}{<-> \qtm@scale t5-qtmr-sc}{} - \DeclareFontShape{T5}{\rmdefault}{m}{n}{<-> \qtm@scale t5-qtmr}{} - \DeclareFontShape{T5}{\rmdefault}{m}{scit}{<-> \qtm@scale t5-qtmri-sc}{} - \DeclareFontShape{T5}{\rmdefault}{m}{it}{<-> \qtm@scale t5-qtmri}{} - \DeclareFontShape{T5}{\rmdefault}{bx}{sc}{<->ssub * qtm/b/sc}{} - \DeclareFontShape{T5}{\rmdefault}{bx}{n}{<->ssub * qtm/b/n}{} - \DeclareFontShape{T5}{\rmdefault}{bx}{scit}{<->ssub * qtm/b/scit}{} - \DeclareFontShape{T5}{\rmdefault}{bx}{it}{<->ssub * qtm/b/it}{} - \DeclareFontShape{T5}{\rmdefault}{b}{sl}{<->sub * qtm/b/it}{} - \DeclareFontShape{T5}{\rmdefault}{m}{sl}{<->sub * qtm/m/it}{} - \DeclareFontShape{T5}{\rmdefault}{b}{scsl}{<->sub * qtm/b/scit}{} - \DeclareFontShape{T5}{\rmdefault}{m}{scsl}{<->sub * qtm/m/scit}{} - + \DeclareFontFamily{T5}{qtm}{}% not adjusting wordspacing + \DeclareFontShape{T5}{qtm}{b}{sc}{<-> \qtm@scale t5-qtmb-sc}{} + \DeclareFontShape{T5}{qtm}{b}{n}{<-> \qtm@scale t5-qtmb}{} + \DeclareFontShape{T5}{qtm}{b}{scit}{<-> \qtm@scale t5-qtmbi-sc}{} + \DeclareFontShape{T5}{qtm}{b}{it}{<-> \qtm@scale t5-qtmbi}{} + \DeclareFontShape{T5}{qtm}{m}{sc}{<-> \qtm@scale t5-qtmr-sc}{} + \DeclareFontShape{T5}{qtm}{m}{n}{<-> \qtm@scale t5-qtmr}{} + \DeclareFontShape{T5}{qtm}{m}{scit}{<-> \qtm@scale t5-qtmri-sc}{} + \DeclareFontShape{T5}{qtm}{m}{it}{<-> \qtm@scale t5-qtmri}{} + \DeclareFontShape{T5}{qtm}{bx}{sc}{<->ssub * qtm/b/sc}{} + \DeclareFontShape{T5}{qtm}{bx}{n}{<->ssub * qtm/b/n}{} + \DeclareFontShape{T5}{qtm}{bx}{scit}{<->ssub * qtm/b/scit}{} + \DeclareFontShape{T5}{qtm}{bx}{it}{<->ssub * qtm/b/it}{} + \DeclareFontShape{T5}{qtm}{b}{sl}{<->sub * qtm/b/it}{} + \DeclareFontShape{T5}{qtm}{m}{sl}{<->sub * qtm/m/it}{} + \DeclareFontShape{T5}{qtm}{b}{scsl}{<->sub * qtm/b/scit}{} + \DeclareFontShape{T5}{qtm}{m}{scsl}{<->sub * qtm/m/scit}{} +% \def\qcr@scale{s*[0.95]} - \DeclareFontFamily{T5}{\ttdefault}{}% not adjusting wordspacing - \DeclareFontShape{T5}{\ttdefault}{b}{sc}{<-> \qcr@scale t5-qcrb-sc}{} - \DeclareFontShape{T5}{\ttdefault}{b}{n}{<-> \qcr@scale t5-qcrb}{} - \DeclareFontShape{T5}{\ttdefault}{b}{scit}{<-> \qcr@scale t5-qcrbi-sc}{} - \DeclareFontShape{T5}{\ttdefault}{b}{it}{<-> \qcr@scale t5-qcrbi}{} - \DeclareFontShape{T5}{\ttdefault}{m}{sc}{<-> \qcr@scale t5-qcrr-sc}{} - \DeclareFontShape{T5}{\ttdefault}{m}{n}{<-> \qcr@scale t5-qcrr}{} - \DeclareFontShape{T5}{\ttdefault}{m}{scit}{<-> \qcr@scale t5-qcrri-sc}{} - \DeclareFontShape{T5}{\ttdefault}{m}{it}{<-> \qcr@scale t5-qcrri}{} - \DeclareFontShape{T5}{\ttdefault}{bx}{sc}{<->ssub * qcr/b/sc}{} - \DeclareFontShape{T5}{\ttdefault}{bx}{n}{<->ssub * qcr/b/n}{} - \DeclareFontShape{T5}{\ttdefault}{bx}{scit}{<->ssub * qcr/b/scit}{} - \DeclareFontShape{T5}{\ttdefault}{bx}{it}{<->ssub * qcr/b/it}{} - \DeclareFontShape{T5}{\ttdefault}{b}{sl}{<->sub * qcr/b/it}{} - \DeclareFontShape{T5}{\ttdefault}{m}{sl}{<->sub * qcr/m/it}{} - \DeclareFontShape{T5}{\ttdefault}{b}{scsl}{<->sub * qcr/b/scit}{} - \DeclareFontShape{T5}{\ttdefault}{m}{scsl}{<->sub * qcr/m/scit}{} + \DeclareFontFamily{T5}{qcr}{}% not adjusting wordspacing + \DeclareFontShape{T5}{qcr}{b}{sc}{<-> \qcr@scale t5-qcrb-sc}{} + \DeclareFontShape{T5}{qcr}{b}{n}{<-> \qcr@scale t5-qcrb}{} + \DeclareFontShape{T5}{qcr}{b}{scit}{<-> \qcr@scale t5-qcrbi-sc}{} + \DeclareFontShape{T5}{qcr}{b}{it}{<-> \qcr@scale t5-qcrbi}{} + \DeclareFontShape{T5}{qcr}{m}{sc}{<-> \qcr@scale t5-qcrr-sc}{} + \DeclareFontShape{T5}{qcr}{m}{n}{<-> \qcr@scale t5-qcrr}{} + \DeclareFontShape{T5}{qcr}{m}{scit}{<-> \qcr@scale t5-qcrri-sc}{} + \DeclareFontShape{T5}{qcr}{m}{it}{<-> \qcr@scale t5-qcrri}{} + \DeclareFontShape{T5}{qcr}{bx}{sc}{<->ssub * qcr/b/sc}{} + \DeclareFontShape{T5}{qcr}{bx}{n}{<->ssub * qcr/b/n}{} + \DeclareFontShape{T5}{qcr}{bx}{scit}{<->ssub * qcr/b/scit}{} + \DeclareFontShape{T5}{qcr}{bx}{it}{<->ssub * qcr/b/it}{} + \DeclareFontShape{T5}{qcr}{b}{sl}{<->sub * qcr/b/it}{} + \DeclareFontShape{T5}{qcr}{m}{sl}{<->sub * qcr/m/it}{} + \DeclareFontShape{T5}{qcr}{b}{scsl}{<->sub * qcr/b/scit}{} + \DeclareFontShape{T5}{qcr}{m}{scsl}{<->sub * qcr/m/scit}{} \endgroup \fi \ifac@greek - %% Based on Artemisia fd files by A. Tsolomitis and ideas from substitutefont package by G. Milde, both LaTeX Public License. +% + \IfFormatAtLeastTF{2020/02/02}{\relax}{% + \ClassError{asmeconf}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the [greek] option with pdflatex}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. Alternatively, delete the class option [greek].}% + } +% + \AtBeginDocument{% + \let\babel@aux\@gobbletwo % eliminate warnings about missing .fd. Brute force approach, revisit later. 2022/03/14 + \DeclareFontFamilySubstitution{LGR}{\familydefault}{artemisia} % scale these + \DeclareFontFamilySubstitution{LGR}{\sfdefault}{maksf}%kerkis + \DeclareFontFamilySubstitution{LGR}{\ttdefault}{DejaVuSansMono-TLF} + } +% %% Based on Artemisia fd files by A. Tsolomitis and ideas from substitutefont package by G. Milde, both LaTeX Public License. \begingroup \nfss@catcodes - +% \def\artemisiasc@scaled{s*[0.95]} \def\artemisia@scaled{s*[0.93]} - \DeclareFontFamily{LGR}{\rmdefault}{% + \DeclareFontFamily{LGR}{artemisia}{% \fontdimen2\font=.25em \fontdimen3\font=.2em \fontdimen4\font=.1em }% adjusted word spacing to match newtxtext... this is tighter. - \DeclareFontShape{LGR}{\rmdefault}{m}{n}{<-> \artemisia@scaled gartemisiarg6a}{} - \DeclareFontShape{LGR}{\rmdefault}{m}{it}{<-> \artemisia@scaled gartemisiai6a}{} - \DeclareFontShape{LGR}{\rmdefault}{b}{n}{<-> \artemisia@scaled gartemisiab6a}{} - \DeclareFontShape{LGR}{\rmdefault}{b}{it}{<-> \artemisia@scaled gartemisiabi6a}{} - \DeclareFontShape{LGR}{\rmdefault}{m}{sl}{<-> \artemisia@scaled gartemisiao6a}{} - \DeclareFontShape{LGR}{\rmdefault}{b}{sl}{<-> \artemisia@scaled gartemisiabo6a}{} - \DeclareFontShape{LGR}{\rmdefault}{m}{sc}{<-> \artemisiasc@scaled gartemisiasc6a}{} - \DeclareFontShape{LGR}{\rmdefault}{m}{sco}{<->\artemisiasc@scaled gartemisiasco6a}{} - + \DeclareFontShape{LGR}{artemisia}{m}{n}{<-> \artemisia@scaled gartemisiarg6a}{} + \DeclareFontShape{LGR}{artemisia}{m}{it}{<-> \artemisia@scaled gartemisiai6a}{} + \DeclareFontShape{LGR}{artemisia}{b}{n}{<-> \artemisia@scaled gartemisiab6a}{} + \DeclareFontShape{LGR}{artemisia}{b}{it}{<-> \artemisia@scaled gartemisiabi6a}{} + \DeclareFontShape{LGR}{artemisia}{m}{sl}{<-> \artemisia@scaled gartemisiao6a}{} + \DeclareFontShape{LGR}{artemisia}{b}{sl}{<-> \artemisia@scaled gartemisiabo6a}{} + \DeclareFontShape{LGR}{artemisia}{m}{sc}{<-> \artemisiasc@scaled gartemisiasc6a}{} + \DeclareFontShape{LGR}{artemisia}{m}{sco}{<->\artemisiasc@scaled gartemisiasco6a}{} +% %% nextx names oblique sc as both scit and scsl. ("largesc" option of newtx is different font, not a scaling.) - \DeclareFontShape{LGR}{\rmdefault}{m}{scsl}{<->\artemisiasc@scaled gartemisiasco6a}{}% sco - \DeclareFontShape{LGR}{\rmdefault}{m}{scit}{<->\artemisiasc@scaled gartemisiasco6a}{}% sco - - \DeclareFontShape{LGR}{\rmdefault}{bx}{n}{<-> \artemisia@scaled gartemisiab6a}{} - \DeclareFontShape{LGR}{\rmdefault}{bx}{it}{<->\artemisia@scaled gartemisiabi6a}{} - \DeclareFontShape{LGR}{\rmdefault}{bx}{sl}{<->\artemisia@scaled gartemisiabo6a}{} - - % Sans Serif Greek font Kerkis - % Based on Kerkis fd file, by Antonis Tsolomitis, under the LaTeX Project Public License + \DeclareFontShape{LGR}{artemisia}{m}{scsl}{<->\artemisiasc@scaled gartemisiasco6a}{}% sco + \DeclareFontShape{LGR}{artemisia}{m}{scit}{<->\artemisiasc@scaled gartemisiasco6a}{}% sco +% + \DeclareFontShape{LGR}{artemisia}{bx}{n}{<-> \artemisia@scaled gartemisiab6a}{} + \DeclareFontShape{LGR}{artemisia}{bx}{it}{<->\artemisia@scaled gartemisiabi6a}{} + \DeclareFontShape{LGR}{artemisia}{bx}{sl}{<->\artemisia@scaled gartemisiabo6a}{} +% +% % Sans Serif Greek font Kerkis +% % Based on Kerkis fd file, by Antonis Tsolomitis, under the LaTeX Project Public License \def\kerkissf@scaled{s*[0.95]} - \DeclareFontFamily{LGR}{\sfdefault}{}% not adjusting wordspacing - \DeclareFontShape{LGR}{\sfdefault}{m}{n}{<-> \kerkissf@scaled gksf7t}{} - \DeclareFontShape{LGR}{\sfdefault}{m}{it}{<->\kerkissf@scaled gksfi7t}{} - \DeclareFontShape{LGR}{\sfdefault}{m}{sl}{<->\kerkissf@scaled gksfi7t}{} - \DeclareFontShape{LGR}{\sfdefault}{m}{sc}{<->\kerkissf@scaled gksfsc7t}{} - \DeclareFontShape{LGR}{\sfdefault}{b}{n}{ <->\kerkissf@scaled gksfb7t}{} - \DeclareFontShape{LGR}{\sfdefault}{b}{it}{<->\kerkissf@scaled gksfbi7t}{} - \DeclareFontShape{LGR}{\sfdefault}{b}{sl}{<->\kerkissf@scaled gksfbi7t}{} - - \DeclareFontShape{LGR}{\sfdefault}{bx}{n}{ <-> \kerkissf@scaled gksfb7t}{} - \DeclareFontShape{LGR}{\sfdefault}{bx}{it}{ <-> \kerkissf@scaled gksfbi7t}{} - \DeclareFontShape{LGR}{\sfdefault}{bx}{sl}{ <-> \kerkissf@scaled gksfbi7t}{} - - %% Greek monospaced font, DejaVuSansMono - %% Based on DejaVu fd files by Pavel Farar, under the LaTeX Project Public License + \DeclareFontFamily{LGR}{maksf}{}% not adjusting wordspacing + \DeclareFontShape{LGR}{maksf}{m}{n}{<-> \kerkissf@scaled gksf7t}{} + \DeclareFontShape{LGR}{maksf}{m}{it}{<->\kerkissf@scaled gksfi7t}{} + \DeclareFontShape{LGR}{maksf}{m}{sl}{<->\kerkissf@scaled gksfi7t}{} + \DeclareFontShape{LGR}{maksf}{m}{sc}{<->\kerkissf@scaled gksfsc7t}{} + \DeclareFontShape{LGR}{maksf}{b}{n}{ <->\kerkissf@scaled gksfb7t}{} + \DeclareFontShape{LGR}{maksf}{b}{it}{<->\kerkissf@scaled gksfbi7t}{} + \DeclareFontShape{LGR}{maksf}{b}{sl}{<->\kerkissf@scaled gksfbi7t}{} +% + \DeclareFontShape{LGR}{maksf}{bx}{n}{ <-> \kerkissf@scaled gksfb7t}{} + \DeclareFontShape{LGR}{maksf}{bx}{it}{ <-> \kerkissf@scaled gksfbi7t}{} + \DeclareFontShape{LGR}{maksf}{bx}{sl}{ <-> \kerkissf@scaled gksfbi7t}{} +% +% %% Greek monospaced font, DejaVuSansMono +% %% Based on DejaVu fd files by Pavel Farar, under the LaTeX Project Public License \def\DejaVuSansMono@@scale{s*[0.85]}% - \DeclareFontFamily{LGR}{\ttdefault}{}% not adjusting wordspacing - \DeclareFontShape{LGR}{\ttdefault}{b}{it}{<-> \DejaVuSansMono@@scale DejaVuSansMono-BoldOblique-tlf-lgr}{} - \DeclareFontShape{LGR}{\ttdefault}{b}{n}{ <-> \DejaVuSansMono@@scale DejaVuSansMono-Bold-tlf-lgr}{} - \DeclareFontShape{LGR}{\ttdefault}{m}{it}{<-> \DejaVuSansMono@@scale DejaVuSansMono-Oblique-tlf-lgr}{} - \DeclareFontShape{LGR}{\ttdefault}{m}{n}{ <-> \DejaVuSansMono@@scale DejaVuSansMono-tlf-lgr}{} + \DeclareFontFamily{LGR}{DejaVuSansMono-TLF}{}% not adjusting wordspacing + \DeclareFontShape{LGR}{DejaVuSansMono-TLF}{b}{it}{<-> \DejaVuSansMono@@scale DejaVuSansMono-BoldOblique-tlf-lgr}{} + \DeclareFontShape{LGR}{DejaVuSansMono-TLF}{b}{n}{ <-> \DejaVuSansMono@@scale DejaVuSansMono-Bold-tlf-lgr}{} + \DeclareFontShape{LGR}{DejaVuSansMono-TLF}{m}{it}{<-> \DejaVuSansMono@@scale DejaVuSansMono-Oblique-tlf-lgr}{} + \DeclareFontShape{LGR}{DejaVuSansMono-TLF}{m}{n}{ <-> \DejaVuSansMono@@scale DejaVuSansMono-tlf-lgr}{} - \DeclareFontShape{LGR}{\ttdefault}{m}{sl}{<-> \DejaVuSansMono@@scale DejaVuSansMono-TLF/m/it}{} - \DeclareFontShape{LGR}{\ttdefault}{b}{sl}{<-> \DejaVuSansMono@@scale DejaVuSansMono-TLF/b/it}{} + \DeclareFontShape{LGR}{DejaVuSansMono-TLF}{m}{sl}{<-> \DejaVuSansMono@@scale DejaVuSansMono-TLF/m/it}{} + \DeclareFontShape{LGR}{DejaVuSansMono-TLF}{b}{sl}{<-> \DejaVuSansMono@@scale DejaVuSansMono-TLF/b/it}{} - \DeclareFontShape{LGR}{\ttdefault}{bx}{sl}{<->\DejaVuSansMono@@scale DejaVuSansMono-TLF/b/it}{} - \DeclareFontShape{LGR}{\ttdefault}{bx}{it}{<->\DejaVuSansMono@@scale DejaVuSansMono-TLF/b/it}{} - \DeclareFontShape{LGR}{\ttdefault}{bx}{n}{ <->\DejaVuSansMono@@scale DejaVuSansMono-TLF/b/n}{} - + \DeclareFontShape{LGR}{DejaVuSansMono-TLF}{bx}{sl}{<->\DejaVuSansMono@@scale DejaVuSansMono-TLF/b/it}{} + \DeclareFontShape{LGR}{DejaVuSansMono-TLF}{bx}{it}{<->\DejaVuSansMono@@scale DejaVuSansMono-TLF/b/it}{} + \DeclareFontShape{LGR}{DejaVuSansMono-TLF}{bx}{n}{ <->\DejaVuSansMono@@scale DejaVuSansMono-TLF/b/n}{} +% \endgroup \fi \ifac@cyrillic - %% Paratype fonts for cyrillic, maintained by Pavel Farar, under Latex Project Public License - \begingroup +% + \IfFormatAtLeastTF{2020/02/02}{\relax}{% + \ClassError{asmeconf}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the cyrillic language option with pdflatex, e.g., [russian]}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. Alternatively, delete the class option calling a cyrillic-alphabet language.}% + } +% + \AtBeginDocument{% + \let\babel@aux\@gobbletwo % eliminate warnings about missing .fd. Brute force approach, revisit later. 2022/03/14 + \DeclareFontFamilySubstitution{T2A}{\familydefault}{PTSerif-TLF} + \DeclareFontFamilySubstitution{T2A}{\sfdefault}{PTSans-TLF} +% \DeclareFontFamilySubstitution{T2A}{\ttdefault}{DejaVuSansMono-TLF} % if one prefers an SF monospace font + \DeclareFontFamilySubstitution{T2A}{\ttdefault}{PTMono} + } + %% Paratype fonts for cyrillic, maintained by Pavel Farar, under Latex Project Public License + \begingroup \nfss@catcodes - +% \def\PTSerif@@scale{s*[0.95]}% had had 0.94... - \DeclareFontFamily{T2A}{\rmdefault}{}% not adjusting wordspacing, since it matches newtxtext as is - \DeclareFontShape{T2A}{\rmdefault}{m}{n}{ <->\PTSerif@@scale PTSerif-Regular-tlf-t2a}{} - \DeclareFontShape{T2A}{\rmdefault}{m}{it}{<->\PTSerif@@scale PTSerif-Italic-tlf-t2a}{} - \DeclareFontShape{T2A}{\rmdefault}{b}{n}{ <->\PTSerif@@scale PTSerif-Bold-tlf-t2a}{} - \DeclareFontShape{T2A}{\rmdefault}{b}{it}{<->\PTSerif@@scale PTSerif-BoldItalic-tlf-t2a}{} - \DeclareFontShape{T2A}{\rmdefault}{m}{ui}{<->\PTSerif@@scale PTSerif-UprightItalic-tlf-t2a}{} - \DeclareFontShape{T2A}{\rmdefault}{m}{sl}{<->\PTSerif@@scale PTSerif-Slanted-tlf-t2a}{} - \DeclareFontShape{T2A}{\rmdefault}{b}{ui}{<->\PTSerif@@scale PTSerif-BoldUprightItalic-tlf-t2a}{} - \DeclareFontShape{T2A}{\rmdefault}{b}{sl}{<->\PTSerif@@scale PTSerif-BoldSlanted-tlf-t2a}{} - - \DeclareFontShape{T2A}{\rmdefault}{bx}{n}{<->ssub * PTSerif-TLF/b/n}{} - \DeclareFontShape{T2A}{\rmdefault}{bx}{it}{<->ssub * PTSerif-TLF/b/it}{} - \DeclareFontShape{T2A}{\rmdefault}{bx}{ui}{<->ssub * PTSerif-TLF/b/ui}{} - \DeclareFontShape{T2A}{\rmdefault}{bx}{sl}{<->ssub * PTSerif-TLF/b/sl}{} - + \DeclareFontFamily{T2A}{PTSerif-TLF}{}% not adjusting wordspacing, since it matches newtxtext as is + \DeclareFontShape{T2A}{PTSerif-TLF}{m}{n}{ <->\PTSerif@@scale PTSerif-Regular-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSerif-TLF}{m}{it}{<->\PTSerif@@scale PTSerif-Italic-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSerif-TLF}{b}{n}{ <->\PTSerif@@scale PTSerif-Bold-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSerif-TLF}{b}{it}{<->\PTSerif@@scale PTSerif-BoldItalic-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSerif-TLF}{m}{ui}{<->\PTSerif@@scale PTSerif-UprightItalic-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSerif-TLF}{m}{sl}{<->\PTSerif@@scale PTSerif-Slanted-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSerif-TLF}{b}{ui}{<->\PTSerif@@scale PTSerif-BoldUprightItalic-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSerif-TLF}{b}{sl}{<->\PTSerif@@scale PTSerif-BoldSlanted-tlf-t2a}{} +% + \DeclareFontShape{T2A}{PTSerif-TLF}{bx}{n}{<->ssub * PTSerif-TLF/b/n}{} + \DeclareFontShape{T2A}{PTSerif-TLF}{bx}{it}{<->ssub * PTSerif-TLF/b/it}{} + \DeclareFontShape{T2A}{PTSerif-TLF}{bx}{ui}{<->ssub * PTSerif-TLF/b/ui}{} + \DeclareFontShape{T2A}{PTSerif-TLF}{bx}{sl}{<->ssub * PTSerif-TLF/b/sl}{} +% \def\PTSans@@scale{s*[0.94]}% - \DeclareFontFamily{T2A}{\sfdefault}{}% not adjusting wordspacing - \DeclareFontShape{T2A}{\sfdefault}{b}{it}{<->\PTSans@@scale PTSans-BoldItalic-tlf-t2a}{} - \DeclareFontShape{T2A}{\sfdefault}{b}{n}{<-> \PTSans@@scale PTSans-Bold-tlf-t2a}{} - \DeclareFontShape{T2A}{\sfdefault}{m}{it}{<->\PTSans@@scale PTSans-Italic-tlf-t2a}{} - \DeclareFontShape{T2A}{\sfdefault}{m}{n}{<-> \PTSans@@scale PTSans-Regular-tlf-t2a}{} - \DeclareFontShape{T2A}{\sfdefault}{c}{n}{<-> \PTSans@@scale PTSans-Narrow-tlf-t2a}{} - \DeclareFontShape{T2A}{\sfdefault}{bc}{n}{<->\PTSans@@scale PTSans-NarrowBold-tlf-t2a}{} - - \DeclareFontShape{T2A}{\sfdefault}{m}{sl}{<->ssub * PTSans-TLF/m/it}{} - \DeclareFontShape{T2A}{\sfdefault}{b}{sl}{<->ssub * PTSans-TLF/b/it}{} - \DeclareFontShape{T2A}{\sfdefault}{bx}{sl}{<->ssub * PTSans-TLF/b/it}{} - \DeclareFontShape{T2A}{\sfdefault}{bx}{it}{<->ssub * PTSans-TLF/b/it}{} - \DeclareFontShape{T2A}{\sfdefault}{bx}{n}{<->ssub * PTSans-TLF/b/n}{} - - %% the tt cyrillic is slightly larger than the latin characters. - \def\PTMono@@scale{s*[0.92]}% - \DeclareFontFamily{T2A}{\ttdefault}{}% not adjusting wordspacing - \DeclareFontShape{T2A}{\ttdefault}{m}{n}{<-> \PTMono@@scale PTMono-Regular-tlf-t2a}{} - \DeclareFontShape{T2A}{\ttdefault}{b}{n}{<-> \PTMono@@scale PTMono-Bold-tlf-t2a}{} - \DeclareFontShape{T2A}{\ttdefault}{m}{sl}{<->\PTMono@@scale PTMono-Slanted-tlf-t2a}{} - \DeclareFontShape{T2A}{\ttdefault}{b}{sl}{<->\PTMono@@scale PTMono-BoldSlanted-tlf-t2a}{} + \DeclareFontFamily{T2A}{PTSans-TLF}{}% not adjusting wordspacing + \DeclareFontShape{T2A}{PTSans-TLF}{b}{it}{<->\PTSans@@scale PTSans-BoldItalic-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSans-TLF}{b}{n}{<-> \PTSans@@scale PTSans-Bold-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSans-TLF}{m}{it}{<->\PTSans@@scale PTSans-Italic-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSans-TLF}{m}{n}{<-> \PTSans@@scale PTSans-Regular-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSans-TLF}{c}{n}{<-> \PTSans@@scale PTSans-Narrow-tlf-t2a}{} + \DeclareFontShape{T2A}{PTSans-TLF}{bc}{n}{<->\PTSans@@scale PTSans-NarrowBold-tlf-t2a}{} +% + \DeclareFontShape{T2A}{PTSans-TLF}{m}{sl}{<->ssub * PTSans-TLF/m/it}{} + \DeclareFontShape{T2A}{PTSans-TLF}{b}{sl}{<->ssub * PTSans-TLF/b/it}{} + \DeclareFontShape{T2A}{PTSans-TLF}{bx}{sl}{<->ssub * PTSans-TLF/b/it}{} + \DeclareFontShape{T2A}{PTSans-TLF}{bx}{it}{<->ssub * PTSans-TLF/b/it}{} + \DeclareFontShape{T2A}{PTSans-TLF}{bx}{n}{<->ssub * PTSans-TLF/b/n}{} +% +% %% the tt cyrillic is slightly larger than the latin characters. + \def\PTMono@@scale{s*[0.92]}% + \DeclareFontFamily{T2A}{PTMono}{}% not adjusting wordspacing + \DeclareFontShape{T2A}{PTMono}{m}{n}{<-> \PTMono@@scale PTMono-Regular-tlf-t2a}{} + \DeclareFontShape{T2A}{PTMono}{b}{n}{<-> \PTMono@@scale PTMono-Bold-tlf-t2a}{} + \DeclareFontShape{T2A}{PTMono}{m}{sl}{<->\PTMono@@scale PTMono-Slanted-tlf-t2a}{} + \DeclareFontShape{T2A}{PTMono}{b}{sl}{<->\PTMono@@scale PTMono-BoldSlanted-tlf-t2a}{} + \DeclareFontShape{T2A}{PTMono}{m}{it}{<->\PTMono@@scale PTMono-Slanted-tlf-t2a}{} + \DeclareFontShape{T2A}{PTMono}{b}{it}{<->\PTMono@@scale PTMono-BoldSlanted-tlf-t2a}{} - \DeclareFontShape{T2A}{\ttdefault}{bx}{n}{<->ssub * PTMono-TLF/b/n}{} - \DeclareFontShape{T2A}{\ttdefault}{bx}{sl}{<->ssub * PTMono-TLF/b/sl}{} - + \DeclareFontShape{T2A}{PTMono}{bx}{n}{<->ssub * PTMono-TLF/b/n}{} + \DeclareFontShape{T2A}{PTMono}{bx}{sl}{<->ssub * PTMono-TLF/b/sl}{} +% + \def\DejaVuSansMono@@scale{s*[0.85]}% + \DeclareFontFamily{T2A}{DejaVuSansMono-TLF}{}% not adjusting wordspacing + \DeclareFontShape{T2A}{DejaVuSansMono-TLF}{b}{it}{<-> \DejaVuSansMono@@scale DejaVuSansMono-BoldOblique-tlf-t2a}{} + \DeclareFontShape{T2A}{DejaVuSansMono-TLF}{b}{n}{ <-> \DejaVuSansMono@@scale DejaVuSansMono-Bold-tlf-t2a}{} + \DeclareFontShape{T2A}{DejaVuSansMono-TLF}{m}{it}{<-> \DejaVuSansMono@@scale DejaVuSansMono-Oblique-tlf-t2a}{} + \DeclareFontShape{T2A}{DejaVuSansMono-TLF}{m}{n}{ <-> \DejaVuSansMono@@scale DejaVuSansMono-tlf-t2a}{} +% + \DeclareFontShape{T2A}{DejaVuSansMono-TLF}{m}{sl}{<-> \DejaVuSansMono@@scale DejaVuSansMono-TLF/m/it}{} + \DeclareFontShape{T2A}{DejaVuSansMono-TLF}{b}{sl}{<-> \DejaVuSansMono@@scale DejaVuSansMono-TLF/b/it}{} +% + \DeclareFontShape{T2A}{DejaVuSansMono-TLF}{bx}{sl}{<->\DejaVuSansMono@@scale DejaVuSansMono-TLF/b/it}{} + \DeclareFontShape{T2A}{DejaVuSansMono-TLF}{bx}{it}{<->\DejaVuSansMono@@scale DejaVuSansMono-TLF/b/it}{} + \DeclareFontShape{T2A}{DejaVuSansMono-TLF}{bx}{n}{ <->\DejaVuSansMono@@scale DejaVuSansMono-TLF/b/n}{} +% \endgroup \fi \fi diff --git a/macros/latex/contrib/asmeconf/examples/asmeconf-lualatex-ode-example.pdf b/macros/latex/contrib/asmeconf/examples/asmeconf-lualatex-ode-example.pdf Binary files differindex 08d31a1ec5..b9f7f0cb10 100644 --- a/macros/latex/contrib/asmeconf/examples/asmeconf-lualatex-ode-example.pdf +++ b/macros/latex/contrib/asmeconf/examples/asmeconf-lualatex-ode-example.pdf diff --git a/macros/latex/contrib/asmeconf/examples/asmeconf-lualatex-ode-example.tex b/macros/latex/contrib/asmeconf/examples/asmeconf-lualatex-ode-example.tex index 7857276b96..f24875f16a 100644 --- a/macros/latex/contrib/asmeconf/examples/asmeconf-lualatex-ode-example.tex +++ b/macros/latex/contrib/asmeconf/examples/asmeconf-lualatex-ode-example.tex @@ -4,6 +4,8 @@ %% %% This file is an example of using asmeconf with lualatex to solve and plot an ode in a landscape figure. %% +%% Use of an up-to-date LaTeX distribution (after 2020) is strongly recommended. +%% %% Author: John H. Lienhard V %% Department of Mechanical Engineering %% Massachusetts Institute of Technology @@ -13,7 +15,7 @@ %% %% LICENSE: %% -%% Copyright (c) 2021 John H. Lienhard +%% Copyright (c) 2022 John H. Lienhard %% Offered under the MIT license: https://ctan.org/license/mit %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -27,7 +29,7 @@ } \usepackage[figuresright]{rotating}% to use a landscape figure - +\usepackage{luacode}% for compatibility with older installations %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Now use lua code diff --git a/macros/latex/contrib/l3build/CHANGELOG.md b/macros/latex/contrib/l3build/CHANGELOG.md index a8002e8d80..129cdab7b9 100644 --- a/macros/latex/contrib/l3build/CHANGELOG.md +++ b/macros/latex/contrib/l3build/CHANGELOG.md @@ -7,6 +7,16 @@ this project uses date-based 'snapshot' version identifiers. ## [Unreleased] +## [2022-03-15] + +### Changed +- When `\pdfmeta_set_regression_data:` is defined it is used + to set metadata +- Support multiple configurations in bundles + +### Fixed +- Correctly normalize luaotfload font cache path + ## [2022-02-24] ### Fixed @@ -574,7 +584,8 @@ this project uses date-based 'snapshot' version identifiers. - Rationalise short option names: removed `-d`, `-E`, `-r` - Target `cmdcheck`: specific to LaTeX kernel work -[Unreleased]: https://github.com/latex3/l3build/compare/2022-02-24...HEAD +[Unreleased]: https://github.com/latex3/l3build/compare/2022-03-15...HEAD +[2022-03-15]: https://github.com/latex3/l3build/compare/2022-02-24...2022-03-15 [2022-02-24]: https://github.com/latex3/l3build/compare/2021-12-14...2022-02-24 [2021-12-14]: https://github.com/latex3/l3build/compare/2021-12-09...2021-12-14 [2021-12-09]: https://github.com/latex3/l3build/compare/2021-12-06...2021-12-09 diff --git a/macros/latex/contrib/l3build/README.md b/macros/latex/contrib/l3build/README.md index d2cc67987d..67f37bd53d 100644 --- a/macros/latex/contrib/l3build/README.md +++ b/macros/latex/contrib/l3build/README.md @@ -1,7 +1,7 @@ l3build: a testing and building system for LaTeX ================================================= -Release 2022-02-24 +Release 2022-03-15 Overview -------- diff --git a/macros/latex/contrib/l3build/l3build-check.lua b/macros/latex/contrib/l3build/l3build-check.lua index 65ac222271..f016c25a62 100644 --- a/macros/latex/contrib/l3build/l3build-check.lua +++ b/macros/latex/contrib/l3build/l3build-check.lua @@ -147,7 +147,7 @@ local function normalize_log(content,engine,errlevels) -- Images line = gsub(line, "<" .. pattern .. ">", "<../%1>") -- luaotfload files start with keywords - line = gsub(line, "from " .. pattern .. "%(", "from. ./%1(") + line = gsub(line, "from " .. pattern .. "$", "from ../%1") line = gsub(line, ": " .. pattern .. "%)", ": ../%1)") -- Deal with XeTeX specials if match(line, "^%.+\\XeTeX.?.?.?file") then diff --git a/macros/latex/contrib/l3build/l3build.1 b/macros/latex/contrib/l3build/l3build.1 index 1eaa9ca865..2329238b1a 100644 --- a/macros/latex/contrib/l3build/l3build.1 +++ b/macros/latex/contrib/l3build/l3build.1 @@ -1,4 +1,4 @@ -.TH l3build 1 "2022-02-24" +.TH l3build 1 "2022-03-15" .SH NAME l3build \- Checking and building packages .SH SYNOPSIS diff --git a/macros/latex/contrib/l3build/l3build.dtx b/macros/latex/contrib/l3build/l3build.dtx index df9d152f9e..fbd84ff215 100644 --- a/macros/latex/contrib/l3build/l3build.dtx +++ b/macros/latex/contrib/l3build/l3build.dtx @@ -237,7 +237,7 @@ % }^^A % } % -% \date{Released 2022-02-24} +% \date{Released 2022-03-15} % % \maketitle % \tableofcontents @@ -1545,7 +1545,7 @@ % \meta{package}|-ctan.curlopt|. This is then passed to curl using its % |--config| commandline option. (Using an intermediate file helps % keep \pkg{l3build} portable between systems using different -% commandline quoting conventions. Any backslashes are doubled when writing +% commandline quoting conventions. Any backslashes are doubled when writing % to this file, so they do not need to be doubled in announcement and note texts.) % % By default the file is written into the current directory alongside @@ -2497,48 +2497,53 @@ % environment side (as not all output can be controlled here). % There is a limit to what can be done with the underlying PDF structure so % there is no point entirely suppressing \texttt{Producer}: simply avoid -% any version numbers. +% any version numbers. If the pdfmanagement is loaded we use its function +% if it exists. % \begin{macrocode} -\ifnum 0% - \ifx\pdfoutput\@undefined\else\ifnum\pdfoutput>0 1\fi\fi - \ifx\outputmode\@undefined\else\ifnum\outputmode>0 1\fi\fi - >0 % - \ifx\pdfvariable\@undefined - \pdfinfo{/Producer (\ifx\directlua\@undefined pdf\else Lua\fi TeX)} - \ifx\pdfinfoomitdate\@undefined\else - \pdfinfoomitdate = 1 % - \pdfsuppressptexinfo = \numexpr +\ifcsname pdfmeta_set_regression_data:\endcsname + \csname pdfmeta_set_regression_data:\endcsname +\else + \ifnum 0% + \ifx\pdfoutput\@undefined\else\ifnum\pdfoutput>0 1\fi\fi + \ifx\outputmode\@undefined\else\ifnum\outputmode>0 1\fi\fi + >0 % + \ifx\pdfvariable\@undefined + \pdfinfo{/Producer (\ifx\directlua\@undefined pdf\else Lua\fi TeX)} + \ifx\pdfinfoomitdate\@undefined\else + \pdfinfoomitdate = 1 % + \pdfsuppressptexinfo = \numexpr + 0 + + 1 % PTEX.Fullbanner + + 2 % PTEX.FileName + \relax + \pdftrailerid{} + \fi + \else + \pdfextension info{/Producer (LuaTeX)} + \pdfvariable suppressoptionalinfo \numexpr 0 - + 1 % PTEX.Fullbanner - + 2 % PTEX.FileName + + 1 % PTEX.Fullbanner + + 2 % PTEX.FileName + + 32 % CreationDate + + 64 % ModDate + + 512 % ID \relax - \pdftrailerid{} \fi \else - \pdfextension info{/Producer (LuaTeX)} - \pdfvariable suppressoptionalinfo \numexpr - 0 - + 1 % PTEX.Fullbanner - + 2 % PTEX.FileName - + 32 % CreationDate - + 64 % ModDate - + 512 % ID - \relax - \fi -\else - \ifx\XeTeXversion\@undefined - \special{! <</DocumentUUID (DocumentUUID)>> setpagedevice} - \special{! <</InstanceUUID (InstanceUUID)>> setpagedevice} - \else - \special{% - pdf: docinfo - << - /Creator (TeX) - /CreationDate () - /ModDate () - /Producer (xdvipdfmx) - >> - } + \ifx\XeTeXversion\@undefined + \special{! <</DocumentUUID (DocumentUUID)>> setpagedevice} + \special{! <</InstanceUUID (InstanceUUID)>> setpagedevice} + \else + \special{% + pdf: docinfo + << + /Creator (TeX) + /CreationDate () + /ModDate () + /Producer (xdvipdfmx) + >> + } + \fi \fi \fi % \end{macrocode} diff --git a/macros/latex/contrib/l3build/l3build.lua b/macros/latex/contrib/l3build/l3build.lua index 744f7628b8..80a7b6e3d0 100755 --- a/macros/latex/contrib/l3build/l3build.lua +++ b/macros/latex/contrib/l3build/l3build.lua @@ -25,7 +25,7 @@ for those people who are interested. --]] -- Version information -release_date = "2022-02-24" +release_date = "2022-03-15" -- File operations are aided by the LuaFileSystem module local lfs = require("lfs") @@ -134,7 +134,7 @@ else end if #checkconfigs > 1 then - if options["target"] == "check" then + if options["target"] == "check" or options["target"] == "bundlecheck" then local errorlevel = 0 local failed = { } for i = 1, #checkconfigs do diff --git a/macros/latex/contrib/l3build/l3build.pdf b/macros/latex/contrib/l3build/l3build.pdf Binary files differindex 9e229e7248..def5d5ec3d 100644 --- a/macros/latex/contrib/l3build/l3build.pdf +++ b/macros/latex/contrib/l3build/l3build.pdf diff --git a/macros/latex/contrib/microtype/README.md b/macros/latex/contrib/microtype/README.md index fadf68236d..877288c964 100644 --- a/macros/latex/contrib/microtype/README.md +++ b/macros/latex/contrib/microtype/README.md @@ -4,7 +4,7 @@ The `microtype` package **Subliminal refinements towards typographical perfection** - (v3.0c -- 2022/02/22) + (v3.0d -- 2022/03/14) Overview diff --git a/macros/latex/contrib/microtype/microtype-code.pdf b/macros/latex/contrib/microtype/microtype-code.pdf Binary files differindex 0d32629722..f694148eb5 100644 --- a/macros/latex/contrib/microtype/microtype-code.pdf +++ b/macros/latex/contrib/microtype/microtype-code.pdf diff --git a/macros/latex/contrib/microtype/microtype-utf.dtx b/macros/latex/contrib/microtype/microtype-utf.dtx index 67d8566f19..469e99b6d9 100644 --- a/macros/latex/contrib/microtype/microtype-utf.dtx +++ b/macros/latex/contrib/microtype/microtype-utf.dtx @@ -27,7 +27,7 @@ \ProvidesFile %</!EBGaramond> %<*driver> - {\jobname.dtx}[2022/02/22 v3.0c] + {\jobname.dtx}[2022/03/14 v3.0d] %</driver> %<CharisSIL> {mt-CharisSIL.cfg}[2017/07/07 v1.1 microtype config. file: Charis SIL (RS)] %<LatinModernRoman> {mt-LatinModernRoman.cfg}[2021/02/21 v1.1 microtype config. file: Latin Modern Roman (RS)] diff --git a/macros/latex/contrib/microtype/microtype.dtx b/macros/latex/contrib/microtype/microtype.dtx index 1649f7fed4..4e061d1810 100644 --- a/macros/latex/contrib/microtype/microtype.dtx +++ b/macros/latex/contrib/microtype/microtype.dtx @@ -37,7 +37,7 @@ %<lua-> {microtype-luatex.def} %<xe-> {microtype-xetex.def} %<*package|letterspace|m-t|pdf-|lua-|xe-|show> - [2022/02/22 v3.0c + [2022/03/14 v3.0d %<package> Micro-typographical refinements %<letterspace> Robust letterspacing %<show> Visual debugging for the microtype package @@ -52,8 +52,8 @@ %<luafile>local microtype = microtype %<luafile>microtype.module = { %<luafile> name = "microtype", -%<luafile> version = "3.0c", -%<luafile> date = "2022/02/22", +%<luafile> version = "3.0d", +%<luafile> date = "2022/03/14", %<luafile> description = "microtype module.", %<luafile> author = "E. Roux, R. Schlicht and P. Gesang", %<luafile> copyright = "E. Roux, R. Schlicht and P. Gesang", @@ -1382,7 +1382,6 @@ % See section~\ref{sub:expansion} for a more detailed discussion. % % -%\pagebreak ^^A layout %\subsection[Tracking] % {Tracking \requires{\pdftex~1.40,\luatex~0.62}} % \label{sub:options-tracking} @@ -1556,6 +1555,7 @@ % words, this is equivalent to specifying \emph{all} possible values for that % attribute. % Therefore, the predefined set `|alltext|', which is declared as: +%\enlargethispage{\baselineskip} ^^A layout %\begin{verbatim} %\DeclareMicrotypeSet{alltext} % { encoding = {OT1,T1,T2A,LY1,OT4,QX,T5,TS1,EU1,EU2,TU} } @@ -3121,6 +3121,7 @@ %! TeX capacity exceeded, sorry [maximum internal font number (font_max)=<2000>]. %\end{verbatim} % Memory parameter `|font_max|' too small. +%\pagebreak ^^A layout % \item %\begin{verbatim} %! TeX capacity exceeded, sorry [PDF memory size (pdf_mem_size)=<65536>]. @@ -3331,9 +3332,11 @@ % `\contributor theufman <@\at @>', ^^A https://github.com/theufman % `\contributor frafl <@\at @>', ^^A https://github.com/frafl % \contributor Joel Coffman <@\at @>, ^^A https://github.com/joel-coffman -% `\contributor user182849 <@\at @>' ^^A https://tex.stackexchange.com/users/182849/user182849 +% `\contributor user182849 <@\at @>', ^^A https://tex.stackexchange.com/users/182849/user182849 +% `\contributor NightShade <@\at @>', ^^A https://tex.stackexchange.com/users/260836/nightshade +% \contributor Nelson Lago <@\at @> ^^A https://github.com/urrameu % and -% `\contributor NightShade <@\at @>'. ^^A https://tex.stackexchange.com/users/260836/nightshade +% \contributor Brian Dunn <@\at @>. ^^A https://github.com/bdtc % %\iffalse %\section{History of micro-typography} ^^A some time ... @@ -3480,6 +3483,8 @@ % %\VersionDate{\expandafter\@gobble\fileversion}{\filedate} % +%\VersionDate{3.0c}{2022/02/22} +% %\VersionDate{3.0b}{2021/12/10} % %\VersionDate{3.0a}{2021/12/02} @@ -3856,25 +3861,25 @@ %^^A \ignoreligaturesinfont,\outputmode,\protrudechars,\tracingfonts} ^^A luatex %\DoNotIndex{\eplain,\usepkg@pkg} ^^A eplain %\DoNotIndex{\@backslashchar,\@car,\@cclvi,\@classoptionslist,\@currext, -% \@currname,\@defaultunits,\@elt,\@empty,\@eqnnum,\@expandtwoargs,\@fileswfalse, +% \@currname,\@defaultunits,\@empty,\@@enc@update,\@eqnnum,\@expandtwoargs, % \@firstofone,\@firstoftwo,\@footnotetext,\@gobble,\@gobbletwo,\@ifclassloaded, % \@ifl@t@r,\@ifl@aded,\@ifpackagelater,\@ifpackageloaded,\@ifstar,\@ifundefined,\@item, % \@let@token,\@m,\@M,\@makeother,\@minus,\@mpfootnotetext,\@nameuse,\@ne,\@newlistfalse, % \@nil,\@nnil,\@onelevel@sanitize,\@onlypreamble,\@pkgextension,\@plus,\@ptionlist, % \@removeelement,\@secondoftwo,\@spaces,\@sptoken,\@tempa,\@tempb,\@tempc,\@tempcnta, % \@tempcntb,\@tempdima,\@typeset@protect,\@undefined,\@unprocessedoptions,\@unusedoptionlist, -% \@xobeysp,\check@icr,\cl@@ckpt,\color@begingroup,\color@endgroup,\g@addto@macro, -% \hmode@bgroup,\m@ne,\maybe@ic,\maybe@ic@,\nfss@text,\not@math@alphabet,\on@line, -% \p@,\set@display@protect,\strip@prefix,\strip@pt,\@text@composite,\tw@,\z@,\z@skip,\zap@space, +% \@xobeysp,\check@icr,\color@begingroup,\color@endgroup,\g@addto@macro,\hmode@bgroup, +% \m@ne,\maybe@ic,\maybe@ic@,\nfss@text,\not@math@alphabet,\on@line,\p@,\set@display@protect, +% \strip@prefix,\strip@pt,\@text@composite,\tw@,\z@,\z@skip,\zap@space, % \active,\documentclass,\dotfill,\fbox,\fboxrule,\fboxsep,\fmtversion,\footnotesize, % \leavevmode,\llap,\makeatletter,\makebox,\mathrm,\mbox,\medskip,\newbox,\newcommand, % \newcount,\newdimen,\newif,\newline,\newskip,\newtoks,\nobreak,\nonfrenchspacing, -% \normalbaselineskip,\normalsize,\numberline,\obeylines,\par,\parbox,\quad,\raggedright, -% \renewcommand,\scalebox,\space,\strut,\textwidth,\texttt,\tiny,\tracingnone,\usefont, -% \value,\AddToHook,\AtBeginDocument,\AtEndOfPackage,\CheckCommand,\CurrentOption, -% \DeclareOption,\DeclareRobustCommand,\IfFileExists,\IfFormatAtLeastTF,\InputIfFileExists, -% \MessageBreak,\PackageError,\PackageInfo,\PackageWarning,\PassOptionsToPackage, -% \ProcessOptions,\RawNoindent,\RequirePackage,\@@enc@update,\UnicodeEncodingName} +% \normalbaselineskip,\normalsize,\numberline,\obeylines,\par,\parbox,\providecommand, +% \quad,\raggedright,\renewcommand,\scalebox,\space,\strut,\textwidth,\texttt,\tiny, +% \tracingnone,\usefont,\AddToHook,\AtBeginDocument,\AtEndOfPackage,\CheckCommand, +% \CurrentOption,\DeclareOption,\DeclareRobustCommand,\IfFileExists,\IfFormatAtLeastTF, +% \InputIfFileExists,\MessageBreak,\PackageError,\PackageInfo,\PackageWarning, +% \PassOptionsToPackage,\ProcessOptions,\RawNoindent,\RequirePackage,\UnicodeEncodingName} %^^A\DoNotIndex{\add@accent,\cf@encoding,\curr@fontshape,\define@newfont, %^^A \do@subst@correction,\f@encoding,\f@family,\f@size,\font@name,\fontencoding, %^^A \fontseries,\fontshape,\glb@currsize,\glb@settings,\normalfont,\pickup@font, @@ -3886,7 +3891,8 @@ %\DoNotIndex{\CJK@ifundefined,\CJK@plane,\CJK@temp,\CJK@addcmap} ^^A CJK,CJKutf8 %\DoNotIndex{\color} ^^A color %\DoNotIndex{\csqQQ,\csq@bqgroup,\csq@eqgroup,\@disablequotes} ^^A csquotes -%\DoNotIndex{\ifHy@hyperfootnotes,\pdfstringdefDisableCommands,\pdfstringdefWarn} ^^A hyperref +%\DoNotIndex{\ifHy@hyperfootnotes,\hyper@@anchor,\Hy@footnote@currentHref, +% \pdfstringdefDisableCommands,\pdfstringdefWarn} ^^A hyperref %\DoNotIndex{\ifpdf,\ifetex,\ifluatex,\ifxetex} ^^A ifpdf/iftex %\DoNotIndex{\@inpenc@undefined@,\IeC,\inputencoding,\inputencodingname} ^^A inputenc %^^A\DoNotIndex{\UTFviii@defined,\UTF@four@octets@noexpand, ^^A inputenc/utf8 @@ -3903,7 +3909,7 @@ %\DoNotIndex{\tikz@expandcount} ^^A tikz %\DoNotIndex{\conditionally@traceoff} ^^A trace %\DoNotIndex{\@xspace,\@xspace@firsttrue} ^^A xspace -%\DoNotIndex{\apptocmd,\patchcmd} ^^A etoolbox +%\DoNotIndex{\apptocmd,\gappto,\patchcmd} ^^A etoolbox %\DoNotIndex{\beamer@@callorigitem,\beamer@callorigitem} ^^A beamer %\DoNotIndex{\eqref,\tagform@} ^^A amsmath %\DoNotIndex{\@topic@item} ^^A simplecv @@ -5559,8 +5565,10 @@ microtype.if_dimen = if_dimen %<*pdf-|xe-> %<pdf->\MT@requires@pdftex5{ \def\MT@ifstreq#1#2{% -%<pdf-> \ifnum\pdfstrcmp{#1}{#2}=\z@ -%<xe-> \ifnum\strcmp{#1}{#2}=\z@ + \ifnum +%<pdf-> \pdfstrcmp +%<xe-> \strcmp + {#1}{#2}=\z@ \expandafter\@firstoftwo \else \expandafter\@secondoftwo @@ -8110,10 +8118,10 @@ time will almost certainly lead to undesired results. Have your choice!}% % Typeset the text inside a box and get the left and right margin kerns. % We add an extra \cmd\vbox\ in case we're inside a |tabular|. % \cmd\@newlistfalse\ is meant to make \cmd\\ work in |centering| etc. -%\changes{v3.0a}{2021/11/22}{reset counters}^^A %\changes{v3.0a}{2021/11/05}{compatibility fix for \pkg{csquotes} % (reported by \contributor Gustavo Barros <@\at @>) \githubissue{1}}^^A % ^^A https://tex.stackexchange.com/questions/621440/microtype-csquotes-autoquote-and-itemize-interaction +%\changes{v3.0a}{2021/11/22}{reset counters}^^A %\changes{v3.0a}{2021/11/27}{set penalties to zero and vfuzz to max % (reported by \contributor florian <@\at @>)}^^A % ^^A https://tex.stackexchange.com/questions/624171/overfull-vbox-in-list-of-figures-since-miktex-update @@ -8121,8 +8129,9 @@ time will almost certainly lead to undesired results. Have your choice!}% % We set various penalties to zero to allow linebreaking, and don't % bother if the split box is overfull (but shouldn't we? -- after all, % that's how the penalties bug was discovered~\dots). -%\begin{macro}{\MT@ckpt} -% We also reset the counters and disable writing to auxiliary files. +%\changes{v3.0d}{2022/03/03}{no longer reset counters +% (reported by \contributor Brian Dunn <@\at @>) \githubissue{14}} +% (We no longer reset counters etc., since we don't typeset groups anymore.) %\begin{macro}{\MT@prot@hook} % Furthermore, we have a hook for compatibility fixes (not used at the moment), %\begin{macro}{\MT@csq@eqgroup} @@ -8149,10 +8158,6 @@ time will almost certainly lead to undesired results. Have your choice!}% \fi \def\MT@get@prot#1#2{% \begingroup - \def\@elt##1{\global\value{##1}\the\value{##1}\relax}% - \edef\MT@ckpt{\cl@@ckpt}% - \let\@elt\relax - \@fileswfalse \setbox\MT@tempbox\vbox{% \everypar{}% \parfillskip=\z@skip @@ -8173,7 +8178,6 @@ time will almost certainly lead to undesired results. Have your choice!}% \global\setbox\MT@tempbox=\lastbox \fi }% - \MT@ckpt \endgroup \leavevmode \ifhbox\MT@tempbox @@ -8190,7 +8194,6 @@ time will almost certainly lead to undesired results. Have your choice!}% %\end{macro} %\end{macro} %\end{macro} -%\end{macro} %\begin{macro}{\MT@prot@ifx} % Test next token. % \begin{macrocode} @@ -8291,8 +8294,10 @@ time will almost certainly lead to undesired results. Have your choice!}% %\changes{v3.0b}{2021/12/05}{don't rescan anymore % (reported by \contributor Akira Yokosawa <@\at @> % and \contributor theufman <@\at @>) \githubissue{3,4}} +%\changes{v3.0d}{2022/02/26}{no brace delimiting +% (reported by \contributor Nelson Lago <@\at @>) \githubissue{10}} % \begin{macrocode} -\def\MT@prot@group#{\bgroup\afterassignment\MT@prot@get@firstchar\let\MT@temp= } +\def\MT@prot@group{\bgroup\afterassignment\MT@prot@get@firstchar\let\MT@temp= } % \end{macrocode} %\end{macro} %\begin{macro}{\MT@prot@get@firstchar} @@ -9322,11 +9327,18 @@ microtype.add_ls = add_ls %\changes{v2.3}{2007/11/03}{redone: extract outer kerns from current letterspacing % amount} % For Fraktur fonts, some ligatures shouldn't be broken up. This command will -% temporarily select the base font and insert the correct kerning. +% temporarily select the base font (making sure to really select the current font) +%\changes{v3.0d}{2022/03/01}{define \cmd\font@name\ +% (reported by \contributor Ulrike Fischer <fischer\at troubleshooting-tex.de>) +% \githubissue{12}} +% and insert the correct kerning. % \begin{macrocode} \DeclareRobustCommand\lslig[1]{% {\MT@ifdefined@c@TF\MT@curr@ls{% \escapechar\m@ne +%<plain> \MT@requires@latex2{% + \xdef\font@name{\csname\curr@fontshape/\f@size\endcsname}% +%<plain> }\relax% \MT@get@ls@basefont \MT@outer@kern=\dimexpr\MT@curr@ls sp * \fontdimen6\font@name/2000\relax \kern\MT@outer@kern @@ -9353,7 +9365,7 @@ microtype.add_ls = add_ls \MT@exp@two@c\MT@glet\MT@ls@basefont\font@name \else %<debug>\MT@dinfo@nl{1}{... fixing base font}% - \MT@exp@two@c\let\font@name\MT@ls@basefont + \MT@set@lsbasefont \fi } % \end{macrocode} @@ -19761,7 +19773,7 @@ This is the current font stretched by 5\%, normal, and shrunk by 5\%: % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} % -% \CheckSum{12399} +% \CheckSum{12387} % % \Finale % diff --git a/macros/latex/contrib/microtype/microtype.pdf b/macros/latex/contrib/microtype/microtype.pdf Binary files differindex c9b57b638d..3221ede900 100644 --- a/macros/latex/contrib/microtype/microtype.pdf +++ b/macros/latex/contrib/microtype/microtype.pdf |