From e1dfc6620923c10a348546ebe7add8e2d8707a6a Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 14 Sep 2020 20:39:18 +0000 Subject: acmart (14sep20) git-svn-id: svn://tug.org/texlive/trunk@56343 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/acmart/acmart.cls | 94 +++++++++++++++++++-------- 1 file changed, 68 insertions(+), 26 deletions(-) (limited to 'Master/texmf-dist/tex/latex') diff --git a/Master/texmf-dist/tex/latex/acmart/acmart.cls b/Master/texmf-dist/tex/latex/acmart/acmart.cls index 239698b8946..00330f8cf2f 100644 --- a/Master/texmf-dist/tex/latex/acmart/acmart.cls +++ b/Master/texmf-dist/tex/latex/acmart/acmart.cls @@ -37,7 +37,7 @@ %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} \ProvidesClass{acmart} -[2020/04/30 v1.71 Typesetting articles for the Association for Computing Machinery] +[2020/09/13 v1.73 Typesetting articles for the Association for Computing Machinery] \def\@classname{acmart} \InputIfFileExists{acmart-preload-hook.tex}{% \ClassWarning{\@classname}{% @@ -526,6 +526,7 @@ \fi \hypersetup{pdflang={en}, pdfdisplaydoctitle}} +\RequirePackage{hyperxmp} \if@ACM@natbib \let\citeN\cite \let\cite\citep @@ -698,7 +699,6 @@ \flushbottom \or % sigchi-a \fi -\RequirePackage{iftex} \ifPDFTeX \input{glyphtounicode} \pdfglyphtounicode{f_f}{FB00} @@ -709,21 +709,22 @@ \pdfglyphtounicode{f_t}{0066 0074} \pdfglyphtounicode{T_h}{0054 0068} \pdfgentounicode=1 -\fi \RequirePackage{cmap} +\fi \newif\if@ACM@newfonts \@ACM@newfontstrue \IfFileExists{libertine.sty}{}{\ClassWarning{\@classname}{You do not have the libertine package installed. Please upgrade your TeX}\@ACM@newfontsfalse} \IfFileExists{zi4.sty}{}{\ClassWarning{\@classname}{You do not - have the zi4 package installed. Please upgrade your + have the inconsolata (zi4.sty) package installed. Please upgrade your TeX}\@ACM@newfontsfalse} \IfFileExists{newtxmath.sty}{}{\ClassWarning{\@classname}{You do not have the newtxmath package installed. Please upgrade your TeX}\@ACM@newfontsfalse} \if@ACM@newfonts \RequirePackage[T1]{fontenc} + \RequirePackage[libertine]{newtxmath} \ifxetex \RequirePackage[tt=false]{libertine} \setmonofont[StylisticSet=3]{inconsolata} @@ -736,7 +737,6 @@ \RequirePackage[varqu]{zi4} \fi \fi - \RequirePackage[libertine]{newtxmath} \fi \let\liningnums\@undefined \AtEndPreamble{% @@ -775,6 +775,14 @@ \let\@vspacer\@vspacer@orig} \AtBeginEnvironment{lstlisting*}{\let\@vspace\@vspace@orig \let\@vspacer\@vspacer@orig} +\AtBeginEnvironment{minted}{\let\@vspace\@vspace@orig + \let\@vspacer\@vspacer@orig} +\AtBeginEnvironment{minted*}{\let\@vspace\@vspace@orig + \let\@vspacer\@vspacer@orig} +\AtBeginEnvironment{listing}{\let\@vspace\@vspace@orig + \let\@vspacer\@vspacer@orig} +\AtBeginEnvironment{listing*}{\let\@vspace\@vspace@orig + \let\@vspacer\@vspacer@orig} \RequirePackage{caption, float} \captionsetup[table]{position=top} @@ -1274,7 +1282,7 @@ \newif\if@insideauthorgroup \@insideauthorgroupfalse \renewcommand\author[2][]{% - \IfSubStr{#2}{,}{\ClassWarning{\@classname}{Do not put several + \IfSubStr{\detokenize{#2}}{,}{\ClassWarning{\@classname}{Do not put several authors in the same \string\author\space macro!}}{}% \global\advance\num@authors by 1\relax \if@insideauthorgroup\else @@ -1871,15 +1879,11 @@ \fi \noindent\@keywords}\par\egroup \fi - \andify\authors - \andify\shortauthors - \global\let\authors=\authors - \global\let\shortauthors=\shortauthors - \if@ACM@printacmref - \@mkbibcitation - \fi + \let\metadata@authors=\authors + \nxandlist{, }{, }{, }\metadata@authors + \def\@ACM@checkaffil{}% \hypersetup{% - pdfauthor={\authors}, + pdfauthor={\metadata@authors}, pdftitle={\@title}, pdfsubject={\@concepts}, pdfkeywords={\@keywords}, @@ -1887,6 +1891,13 @@ \csname ver@acmart.cls\endcsname\space and hyperref \csname ver@hyperref.sty\endcsname}}% + \andify\authors + \andify\shortauthors + \global\let\authors=\authors + \global\let\shortauthors=\shortauthors + \if@ACM@printacmref + \@mkbibcitation + \fi \global\@topnum\z@ % this prevents floats from falling % at the top of page 1 \global\@botnum\z@ % we do not want them to be on the bottom either @@ -2097,19 +2108,22 @@ \def\postcode#1{\unskip\ignorespaces} \if@ACM@journal \def\position#1{\unskip\ignorespaces} - \def\institution#1{\unskip~#1\ignorespaces} - \def\city#1{\unskip\ignorespaces} + \def\institution#1{\global\@ACM@instpresenttrue + \unskip~#1\ignorespaces} + \def\city#1{\global\@ACM@citypresenttrue\unskip\ignorespaces} \def\state#1{\unskip\ignorespaces} \newcommand\department[2][0]{\unskip\ignorespaces} - \def\country#1{\if@ACM@affiliation@obeypunctuation\else, \fi#1\ignorespaces} + \def\country#1{\global\@ACM@countrypresenttrue + \if@ACM@affiliation@obeypunctuation\else, \fi#1\ignorespaces} \else \def\position#1{\if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}% - \def\institution#1{\if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}% + \def\institution#1{\global\@ACM@instpresenttrue + \if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}% \newcommand\department[2][0]{\if@ACM@affiliation@obeypunctuation #2\else#2\par\fi}% - \let\city\@ACM@addtoaddress + \def\city#1{\global\@ACM@citypresenttrue\@ACM@addtoaddress{#1}}% \let\state\@ACM@addtoaddress - \let\country\@ACM@addtoaddress + \def\country#1{\global\@ACM@countrypresenttrue\@ACM@addtoaddress{#1}}% \fi \def\@mkauthors{\begingroup \hsize=\textwidth @@ -2170,6 +2184,28 @@ \unskip, {\@currentaffiliations}\par \fi \def\@currentaffiliations{}} +\newif\if@ACM@instpresent +\@ACM@instpresenttrue +\newif\if@ACM@citypresent +\@ACM@citypresenttrue +\newif\if@ACM@countrypresent +\@ACM@countrypresenttrue +\def\@ACM@resetaffil{% + \global\@ACM@instpresentfalse + \global\@ACM@citypresentfalse + \global\@ACM@countrypresentfalse +} +\def\@ACM@checkaffil{% + \if@ACM@instpresent\else + \ClassWarningNoLine{\@classname}{No institution present for an affiliation}% + \fi + \if@ACM@citypresent\else + \ClassWarningNoLine{\@classname}{No city present for an affiliation}% + \fi + \if@ACM@countrypresent\else + \ClassWarningNoLine{\@classname}{No country present for an affiliation}% + \fi +} \def\@mkauthors@i{% \def\@currentauthors{}% \def\@currentaffiliations{}% @@ -2188,11 +2224,13 @@ \gdef\@currentaffiliations{% \setkeys{@ACM@affiliation@}{obeypunctuation=false}% \setkeys{@ACM@affiliation@}{##1}% - \@affiliationfont##2}% + \@ACM@resetaffil + \@affiliationfont##2\@ACM@checkaffil}% \else \g@addto@macro{\@currentaffiliations}{\and \setkeys{@ACM@affiliation@}{obeypunctuation=false}% - \setkeys{@ACM@affiliation@}{##1}##2}% + \setkeys{@ACM@affiliation@}{##1}\@ACM@resetaffil + ##2\@ACM@checkaffil}% \fi \fi \global\let\and\@typeset@author@line}% @@ -2250,11 +2288,13 @@ \def\affiliation##1##2{\ifx\@currentaffiliation\@empty \gdef\@currentaffiliation{% \setkeys{@ACM@affiliation@}{obeypunctuation=false}% - \setkeys{@ACM@affiliation@}{##1}##2}% + \setkeys{@ACM@affiliation@}{##1}\@ACM@resetaffil + ##2\@ACM@checkaffil}% \else \g@addto@macro\@currentaffiliation{\par \setkeys{@ACM@affiliation@}{obeypunctuation=false}% - \setkeys{@ACM@affiliation@}{##1}##2}% + \setkeys{@ACM@affiliation@}{##1}\@ACM@resetaffil + ##2\@ACM@checkaffil}% \fi \global\let\and\@typeset@author@bx }% @@ -2293,11 +2333,13 @@ \def\affiliation##1##2{\ifx\@currentaffiliation\@empty \gdef\@currentaffiliation{% \setkeys{@ACM@affiliation@}{obeypunctuation=false}% - \setkeys{@ACM@affiliation@}{##1}##2}% + \setkeys{@ACM@affiliation@}{##1}\@ACM@resetaffil + ##2\@ACM@checkaffil}% \else \g@addto@macro\@currentaffiliation{\par \setkeys{@ACM@affiliation@}{obeypunctuation=false}% - \setkeys{@ACM@affiliation@}{##1}##2}% + \setkeys{@ACM@affiliation@}{##1}\@ACM@resetaffil + ##2\@ACM@checkaffil}% \fi \global\let\and\@typeset@author@bx}% \bgroup\hsize=\columnwidth -- cgit v1.2.3