From 1fa5eeef7004616637b530b506eeb4092bb5168f Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 11 Jun 2016 23:20:06 +0000 Subject: acmart (31may16) git-svn-id: svn://tug.org/texlive/trunk@41385 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/acmart/acmart.cls | 247 ++++++++++++++++++-------- 1 file changed, 174 insertions(+), 73 deletions(-) (limited to 'Master/texmf-dist/tex/latex/acmart/acmart.cls') diff --git a/Master/texmf-dist/tex/latex/acmart/acmart.cls b/Master/texmf-dist/tex/latex/acmart/acmart.cls index a321236edcc..39129a62d05 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} -[2016/05/18 v1.09 Typesetting articles for Association of +[2016/05/30 v1.12 Typesetting articles for Association of Computing Machinery] \def\@classname{acmart} \RequirePackage{xkeyval} @@ -82,14 +82,16 @@ Computing Machinery] \fi}{\PackageError{\@classname}{Option authorversion can be either true or false}} \ExecuteOptionsX{authorversion=false} +\newif\if@ACM@natbib@override +\@ACM@natbib@overridefalse \define@boolkey+{acmart.cls}[@ACM@]{natbib}[true]{% + \@ACM@natbib@overridetrue \if@ACM@natbib - \PackageInfo{\@classname}{Using natbib mode}% + \PackageInfo{\@classname}{Explicitly selecting natbib mode}% \else - \PackageInfo{\@classname}{Not using natbib mode}% + \PackageInfo{\@classname}{Explicitly deselecting natbib mode}% \fi}{\PackageError{\@classname}{Option natbib can be either true or false}} -\ExecuteOptionsX{natbib=false} \define@boolkey+{acmart.cls}[@ACM@]{anonymous}[true]{% \if@ACM@anonymous \PackageInfo{\@classname}{Using anonymous mode}% @@ -137,6 +139,28 @@ Computing Machinery] \@ACM@journalfalse \@ACM@sigchiamodetrue \fi +\if@ACM@natbib@override\else + \ifcase\ACM@format@nr + \relax % manuscript + \@ACM@natbibtrue + \or % acmsmall + \@ACM@natbibtrue + \or % acmlarge + \@ACM@natbibtrue + \or % acmtog + \@ACM@natbibtrue + \or % sigconf + \@ACM@natbibfalse + \or % siggraph + \@ACM@natbibfalse + \or % sigplan + \@ACM@natbibtrue + \or % sigchi + \@ACM@natbibfalse + \or % sigchi-a + \@ACM@natbibfalse + \fi +\fi \ifx\ACM@fontsize\@empty \ifcase\ACM@format@nr \relax % manuscript @@ -479,11 +503,13 @@ Computing Machinery] \or % sigchi \or % sigchi-a \fi +\def\copyrightpermissionfootnoterule{\kern-3\p@ + \hrule \@width \columnwidth \kern 2.6\p@} \RequirePackage{manyfoot} +\SelectFootnoteRule[2]{copyrightpermission} \DeclareNewFootnote{copyrightpermission} -\skip\footinscopyrightpermission=0.1\baselineskip plus 0.1\baselineskip \def\footnoterule{\kern-3\p@ - \hrule \@width \columnwidth \kern 2.6\p@} + \hrule \@width 4pc \kern 2.6\p@} \def\endminipage{% \par \unskip @@ -510,9 +536,23 @@ Computing Machinery] \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}% \color@endgroup}}% \fi -\usepackage[tt=false]{libertine} -\usepackage[varqu]{zi4} -\usepackage[libertine]{newtxmath} +\newif\if@ACM@newfonts +\@ACM@newfontstrue +\IfFileExists{libertine.sty}{}{\ClassWarning{\@classname}{You do not + have libertine package installed. Please upgrade your + TeX}\@ACM@newfontsfalse} +\IfFileExists{zi4.sty}{}{\ClassWarning{\@classname}{You do not + have zi4 package installed. Please upgrade your TeX}\@ACM@newfontsfalse} +\IfFileExists{newtxmath.sty}{}{\ClassWarning{\@classname}{You do not + have newtxmath package installed. Please upgrade your + TeX}\@ACM@newfontsfalse} +\if@ACM@newfonts +\RequirePackage[tt=false]{libertine} +\RequirePackage[varqu]{zi4} +\RequirePackage[libertine]{newtxmath} +\else +\RequirePackage{textcomp} +\fi \if@ACM@sigchiamode \renewcommand{\familydefault}{\sfdefault} \fi @@ -551,10 +591,10 @@ Computing Machinery] \marginpar{\small#1}\egroup} \newenvironment{marginfigure}{\Collect@Body\@marginfigure}{} \long\def\@marginfigure#1{\bgroup\captionsetup{type=figure}% - \marginpar{\small#1}\egroup} + \marginpar{\centering\small#1}\egroup} \newenvironment{margintable}{\Collect@Body\@margintable}{} \long\def\@margintable#1{\bgroup\captionsetup{type=table}% - \marginpar{\small#1}\egroup} + \marginpar{\centering\small#1}\egroup} \newdimen\fulltextwidth \fulltextwidth=\dimexpr(\textwidth+\marginparwidth+\marginparsep) \if@ACM@sigchiamode @@ -592,6 +632,7 @@ Computing Machinery] \or % sigchi \or % sigchi-a \fi +\renewcommand{\descriptionlabel}[1]{\hspace\labelsep \upshape\bfseries #1} \define@choicekey*+{ACM}{acmJournal}[\@journalCode\@journalCode@nr]{% CIE,% CSUR,% @@ -1063,7 +1104,6 @@ Computing Machinery] \fi \ifnum\acm@copyrightmode=11\relax % licensedothergov \@acmownedfalse - \@printcopyrightfalse \fi} \def\setcopyright#1{\setkeys{ACM@}{acmcopyrightmode=#1}} \setcopyright{acmcopyright} @@ -1092,6 +1132,8 @@ Computing Machinery] \or % othergov ACM\@. \or % licensedothergov + Copyright held by the owner/author(s). Publication rights licensed to + ACM\@. \fi} \def\@formatdoi#1{\url{http://dx.doi.org/#1}} \def\@copyrightpermission{% @@ -1235,7 +1277,8 @@ Computing Machinery] \let\@makefnmark\relax \let\@thefnmark\relax \let\@makefntext\noindent \ifx\@empty\thankses\else - \@footnotetext{\def\par{\let\par\@par}\parindent\z@\@setthanks}% + \footnotetextcopyrightpermission{% + \def\par{\let\par\@par}\parindent\z@\@setthanks}% \fi \footnotetextcopyrightpermission{\parindent\z@\parskip0.1\baselineskip \if@ACM@authorversion\else @@ -1272,13 +1315,14 @@ Computing Machinery] \if@ACM@journal \@permissionCodeOne/\@acmYear/\@acmMonth-ART\@acmArticle\ \$\@acmPrice\\ + DOI: \nolinkurl{\@acmDOI}% \else % Conference \@acmISBN \ifx\@acmPrice\@empty.\else\dots\$\@acmPrice\fi\\ + DOI: \nolinkurl{\@acmDOI}% \fi \fi - \fi - DOI: \nolinkurl{\@acmDOI}}% + \fi}% \endgroup \setcounter{footnote}{0}% \@mkabstract @@ -1755,16 +1799,16 @@ Computing Machinery] \renewcommand{\footrulewidth}{\z@}% \ifcase\ACM@format@nr \relax % manuscript - \fancyhead[RE]{\thepage}% - \fancyhead[LO]{\ACM@linecount\thepage}% - \fancyhead[LE]{\ACM@linecount\shortauthors}% - \fancyhead[RO]{\shorttitle}% + \fancyhead[LE]{\ACM@linecount\thepage}% + \fancyhead[RO]{\thepage}% + \fancyhead[RE]{\shortauthors}% + \fancyhead[LO]{\ACM@linecount\shorttitle}% \fancyfoot[RO,LE]{\footnotesize Manuscript submitted to ACM}% \or % acmsmall - \fancyhead[RE]{\sffamily\@acmArticle:\thepage}% - \fancyhead[LO]{\ACM@linecount\sffamily\@acmArticle:\thepage}% - \fancyhead[LE]{\ACM@linecount\sffamily\shortauthors}% - \fancyhead[RO]{\sffamily\shorttitle}% + \fancyhead[LE]{\ACM@linecount\sffamily\@acmArticle:\thepage}% + \fancyhead[RO]{\sffamily\@acmArticle:\thepage}% + \fancyhead[RE]{\sffamily\shortauthors}% + \fancyhead[LO]{\ACM@linecount\sffamily\shorttitle}% \fancyfoot[RO,LE]{\footnotesize \@journalName, Vol. \@acmVolume, No. \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% \or % acmlarge @@ -1863,28 +1907,8 @@ Computing Machinery] \fancyfoot[R]{\footnotesize\thepage}% \fi } -\renewcommand\section{\@startsection{section}{1}{\z@}% - {-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}% - {.25\baselineskip}% - {\@secfont}} -\renewcommand\subsection{\@startsection{subsection}{2}{\z@}% - {-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}% - {.25\baselineskip}% - {\@subsecfont}} -\renewcommand\subsubsection{\@startsection{subsubsection}{3}{10pt}% - {-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}% - {-3.5\p@}% - {\@subsubsecfont\@adddotafter}} -\renewcommand\paragraph{\@startsection{paragraph}{4}{\parindent}% - {-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}% - {-3.5\p@}% - {\@parfont\@adddotafter}} -\renewcommand\part{\@startsection{part}{9}{\z@}% - {-10\p@ \@plus -4\p@ \@minus -2\p@}% - {4\p@}% - {\@parfont}} -\def\@secfont{\sffamily\bfseries\raggedright\MakeUppercase} -\def\@subsecfont{\sffamily\bfseries\raggedright} +\def\@secfont{\sffamily\bfseries\section@raggedright\MakeUppercase} +\def\@subsecfont{\sffamily\bfseries\section@raggedright} \def\@subsubsecfont{\sffamily\itshape} \def\@parfont{\itshape} \setcounter{secnumdepth}{3} @@ -1892,25 +1916,25 @@ Computing Machinery] \relax % manuscript \or % acmsmall \or % acmlarge - \def\@secfont{\sffamily\large\raggedright\MakeUppercase} - \def\@subsecfont{\sffamily\large\raggedright} + \def\@secfont{\sffamily\large\section@raggedright\MakeUppercase} + \def\@subsecfont{\sffamily\large\section@raggedright} \or % acmtog - \def\@secfont{\sffamily\large\raggedright\MakeUppercase} - \def\@subsecfont{\sffamily\large\raggedright} + \def\@secfont{\sffamily\large\section@raggedright\MakeUppercase} + \def\@subsecfont{\sffamily\large\section@raggedright} \or % sigconf - \def\@secfont{\bfseries\Large\raggedright\MakeUppercase} - \def\@subsecfont{\bfseries\Large\raggedright} + \def\@secfont{\bfseries\Large\section@raggedright\MakeUppercase} + \def\@subsecfont{\bfseries\Large\section@raggedright} \or % siggraph - \def\@secfont{\bfseries\sffamily\Large\raggedright\MakeUppercase} - \def\@subsecfont{\bfseries\sffamily\Large\raggedright} + \def\@secfont{\bfseries\sffamily\Large\section@raggedright\MakeUppercase} + \def\@subsecfont{\bfseries\sffamily\Large\section@raggedright} \or % sigplan - \def\@secfont{\bfseries\Large\raggedright} - \def\@subsecfont{\bfseries\raggedright} + \def\@secfont{\bfseries\Large\section@raggedright} + \def\@subsecfont{\bfseries\section@raggedright} \renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% {-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}% {.25\baselineskip}% {\@subsubsecfont}} - \def\@subsubsecfont{\bfseries\raggedright} + \def\@subsubsecfont{\bfseries\section@raggedright} \renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}% {-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}% {-3.5\p@}% @@ -1923,37 +1947,99 @@ Computing Machinery] \def\@subparfont{\itshape} \or % sigchi \setcounter{secnumdepth}{1} - \def\@secfont{\bfseries\sffamily\raggedright\MakeUppercase} - \def\@subsecfont{\bfseries\sffamily\raggedright} + \def\@secfont{\bfseries\sffamily\section@raggedright\MakeUppercase} + \def\@subsecfont{\bfseries\sffamily\section@raggedright} \or % sigchi-a \setcounter{secnumdepth}{0} - \def\@secfont{\bfseries\sffamily\raggedright\MakeUppercase} - \def\@subsecfont{\bfseries\sffamily\raggedright} + \def\@secfont{\bfseries\sffamily\section@raggedright\MakeUppercase} + \def\@subsecfont{\bfseries\sffamily\section@raggedright} \fi \def\@adddotafter#1{#1\@addpunct{.}} \def\@addspaceafter#1{#1\@addpunct{\enspace}} +\renewcommand\section{\@startsection{section}{1}{\z@}% + {-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}% + {.25\baselineskip}% + {\@secfont}} +\renewcommand\subsection{\@startsection{subsection}{2}{\z@}% + {-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}% + {.25\baselineskip}% + {\@subsecfont}} +\renewcommand\subsubsection{\@startsection{subsubsection}{3}{10pt}% + {-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}% + {-3.5\p@}% + {\@subsubsecfont\@adddotafter}} +\renewcommand\paragraph{\@startsection{paragraph}{4}{\parindent}% + {-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}% + {-3.5\p@}% + {\@parfont\@adddotafter}} +\renewcommand\part{\@startsection{part}{9}{\z@}% + {-10\p@ \@plus -4\p@ \@minus -2\p@}% + {4\p@}% + {\@parfont}} +\def\section@raggedright{\@rightskip\@flushglue + \rightskip\@rightskip + \leftskip\z@skip + \parindent\z@} +\def\@acmplainbodyfont{\itshape} +\def\@acmplainindent{\parindent} +\def\@acmplainheadfont{\scshape} +\def\@acmplainnotefont{\@empty} +\ifcase\ACM@format@nr +\relax % manuscript +\or % acmsmall +\or % acmlarge +\or % acmtog +\or % sigconf +\or % siggraph +\or % sigplan + \def\@acmplainbodyfont{\itshape} + \def\@acmplainindent{\z@} + \def\@acmplainheadfont{\bfseries} + \def\@acmplainnotefont{\normalfont} +\or % sigchi +\or % sigchi-a +\fi \newtheoremstyle{acmplain}% {.5\baselineskip\@plus.2\baselineskip \@minus.2\baselineskip}% space above {.5\baselineskip\@plus.2\baselineskip - \@minus.2\baselineskip}% Space below - {\itshape}% body font - {\parindent}% indent amount - {\scshape}% head font + \@minus.2\baselineskip}% space below + {\@acmplainbodyfont}% body font + {\@acmplainindent}% indent amount + {\@acmplainheadfont}% head font {.}% punctuation after head {.5em}% spacing after head - {\thmname{#1}\thmnumber{ #2}\thmnote{ (#3)}}% head spec + {\thmname{#1}\thmnumber{ #2}\thmnote{ {\@acmplainnotefont(#3)}}}% head spec +\def\@acmdefinitionbodyfont{\normalfont} +\def\@acmdefinitionindent{\parindent} +\def\@acmdefinitionheadfont{\itshape} +\def\@acmdefinitionnotefont{\@empty} +\ifcase\ACM@format@nr +\relax % manuscript +\or % acmsmall +\or % acmlarge +\or % acmtog +\or % sigconf +\or % siggraph +\or % sigplan + \def\@acmdefinitionbodyfont{\normalfont} + \def\@acmdefinitionindent{\z@} + \def\@acmdefinitionheadfont{\bfseries} + \def\@acmdefinitionnotefont{\normalfont} +\or % sigchi +\or % sigchi-a +\fi \newtheoremstyle{acmdefinition}% {.5\baselineskip\@plus.2\baselineskip \@minus.2\baselineskip}% space above {.5\baselineskip\@plus.2\baselineskip - \@minus.2\baselineskip}% Space below - {\normalfont}% body font - {\parindent}% indent amount - {\itshape}% head font + \@minus.2\baselineskip}% space below + {\@acmdefinitionbodyfont}% body font + {\@acmdefinitionindent}% indent amount + {\@acmdefinitionheadfont}% head font {.}% punctuation after head {.5em}% spacing after head - {\thmname{#1}\thmnumber{ #2}\thmnote{ \itshape(#3)}}% head spec + {\thmname{#1}\thmnumber{ #2}\thmnote{ {\@acmdefinitionnotefont(#3)}}}% head spec \theoremstyle{acmplain} \newtheorem{theorem}{Theorem}[section] \newtheorem{conjecture}[theorem]{Conjecture} @@ -1963,13 +2049,28 @@ Computing Machinery] \theoremstyle{acmdefinition} \newtheorem{example}[theorem]{Example} \newtheorem{definition}[theorem]{Definition} +\theoremstyle{acmplain} +\def\@proofnamefont{\scshape} +\def\@proofindent{\indent} +\ifcase\ACM@format@nr +\relax % manuscript +\or % acmsmall +\or % acmlarge +\or % acmtog +\or % sigconf +\or % siggraph +\or % sigplan + \def\@proofnamefont{\itshape} + \def\@proofindent{\noindent} +\or % sigchi +\or % sigchi-a +\fi \renewenvironment{proof}[1][\proofname]{\par \pushQED{\qed}% \normalfont \topsep6\p@\@plus6\p@\relax \trivlist - \item[\indent\hskip\labelsep - \scshape - #1\@addpunct{.}]\ignorespaces + \item[\@proofindent\hskip\labelsep + {\@proofnamefont #1\@addpunct{.}}]\ignorespaces }{% \popQED\endtrivlist\@endpefalse } -- cgit v1.2.3