diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 7bac694..0000000 --- a/.gitignore +++ /dev/null @@ -1,15 +0,0 @@ -*.aux -*.log -*.bbl -*.pdf -*.out -*.bak -*.fdb_latexmk -*.fls -*.synctex.gz -*.swp -*.blg -*.xoj -*.auxlock -*.vtc -auto \ No newline at end of file diff --git a/.gitignore.gitignore b/.gitignore.gitignore new file mode 100644 index 0000000..ec15fb0 --- /dev/null +++ b/.gitignore.gitignore @@ -0,0 +1,31 @@ +acmart.cls +acmart.pdf +acmguide.pdf +samples/sample-*.pdf +*.log +*.aux +*.cfg +*.glo +*.idx +*.toc +*.ilg +*.ind +*.out +*.lof +*.lot +*.bbl +*.blg +*.gls +*.cut +*.hd +*.dvi +*.ps +*.thm +*.tgz +*.zip +*.rpi +*~ +*.bcf +*.run.xml +samples/ACM-Reference-Format.bst +samples/*.tex \ No newline at end of file diff --git a/ACM-Reference-Format.bbx b/ACM-Reference-Format.bbx index b3ae500..e9cb545 100644 --- a/ACM-Reference-Format.bbx +++ b/ACM-Reference-Format.bbx @@ -263,7 +263,18 @@ \usebibmacro{issue}% \newunit} - +\renewbibmacro*{doi+eprint+url}{% + \iftoggle{bbx:url} + {\iffieldundef{doi}{\usebibmacro{url+urldate}}{}} + {}% + \newunit\newblock + \iftoggle{bbx:eprint} + {\usebibmacro{eprint}} + {}% + \newunit\newblock + \iftoggle{bbx:doi} + {\printfield{doi}} + {}} %%% Definitions for drivers (alphabetical) diff --git a/ACM-Reference-Format.bst b/ACM-Reference-Format.bst index bdc7bc2..7984639 100644 --- a/ACM-Reference-Format.bst +++ b/ACM-Reference-Format.bst @@ -64,6 +64,7 @@ ENTRY isbn-13 % UTAH issn % UTAH lccn % UTAH + distinctURL % whether to print url if doi is present } {} { label.year extra.label sort.year sort.label basic.label.year} @@ -150,6 +151,16 @@ FUNCTION { empty.or.unknown } if$ } +FUNCTION { empty.or.zero } +{ + %% Examine the top entry and push 1 if it is empty, or is zero + duplicate$ empty$ + { pop$ #1 } + { "0" = } + if$ +} + + FUNCTION { writeln } { %% In BibTeX style files, the sequences @@ -737,10 +748,14 @@ FUNCTION { output.eprint } % % Changes by BV 2011/04/15. Do not output % url if doi is defined % +% +% Changes by BV 2021/11/26. Output url even if doi is defined +% if distinctURL is not zero. +% FUNCTION { output.url } % UTAH { % return with stack untouched % output URL and associated lastaccessed fields - doi empty.or.unknown + doi empty.or.unknown distinctURL empty.or.zero not or { url empty.or.unknown { } @@ -2048,10 +2063,12 @@ FUNCTION { calc.label } FUNCTION { output.bibitem } { newline$ - "\bibitem[\protect\citeauthoryear{" write$ - calc.label write$ + "\bibitem[" write$ + calc.basic.label write$ + "(" write$ sort.year write$ - "}]%" writeln + ")" write$ + "]%" writeln " {" write$ cite$ write$ "}" writeln diff --git a/Draft Comments/Aaron-pods-Boris021122.pdf b/Draft Comments/Aaron-pods-Boris021122.pdf new file mode 100644 index 0000000..72122b0 Binary files /dev/null and b/Draft Comments/Aaron-pods-Boris021122.pdf differ diff --git a/Draft Comments/Bag_PDBs-ARCommentsJan27-checklist of comments addressed.pdf b/Draft Comments/Bag_PDBs-ARCommentsJan27-checklist of comments addressed.pdf new file mode 100644 index 0000000..421fabc Binary files /dev/null and b/Draft Comments/Bag_PDBs-ARCommentsJan27-checklist of comments addressed.pdf differ diff --git a/Draft Comments/bagpdbs-2020-02-10_pdf-Oliver.pdf b/Draft Comments/bagpdbs-2020-02-10_pdf-Oliver.pdf new file mode 100644 index 0000000..7caa1e8 Binary files /dev/null and b/Draft Comments/bagpdbs-2020-02-10_pdf-Oliver.pdf differ diff --git a/ICDT--LIPics template/authors-lipics-v2021/cc-by.pdf b/ICDT--LIPics template/authors-lipics-v2021/cc-by.pdf new file mode 100644 index 0000000..3b7aba1 Binary files /dev/null and b/ICDT--LIPics template/authors-lipics-v2021/cc-by.pdf differ diff --git a/ICDT--LIPics template/authors-lipics-v2021/lipics-logo-bw.pdf b/ICDT--LIPics template/authors-lipics-v2021/lipics-logo-bw.pdf new file mode 100644 index 0000000..26b83d6 Binary files /dev/null and b/ICDT--LIPics template/authors-lipics-v2021/lipics-logo-bw.pdf differ diff --git a/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-authors-guidelines.pdf b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-authors-guidelines.pdf new file mode 100644 index 0000000..a4d714c Binary files /dev/null and b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-authors-guidelines.pdf differ diff --git a/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.aux b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.aux new file mode 100644 index 0000000..e8d4662 --- /dev/null +++ b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.aux @@ -0,0 +1,104 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\providecommand\babel@aux[2]{} +\@nameuse{bbl@beforestart} +\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} +\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined +\global\let\oldcontentsline\contentsline +\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} +\global\let\oldnewlabel\newlabel +\gdef\newlabel#1#2{\newlabelxx{#1}#2} +\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} +\AtEndDocument{\ifx\hyper@anchor\@undefined +\let\contentsline\oldcontentsline +\let\newlabel\oldnewlabel +\fi} +\fi} +\global\let\hyper@last\relax +\gdef\HyperFirstAtBeginDocument#1{#1} +\providecommand\HyField@AuxAddToFields[1]{} +\providecommand\HyField@AuxAddToCoFields[2]{} +\bibstyle{plainurl} +\gdef\@authornum{1} +\gdef\@authornum{2} +\babel@aux{UKenglish}{} +\gdef\@pageNumberEndAbstract{1} +\@writefile{toc}{\contentsline {section}{\numberline {1}Typesetting instructions -- Summary}{1}{section.1}\protected@file@percent } +\newlabel{sec:typesetting-summary}{{1}{1}{Typesetting instructions -- Summary}{section.1}{}} +\newlabel{sec:typesetting-summary@cref}{{[section][1][]1}{[1][1][]1}} +\citation{DBLP:journals/cacm/Knuth74} +\@writefile{toc}{\contentsline {section}{\numberline {2}Lorem ipsum dolor sit amet}{2}{section.2}\protected@file@percent } +\citation{DBLP:books/mk/GrayR93} +\citation{DBLP:journals/cacm/Dijkstra68a} +\providecommand*\caption@xref[2]{\@setref\relax\@undefined{#1}} +\newlabel{list:8-6}{{1}{3}{Useless code}{lstlisting.1}{}} +\newlabel{list:8-6@cref}{{[listing][1][]1}{[1][3][]3}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {1}Useless code.}{3}{lstlisting.1}\protected@file@percent } +\@writefile{loe}{\contentsline {lemma}{\ifthmt@listswap Lemma~1\else \numberline {1}Lemma\fi \thmtformatoptarg {Lorem ipsum}}{3}{lemma.1}\protected@file@percent } +\newlabel{lemma:lorem}{{1}{3}{Lorem ipsum}{lemma.1}{}} +\newlabel{lemma:lorem@cref}{{[lemma][1][]1}{[1][3][]3}} +\@writefile{loe}{\contentsline {claim}{\ifthmt@listswap Claim~2\else \numberline {2}Claim\fi }{3}{claim.2}\protected@file@percent } +\@writefile{loe}{\contentsline {corollary}{\ifthmt@listswap Corollary~3\else \numberline {3}Corollary\fi \thmtformatoptarg {Curabitur pulvinar, \cite {DBLP:books/mk/GrayR93}}}{3}{corollary.3}\protected@file@percent } +\newlabel{lemma:curabitur}{{3}{3}{Curabitur pulvinar, \cite {DBLP:books/mk/GrayR93}}{corollary.3}{}} +\newlabel{lemma:curabitur@cref}{{[corollary][3][]3}{[1][3][]3}} +\@writefile{loe}{\contentsline {proposition}{\ifthmt@listswap Proposition~4\else \numberline {4}Proposition\fi }{3}{proposition.4}\protected@file@percent } +\newlabel{prop1}{{4}{3}{}{proposition.4}{}} +\newlabel{prop1@cref}{{[proposition][4][]4}{[1][3][]3}} +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Curabitur dictum felis id sapien}{3}{subsection.2.1}\protected@file@percent } +\citation{DBLP:conf/focs/HopcroftPV75} +\bibdata{lipics-v2021-sample-article} +\gdef\@pageNumberStartAppendix{4} +\@writefile{toc}{\contentsline {subsection}{\numberline {2.2}Proin ac fermentum augue}{4}{subsection.2.2}\protected@file@percent } +\@writefile{loe}{\contentsline {remark}{\ifthmt@listswap Remark~5\else \numberline {5}Remark\fi }{4}{remark.5}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {3}Pellentesque quis tortor}{4}{section.3}\protected@file@percent } +\@writefile{loe}{\contentsline {lemma}{\ifthmt@listswap Lemma~6\else \numberline {6}Lemma\fi \thmtformatoptarg {Quisque blandit tempus nunc}}{4}{lemma.6}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {4}Morbi eros magna}{4}{section.4}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {A}Styles of lists, enumerations, and descriptions}{4}{appendix.A}\protected@file@percent } +\newlabel{sec:itemStyles}{{A}{4}{Styles of lists, enumerations, and descriptions}{appendix.A}{}} +\newlabel{sec:itemStyles@cref}{{[appendix][1][2147483647]A}{[1][4][]4}} +\@writefile{toc}{\contentsline {section}{\numberline {B}Theorem-like environments}{5}{appendix.B}\protected@file@percent } +\newlabel{sec:theorem-environments}{{B}{5}{Theorem-like environments}{appendix.B}{}} +\newlabel{sec:theorem-environments@cref}{{[appendix][2][2147483647]B}{[1][5][]5}} +\@writefile{loe}{\contentsline {theorem}{\ifthmt@listswap Theorem~7\else \numberline {7}Theorem\fi }{5}{theorem.7}\protected@file@percent } +\newlabel{testenv-theorem}{{7}{5}{}{theorem.7}{}} +\newlabel{testenv-theorem@cref}{{[theorem][7][2147483647]7}{[1][5][]5}} +\@writefile{loe}{\contentsline {lemma}{\ifthmt@listswap Lemma~8\else \numberline {8}Lemma\fi }{5}{lemma.8}\protected@file@percent } +\newlabel{testenv-lemma}{{8}{5}{}{lemma.8}{}} +\newlabel{testenv-lemma@cref}{{[lemma][8][2147483647]8}{[1][5][]5}} +\@writefile{loe}{\contentsline {corollary}{\ifthmt@listswap Corollary~9\else \numberline {9}Corollary\fi }{5}{corollary.9}\protected@file@percent } +\newlabel{testenv-corollary}{{9}{5}{}{corollary.9}{}} +\newlabel{testenv-corollary@cref}{{[corollary][9][2147483647]9}{[1][5][]5}} +\@writefile{loe}{\contentsline {proposition}{\ifthmt@listswap Proposition~10\else \numberline {10}Proposition\fi }{5}{proposition.10}\protected@file@percent } +\newlabel{testenv-proposition}{{10}{5}{}{proposition.10}{}} +\newlabel{testenv-proposition@cref}{{[proposition][10][2147483647]10}{[1][5][]5}} +\@writefile{loe}{\contentsline {conjecture}{\ifthmt@listswap Conjecture~11\else \numberline {11}Conjecture\fi }{5}{conjecture.11}\protected@file@percent } +\newlabel{testenv-conjecture}{{11}{5}{}{conjecture.11}{}} +\newlabel{testenv-conjecture@cref}{{[conjecture][11][2147483647]11}{[1][5][]5}} +\@writefile{loe}{\contentsline {observation}{\ifthmt@listswap Observation~12\else \numberline {12}Observation\fi }{6}{observation.12}\protected@file@percent } +\newlabel{testenv-observation}{{12}{6}{}{observation.12}{}} +\newlabel{testenv-observation@cref}{{[observation][12][2147483647]12}{[1][5][]6}} +\@writefile{loe}{\contentsline {exercise}{\ifthmt@listswap Exercise~13\else \numberline {13}Exercise\fi }{6}{exercise.13}\protected@file@percent } +\newlabel{testenv-exercise}{{13}{6}{}{exercise.13}{}} +\newlabel{testenv-exercise@cref}{{[exercise][13][2147483647]13}{[1][5][]6}} +\@writefile{loe}{\contentsline {definition}{\ifthmt@listswap Definition~14\else \numberline {14}Definition\fi }{6}{definition.14}\protected@file@percent } +\newlabel{testenv-definition}{{14}{6}{}{definition.14}{}} +\newlabel{testenv-definition@cref}{{[definition][14][2147483647]14}{[1][6][]6}} +\@writefile{loe}{\contentsline {example}{\ifthmt@listswap Example~15\else \numberline {15}Example\fi }{6}{example.15}\protected@file@percent } +\newlabel{testenv-example}{{15}{6}{}{example.15}{}} +\newlabel{testenv-example@cref}{{[example][15][2147483647]15}{[1][6][]6}} +\@writefile{loe}{\contentsline {note}{\ifthmt@listswap Note~16\else \numberline {16}Note\fi }{6}{note.16}\protected@file@percent } +\newlabel{testenv-note}{{16}{6}{}{note.16}{}} +\newlabel{testenv-note@cref}{{[note][16][2147483647]16}{[1][6][]6}} +\@writefile{loe}{\contentsline {note*}{\ifthmt@listswap \else \numberline {\let \autodot \@empty }\fi Note}{6}{thmt@dummyctr.dummy.17}\protected@file@percent } +\@writefile{loe}{\contentsline {remark}{\ifthmt@listswap Remark~17\else \numberline {17}Remark\fi }{6}{remark.17}\protected@file@percent } +\newlabel{testenv-remark}{{17}{6}{}{remark.17}{}} +\newlabel{testenv-remark@cref}{{[remark][17][2147483647]17}{[1][6][]6}} +\@writefile{loe}{\contentsline {remark*}{\ifthmt@listswap \else \numberline {\let \autodot \@empty }\fi Remark}{6}{thmt@dummyctr.dummy.19}\protected@file@percent } +\@writefile{loe}{\contentsline {claim}{\ifthmt@listswap Claim~18\else \numberline {18}Claim\fi }{6}{claim.18}\protected@file@percent } +\newlabel{testenv-claim}{{18}{6}{}{claim.18}{}} +\newlabel{testenv-claim@cref}{{[claim][18][2147483647]18}{[1][6][]6}} +\@writefile{loe}{\contentsline {claim*}{\ifthmt@listswap \else \numberline {\let \autodot \@empty }\fi Claim}{6}{thmt@dummyctr.dummy.21}\protected@file@percent } +\newlabel{testenv-claim2}{{}{6}{}{thmt@dummyctr.dummy.21}{}} +\newlabel{testenv-claim2@cref}{{[thmt@dummyctr][21][2147483647]}{[1][6][]6}} +\newlabel{TotPages}{{6}{6}{}{page.6}{}} +\gdef \@abspage@last{6} diff --git a/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.log b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.log new file mode 100644 index 0000000..2554f44 --- /dev/null +++ b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.log @@ -0,0 +1,951 @@ +This is pdfTeX, Version 3.14159265-2.6-1.40.21 (TeX Live 2020/W32TeX) (preloaded format=pdflatex 2021.3.6) 6 MAR 2021 20:19 +entering extended mode + restricted \write18 enabled. + %&-line parsing enabled. +**lipics-v2021-sample-article.tex +(./lipics-v2021-sample-article.tex +LaTeX2e <2020-10-01> patch level 4 +L3 programming layer <2021-02-18> (./lipics-v2021.cls +Document Class: lipics-v2021 2021/02/25 v3.1.1 LIPIcs articles +(c:/texlive/2020/texmf-dist/tex/latex/base/article.cls +Document Class: article 2020/04/10 v1.4m Standard LaTeX document class +(c:/texlive/2020/texmf-dist/tex/latex/base/fleqn.clo +File: fleqn.clo 2016/12/29 v1.2b Standard LaTeX option (flush left equations) +\mathindent=\skip47 +Applying: [2015/01/01] Make \[ robust on input line 50. +LaTeX Info: Redefining \[ on input line 51. +Already applied: [0000/00/00] Make \[ robust on input line 62. +Applying: [2015/01/01] Make \] robust on input line 74. +LaTeX Info: Redefining \] on input line 75. +Already applied: [0000/00/00] Make \] robust on input line 83. +) +(c:/texlive/2020/texmf-dist/tex/latex/base/size10.clo +File: size10.clo 2020/04/10 v1.4m Standard LaTeX file (size option) +) +\c@part=\count179 +\c@section=\count180 +\c@subsection=\count181 +\c@subsubsection=\count182 +\c@paragraph=\count183 +\c@subparagraph=\count184 +\c@figure=\count185 +\c@table=\count186 +\abovecaptionskip=\skip48 +\belowcaptionskip=\skip49 +\bibindent=\dimen138 +) +\tocfile=\write3 + +(c:/texlive/2020/texmf-dist/tex/latex/microtype/microtype.sty +Package: microtype 2021/02/25 v2.8b Micro-typographical refinements (RS) + +(c:/texlive/2020/texmf-dist/tex/latex/graphics/keyval.sty +Package: keyval 2014/10/28 v1.15 key=value parser (DPC) +\KV@toks@=\toks15 +) +\MT@toks=\toks16 +\MT@count=\count187 +LaTeX Info: Redefining \textls on input line 788. +\MT@outer@kern=\dimen139 +LaTeX Info: Redefining \textmicrotypecontext on input line 1358. +\MT@listname@count=\count188 + +(c:/texlive/2020/texmf-dist/tex/latex/microtype/microtype-pdftex.def +File: microtype-pdftex.def 2021/02/25 v2.8b Definitions specific to pdftex (RS) + +LaTeX Info: Redefining \lsstyle on input line 915. +LaTeX Info: Redefining \lslig on input line 915. +\MT@outer@space=\skip50 +) +Package microtype Info: Loading configuration file microtype.cfg. + +(c:/texlive/2020/texmf-dist/tex/latex/microtype/microtype.cfg +File: microtype.cfg 2021/02/25 v2.8b microtype main configuration file (RS) +)) +(c:/texlive/2020/texmf-dist/tex/latex/base/inputenc.sty +Package: inputenc 2020/08/01 v1.3d Input encoding file +\inpenc@prehook=\toks17 +\inpenc@posthook=\toks18 +) +(c:/texlive/2020/texmf-dist/tex/generic/pdftex/glyphtounicode.tex) +(c:/texlive/2020/texmf-dist/tex/latex/lm/lmodern.sty +Package: lmodern 2009/10/30 v1.6 Latin Modern Fonts +LaTeX Font Info: Overwriting symbol font `operators' in version `normal' +(Font) OT1/cmr/m/n --> OT1/lmr/m/n on input line 22. +LaTeX Font Info: Overwriting symbol font `letters' in version `normal' +(Font) OML/cmm/m/it --> OML/lmm/m/it on input line 23. +LaTeX Font Info: Overwriting symbol font `symbols' in version `normal' +(Font) OMS/cmsy/m/n --> OMS/lmsy/m/n on input line 24. +LaTeX Font Info: Overwriting symbol font `largesymbols' in version `normal' +(Font) OMX/cmex/m/n --> OMX/lmex/m/n on input line 25. +LaTeX Font Info: Overwriting symbol font `operators' in version `bold' +(Font) OT1/cmr/bx/n --> OT1/lmr/bx/n on input line 26. +LaTeX Font Info: Overwriting symbol font `letters' in version `bold' +(Font) OML/cmm/b/it --> OML/lmm/b/it on input line 27. +LaTeX Font Info: Overwriting symbol font `symbols' in version `bold' +(Font) OMS/cmsy/b/n --> OMS/lmsy/b/n on input line 28. +LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold' +(Font) OMX/cmex/m/n --> OMX/lmex/m/n on input line 29. +LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `normal' +(Font) OT1/cmr/bx/n --> OT1/lmr/bx/n on input line 31. +LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `normal' +(Font) OT1/cmss/m/n --> OT1/lmss/m/n on input line 32. +LaTeX Font Info: Overwriting math alphabet `\mathit' in version `normal' +(Font) OT1/cmr/m/it --> OT1/lmr/m/it on input line 33. +LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `normal' +(Font) OT1/cmtt/m/n --> OT1/lmtt/m/n on input line 34. +LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `bold' +(Font) OT1/cmr/bx/n --> OT1/lmr/bx/n on input line 35. +LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' +(Font) OT1/cmss/bx/n --> OT1/lmss/bx/n on input line 36. +LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold' +(Font) OT1/cmr/bx/it --> OT1/lmr/bx/it on input line 37. +LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' +(Font) OT1/cmtt/m/n --> OT1/lmtt/m/n on input line 38. +) +(c:/texlive/2020/texmf-dist/tex/latex/fontawesome5/fontawesome5.sty +(c:/texlive/2020/texmf-dist/tex/latex/l3kernel/expl3.sty +Package: expl3 2021-02-18 L3 programming layer (loader) + +(c:/texlive/2020/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +File: l3backend-pdftex.def 2021-03-02 L3 backend support: PDF output (pdfTeX) +\l__color_backend_stack_int=\count189 +\l__pdf_internal_box=\box47 +)) +Package: fontawesome5 2020/03/24 v5.13.0 Font Awesome 5 + +(c:/texlive/2020/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +Package: l3keys2e 2021-02-02 LaTeX2e option processing using LaTeX3 keys +) +(c:/texlive/2020/texmf-dist/tex/latex/l3packages/xparse/xparse.sty +(c:/texlive/2020/texmf-dist/tex/latex/l3packages/xparse/xparse-2020-10-01.sty +(c:/texlive/2020/texmf-dist/tex/latex/l3packages/xparse/xparse-generic.tex))) +(c:/texlive/2020/texmf-dist/tex/latex/fontawesome5/fontawesome5-generic-helper. +sty +Package: fontawesome5-generic-helper 2020/03/24 v5.13.0 non-uTeX helper for fon +tawesome5 + (c:/texlive/2020/texmf-dist/tex/latex/fontawesome5/fontawesome5-mapping.def))) + (c:/texlive/2020/texmf-dist/tex/latex/base/fontenc.sty +Package: fontenc 2020/08/10 v2.0s Standard LaTeX package +LaTeX Font Info: Trying to load font information for T1+lmr on input line 11 +2. + +(c:/texlive/2020/texmf-dist/tex/latex/lm/t1lmr.fd +File: t1lmr.fd 2009/10/30 v1.6 Font defs for Latin Modern +)) +(c:/texlive/2020/texmf-dist/tex/latex/base/textcomp.sty +Package: textcomp 2020/02/02 v2.0n Standard LaTeX package +) +(c:/texlive/2020/texmf-dist/tex/latex/amsfonts/eucal.sty +Package: eucal 2009/06/22 v3.00 Euler Script fonts +LaTeX Font Info: Overwriting math alphabet `\EuScript' in version `bold' +(Font) U/eus/m/n --> U/eus/b/n on input line 33. +) +(c:/texlive/2020/texmf-dist/tex/latex/amsfonts/amssymb.sty +Package: amssymb 2013/01/14 v3.01 AMS font symbols + +(c:/texlive/2020/texmf-dist/tex/latex/amsfonts/amsfonts.sty +Package: amsfonts 2013/01/14 v3.01 Basic AMSFonts support +\@emptytoks=\toks19 +\symAMSa=\mathgroup4 +\symAMSb=\mathgroup5 +LaTeX Font Info: Redeclaring math symbol \hbar on input line 98. +LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold' +(Font) U/euf/m/n --> U/euf/b/n on input line 106. +)) +(c:/texlive/2020/texmf-dist/tex/generic/soul/soul.sty +Package: soul 2003/11/17 v2.4 letterspacing/underlining (mf) +\SOUL@word=\toks20 +\SOUL@lasttoken=\toks21 +\SOUL@cmds=\toks22 +\SOUL@buffer=\toks23 +\SOUL@token=\toks24 +\SOUL@spaceskip=\skip51 +\SOUL@ttwidth=\dimen140 +\SOUL@uldp=\dimen141 +\SOUL@ulht=\dimen142 +) +(c:/texlive/2020/texmf-dist/tex/latex/graphics/color.sty +Package: color 2020/02/24 v1.2b Standard LaTeX Color (DPC) + +(c:/texlive/2020/texmf-dist/tex/latex/graphics-cfg/color.cfg +File: color.cfg 2016/01/02 v1.6 sample color configuration +) +Package color Info: Driver file: pdftex.def on input line 147. + +(c:/texlive/2020/texmf-dist/tex/latex/graphics-def/pdftex.def +File: pdftex.def 2020/10/05 v1.2a Graphics/color driver for pdftex +)) +(c:/texlive/2020/texmf-dist/tex/generic/babel/babel.sty +Package: babel 2021/03/03 3.55 The Babel package + +(c:/texlive/2020/texmf-dist/tex/generic/babel/babel.def +File: babel.def 2021/03/03 3.55 Babel common definitions +\babel@savecnt=\count190 +\U@D=\dimen143 +\l@babelnohyphens=\language86 + +(c:/texlive/2020/texmf-dist/tex/generic/babel/txtbabel.def) +\bbl@readstream=\read2 +) +\bbl@dirlevel=\count191 + +(c:/texlive/2020/texmf-dist/tex/generic/babel-english/UKenglish.ldf +Language: UKenglish 2017/06/06 v3.3r English support from the babel system + +(c:/texlive/2020/texmf-dist/tex/generic/babel-english/english.ldf +Language: english 2017/06/06 v3.3r English support from the babel system +Package babel Info: \l@canadian = using hyphenrules for english +(babel) (\language0) on input line 102. +Package babel Info: \l@australian = using hyphenrules for ukenglish +(babel) (\language21) on input line 105. +Package babel Info: \l@newzealand = using hyphenrules for ukenglish +(babel) (\language21) on input line 108. +))) +(c:/texlive/2020/texmf-dist/tex/latex/amsmath/amsmath.sty +Package: amsmath 2020/09/23 v2.17i AMS math features +\@mathmargin=\skip52 + +For additional information on amsmath, use the `?' option. +(c:/texlive/2020/texmf-dist/tex/latex/amsmath/amstext.sty +Package: amstext 2000/06/29 v2.01 AMS text + +(c:/texlive/2020/texmf-dist/tex/latex/amsmath/amsgen.sty +File: amsgen.sty 1999/11/30 v2.0 generic functions +\@emptytoks=\toks25 +\ex@=\dimen144 +)) +(c:/texlive/2020/texmf-dist/tex/latex/amsmath/amsbsy.sty +Package: amsbsy 1999/11/29 v1.2d Bold Symbols +\pmbraise@=\dimen145 +) +(c:/texlive/2020/texmf-dist/tex/latex/amsmath/amsopn.sty +Package: amsopn 2016/03/08 v2.02 operator names +) +\inf@bad=\count192 +LaTeX Info: Redefining \frac on input line 234. +\uproot@=\count193 +\leftroot@=\count194 +LaTeX Info: Redefining \overline on input line 399. +\classnum@=\count195 +\DOTSCASE@=\count196 +LaTeX Info: Redefining \ldots on input line 496. +LaTeX Info: Redefining \dots on input line 499. +LaTeX Info: Redefining \cdots on input line 620. +\Mathstrutbox@=\box48 +\strutbox@=\box49 +\big@size=\dimen146 +LaTeX Font Info: Redeclaring font encoding OML on input line 743. +LaTeX Font Info: Redeclaring font encoding OMS on input line 744. +\macc@depth=\count197 +\c@MaxMatrixCols=\count198 +\dotsspace@=\muskip16 +\c@parentequation=\count199 +\dspbrk@lvl=\count266 +\tag@help=\toks26 +\row@=\count267 +\column@=\count268 +\maxfields@=\count269 +\andhelp@=\toks27 +\eqnshift@=\dimen147 +\alignsep@=\dimen148 +\tagshift@=\dimen149 +\tagwidth@=\dimen150 +\totwidth@=\dimen151 +\lineht@=\dimen152 +\@envbody=\toks28 +\multlinegap=\skip53 +\multlinetaggap=\skip54 +\mathdisplay@stack=\toks29 +LaTeX Info: Redefining \[ on input line 2923. +LaTeX Info: Redefining \] on input line 2924. +) +(c:/texlive/2020/texmf-dist/tex/latex/tools/enumerate.sty +Package: enumerate 2015/07/23 v3.00 enumerate extensions (DPC) +\@enLab=\toks30 +) +(c:/texlive/2020/texmf-dist/tex/latex/graphics/graphicx.sty +Package: graphicx 2020/09/09 v1.2b Enhanced LaTeX Graphics (DPC,SPQR) + +(c:/texlive/2020/texmf-dist/tex/latex/graphics/graphics.sty +Package: graphics 2020/08/30 v1.4c Standard LaTeX Graphics (DPC,SPQR) + +(c:/texlive/2020/texmf-dist/tex/latex/graphics/trig.sty +Package: trig 2016/01/03 v1.10 sin cos tan (DPC) +) +(c:/texlive/2020/texmf-dist/tex/latex/graphics-cfg/graphics.cfg +File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration +) +Package graphics Info: Driver file: pdftex.def on input line 105. +) +\Gin@req@height=\dimen153 +\Gin@req@width=\dimen154 +) +(c:/texlive/2020/texmf-dist/tex/latex/tools/array.sty +Package: array 2020/10/01 v2.5c Tabular extension package (FMi) +\col@sep=\dimen155 +\ar@mcellbox=\box50 +\extrarowheight=\dimen156 +\NC@list=\toks31 +\extratabsurround=\skip55 +\backup@length=\skip56 +\ar@cellbox=\box51 +) +(c:/texlive/2020/texmf-dist/tex/latex/multirow/multirow.sty +Package: multirow 2021/01/29 v2.7 Span multiple rows of a table +\multirow@colwidth=\skip57 +\multirow@cntb=\count270 +\multirow@dima=\skip58 +\bigstrutjot=\dimen157 +) +(c:/texlive/2020/texmf-dist/tex/latex/tools/tabularx.sty +Package: tabularx 2020/01/15 v2.11c `tabularx' package (DPC) +\TX@col@width=\dimen158 +\TX@old@table=\dimen159 +\TX@old@col=\dimen160 +\TX@target=\dimen161 +\TX@delta=\dimen162 +\TX@cols=\count271 +\TX@ftn=\toks32 +) +(c:/texlive/2020/texmf-dist/tex/latex/threeparttable/threeparttable.sty +Package: threeparttable 2003/06/13 v 3.0 +\@tempboxb=\box52 +) +(c:/texlive/2020/texmf-dist/tex/latex/listings/listings.sty +\lst@mode=\count272 +\lst@gtempboxa=\box53 +\lst@token=\toks33 +\lst@length=\count273 +\lst@currlwidth=\dimen163 +\lst@column=\count274 +\lst@pos=\count275 +\lst@lostspace=\dimen164 +\lst@width=\dimen165 +\lst@newlines=\count276 +\lst@lineno=\count277 +\lst@maxwidth=\dimen166 + +(c:/texlive/2020/texmf-dist/tex/latex/listings/lstmisc.sty +File: lstmisc.sty 2020/03/24 1.8d (Carsten Heinz) +\c@lstnumber=\count278 +\lst@skipnumbers=\count279 +\lst@framebox=\box54 +) +(c:/texlive/2020/texmf-dist/tex/latex/listings/listings.cfg +File: listings.cfg 2020/03/24 1.8d listings configuration +)) +Package: listings 2020/03/24 1.8d (Carsten Heinz) + +(c:/texlive/2020/texmf-dist/tex/latex/lineno/lineno.sty +Package: lineno 2005/11/02 line numbers on paragraphs v4.41 +\linenopenalty=\count280 +\output=\toks34 +\linenoprevgraf=\count281 +\linenumbersep=\dimen167 +\linenumberwidth=\dimen168 +\c@linenumber=\count282 +\c@pagewiselinenumber=\count283 +\c@LN@truepage=\count284 +\c@internallinenumber=\count285 +\c@internallinenumbers=\count286 +\quotelinenumbersep=\dimen169 +\bframerule=\dimen170 +\bframesep=\dimen171 +\bframebox=\box55 +LaTeX Info: Redefining \\ on input line 3056. +) +(c:/texlive/2020/texmf-dist/tex/latex/totpages/totpages.sty +Package: totpages 2005/09/19 v2.00 Totpages Package (muewi) + +(c:/texlive/2020/texmf-dist/tex/latex/base/everyshi-ltx.sty +Package: everyshi-ltx 2020/08/17 v1.0a Emulation of the original everyshi packa +ge +with kernel methods +)) +(c:/texlive/2020/texmf-dist/tex/latex/hyperref/hyperref.sty +Package: hyperref 2021-02-27 v7.00k Hypertext links for LaTeX + +(c:/texlive/2020/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +Package: ltxcmds 2020-05-10 v1.25 LaTeX kernel commands for general use (HO) +) +(c:/texlive/2020/texmf-dist/tex/generic/iftex/iftex.sty +Package: iftex 2020/03/06 v1.0d TeX engine tests +) +(c:/texlive/2020/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +Package: pdftexcmds 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO +) + +(c:/texlive/2020/texmf-dist/tex/generic/infwarerr/infwarerr.sty +Package: infwarerr 2019/12/03 v1.5 Providing info/warning/error messages (HO) +) +Package pdftexcmds Info: \pdf@primitive is available. +Package pdftexcmds Info: \pdf@ifprimitive is available. +Package pdftexcmds Info: \pdfdraftmode found. +) +(c:/texlive/2020/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +Package: kvsetkeys 2019/12/15 v1.18 Key value parser (HO) +) +(c:/texlive/2020/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO) +) +(c:/texlive/2020/texmf-dist/tex/generic/pdfescape/pdfescape.sty +Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) +) +(c:/texlive/2020/texmf-dist/tex/latex/hycolor/hycolor.sty +Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) +) +(c:/texlive/2020/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO) +) +(c:/texlive/2020/texmf-dist/tex/latex/auxhook/auxhook.sty +Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO) +) +(c:/texlive/2020/texmf-dist/tex/latex/kvoptions/kvoptions.sty +Package: kvoptions 2020-10-07 v3.14 Key value format for package options (HO) +) +\@linkdim=\dimen172 +\Hy@linkcounter=\count287 +\Hy@pagecounter=\count288 + +(c:/texlive/2020/texmf-dist/tex/latex/hyperref/pd1enc.def +File: pd1enc.def 2021-02-27 v7.00k Hyperref: PDFDocEncoding definition (HO) +Now handling font encoding PD1 ... +... no UTF-8 mapping file for font encoding PD1 +) +(c:/texlive/2020/texmf-dist/tex/latex/hyperref/hyperref-langpatches.def +File: hyperref-langpatches.def 2021-02-27 v7.00k Hyperref: patches for babel la +nguages +) +(c:/texlive/2020/texmf-dist/tex/generic/intcalc/intcalc.sty +Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO) +) +(c:/texlive/2020/texmf-dist/tex/generic/etexcmds/etexcmds.sty +Package: etexcmds 2019/12/15 v1.7 Avoid name clashes with e-TeX commands (HO) +) +\Hy@SavedSpaceFactor=\count289 + +(c:/texlive/2020/texmf-dist/tex/latex/hyperref/puenc.def +File: puenc.def 2021-02-27 v7.00k Hyperref: PDF Unicode definition (HO) +Now handling font encoding PU ... +... no UTF-8 mapping file for font encoding PU +) +Package hyperref Info: Option `unicode' set `true' on input line 4073. +Package hyperref Info: Hyper figures OFF on input line 4192. +Package hyperref Info: Link nesting OFF on input line 4197. +Package hyperref Info: Hyper index ON on input line 4200. +Package hyperref Info: Plain pages OFF on input line 4207. +Package hyperref Info: Backreferencing OFF on input line 4212. +Package hyperref Info: Implicit mode ON; LaTeX internals redefined. +Package hyperref Info: Bookmarks ON on input line 4445. +\c@Hy@tempcnt=\count290 + +(c:/texlive/2020/texmf-dist/tex/latex/url/url.sty +\Urlmuskip=\muskip17 +Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. +) +LaTeX Info: Redefining \url on input line 4804. +\XeTeXLinkMargin=\dimen173 + +(c:/texlive/2020/texmf-dist/tex/generic/bitset/bitset.sty +Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO) + +(c:/texlive/2020/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO +) +)) +\Fld@menulength=\count291 +\Field@Width=\dimen174 +\Fld@charsize=\dimen175 +Package hyperref Info: Hyper figures OFF on input line 6075. +Package hyperref Info: Link nesting OFF on input line 6080. +Package hyperref Info: Hyper index ON on input line 6083. +Package hyperref Info: backreferencing OFF on input line 6090. +Package hyperref Info: Link coloring OFF on input line 6095. +Package hyperref Info: Link coloring with OCG OFF on input line 6100. +Package hyperref Info: PDF/A mode OFF on input line 6105. +LaTeX Info: Redefining \ref on input line 6145. +LaTeX Info: Redefining \pageref on input line 6149. + +(c:/texlive/2020/texmf-dist/tex/latex/base/atbegshi-ltx.sty +Package: atbegshi-ltx 2020/08/17 v1.0a Emulation of the original atbegshi packa +ge +with kernel methods +) +\Hy@abspage=\count292 +\c@Item=\count293 +\c@Hfootnote=\count294 +) +Package hyperref Info: Driver (autodetected): hpdftex. + +(c:/texlive/2020/texmf-dist/tex/latex/hyperref/hpdftex.def +File: hpdftex.def 2021-02-27 v7.00k Hyperref driver for pdfTeX + +(c:/texlive/2020/texmf-dist/tex/latex/base/atveryend-ltx.sty +Package: atveryend-ltx 2020/08/19 v1.0a Emulation of the original atvery packag +e +with kernel methods +) +\Fld@listcount=\count295 +\c@bookmark@seq@number=\count296 + +(c:/texlive/2020/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +Package: rerunfilecheck 2019/12/05 v1.9 Rerun checks for auxiliary files (HO) + +(c:/texlive/2020/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO) +) +Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 +86. +) +\Hy@SectionHShift=\skip59 +) +Package hyperref Info: Option `breaklinks' set `true' on input line 656. +Package hyperref Info: Option `unicode' set `true' on input line 656. +Package hyperref Info: Option `bookmarksnumbered' set `true' on input line 656. + + +(c:/texlive/2020/texmf-dist/tex/latex/caption/caption.sty +Package: caption 2020/10/26 v3.5g Customizing captions (AR) + +(c:/texlive/2020/texmf-dist/tex/latex/caption/caption3.sty +Package: caption3 2020/10/21 v2.2e caption3 kernel (AR) +\captionmargin=\dimen176 +\captionmargin@=\dimen177 +\captionwidth=\dimen178 +\caption@tempdima=\dimen179 +\caption@indent=\dimen180 +\caption@parindent=\dimen181 +\caption@hangindent=\dimen182 +Package caption Info: Standard document class detected. +) +\c@caption@flags=\count297 +\c@continuedfloat=\count298 +Package caption Info: hyperref package is loaded. +Package caption Info: listings package is loaded. +Package caption Info: threeparttable package is loaded. +) +(c:/texlive/2020/texmf-dist/tex/latex/graphics/rotating.sty +Package: rotating 2016/08/11 v2.16d rotated objects in LaTeX + +(c:/texlive/2020/texmf-dist/tex/latex/base/ifthen.sty +Package: ifthen 2014/09/29 v1.1c Standard LaTeX ifthen package (DPC) +) +\c@r@tfl@t=\count299 +\rotFPtop=\skip60 +\rotFPbot=\skip61 +\rot@float@box=\box56 +\rot@mess@toks=\toks35 +) +(c:/texlive/2020/texmf-dist/tex/latex/caption/subcaption.sty +Package: subcaption 2020/10/07 v1.3j Sub-captions (AR) +\c@subfigure=\count300 +\c@subtable=\count301 +) +\c@author=\count302 +\c@currentauthor=\count303 + +(c:/texlive/2020/texmf-dist/tex/generic/xstring/xstring.sty +(c:/texlive/2020/texmf-dist/tex/generic/xstring/xstring.tex +\integerpart=\count304 +\decimalpart=\count305 +) +Package: xstring 2019/02/06 v1.83 String manipulations (CT) +) +(c:/texlive/2020/texmf-dist/tex/latex/comment/comment.sty +\CommentStream=\write4 + +Excluding comment 'comment') Excluding comment 'CCSXML' +(c:/texlive/2020/texmf-dist/tex/latex/amscls/amsthm.sty +Package: amsthm 2020/05/29 v2.20.6 +\thm@style=\toks36 +\thm@bodyfont=\toks37 +\thm@headfont=\toks38 +\thm@notefont=\toks39 +\thm@headpunct=\toks40 +\thm@preskip=\skip62 +\thm@postskip=\skip63 +\thm@headsep=\skip64 +\dth@everypar=\toks41 +) +(c:/texlive/2020/texmf-dist/tex/latex/thmtools/thm-restate.sty +Package: thm-restate 2020/08/01 v0.72 + +(c:/texlive/2020/texmf-dist/tex/latex/thmtools/thmtools.sty +Package: thmtools 2020/08/01 v0.72 +\thmt@toks=\toks42 +\c@thmt@dummyctr=\count306 + +(c:/texlive/2020/texmf-dist/tex/latex/thmtools/thm-patch.sty +Package: thm-patch 2020/08/01 v0.72 + +(c:/texlive/2020/texmf-dist/tex/latex/thmtools/parseargs.sty +Package: parseargs 2020/08/01 v0.72 +\@parsespec=\toks43 +)) +(c:/texlive/2020/texmf-dist/tex/latex/thmtools/thm-kv.sty +Package: thm-kv 2020/08/01 v0.72 +Package thm-kv Info: Theorem names will be uppercased on input line 42. +Package thm-kv Info: kvsetkeys patch (v1.16 or later) on input line 158. +) +(c:/texlive/2020/texmf-dist/tex/latex/thmtools/thm-autoref.sty +Package: thm-autoref 2020/08/01 v0.72 + +(c:/texlive/2020/texmf-dist/tex/latex/thmtools/aliasctr.sty +Package: aliasctr 2020/08/01 v0.72 +)) +(c:/texlive/2020/texmf-dist/tex/latex/thmtools/thm-listof.sty +Package: thm-listof 2020/08/01 v0.72 +) +(c:/texlive/2020/texmf-dist/tex/latex/thmtools/thm-amsthm.sty +Package: thm-amsthm 2020/08/01 v0.72 +\thmt@style@headstyle=\toks44 +))) +(c:/texlive/2020/texmf-dist/tex/latex/cleveref/cleveref.sty +Package: cleveref 2018/03/27 v0.21.4 Intelligent cross-referencing +Package cleveref Info: `hyperref' support loaded on input line 2370. +LaTeX Info: Redefining \cref on input line 2370. +LaTeX Info: Redefining \Cref on input line 2370. +LaTeX Info: Redefining \crefrange on input line 2370. +LaTeX Info: Redefining \Crefrange on input line 2370. +LaTeX Info: Redefining \cpageref on input line 2370. +LaTeX Info: Redefining \Cpageref on input line 2370. +LaTeX Info: Redefining \cpagerefrange on input line 2370. +LaTeX Info: Redefining \Cpagerefrange on input line 2370. +LaTeX Info: Redefining \labelcref on input line 2370. +LaTeX Info: Redefining \labelcpageref on input line 2370. +Package cleveref Info: `amsthm' support loaded on input line 3026. +Package cleveref Info: `listings' support loaded on input line 3131. +Package cleveref Info: always capitalise cross-reference names on input line 78 +25. +Package cleveref Info: always capitalise cross-reference names on input line 78 +52. +Package cleveref Info: no abbreviation of names on input line 7852. +) +(c:/texlive/2020/texmf-dist/tex/latex/oberdiek/aliascnt.sty +Package: aliascnt 2018/09/07 v1.5 Alias counters (HO) +) +\c@theorem=\count307 +) +(./lipics-v2021-sample-article.aux) +\openout1 = `lipics-v2021-sample-article.aux'. + +LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 65. +LaTeX Font Info: ... okay on input line 65. +LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 65. +LaTeX Font Info: ... okay on input line 65. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 65. +LaTeX Font Info: ... okay on input line 65. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 65. +LaTeX Font Info: ... okay on input line 65. +LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 65. +LaTeX Font Info: ... okay on input line 65. +LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 65. +LaTeX Font Info: ... okay on input line 65. +LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 65. +LaTeX Font Info: ... okay on input line 65. +LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 65. +LaTeX Font Info: ... okay on input line 65. +LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 65. +LaTeX Font Info: ... okay on input line 65. +LaTeX Info: Redefining \microtypecontext on input line 65. +Package microtype Info: Generating PDF output. +Package microtype Info: Character protrusion enabled (level 2). +Package microtype Info: Using default protrusion set `alltext'. +Package microtype Info: Automatic font expansion enabled (level 2), +(microtype) stretch: 20, shrink: 20, step: 1, non-selected. +Package microtype Info: Using default expansion set `alltext-nott'. +LaTeX Info: Redefining \showhyphens on input line 65. +Package microtype Info: No adjustment of tracking. +Package microtype Info: No adjustment of interword spacing. +Package microtype Info: No adjustment of character kerning. + +(c:/texlive/2020/texmf-dist/tex/latex/microtype/mt-cmr.cfg +File: mt-cmr.cfg 2013/05/19 v2.2 microtype config. file: Computer Modern Roman +(RS) +) +(c:/texlive/2020/texmf-dist/tex/latex/xcolor/xcolor.sty +Package: xcolor 2016/05/11 v2.12 LaTeX color extensions (UK) + +(c:/texlive/2020/texmf-dist/tex/latex/graphics-cfg/color.cfg +File: color.cfg 2016/01/02 v1.6 sample color configuration +) +Package xcolor Info: Driver file: pdftex.def on input line 225. +LaTeX Info: Redefining \color on input line 709. +Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1348. +Package xcolor Info: Model `hsb' substituted by `rgb' on input line 1352. +Package xcolor Info: Model `RGB' extended on input line 1364. +Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1366. +Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1367. +Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1368. +Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1369. +Package xcolor Info: Model `Gray' substituted by `gray' on input line 1370. +Package xcolor Info: Model `wave' substituted by `hsb' on input line 1371. +) +(c:/texlive/2020/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +[Loading MPS to PDF converter (version 2006.09.02).] +\scratchcounter=\count308 +\scratchdimen=\dimen183 +\scratchbox=\box57 +\nofMPsegments=\count309 +\nofMParguments=\count310 +\everyMPshowfont=\toks45 +\MPscratchCnt=\count311 +\MPscratchDim=\dimen184 +\MPnumerator=\count312 +\makeMPintoPDFobject=\count313 +\everyMPtoPDFconversion=\toks46 +) (c:/texlive/2020/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +Package: epstopdf-base 2020-01-24 v2.11 Base part for package epstopdf +Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 +85. + +(c:/texlive/2020/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg +File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv +e +)) +\c@lstlisting=\count314 +Package hyperref Info: Link coloring OFF on input line 65. + +(c:/texlive/2020/texmf-dist/tex/latex/hyperref/nameref.sty +Package: nameref 2021-04-02 v2.47 Cross-referencing by name of section + +(c:/texlive/2020/texmf-dist/tex/latex/refcount/refcount.sty +Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO) +) +(c:/texlive/2020/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO) +) +\c@section@level=\count315 +) +LaTeX Info: Redefining \ref on input line 65. +LaTeX Info: Redefining \pageref on input line 65. +LaTeX Info: Redefining \nameref on input line 65. + +(./lipics-v2021-sample-article.out) (./lipics-v2021-sample-article.out) +\@outlinefile=\write5 +\openout5 = `lipics-v2021-sample-article.out'. + +Package caption Info: Begin \AtBeginDocument code. +Package caption Info: rotating package is loaded. +Package caption Info: End \AtBeginDocument code. +LaTeX Font Info: Trying to load font information for T1+lmss on input line 6 +8. + +(c:/texlive/2020/texmf-dist/tex/latex/lm/t1lmss.fd +File: t1lmss.fd 2009/10/30 v1.6 Font defs for Latin Modern +) +Package microtype Info: Loading generic protrusion settings for font family +(microtype) `lmss' (encoding: T1). +(microtype) For optimal results, create family-specific settings. +(microtype) See the microtype manual for details. +LaTeX Font Info: Trying to load font information for OT1+lmr on input line 6 +8. + +(c:/texlive/2020/texmf-dist/tex/latex/lm/ot1lmr.fd +File: ot1lmr.fd 2009/10/30 v1.6 Font defs for Latin Modern +) +LaTeX Font Info: Trying to load font information for OML+lmm on input line 6 +8. + +(c:/texlive/2020/texmf-dist/tex/latex/lm/omllmm.fd +File: omllmm.fd 2009/10/30 v1.6 Font defs for Latin Modern +) +LaTeX Font Info: Trying to load font information for OMS+lmsy on input line +68. + +(c:/texlive/2020/texmf-dist/tex/latex/lm/omslmsy.fd +File: omslmsy.fd 2009/10/30 v1.6 Font defs for Latin Modern +) +LaTeX Font Info: Trying to load font information for OMX+lmex on input line +68. + +(c:/texlive/2020/texmf-dist/tex/latex/lm/omxlmex.fd +File: omxlmex.fd 2009/10/30 v1.6 Font defs for Latin Modern +) +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <10> on input line 68. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <7> on input line 68. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <5> on input line 68. +LaTeX Font Info: Trying to load font information for U+msa on input line 68. + + +(c:/texlive/2020/texmf-dist/tex/latex/amsfonts/umsa.fd +File: umsa.fd 2013/01/14 v3.01 AMS symbols A +) +(c:/texlive/2020/texmf-dist/tex/latex/microtype/mt-msa.cfg +File: mt-msa.cfg 2006/02/04 v1.1 microtype config. file: AMS symbols (a) (RS) +) +LaTeX Font Info: Trying to load font information for U+msb on input line 68. + + +(c:/texlive/2020/texmf-dist/tex/latex/amsfonts/umsb.fd +File: umsb.fd 2013/01/14 v3.01 AMS symbols B +) +(c:/texlive/2020/texmf-dist/tex/latex/microtype/mt-msb.cfg +File: mt-msb.cfg 2005/06/01 v1.0 microtype config. file: AMS symbols (b) (RS) +) +LaTeX Font Info: Trying to load font information for U+fontawesomefree1 on i +nput line 68. + +(c:/texlive/2020/texmf-dist/tex/latex/fontawesome5/ufontawesomefree1.fd) + +File: orcid.pdf Graphic file (type pdf) + +Package pdftex.def Info: orcid.pdf used on input line 68. +(pdftex.def) Requested size: 8.99843pt x 9.0pt. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <12> on input line 68. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <8> on input line 68. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <6> on input line 68. +LaTeX Font Info: Calculating math sizes for size <8.5> on input line 68. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <8.5> on input line 68. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <5.94997> on input line 68. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <4.25> on input line 68. +File: orcid.pdf Graphic file (type pdf) + +Package pdftex.def Info: orcid.pdf used on input line 68. +(pdftex.def) Requested size: 8.99843pt x 9.0pt. +\openout3 = `lipics-v2021-sample-article.vtc'. + +LaTeX Font Info: Trying to load font information for T1+lmtt on input line 8 +8. + +(c:/texlive/2020/texmf-dist/tex/latex/lm/t1lmtt.fd +File: t1lmtt.fd 2009/10/30 v1.6 Font defs for Latin Modern +) +Package microtype Info: Loading generic protrusion settings for font family +(microtype) `lmtt' (encoding: T1). +(microtype) For optimal results, create family-specific settings. +(microtype) See the microtype manual for details. + +Underfull \hbox (badness 1072) in paragraph at lines 88--89 +[]\T1/lmr/m/n/10 (+20) Use the provided sec-tion-ing mac-ros: [][]\T1/lmtt/m/n/ +10 \section[]\T1/lmr/m/n/10 (+20) , [][]\T1/lmtt/m/n/10 \subsection[]\T1/lmr/m/ +n/10 (+20) , [][]\T1/lmtt/m/n/10 \subsubsection[]\T1/lmr/m/n/10 (+20) , + [] + + +File: cc-by.pdf Graphic file (type pdf) + +Package pdftex.def Info: cc-by.pdf used on input line 95. +(pdftex.def) Requested size: 39.74274pt x 14.0pt. +LaTeX Font Info: Trying to load font information for TS1+lmr on input line 9 +5. +(c:/texlive/2020/texmf-dist/tex/latex/lm/ts1lmr.fd +File: ts1lmr.fd 2009/10/30 v1.6 Font defs for Latin Modern +) + +File: lipics-logo-bw.pdf Graphic file (type pdf) + +Package pdftex.def Info: lipics-logo-bw.pdf used on input line 95. +(pdftex.def) Requested size: 64.00354pt x 14.0pt. + [1.1 + +{c:/texlive/2020/texmf-var/fonts/map/pdftex/updmap/pdftex.map} <./cc-by.pdf> <. +/orcid.pdf> <./lipics-logo-bw.pdf>] +LaTeX Font Info: Font shape `T1/lmtt/bx/n' in size <10> not available +(Font) Font shape `T1/lmtt/b/n' tried instead on input line 111. + + +LaTeX Warning: Citation `DBLP:journals/cacm/Knuth74' on page 2 undefined on inp +ut line 132. + +[2.2] +Package hyperref Info: bookmark level for unknown lemma defaults to 0 on input +line 134. +Package hyperref Info: bookmark level for unknown claim defaults to 0 on input +line 146. + + +LaTeX Warning: Citation `DBLP:books/mk/GrayR93' on page 3 undefined on input li +ne 157. + +Package hyperref Info: bookmark level for unknown corollary defaults to 0 on in +put line 157. +Package hyperref Info: bookmark level for unknown proposition defaults to 0 on +input line 162. + +LaTeX Warning: Citation `DBLP:journals/cacm/Dijkstra68a' on page 3 undefined on + input line 170. + +[3.3] +Package hyperref Info: bookmark level for unknown remark defaults to 0 on input + line 190. + + +LaTeX Warning: Citation `DBLP:conf/focs/HopcroftPV75' on page 4 undefined on in +put line 195. + +No file lipics-v2021-sample-article.bbl. +[4.4] +Package hyperref Info: bookmark level for unknown theorem defaults to 0 on inpu +t line 270. +Package hyperref Info: bookmark level for unknown conjecture defaults to 0 on i +nput line 286. +Package hyperref Info: bookmark level for unknown observation defaults to 0 on +input line 290. +Package hyperref Info: bookmark level for unknown exercise defaults to 0 on inp +ut line 294. + [5.5] +Package hyperref Info: bookmark level for unknown definition defaults to 0 on i +nput line 298. +Package hyperref Info: bookmark level for unknown example defaults to 0 on inpu +t line 302. +Package hyperref Info: bookmark level for unknown note defaults to 0 on input l +ine 306. +Package hyperref Info: bookmark level for unknown note* defaults to 0 on input +line 311. +Package hyperref Info: bookmark level for unknown remark* defaults to 0 on inpu +t line 319. +Package hyperref Info: bookmark level for unknown claim* defaults to 0 on input + line 326. + [6.6] (./lipics-v2021-sample-article.aux) + +LaTeX Warning: There were undefined references. + +Package rerunfilecheck Info: File `lipics-v2021-sample-article.out' has not cha +nged. +(rerunfilecheck) Checksum: 5BA7AFE1D7627323F9231F3AC0825B3F;1713. + ) +Here is how much of TeX's memory you used: + 22248 strings out of 479023 + 370909 string characters out of 5863351 + 727080 words of memory out of 5000000 + 38986 multiletter control sequences out of 15000+600000 + 542726 words of font info for 244 fonts, out of 8000000 for 9000 + 1141 hyphenation exceptions out of 8191 + 98i,11n,102p,1049b,1201s stack positions out of 5000i,500n,10000p,200000b,80000s +{c:/texlive/2020/texmf-dist/fonts/enc/dvips/lm/lm-ec.enc}{c:/texlive/2020/tex +mf-dist/fonts/enc/dvips/lm/lm-mathit.enc}{c:/texlive/2020/texmf-dist/fonts/enc/ +dvips/lm/lm-ts1.enc}{c:/texlive/2020/texmf-dist/fonts/enc/dvips/fontawesome5/fa +5free1.enc} +Output written on lipics-v2021-sample-article.pdf (6 pages, 572347 bytes). +PDF statistics: + 294 PDF objects out of 1000 (max. 8388607) + 233 compressed objects within 3 object streams + 77 named destinations out of 1000 (max. 500000) + 81494 words of extra memory for PDF output out of 89155 (max. 10000000) + diff --git a/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.out b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.out new file mode 100644 index 0000000..e224539 --- /dev/null +++ b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.out @@ -0,0 +1,8 @@ +\BOOKMARK [1][-]{section.1}{\376\377\0001\000\040\000T\000y\000p\000e\000s\000e\000t\000t\000i\000n\000g\000\040\000i\000n\000s\000t\000r\000u\000c\000t\000i\000o\000n\000s\000\040\040\023\000\040\000S\000u\000m\000m\000a\000r\000y}{}% 1 +\BOOKMARK [1][-]{section.2}{\376\377\0002\000\040\000L\000o\000r\000e\000m\000\040\000i\000p\000s\000u\000m\000\040\000d\000o\000l\000o\000r\000\040\000s\000i\000t\000\040\000a\000m\000e\000t}{}% 2 +\BOOKMARK [2][-]{subsection.2.1}{\376\377\0002\000.\0001\000\040\000C\000u\000r\000a\000b\000i\000t\000u\000r\000\040\000d\000i\000c\000t\000u\000m\000\040\000f\000e\000l\000i\000s\000\040\000i\000d\000\040\000s\000a\000p\000i\000e\000n}{section.2}% 3 +\BOOKMARK [2][-]{subsection.2.2}{\376\377\0002\000.\0002\000\040\000P\000r\000o\000i\000n\000\040\000a\000c\000\040\000f\000e\000r\000m\000e\000n\000t\000u\000m\000\040\000a\000u\000g\000u\000e}{section.2}% 4 +\BOOKMARK [1][-]{section.3}{\376\377\0003\000\040\000P\000e\000l\000l\000e\000n\000t\000e\000s\000q\000u\000e\000\040\000q\000u\000i\000s\000\040\000t\000o\000r\000t\000o\000r}{}% 5 +\BOOKMARK [1][-]{section.4}{\376\377\0004\000\040\000M\000o\000r\000b\000i\000\040\000e\000r\000o\000s\000\040\000m\000a\000g\000n\000a}{}% 6 +\BOOKMARK [1][-]{appendix.A}{\376\377\000A\000\040\000S\000t\000y\000l\000e\000s\000\040\000o\000f\000\040\000l\000i\000s\000t\000s\000,\000\040\000e\000n\000u\000m\000e\000r\000a\000t\000i\000o\000n\000s\000,\000\040\000a\000n\000d\000\040\000d\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n\000s}{}% 7 +\BOOKMARK [1][-]{appendix.B}{\376\377\000B\000\040\000T\000h\000e\000o\000r\000e\000m\000-\000l\000i\000k\000e\000\040\000e\000n\000v\000i\000r\000o\000n\000m\000e\000n\000t\000s}{}% 8 diff --git a/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.pdf b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.pdf new file mode 100644 index 0000000..9f71827 Binary files /dev/null and b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.pdf differ diff --git a/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.synctex.gz b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.synctex.gz new file mode 100644 index 0000000..1e81aff Binary files /dev/null and b/ICDT--LIPics template/authors-lipics-v2021/lipics-v2021-sample-article.synctex.gz differ diff --git a/ICDT--LIPics template/authors-lipics-v2021/missfont.log b/ICDT--LIPics template/authors-lipics-v2021/missfont.log new file mode 100644 index 0000000..dfffb81 --- /dev/null +++ b/ICDT--LIPics template/authors-lipics-v2021/missfont.log @@ -0,0 +1 @@ +mktexpk --mfmode / --bdpi 600 --mag 0+540/600 --dpi 540 fa5free0solid diff --git a/ICDT--LIPics template/authors-lipics-v2021/orcid.pdf b/ICDT--LIPics template/authors-lipics-v2021/orcid.pdf new file mode 100644 index 0000000..c31b039 Binary files /dev/null and b/ICDT--LIPics template/authors-lipics-v2021/orcid.pdf differ diff --git a/acmart/Makefile b/Makefile similarity index 100% rename from acmart/Makefile rename to Makefile diff --git a/README b/README index 4b70862..0e67fae 100644 --- a/README +++ b/README @@ -12,154 +12,141 @@ The production version is the one on CTAN and ACM sites. Changes -version 1.08 SIGPLAN reformatting (Matthew Fluet); bug fixes +Version 1.83 Support for multilanguage papers + ISSN changes for some journals -version 1.09 SIGPLAN: revert caption rules (Matthew Fluet) +Version 1.82 Bug fixes. + New command \anon for anonymization of short strings. + Documentation update. -version 1.10 Bug fixes +Version 1.81 Bug fixes + New bib field distinctURL to print URL even if doi is present. + Reworded samples -version 1.11 Customization of ACM theorem styles and proof - environment (Matthew Fluet). +Version 1.80 New journals: DLT, FAC -version 1.12 Bug fixes and documentation updates. - Footnotes rearranged. - Option natbib is now mostly superfluous: the class - makes a guess based on the format chosen. +Version 1.79 Fixed pages with index + (https://github.com/borisveytsman/acmart/issues/440) + Updated information for TAP, TCPS, TEAC -version 1.13 Formatting changes: headers, folios etc. - Bibliography changes. +Version 1.78 Documentation update. + Magic texcount comments for samples. + Title page now is split if there are too many authors + Bug fixes. -version 1.14 Warn about undefined citation styles; move definitions - of acmauthoryear and acmnumeric citation styles before - use. +Version 1.77 Changed the way to typeset multiple affiliations (Christoph Sommer) -version 1.15 New structured affiliation command. - New commands for acknowledgements. +Version 1.76 Added many journal abbreviations to the bst. + New experimental option: pbalance + ORCID linking code -version 1.16 Formatting changes for headers and footers. +Version 1.75 \country is now obligatory for addresses. + Added \AtBeginMaketitle -version 1.17 Formatting changes for margins and lists. Bug fixes. +Version 1.74 Bug fixes. A regression introduced in the font changes + is reverted. -version 1.18 Natbib is now the default for all versions. A unified bib - file is used for all styles. Better treatment - of multiple affiliations. +Version 1.73 Bug fixes + The elements institution, city and country are now obligatory + for affiliations -version 1.19 Include 'Abstract', 'Acknowledgements', and 'References' - in PDF bookmarks. +Version 1.72 Bug fixes. Better handling of metadata. -version 1.20 Bug fixes, documentation updates +Version 1.71 Bug fixes + Formats sigchi and sigchi-a are retired + Bibliography formatting changes for @inproceedings entries + having both series and volume + LuaLaTeX now uses the same OTF fonts as XeLaTeX -version 1.21 Bibliography changes: added arXiv, some cleanup +Version 1.70 Title change for ACM/IMS Transactions on Data Science + Bug fixes for bibliography -version 1.22 Bibliography changes for Aptara backend; should be - invisible for the users. +Version 1.69 Bug fixes + Compatibility with LaTeX 2020-02-02 release -version 1.23 Added PACM PL journal option. +Version 1.68 Bug fixes + BST now recognizes words `Paper' or 'Article' in + eid or articleno -version 1.24 Added IMWUT journal option. +Version 1.67 Urgent bug fixes: + BibTeX style bug fixed (Michael D. Adams) + Sigplan special section bugfix -version 1.25 Updated PACMPL journal option. +Version 1.66 Bug fixes + BibTeX change: location is now a synonym for city (Feras Saad) + ACM reference format is now mandatory for papers over one page. + CCS concepts and keywords are now mandatory for + papers over two pages. + Authors' addresses are mandatory for journal articles. -version 1.26 Bug fixes +Version 1.65 Bug fixes + New journal: DGOV + DTRAP and HEALTH are now using acmlarge format -version 1.27 Bug fixes +Version 1.64 Produce error if abstract is entered after maketitle + (previously abstract was silently dropped) + Bug fixes for line numbering -version 1.28 Bug fixes: natbib=false now behaves correctly. +Version 1.63a Moved TQUANT to TQC -version 1.29 Documentation changes. Head height increased from 12pt to 13pt. - Removed spurious indent at start of abstract. - Improved kerning in CCS description list. +Version 1.63 New journals: TQUANT, FACMP -version 1.30 Bibtex style now recognizes https:// in doi. - Added \frenchspacing. - \department now has an optional hierarchy level. - Switched to T1 encoding - Updated IMWUT and PACMPL +Version 1.62 Documentation update + New journal: TELO + Bug fixes -version 1.31 Changed default year and month to the current ones - (thanks to Matteo Riondato) - Table of contents now works - Marginalia now work in all formats - New command \additionalaffiliation - Documentation changes +Version 1.61 Bug fixes + New bibtex types for artifacts -version 1.32 New DOI formatting. - Format siggraph is now obsolete, and sigconf - is used instead. - New proceedings title: POMACS. +Version 1.60 New option: urlbreakonhyphens (thanks to Peter Kemp) + Smaller header size for acmsmall -version 1.33 New option `timestamp' (Michael D. Adams) - New option `authordraft' - Documentation updates - Bug fixes - We now use Type 1 versions of Libertine fonts even with XeTeX. - New hook acmart-preload-hook.tex (wizards only!) - Added new options `obeypunctuation' for \affiliation command - Added SubmissionID - Added right line count ruler for two-column formats - Added workaround for Adobe Acrobat bugs in selection - Added eid field to the bibliography +Version 1.59 Now a journal format can be used for conference proceedings + All samples are now generated from the same .dtx file + Bug fixes -version 1.34 Deleted DOI from doi numbers - Changed bibstrip formatting - The command \terms is now obsolete - The rulers in review mode now have continuous numbering +Version 1.58 Suppressed spurious warnings. + New journal: HEALTH. + TDSCI is renamed to TDS. -version 1.35 Author-year bib style now uses square brackets. - Changed defaults for TOG sample - Price is suppressed for usgov and rightsretained modes. - Bugs fixed +Version 1.57 Change of \baselinestretch now produces an error + Booktabs is now always loaded + Added option `balance' to balance last page in two-column mode + E-mail is no longer split in addresses + New samples (Stephen Spencer) -Version 1.36 Bug fixes - Moved PACMPL to acmlarge format - New journal: PACMHCI - Added the possibility to adjust number of author - boxes per row in conference formats +Version 1.56 Bug fixes + Added \flushbottom to two column formats (Philip Quinn) + The final punctuation for the list of concepts + is now a period instead of a semicolon (Philip Quinn) + New command \Description to describe images for visually + impaired users. -Version 1.37 Reduce list indentation (Matthew Fluet) +Version 1.55 Bug fixes + Font changes for SIGCHI table captions -Version 1.38 Increase default font size for SIGPLAN - -Version 1.39 Added \authornotemark commmand - -Version 1.40 Bibliography changes - Added processing of one-compoment ccsdesc nodes - Bug fixes. - Made the height a multiple of \baselineskip + \topskip - Added cleveref - We no longer print street address in SIGs - -Version 1.41 Rearranged bib files - Added new badges - -Version 1.42 Deleted ACM badges +Version 1.54 New option: 'nonacm' (Gabriel Scherer) + Deleted indent for subsubsection (suggested by Ross Moore) + Suppressed some obscurious warning in BibTeX processing + Suppressed hyperrerf warnings (Paolo G. Giarrusso) + New code for sections to help with accessibility patches + (Ross Moore) + Submission id, if present, is printed in anon mode Bug fixes -Version 1.43 Bug fixes +Version 1.53 New journals: PACMCGIT, TIOT, TDSCI -Version 1.44 Bug fixes. - Empty DOI and ISBN suppress printing DOI or ISBN lines - Separated theorem code into acmthm.sty, loaded by default. - Article number can be set for proceedings. - New commands: \acmBooktile, \editor. - Reference citation format updated. +Version 1.52 Another rewording of licenses -Version 1.45 Workaround for a Libertine bug. Thanks to LianTze Lim - from Overleaf +Version 1.51 Journal footers now use abbreviated journal titles. + Corrected the bug with acmPrice. + Do not show price when copyright is set to iw3c2w3 and iw3c2w3g. + The package now is compatible with polyglossia (Joachim Breitner). + Slightly reworded copyright statements. -Version 1.46 Bug fixes for bibliography: label width is now calculated - correctly. - All PACM now use screen option. This requires etoolbox. - Added subtitle to ACM reference format. - Now acmart is compatible with fontspec. - \thanks is now obsolete. The addresses are automatically - added to the journal version; this can be overriden with - \authorsaddresses command. - Deleted the rule at the end of frontmatter for all formats. - Deleted new line before doi in the reference format. - Reintegrated theorem code into acmart.dtx (Matthew Fluet) +Version 1.50 Changes in iw3c2w3 and iw3c2w3g -Version 1.47 New journal: THRI +Version 1.49 New jorunal: DTRAP Version 1.48 Bug fixes Review mode now switches on folios @@ -173,128 +160,152 @@ Version 1.48 Bug fixes Added initial support for Biblatex (Daniel Thomas) Added support for IW3C2 conferences -Version 1.49 New jorunal: DTRAP +Version 1.47 New journal: THRI -Version 1.50 Changes in iw3c2w3 and iw3c2w3g +Version 1.46 Bug fixes for bibliography: label width is now calculated + correctly. + All PACM now use screen option. This requires etoolbox. + Added subtitle to ACM reference format. + Now acmart is compatible with fontspec. + \thanks is now obsolete. The addresses are automatically + added to the journal version; this can be overriden with + \authorsaddresses command. + Deleted the rule at the end of frontmatter for all formats. + Deleted new line before doi in the reference format. + Reintegrated theorem code into acmart.dtx (Matthew Fluet) -Version 1.51 Journal footers now use abbreviated journal titles. - Corrected the bug with acmPrice. - Do not show price when copyright is set to iw3c2w3 and iw3c2w3g. - The package now is compatible with polyglossia (Joachim Breitner). - Slightly reworded copyright statements. +Version 1.45 Workaround for a Libertine bug. Thanks to LianTze Lim + from Overleaf -Version 1.52 Another rewording of licenses +Version 1.44 Bug fixes. + Empty DOI and ISBN suppress printing DOI or ISBN lines + Separated theorem code into acmthm.sty, loaded by default. + Article number can be set for proceedings. + New commands: \acmBooktile, \editor. + Reference citation format updated. -Version 1.53 New journals: PACMCGIT, TIOT, TDSCI +Version 1.43 Bug fixes -Version 1.54 New option: 'nonacm' (Gabriel Scherer) - Deleted indent for subsubsection (suggested by Ross Moore) - Suppressed some obscurious warning in BibTeX processing - Suppressed hyperrerf warnings (Paolo G. Giarrusso) - New code for sections to help with accessibility patches - (Ross Moore) - Submission id, if present, is printed in anon mode +Version 1.42 Deleted ACM badges Bug fixes -Version 1.55 Bug fixes - Font changes for SIGCHI table captions +Version 1.41 Rearranged bib files + Added new badges -Version 1.56 Bug fixes - Added \flushbottom to two column formats (Philip Quinn) - The final punctuation for the list of concepts - is now a period instead of a semicolon (Philip Quinn) - New command \Description to describe images for visually - impaired users. +Version 1.40 Bibliography changes + Added processing of one-compoment ccsdesc nodes + Bug fixes. + Made the height a multiple of \baselineskip + \topskip + Added cleveref + We no longer print street address in SIGs -Version 1.57 Change of \baselinestretch now produces an error - Booktabs is now always loaded - Added option `balance' to balance last page in two-column mode - E-mail is no longer split in addresses - New samples (Stephen Spencer) +Version 1.39 Added \authornotemark commmand -Version 1.58 Suppressed spurious warnings. - New journal: HEALTH. - TDSCI is renamed to TDS. +Version 1.38 Increase default font size for SIGPLAN -Version 1.59 Now a journal format can be used for conference proceedings - All samples are now generated from the same .dtx file - Bug fixes +Version 1.37 Reduce list indentation (Matthew Fluet) -version 1.60 New option: urlbreakonhyphens (thanks to Peter Kemp) - Smaller header size for acmsmall +Version 1.36 Bug fixes + Moved PACMPL to acmlarge format + New journal: PACMHCI + Added the possibility to adjust number of author + boxes per row in conference formats -Version 1.61 Bug fixes - New bibtex types for artifacts +Version 1.35 Author-year bib style now uses square brackets. + Changed defaults for TOG sample + Price is suppressed for usgov and rightsretained modes. + Bugs fixed -Version 1.62 Documentation update - New journal: TELO - Bug fixes +Version 1.34 Deleted DOI from doi numbers + Changed bibstrip formatting + The command \terms is now obsolete + The rulers in review mode now have continuous numbering -Version 1.63 New journals: TQUANT, FACMP +Version 1.33 New option `timestamp' (Michael D. Adams) + New option `authordraft' + Documentation updates + Bug fixes + We now use Type 1 versions of Libertine fonts even with XeTeX. + New hook acmart-preload-hook.tex (wizards only!) + Added new options `obeypunctuation' for \affiliation command + Added SubmissionID + Added right line count ruler for two-column formats + Added workaround for Adobe Acrobat bugs in selection + Added eid field to the bibliography -Version 1.63a Moved TQUANT to TQC +Version 1.32 New DOI formatting. + Format siggraph is now obsolete, and sigconf + is used instead. + New proceedings title: POMACS. -Version 1.64 Produce error if abstract is entered after maketitle - (previously abstract was silently dropped) - Bug fixes for line numbering +Version 1.31 Changed default year and month to the current ones + (thanks to Matteo Riondato) + Table of contents now works + Marginalia now work in all formats + New command \additionalaffiliation + Documentation changes -Version 1.65 Bug fixes - New journal: DGOV - DTRAP and HEALTH are now using acmlarge format +Version 1.30 Bibtex style now recognizes https:// in doi. + Added \frenchspacing. + \department now has an optional hierarchy level. + Switched to T1 encoding + Updated IMWUT and PACMPL -Version 1.66 Bug fixes - BibTeX change: location is now a synonym for city (Feras Saad) - ACM reference format is now mandatory for papers over one page. - CCS concepts and keywords are now mandatory for - papers over two pages. - Authors' addresses are mandatory for journal articles. +Version 1.29 Documentation changes. Head height increased from 12pt to 13pt. + Removed spurious indent at start of abstract. + Improved kerning in CCS description list. -Version 1.67 Urgent bug fixes: - BibTeX style bug fixed (Michael D. Adams) - Sigplan special section bugfix +Version 1.28 Bug fixes: natbib=false now behaves correctly. -Version 1.68 Bug fixes - BST now recognizes words `Paper' or 'Article' in - eid or articleno +Version 1.27 Bug fixes -Version 1.69 Bug fixes - Compatibility with LaTeX 2020-02-02 release +Version 1.26 Bug fixes -Version 1.70 Title change for ACM/IMS Transactions on Data Science - Bug fixes for bibliography +Version 1.25 Updated PACMPL journal option. + +Version 1.24 Added IMWUT journal option. + +Version 1.23 Added PACM PL journal option. + +Version 1.22 Bibliography changes for Aptara backend; should be + invisible for the users. + +Version 1.21 Bibliography changes: added arXiv, some cleanup + +Version 1.20 Bug fixes, documentation updates + +Version 1.19 Include 'Abstract', 'Acknowledgements', and 'References' + in PDF bookmarks. + +Version 1.18 Natbib is now the default for all versions. A unified bib + file is used for all styles. Better treatment + of multiple affiliations. -Version 1.71 Bug fixes - Formats sigchi and sigchi-a are retired - Bibliography formatting changes for @inproceedings entries - having both series and volume - LuaLaTeX now uses the same OTF fonts as XeLaTeX +Version 1.17 Formatting changes for margins and lists. Bug fixes. -Version 1.72 Bug fixes. Better handling of metadata. +Version 1.16 Formatting changes for headers and footers. -Version 1.73 Bug fixes - The elements institution, city and country are now obligatory - for affiliations +Version 1.15 New structured affiliation command. + New commands for acknowledgements. -Version 1.74 Bug fixes. A regression introduced in the font changes - is reverted. +Version 1.14 Warn about undefined citation styles; move definitions + of acmauthoryear and acmnumeric citation styles before + use. -Version 1.75. \country is now obligatory for addresses. - Added \AtBeginMaketitle +Version 1.13 Formatting changes: headers, folios etc. + Bibliography changes. -Version 1.76. Added many journal abbreviations to the bst. - New experimental option: pbalance - ORCID linking code +Version 1.12 Bug fixes and documentation updates. + Footnotes rearranged. + Option natbib is now mostly superfluous: the class + makes a guess based on the format chosen. -Version 1.77. Changed the way to typeset multiple affiliations (Christoph Sommer) +Version 1.11 Customization of ACM theorem styles and proof + environment (Matthew Fluet). -Version 1.78. Documentation update. - Magic texcount comments for samples. - Title page now is split if there are too many authors - Bug fixes. +Version 1.10 Bug fixes -Version 1.79. Fixed pages with index - (https://github.com/borisveytsman/acmart/issues/440) - Updated information for TAP, TCPS, TEAC +Version 1.09 SIGPLAN: revert caption rules (Matthew Fluet) -Version 1.80. New journals: DLT, FAC +Version 1.08 SIGPLAN reformatting (Matthew Fluet); bug fixes diff --git a/Related Work/On Codd Semantics of SQL Nulls.pdf b/Related Work/On Codd Semantics of SQL Nulls.pdf new file mode 100644 index 0000000..9e9e9a9 Binary files /dev/null and b/Related Work/On Codd Semantics of SQL Nulls.pdf differ diff --git a/abstract.tex b/abstract.tex index 2507303..1f027b5 100644 --- a/abstract.tex +++ b/abstract.tex @@ -1,13 +1,11 @@ %root: main.tex %!TEX root=./main.tex -\begin{abstract} In this work, we study the problem of computing a tuple's expected multiplicity over probabilistic databases with bag semantics (where each tuple is associated with a multiplicity) exactly and approximately. We consider bag-\abbrTIDB\xplural where we have a bound $\bound$ on the maximum multiplicity of each tuple and tuples are independent probabilistic events (we refer to such databases as \abbrCTIDB\xplural). We are specifically interested in the fine-grained complexity of computing expected multiplicities and how it compares to the complexity of deterministic query evaluation algorithms --- if these complexities are comparable, it opens the door to practical deployment of probabilistic databases. Unfortunately, our results imply that computing expected multiplicities for \abbrCTIDB\xplural based on the results produced by such query evaluation algorithms introduces super-linear overhead (under parameterized complexity hardness assumptions/conjectures). We proceed to study approximation of expected result tuple multiplicities for positive relational algebra queries ($\raPlus$) over \abbrCTIDB\xplural and for a non-trivial subclass of block-independent databases (\abbrBIDB\xplural). We develop a sampling algorithm that computes a $(1 \pm \epsilon)$-approximation of the expected multiplicity of an output tuple in time linear in the runtime of the corresponding deterministic query for any $\raPlus$ query. -\end{abstract} %%% Local Variables: %%% mode: latex diff --git a/acmart.bib b/acmart.bib index c4ccd85..2e422a7 100644 --- a/acmart.bib +++ b/acmart.bib @@ -87,3 +87,9 @@ note = {\url{http://www.ctan.org/pkg/textcase}} } +@Manual{Braams22:Babel, + title = {Babel}, + author = {Johannes L. Braams and Javier Bezos}, + year = 2022, + note = {\url{http://www.ctan.org/pkg/babel}}} + diff --git a/acmart.cls b/acmart.cls index 1135130..0fb96ac 100644 --- a/acmart.cls +++ b/acmart.cls @@ -37,7 +37,7 @@ %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} \ProvidesClass{acmart} -[2020/11/15 v1.75 Typesetting articles for the Association for Computing Machinery] +[2022/02/19 v1.83 Typesetting articles for the Association for Computing Machinery] \def\@classname{acmart} \InputIfFileExists{acmart-preload-hook.tex}{% \ClassWarning{\@classname}{% @@ -120,6 +120,10 @@ \PackageError{\@classname}{The option balance can be either true or false}} \ExecuteOptionsX{balance} +\define@boolkey+{acmart.cls}[@ACM@]{pbalance}[true]{}{% + \PackageError{\@classname}{The option pbalance can be either true or + false}} +\ExecuteOptionsX{pbalance=false} \define@boolkey+{acmart.cls}[@ACM@]{natbib}[true]{% \if@ACM@natbib \PackageInfo{\@classname}{Explicitly selecting natbib mode}% @@ -159,6 +163,11 @@ \DeclareOptionX{10pt}{\edef\ACM@fontsize{\CurrentOption}} \DeclareOptionX{11pt}{\edef\ACM@fontsize{\CurrentOption}} \DeclareOptionX{12pt}{\edef\ACM@fontsize{\CurrentOption}} +\def\ACM@languages{} +\DeclareOptionX{language}{% + \ifx\ACM@languages\@empty + \gdef\ACM@languages{english}\fi + \g@addto@macro\ACM@languages{, #1}} \DeclareOptionX{draft}{\PassOptionsToClass{\CurrentOption}{amsart}} \DeclareOptionX{*}{\PassOptionsToClass{\CurrentOption}{amsart}} \ProcessOptionsX @@ -353,6 +362,77 @@ \if@ACM@natbib \citestyle{acmnumeric} \fi +\if@ACM@journal + \renewcommand\keywordsname{Additional Key Words and Phrases}% +\else + \renewcommand\keywordsname{Keywords}% +\fi +\ifx\ACM@languages\@empty +\else + \RequirePackage[\ACM@languages]{babel}% + \addto\captionsenglish{% + \if@ACM@journal + \renewcommand\keywordsname{Additional Key Words and Phrases}% + \else + \renewcommand\keywordsname{Keywords}% + \fi + \renewcommand\acksname{Acknowledgements}% + }% + \addto\captionsfrench{% + \if@ACM@journal + \renewcommand\keywordsname{Mots Clés et Phrases Supplémentaires}% + \else + \renewcommand\keywordsname{Mots clés}% + \fi + \renewcommand\acksname{Remerciements}% + }% + \addto\captionsgerman{% + \if@ACM@journal + \renewcommand\keywordsname{Zusätzliche Schlüsselwörter und Phrasen}% + \else + \renewcommand\keywordsname{Schlüsselwörter}% + \fi + \renewcommand\acksname{Danksagungen}% + }% + \addto\captionsspanish{% + \if@ACM@journal + \renewcommand\keywordsname{Palabras y Frases Claves Adicionales}% + \else + \renewcommand\keywordsname{Palabras claves}% + \fi + \renewcommand\acksname{Expresiones de gratitud}% + }% +\fi +\newcommand\ACM@lang@check[1]{% + \ifx\ACM@languages\@empty\relax + \ClassError{\@classname}{% + Command \string#1 \MessageBreak is used in monlingual document}{% + You used a command (\string#1) \MessageBreak + that does not have a meaning \MessageBreak + unless are languages are defined. \MessageBreak + Please choose the languages in \string\documentclass + \MessageBreak + (e.g. \string\documentclass[languages={french, english}]{acmart}), + \MessageBreak + or delete the command.}% + \fi} +\def\@translatedtitle{} +\newcommand\translatedtitle[2]{\ACM@lang@check{\translatedtitle}% +\g@addto@macro\@translatedtitle{\par\foreignlanguage{#1}{#2}}} +\def\@translatedsubtitle{} +\newcommand\translatedsubtitle[2]{\ACM@lang@check{\translatedsubtitle}% +\g@addto@macro\@translatedsubtitle{\par\foreignlanguage{#1}{#2}}} +\def\@translatedkeywords{} +\newcommand\translatedkeywords[2]{\ACM@lang@check{\translatedkeywords}% +\g@addto@macro\@translatedkeywords{\@mktranslatedkeywords{#1}{#2}}} +\def\@translatedabstracts{} +\newenvironment{translatedabstract}[1]{\Collect@Body + \@savetranslatedabstract\@mktranslatedabstract{#1}}{} +\long\def\@savetranslatedabstract#1{\if@ACM@maketitle@typeset + \ClassError{\@classname}{Abstract must be defined before maketitle + command. Please move it!}\fi + \ACM@lang@check{translatedabstract}% + \g@addto@macro\@translatedabstracts{\bgroup#1\egroup}} \def\@startsection#1#2#3#4#5#6{% \if@noskipsec \leavevmode \fi \par @@ -487,6 +567,7 @@ \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}% \color@endgroup}} \def\@makefnmark{\hbox{\@textsuperscript{\normalfont\@thefnmark}}} +\RequirePackage{hyperxmp} \let\@footnotemark@nolink\@footnotemark \let\@footnotetext@nolink\@footnotetext \RequirePackage[bookmarksnumbered,unicode]{hyperref} @@ -526,7 +607,6 @@ \fi \hypersetup{pdflang={en}, pdfdisplaydoctitle}} -\RequirePackage{hyperxmp} \if@ACM@natbib \let\citeN\cite \let\cite\citep @@ -935,7 +1015,9 @@ CIE,% CSUR,% DGOV,% + DLT,% DTRAP,% + FAC,% HEALTH,% IMWUT,% JACM,% @@ -1007,10 +1089,19 @@ \def\@journalName{Digital Government: Research and Practice}% \def\@journalNameShort{Digit. Gov. Res. Pract.}% \def\@permissionCodeOne{2639-0175}% +\or % DLT + \def\@journalName{Distributed Ledger Technologies: Research and Practice}% + \def\@journalNameShort{Distrib. Ledger Technol.}% + \def\@permissionCodeOne{2769-6472}% \or % DTRAP \def\@journalName{Digital Threats: Research and Practice}% \def\@journalNameShort{Digit. Threat. Res. Pract.}% \def\@permissionCodeOne{2576-5337}% +\or % FAC + \def\@journalName{Formal Aspects of Computing}% + \def\@journalNameShort{Form. Asp. Comput.}% + \def\@permissionCodeOne{0934-5043}% + \def\@permissionCodeTwo{1433-299X}% \or % HEALTH \def\@journalName{ACM Transactions on Computing for Healthcare}% \def\@journalNameShort{ACM Trans. Comput. Healthcare}% @@ -1045,6 +1136,8 @@ \or % JOCCH \def\@journalName{ACM Journal on Computing and Cultural Heritage}% \def\@journalNameShort{ACM J. Comput. Cult. Herit.}% + \def\@permissionCodeOne{1556-4673}% + \def\@permissionCodeTwo{1556-4711}% \or % PACMCGIT \def\@journalName{Proceedings of the ACM on Computer Graphics and Interactive Techniques}% \def\@journalNameShort{Proc. ACM Comput. Graph. Interact. Tech.}% @@ -1080,6 +1173,8 @@ \or % TACO \def\@journalName{ACM Transactions on Architecture and Code Optimization}% \def\@journalNameShort{ACM Trans. Arch. Code Optim.}% + \def\@permissionCodeOne{1544-3566}% + \def\@permissionCodeTwo{1544-3973}% \or % TALG \def\@journalName{ACM Transactions on Algorithms}% \def\@journalNameShort{ACM Trans. Algor.}% @@ -1090,14 +1185,20 @@ \def\@permissionCodeOne{2375-4699}% \or % TAP \def\@journalName{ACM Transactions on Applied Perception}% + \def\@journalNameShort{ACM Trans. Appl. Percept.}% + \def\@permissionCodeOne{1544-3558}% \or % TCPS \def\@journalName{ACM Transactions on Cyber-Physical Systems}% + \def\@journalNameShort{ACM Trans. Cyber-Phys. Syst.}% + \def\@permissionCodeOne{2378-962X}% \or % TDS \def\@journalName{ACM/IMS Transactions on Data Science}% \def\@journalNameShort{ACM/IMS Trans. Data Sci.}% \def\@permissionCodeOne{2577-3224}% \or % TEAC \def\@journalName{ACM Transactions on Economics and Computation}% + \def\@journalNameShort{ACM Trans. Econ. Comput.}% + \def\@permissionCodeOne{2167-8375}% \or % TECS \def\@journalName{ACM Transactions on Embedded Computing Systems}% \def\@journalNameShort{ACM Trans. Embedd. Comput. Syst.}% @@ -1168,6 +1269,7 @@ \def\@permissionCodeOne{0730-0301} \or % TOIS \def\@journalName{ACM Transactions on Information Systems}% + \def\@journalNameShort{ACM Trans. Inf. Syst.}% \def\@permissionCodeOne{1046-8188}% \or % TOIT \def\@journalName{ACM Transactions on Internet Technology}% @@ -1176,11 +1278,13 @@ \or % TOMACS \def\@journalName{ACM Transactions on Modeling and Computer Simulation}% \def\@journalNameShort{ACM Trans. Model. Comput. Simul.}% + \def\@permissionCodeOne{1049-3301}% + \def\@permissionCodeTwo{1558-1195}% \or % TOMM \def\@journalName{ACM Transactions on Multimedia Computing, Communications and Applications}% \def\@journalNameShort{ACM Trans. Multimedia Comput. Commun. Appl.}% \def\@permissionCodeOne{1551-6857}% - \def\@permissionCodeTwo{0100}% + \def\@permissionCodeTwo{1551-6865}% \or % TOMPECS \def\@journalName{ACM Transactions on Modeling and Performance Evaluation of Computing Systems}% \def\@journalNameShort{ACM Trans. Model. Perform. Eval. Comput. Syst.}% @@ -1238,8 +1342,8 @@ \def\@journalNameShort{ACM Trans. Web}% \def\@permissionCodeOne{1559-1131}% \else % FACMP, a dummy journal - \def\@journalName{Forthcoming ACM Publication}% - \def\@journalNameShort{ACM Forthcoming}% + \def\@journalName{ACM Just Accepted}% + \def\@journalNameShort{ACM Accepted}% \def\@permissionCodeOne{XXXX-XXXX}% \fi \ClassInfo{\@classname}{Using journal code \@journalCode}% @@ -1268,9 +1372,12 @@ DC, USA}% \fi \def\acmBooktitle#1{\gdef\@acmBooktitle{#1}} +\acmBooktitle{} +\ifx\acmConference@name\@undefined\else \acmBooktitle{Proceedings of \acmConference@name \ifx\acmConference@name\acmConference@shortname\else - \ (\acmConference@shortname)\fi} + \ (\acmConference@shortname)\fi} +\fi \def\@editorsAbbrev{(Ed.)} \def\@acmEditors{} \def\editor#1{\ifx\@acmEditors\@empty @@ -1302,12 +1409,16 @@ \@acmSubmissionID\fi}}% \gdef\authors{Anonymous Author(s)}% \else - \gdef\addresses{\@author{#2}}% + \expandafter\gdef\expandafter\addresses\expandafter{% + \expandafter\@author\expandafter{% + \csname typeset@author\the\num@authors\endcsname{#2}}}% \gdef\authors{#2}% \fi \else \if@ACM@anonymous\else - \g@addto@macro\addresses{\and\@author{#2}}% + \expandafter\g@addto@macro\expandafter\addresses\expandafter{% + \expandafter\and\expandafter\@author\expandafter{% + \csname typeset@author\the\num@authors\endcsname{#2}}}% \g@addto@macro\authors{\and#2}% \fi \fi @@ -1358,9 +1469,20 @@ \if@ACM@anonymous\else \g@addto@macro\addresses{\email{#1}{#2}}% \fi} -\def\orcid#1{\unskip\ignorespaces} +\def\orcid#1{\unskip\ignorespaces% + \IfBeginWith{#1}{http}{% + \expandafter\gdef\csname + typeset@author\the\num@authors\endcsname##1{% + \href{#1}{##1}}}{% + \expandafter\gdef\csname + typeset@author\the\num@authors\endcsname##1{% + \href{https://orcid.org/#1}{##1}}}} \def\authorsaddresses#1{\def\@authorsaddresses{#1}} \authorsaddresses{\@mkauthorsaddresses} +\newcommand\@mktranslatedkeywords[2]{\bgroup + \selectlanguage{#1}% + {\@specialsection{\keywordsname}% + \noindent#2\par}\egroup} \def\@titlenotes{} \def\titlenote#1{% \g@addto@macro\@title{\footnotemark}% @@ -1466,8 +1588,11 @@ \fi}{\ClassError{\@classname}{The option printacmref can be either true or false}} \AtEndDocument{\if@ACM@nonacm\else\if@ACM@printacmref\else \ifnum\getrefnumber{TotPages}>1\relax - \ClassWarningNoLine{\@classname}{ACM reference format is mandatory - for papers over one page}% + \ClassWarningNoLine{\@classname}{% + ACM reference format is mandatory \MessageBreak + for papers over one page. \MessageBreak + Please add printacmref=true to the \MessageBreak + \string\settopmatter\space command.}% \fi\fi\fi} \define@boolkey+{@ACM@topmatter@}[@ACM@]{printfolios}[true]{% \if@ACM@printfolios @@ -1778,6 +1903,12 @@ \else \g@addto@macro\thankses{\thanks{#1}}% \fi}} +\newcommand{\anon}[2][ANONYMIZED]{% + \if@ACM@anonymous% + {\color{ACMOrange}#1}% + \else% + #2% + \fi} \ifx\@beginmaketitlehook\@undefined \let\@beginmaketitlehook\@empty \fi @@ -1875,6 +2006,8 @@ \endgroup \setcounter{footnote}{0}% \@mkabstract + \ifx\@translatedabstracts\@empty\else + \@translatedabstracts\fi \if@ACM@printccs \ifx\@concepts\@empty\else\bgroup {\@specialsection{CCS Concepts}% @@ -1882,13 +2015,12 @@ \fi \fi \ifx\@keywords\@empty\else\bgroup - {\if@ACM@journal - \@specialsection{Additional Key Words and Phrases}% - \else - \@specialsection{Keywords}% - \fi - \noindent\@keywords}\par\egroup + {\@specialsection{\keywordsname}% + \noindent\@keywords\par}\egroup \fi + \ifx\@translatedkeywords\@empty\else + \@translatedkeywords + \fi \let\metadata@authors=\authors \nxandlist{, }{, }{, }\metadata@authors \def\@ACM@checkaffil{}% @@ -1916,6 +2048,8 @@ \@afterheading } \def\@specialsection#1{% + \let\@vspace\@vspace@orig + \let\@vspacer\@vspacer@orig \ifcase\ACM@format@nr \relax % manuscript \par\medskip\small\noindent#1: % @@ -1936,6 +2070,8 @@ \or % sigchi-a \section*{#1}% \fi + \let\@vspace\@vspace@acm + \let\@vspacer\@vspacer@acm } \def\@printtopmatter{% \ifx\@startPage\@empty @@ -1943,6 +2079,18 @@ \else \setcounter{page}{\@startPage}% \fi + \@tempdima=\ht\mktitle@bx + \advance\@tempdima by \dp\mktitle@bx + \ifdim\@tempdima>0.9\textheight + \loop + \setbox\@tempboxa=\vsplit \mktitle@bx to 0.9\textheight + \thispagestyle{firstpagestyle}% + \noindent\unvbox\@tempboxa + \clearpage + \@tempdima=\ht\mktitle@bx + \advance\@tempdima by \dp\mktitle@bx + \ifdim\@tempdima>0.9\textheight\repeat + \fi \thispagestyle{firstpagestyle}% \noindent \ifcase\ACM@format@nr @@ -2060,9 +2208,9 @@ \fi \parbox[t]{\@ACM@title@width}{\raggedright \@titlefont\noindent - \@title + \@title\@translatedtitle% \ifx\@subtitle\@empty\else - \par\noindent{\@subtitlefont\@subtitle} + \par\noindent{\@subtitlefont\@subtitle\@translatedsubtitle}% \fi}% \ifx\@acmBadgeR@image\@empty\else \hskip\@ACM@badge@skip @@ -2084,9 +2232,9 @@ \hskip\@ACM@badge@skip \fi \parbox[t]{\@ACM@title@width}{\centering\@titlefont - \@title + \@title\@translatedtitle% \ifx\@subtitle\@empty\else - \par\noindent{\@subtitlefont\@subtitle} + \par\noindent{\@subtitlefont\@subtitle\@translatedsubtitle} \fi }% \if@ACM@badge @@ -2101,9 +2249,9 @@ \def\@mktitle@iv{\hsize=\textwidth \setbox\mktitle@bx=\vbox{\raggedright\leftskip5pc\@titlefont \noindent\leavevmode\leaders\hrule height 2pt\hfill\kern0pt\par - \noindent\@title + \noindent\@title\@translatedtitle% \ifx\@subtitle\@empty\else - \par\noindent\@subtitlefont\@subtitle + \par\noindent\@subtitlefont\@subtitle\@translatedsubtitle% \fi \par\bigskip}}% \newbox\@ACM@commabox @@ -2245,7 +2393,7 @@ \fi \fi \global\let\and\@typeset@author@line}% - \global\setbox\mktitle@bx=\vbox{\noindent\box\mktitle@bx\par\medskip + \global\setbox\mktitle@bx=\vbox{\noindent\unvbox\mktitle@bx\par\medskip \noindent\addresses\@typeset@author@line \par\medskip}% } @@ -2311,7 +2459,7 @@ }% \hsize=\textwidth \global\setbox\mktitle@bx=\vbox{\noindent - \box\mktitle@bx\par\medskip\leavevmode + \unvbox\mktitle@bx\par\medskip\leavevmode \lineskip=1pc\relax\centering\hspace*{-1em}% \addresses\let\and\@typeset@author@bx\and\par\bigskip}} \def\@mkauthors@iv{% @@ -2366,12 +2514,13 @@ \def\streetaddress##1{\unskip, ##1}% \def\postcode##1{\unskip, ##1}% \def\position##1{\unskip\ignorespaces}% - \def\institution##1{\unskip, ##1}% + \gdef\@ACM@institution@separator{, }% + \def\institution##1{\unskip\@ACM@institution@separator ##1\gdef\@ACM@institution@separator{ and }}% \def\city##1{\unskip, ##1}% \def\state##1{\unskip, ##1}% \renewcommand\department[2][0]{\unskip\@addpunct, ##2}% \def\country##1{\unskip, ##1}% - \def\and{\unskip; }% + \def\and{\unskip; \gdef\@ACM@institution@separator{, }}% \def\@author##1{##1}% \def\email##1##2{\unskip, \nolinkurl{##2}}% \addresses @@ -2388,7 +2537,7 @@ \ifx\@teaserfigures\@empty\else \def\@teaser##1{\par\bigskip\bgroup \captionsetup{type=figure}##1\egroup\par} - \global\setbox\mktitle@bx=\vbox{\noindent\box\mktitle@bx\par + \global\setbox\mktitle@bx=\vbox{\noindent\unvbox\mktitle@bx\par \noindent\@Description@presentfalse \@teaserfigures\par\if@Description@present\else \global\@undescribed@imagestrue @@ -2398,7 +2547,7 @@ \fi} \def\@mkabstract{\bgroup \ifx\@abstract\@lempty\else - {\phantomsection\addcontentsline{toc}{section}{Abstract}% + {\phantomsection\addcontentsline{toc}{section}{\abstractname}% \if@ACM@journal \everypar{\setbox\z@\lastbox\everypar{}}\small \else @@ -2406,6 +2555,13 @@ \fi \ignorespaces\@abstract\par}% \fi\egroup} +\def\@mktranslatedabstract#1{\selectlanguage{#1}% + \if@ACM@journal + \everypar{\setbox\z@\lastbox\everypar{}}\small + \else + \section*{\abstractname}% + \fi + \ignorespaces} \def\@mkbibcitation{\bgroup \let\@vspace\@vspace@orig \let\@vspacer\@vspacer@orig @@ -2587,7 +2743,10 @@ \fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}% \fancyhead[LO]{\ACM@linecountL\@headfootfont\shorttitle}% \fancyhead[RE]{\@headfootfont\@shortauthors\ACM@linecountR}% - \if@ACM@nonacm\else% + \if@ACM@nonacm + \fancyhead[LE]{\ACM@linecountL}% + \fancyhead[RO]{\ACM@linecountR}% + \else% \fancyhead[LE]{\ACM@linecountL\@headfootfont\footnotesize \acmConference@shortname, \acmConference@date, \acmConference@venue}% @@ -2600,7 +2759,10 @@ \fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}% \fancyhead[LO]{\ACM@linecountL\@headfootfont\shorttitle}% \fancyhead[RE]{\@headfootfont\@shortauthors\ACM@linecountR}% - \if@ACM@nonacm\else% + \if@ACM@nonacm + \fancyhead[LE]{\ACM@linecountL}% + \fancyhead[RO]{\ACM@linecountR}% + \else% \fancyhead[LE]{\ACM@linecountL\@headfootfont \acmConference@shortname, \acmConference@date, \acmConference@venue}% @@ -2931,6 +3093,25 @@ \popQED\endtrivlist\@endpefalse } \AtEndPreamble{% + \if@ACM@pbalance + \global\@ACM@balancefalse + \ifcase\ACM@format@nr + \relax % manuscript + \or % acmsmall + \or % acmlarge + \or % acmtog + \RequirePackage{pbalance}% + \or % sigconf + \RequirePackage{pbalance}% + \or % siggraph + \RequirePackage{pbalance}% + \or % sigplan + \RequirePackage{pbalance}% + \or % sigchi + \RequirePackage{pbalance}% + \or % sigchi-a + \fi + \fi \if@ACM@balance \ifcase\ACM@format@nr \relax % manuscript @@ -2988,9 +3169,24 @@ \def\@tempa{#1}% \ifx\@tempa\@empty\def\@tempa{arxiv}\fi \def\@tempb{arxiv}% - \ifx\@tempa\@tempb - arXiv:\href{https://arxiv.org/abs/#2}{#2}\else arXiv:#2% + \ifx\@tempa\@tempb\relax + arXiv:\href{https://arxiv.org/abs/#2}{#2}% + \else + \def\@tempb{arXiv}% + \ifx\@tempa\@tempb\relax + arXiv:\href{https://arxiv.org/abs/#2}{#2}% + \else + #1:#2% + \fi \fi} +\def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi + \columnseprule\z@ \columnsep 35\p@ + \@indextitlestyle + \let\item\@idxitem + \parindent\z@ \parskip\z@\@plus.3\p@\relax + \raggedright + \hyphenpenalty\@M + \footnotesize} \let\@vspace@orig=\@vspace \let\@vspacer@orig=\@vspacer \apptocmd{\@vspace}{\ClassWarning{\@classname}{\string\vspace\space should diff --git a/acmart.dtx b/acmart.dtx index ed0a0c8..41d54db 100644 --- a/acmart.dtx +++ b/acmart.dtx @@ -103,6 +103,7 @@ % Dirk Beyer, % Andrew Black, % Joachim Breitner, +% Yegor Bugayenko, % Benjamin Byholm, % John Collins, % Nils Anders Danielsson, @@ -299,7 +300,7 @@ % \normalfont Value & Meaning\\ % \midrule % manuscript & A manuscript. This is the default. \\ -% acmsmall & Small single-column format. Used for CIE, CSUR, +% acmsmall & Small single-column format. Used for CIE, CSUR, % DLT, FAC, JACM, JDIQ, JEA, JERIC, % JETC, PACMCGIT, PACMHCI, PACMPL, TAAS, TACCESS, TACO, % TALG, TALLIP (formerly TALIP), TCPS, TDS, @@ -325,7 +326,7 @@ % SIGCHI conferences now use |sigconf| format for their publications. % If a file uses |sigchi| format, a warning is issued, and the format % is automatically switched to |sigconf|. Format |sigchi-a| can be -% used for non-ACM documents only (see Section~\ref{sec:sigchi-a}). +% used for non-ACM documents only (see Section~\ref{sec:sigchi-a}). % % There are several Boolean options that can take |true| or |false| % values. They are listed in Table~\ref{tab:opts_bool}. The words @@ -340,7 +341,7 @@ % % Two samples in the |samples| directory, |manuscript| and % |acmsmall-submission|, show manuscripts formatted for submission to -% ACM. +% ACM. % % The default for the option |screen| depends on the publication. At % present it is |false| for all publications \emph{but} PACM, since @@ -414,12 +415,14 @@ % mode\\ % pbalance & false & Whether to balance the last page in two column % mode using pbalance package\\ -% urlbreakonhyphens & true & Whether to break urls on hyphens\\ +% urlbreakonhyphens & true & Whether to break urls on hyphens\\ % \bottomrule % \end{tabularx} % \end{table} % -% +% The option |language| is used to define the languages for the +% multi-language papers. It is discussed in +% Section~\ref{sec:ug_i13n}. % %\subsection{Top matter} %\label{sec:ug_topmatter} @@ -492,7 +495,7 @@ % formatting. In the samples directory there is a file % |sample-acmsmall-conf.tex| with the example of this usage. % -% +% % % \DescribeMacro{\editor}% % In most cases, conference proceedings are edited. You can use the @@ -749,7 +752,7 @@ % 123456 Helm, Germany % \end{verbatim} % -% Note that you should \emph{not} use this option for journals. +% Note that you should \emph{not} use this option for journals. % % It is expected that these commands are inserted by the author of the % manuscript. @@ -782,7 +785,7 @@ % \end{verbatim} % You can \emph{suppress} printing authors' addresses by setting them % to an empty string: |\authorsaddresses{}|. Please note that -% authors' addresses are mandatory for journal articles. +% authors' addresses are mandatory for journal articles. % % \DescribeMacro{\titlenote}% % \DescribeMacro{\subtitlenote}% @@ -976,7 +979,7 @@ % % CCS Concepts and user-defined keywords are required for all articles % over two pages in length, and are optional for one- and two-page -% articles (or abstracts). +% articles (or abstracts). % % \DescribeMacro{\setcopyright} % There are several possibilities for the copyright of the papers @@ -987,7 +990,7 @@ % copyright status of the paper, for example, % \verb|\setcopyright{acmcopyright}|. The possible values for this % command are listed in Table~\ref{tab:setcopyright}. This command -% must be placed in the preamble, before |\begin{document}|. +% must be placed in the preamble, before |\begin{document}|. % % \begin{table} % \centering @@ -1102,7 +1105,7 @@ % The parameter |printacmref| specifies whether to print the ACM % bibliographic entry (default), or not. Note that this entry is % required for all articles over one page in length, and is optional -% for one-page articles (abstracts). +% for one-page articles (abstracts). % % \begin{table} % \centering @@ -1152,6 +1155,82 @@ % \end{verbatim} % % +% +%\subsection{Internationalization} +%\label{sec:ug_i13n} +% +% ACM accepts publications in languages other than English, as well as +% papers in English with translations of titles, subtitles, keywords +% and abstracts into other languages. Papers in languages other than +% English usually have titles, subtitles (if applicable), keywords and +% abstracts in English. Note that CCS concepts are always typeset in +% English. +% +% To submit these papers you need to set the option |language| in the +% \cs{documentclass} command. This option can be repeated, for +% example, +% \begin{verbatim} +% \documentclass[sigconf, language=french, language=english]{acmart} +% \end{verbatim} +% The last language in the list is the main language of the paper, +% i.e. the one for the main title, abstract, body, etc. The other +% languages are \emph{secondary,} and used for translated titles, +% keywords, abstracts. Thus the paper above is written in English, +% and has a secondary abstract and a secondary title in French. On +% the other hand, a paper in French wih secondary titles and abstracts +% in English and German should use, for example +% \begin{verbatim} +% \documentclass[sigconf, +% language=german, +% language=english, +% language=french]{acmart} +% \end{verbatim} +% +% +% This key can use any language defined in \textsl{babel} +% package~\cite{Braams22:Babel} (currently the package is tested with +% English, French, German and Spanish languages; other languages may +% require a translation of \cs{keywordsname} macro). Actually +% \textsl{acmart} loads \textsl{babel} internally, so you can use the +% facilities provided by this package. +% +% +% If this key is set, you have access to several additional top matter +% commands. +% +% \DescribeMacro{\translatedtitle}% +% \DescribeMacro{\translatedsubtitle}% +% \DescribeMacro{\translatedkeywords}% +% The commands \cs{translatedtitle}\marg{language}{title}, +% \cs{translatedsubtitle}\marg{language}{subtitle} and +% \cs{translatedkeywords}{language}{keywords} are used to set title, +% subtitle and keywords in the secondary language. For example, a +% paper in English with French title and abstract may set +% \begin{verbatim} +% \title{A note on computational complexity} +% \translatedtitle{french}{Remarque sur la complexit\'e de calcul} +% \end{verbatim} +% while a paper in French should set +% \begin{verbatim} +% \title{Remarque sur la complexit\'e de calcul} +% \translatedtitle{english}{A note on computational complexity} +% \end{verbatim} +% +% \DescribeEnv{translatedabstract}% +% Similarly, |translatedabstract| environment has a mandatory language +% argument, for example, +% \begin{verbatim} +% \begin{translatedastract}{english} +% This is the English version of the abstract +% \end{translatedastract} +% \end{verbatim} +% +% You can repeat these commands if a paper has more than one secondary +% language. +% +% Use the standard commands (\cs{title}, \cs{subtitle}, +% \cs{keywords}, |abstract|) for the main language of the paper. +% %\subsection{Algorithms} %\label{sec:ug_algorithms} % @@ -1269,7 +1348,7 @@ % \end{figure} % \end{verbatim} % At present the lack of descriptions generates a warning at -% compilation. +% compilation. % %\subsection{Theorems} %\label{sec:ug_theorems} @@ -1294,6 +1373,17 @@ % defined, the option |acmthm=false| in the preamble will suppress % them. % +% Sometimes authors want to define new theorem-like constructs that +% use |theorem| counters. These constructs must be defined either after +% |\begin{document}|, or delayed using \cs{AtEndPreamble} macro, +% for example, +% \begin{verbatim} +% \AtEndPreamble{% +% \theoremstyle{acmdefinition} +% \newtheorem{remark}[theorem]{Remark}} +% \end{verbatim} +% +% %\subsection{Online-only and offline-only material} %\label{sec:ug_screen} % @@ -1340,6 +1430,16 @@ % |\begin{anonsuppress}| and |\end{anonsuppress}| should start on a % line of their own with no leading or trailing spaces. % +% \DescribeMacro{\anon}% +% To suppress short snippets of information, use the command +% \cs{anon}\oarg{substitute}\marg{suppressed-text}. By default +% \oarg{substitute} is the word ANONYMOUS. Examples: +% \begin{verbatim} +% This work was performed at \anon{NSA}. +% This work was performed at \anon[No Such Agency]{NSA}. +% \end{verbatim} +% +% %\subsection{Acknowledgments} %\label{sec:ug_acks} % @@ -1457,6 +1557,10 @@ % doi = "10.1145/1188913.1188915", % url = "http://ccrma.stanford.edu/~jos/bayes/bayes.pdf", % \end{verbatim} +% Normally the printing of URL is suppressed if DOI is present. +% However, there is a special field \path{distinctURL}. If it is +% present and is not zero, URL is printed even if DOI is present. +% % % The style supports the arXiv-recommended fields \path{eprint} and % (optionally) \path{primaryclass}, for example, @@ -1478,7 +1582,7 @@ % lastaccessed = "March 2, 2005", % } % \end{verbatim} -% Entry types \path{artifactsoftware}, \path{artifactdataset} +% Entry types \path{artifactsoftware}, \path{artifactdataset} % (with synonyms \path{software} and \path{dataset}) can be used to % cite software artifacts and datasets, for example, % \begin{verbatim} @@ -1499,11 +1603,11 @@ % lastaccessed = {May 27, 2019} % } % \end{verbatim} -% +% % % For these entry types you can use the \path{lastaccessed} field to add % the access date for the URL. -% +% % % % There are two ways to enter video or audio sources in the @@ -1596,8 +1700,8 @@ % The current bst style defines a number of macros for common journal % names. In particular, all journals listed in Table~\ref{tab:pubs} % are includes, so you can use strings like |journal = taccess| for -% \emph{ACM Transactions on Accessible Computing}. -% +% \emph{ACM Transactions on Accessible Computing}. +% % %\subsection{Colors} %\label{sec:ug_colors} @@ -1707,7 +1811,7 @@ % The script |texcount| provides a report of word count in the % document. % -% +% % % %\subsection{Disabled or forbidden commands} @@ -1778,7 +1882,7 @@ % \begin{verbatim} % \AtBeginMaketitle{\acmPrice{125.00}} % \end{verbatim} -% +% % %\subsection{Currently supported publications} %\label{sec:pubs} @@ -1802,7 +1906,7 @@ % \endfoot % CIE & ACM Computers in Entertainment \\ % CSUR & ACM Computing Surveys\\ -% DLT & Distributed Ledger Technologies: Research and Practice\\ +% DLT & Distributed Ledger Technologies: Research and Practice\\ % DGOV & Digital Government: Research and Practice \\ % DTRAP & Digital Threats: Research and Practice\\ % FAC & Formal Aspects of Computing \\ @@ -1872,7 +1976,7 @@ % % Besides the publications listed in Table~\ref{tab:pubs}, there is a % special ``publication'' type FACMP, a forthcoming ACM publication, -% reserved for new journals which are not assigned an ISSN yet. +% reserved for new journals which are not assigned an ISSN yet. % % %\subsection{A note about \texttt{sigchi-a} format} @@ -1888,7 +1992,7 @@ % \documentclass[sigchi-a, nonacm]{acmart} % \end{verbatim} % -% +% % % \DescribeEnv{sidebar}% % \DescribeEnv{marginfigure}% @@ -1905,7 +2009,7 @@ % The environments |figure| and |table| produce figures and tables % with the width of the text column. The environments |figure*| and % |table*| produce ``wide'' figures and tables, which take a large -% part of the margin. +% part of the margin. % % The horizontal sizes of figures are: % \begin{enumerate} @@ -1913,8 +2017,8 @@ % \item |marginfigure|: \cs{marginparwidth}, % \item |figure*|: \cs{fulltextwidth}. % \end{enumerate} -% -% +% +% % % \StopEventually{ % \clearpage @@ -1939,7 +2043,7 @@ \ProvidesFile{acmart.dtx} % %\ProvidesClass{acmart} -[2021/09/24 v1.80 Typesetting articles for the Association for Computing Machinery] +[2022/02/19 v1.83 Typesetting articles for the Association for Computing Machinery] % \end{macrocode} % % \changes{v1.00}{2016/04/14}{First released version} @@ -2026,11 +2130,11 @@ % \changes{1.57}{2018/12/16}{Booktabs package is now the default} % \changes{1.58}{2019/02/09}{Changes in samples (Enrico Gregorio)} % \changes{1.58}{2019/03/29}{New journal: HEALTH. TDS is renamed to -% TDSCI} +% TDSCI} % \changes{1.60}{2019/04/22}{New option: urlbreakonhyphens} % \changes{1.62}{2019/07/31}{New journal: TELO} % \changes{1.63}{2019/08/04}{New journal: TQUANT} -% \changes{1.63}{2019/08/04}{New journal: FACMP} +% \changes{1.63}{2019/08/04}{New journal: FACMP} % \changes{1.63a}{2019/08/05}{Move: TQUANT to TQC} % \changes{1.64}{2019/08/17}{Putting abstract after \cs{maketitle} now % causes an error} @@ -2100,8 +2204,8 @@ % \begin{macrocode} \RequirePackage{iftex} % \end{macrocode} -% -% +% +% % % \begin{macro}{format} % The possible formats @@ -2143,7 +2247,7 @@ % \end{macro} % % \begin{macro}{\if@ACM@urlbreakonhyphens} -% \changes{1.60}{2019/04/22}{introduced macro} +% \changes{1.60}{2019/04/22}{introduced macro} % \begin{macrocode} \define@boolkey+{acmart.cls}[@ACM@]{urlbreakonhyphens}[true]{% \if@ACM@urlbreakonhyphens @@ -2237,7 +2341,7 @@ false}} \ExecuteOptionsX{balance} % \end{macrocode} -% +% % \end{macro} % % @@ -2250,9 +2354,9 @@ false}} \ExecuteOptionsX{pbalance=false} % \end{macrocode} -% +% % \end{macro} -% +% % % \begin{macro}{\if@ACM@natbib@override} % \changes{v1.12}{2016/05/30}{Added macro} @@ -2341,6 +2445,21 @@ % % \end{macro} % +% +% +% \begin{macro}{\ACM@languages} +% \changes{v1.83}{2022/02/19}{Introduced macro} +% The languages of the document +% \begin{macrocode} +\def\ACM@languages{} +\DeclareOptionX{language}{% + \ifx\ACM@languages\@empty + \gdef\ACM@languages{english}\fi + \g@addto@macro\ACM@languages{, #1}} +% \end{macrocode} +% +% +% \end{macro} % % \changes{v1.01}{2016/04/18}{Explicitly put draft option % (closes \url{https://github.com/borisveytsman/acmart/issues/4})} @@ -2382,7 +2501,7 @@ % \begin{macrocode} \newif\if@ACM@journal@bibstrip % \end{macrocode} -% +% % \end{macro} % % \begin{macro}{\if@ACM@sigchiamode} @@ -2504,7 +2623,7 @@ % \begin{macrocode} \RequirePackage{booktabs} % \end{macrocode} -% +% % % We need |totpages| to calculate the number of pages and % |refcount| to use that number @@ -2534,6 +2653,9 @@ % \end{macrocode} % % +% +% +% %\subsection{Citations} % \changes{v1.19}{2016/07/28}{Include 'References' in PDF bookmarks % (Matthew Fluet)} @@ -2665,6 +2787,166 @@ \fi % \end{macrocode} % +% +%\subsection{Internationalization} +%\label{sec:i13n} +% +% +% +% \changes{v1.83}{2022/02/19}{Use babel for multilanguage papers} +% \begin{macrocode} +\if@ACM@journal + \renewcommand\keywordsname{Additional Key Words and Phrases}% +\else + \renewcommand\keywordsname{Keywords}% +\fi +\ifx\ACM@languages\@empty +\else + \RequirePackage[\ACM@languages]{babel}% + \addto\captionsenglish{% + \if@ACM@journal + \renewcommand\keywordsname{Additional Key Words and Phrases}% + \else + \renewcommand\keywordsname{Keywords}% + \fi + \renewcommand\acksname{Acknowledgements}% + }% + \addto\captionsfrench{% + \if@ACM@journal + \renewcommand\keywordsname{Mots Clés et Phrases Supplémentaires}% + \else + \renewcommand\keywordsname{Mots clés}% + \fi + \renewcommand\acksname{Remerciements}% + }% + \addto\captionsgerman{% + \if@ACM@journal + \renewcommand\keywordsname{Zusätzliche Schlüsselwörter und Phrasen}% + \else + \renewcommand\keywordsname{Schlüsselwörter}% + \fi + \renewcommand\acksname{Danksagungen}% + }% + \addto\captionsspanish{% + \if@ACM@journal + \renewcommand\keywordsname{Palabras y Frases Claves Adicionales}% + \else + \renewcommand\keywordsname{Palabras claves}% + \fi + \renewcommand\acksname{Expresiones de gratitud}% + }% +\fi +% \end{macrocode} +% +% \begin{macro}{\ACM@lang@check} +% \changes{v1.83}{2022/02/20}{Added macro} +% Some commands should not be used if the document is monlingual +% \begin{macrocode} +\newcommand\ACM@lang@check[1]{% + \ifx\ACM@languages\@empty\relax + \ClassError{\@classname}{% + Command \string#1 \MessageBreak is used in monlingual document}{% + You used a command (\string#1) \MessageBreak + that does not have a meaning \MessageBreak + unless are languages are defined. \MessageBreak + Please choose the languages in \string\documentclass + \MessageBreak + (e.g. \string\documentclass[languages={french, english}]{acmart}), + \MessageBreak + or delete the command.}% + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@translatedtitle} +% \changes{v1.83}{2022/02/20}{Added macro} +% \begin{macrocode} +\def\@translatedtitle{} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\translatedtitle} +% \changes{v1.83}{2022/02/20}{Added macro} +% The title of the paper in a different language +% \begin{macrocode} +\newcommand\translatedtitle[2]{\ACM@lang@check{\translatedtitle}% +\g@addto@macro\@translatedtitle{\par\foreignlanguage{#1}{#2}}} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\@translatedsubtitle} +% \changes{v1.83}{2022/02/20}{Added macro} +% \begin{macrocode} +\def\@translatedsubtitle{} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\translatedsubtitle} +% \changes{v1.83}{2022/02/20}{Added macro} +% The subtitle of the paper in a different language +% \begin{macrocode} +\newcommand\translatedsubtitle[2]{\ACM@lang@check{\translatedsubtitle}% +\g@addto@macro\@translatedsubtitle{\par\foreignlanguage{#1}{#2}}} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\@translatedkeywords} +% \changes{v1.83}{2022/02/20}{Added macro} +% \begin{macrocode} +\def\@translatedkeywords{} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\translatedkeywords} +% \changes{v1.83}{2022/02/20}{Added macro} +% Add keywords to the paper in the language specified +% \begin{macrocode} +\newcommand\translatedkeywords[2]{\ACM@lang@check{\translatedkeywords}% +\g@addto@macro\@translatedkeywords{\@mktranslatedkeywords{#1}{#2}}} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\@translatedabstracts} +% \changes{v1.83}{2022/02/20}{Added macro} +% The container for translated abstracts. +% \begin{macrocode} +\def\@translatedabstracts{} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{translatedabstract} +% \changes{v1.83}{2022/02/20}{Added macro} +% We save translated abstracts into \cs{@translatedabstracts} +% \begin{macrocode} +\newenvironment{translatedabstract}[1]{\Collect@Body + \@savetranslatedabstract\@mktranslatedabstract{#1}}{} +% \end{macrocode} +% +% \end{macro} +% +% +% \begin{macro}{\@savetranslatedabstract} +% And saving the abstract +% \begin{macrocode} +\long\def\@savetranslatedabstract#1{\if@ACM@maketitle@typeset + \ClassError{\@classname}{Abstract must be defined before maketitle + command. Please move it!}\fi + \ACM@lang@check{translatedabstract}% + \g@addto@macro\@translatedabstracts{\bgroup#1\egroup}} +% \end{macrocode} +% +% \end{macro} +% +% +%\subsection{Sectioning} +%\label{sec:sectioning} +% +% +% % \begin{macro}{\@startsection} % \changes{v1.31}{2017/03/04}{Added \cs{tochangmeasure}} % Before we call |hyperref|, we redefine \cs{startsection} commands to @@ -2876,16 +3158,22 @@ % % \end{macro} % +% +%\subsection{Hyperxmp and hyperref} +%\label{sec:hyper} +% +% +% % Adding |hyperxmp| % \changes{v1.72}{2020/06/14}{Added hyperxmp} % \changes{v1.76}{2021/02/21}{Moved before hyperref, see -% https://github.com/borisveytsman/acmart/issues/425} +% https://github.com/borisveytsman/acmart/issues/425} % \begin{macrocode} \RequirePackage{hyperxmp} % \end{macrocode} -% % -% And now, |hyperref| +% +% And now, |hyperref| % \changes{v1.28}{2017/01/07}{Got rid of warnings in pdf keywords} % \changes{v1.46}{2017/08/25}{Delayed hypersetup since journal options % may change screen mode} @@ -2980,6 +3268,11 @@ % \end{macro} % % +%\subsection{Other packages} +%\label{sec:packages} +% +% +% % Graphics and color. % \changes{1.48}{2017/10/22}{Added prologue option to xcolor} % \begin{macrocode} @@ -3019,7 +3312,7 @@ Legacy document. \\ Not for publication in an ACM venue}} \fi - \fi + \fi \fi % \end{macrocode} % @@ -3411,7 +3704,7 @@ \let\@vspacer\@vspacer@orig} % \end{macrocode} -% +% % %\subsection{Floats} %\label{sec:floats} @@ -3696,7 +3989,7 @@ \newif\if@ACM@maketitle@typeset \@ACM@maketitle@typesetfalse % \end{macrocode} -% +% % \end{macro} % % \changes{v1.24}{2016/11/16}{Add IMWUT journal option} @@ -3709,6 +4002,8 @@ % \changes{1.70}{2020/02/22}{Name change for TDS} % \changes{1.79}{2021/08/29}{Updated indormation for TAP, TCPS, TEAC} % \changes{1.80}{2021/09/24}{Added DLT and FAC} +% \changes{1.82}{2022/02/05}{Updated abbreviations and codes for +% several journals} % % We use the |xkeyval| interface to define journal titles and the relevant % information @@ -3803,6 +4098,7 @@ \def\@journalName{Formal Aspects of Computing}% \def\@journalNameShort{Form. Asp. Comput.}% \def\@permissionCodeOne{0934-5043}% + \def\@permissionCodeTwo{1433-299X}% \or % HEALTH \def\@journalName{ACM Transactions on Computing for Healthcare}% \def\@journalNameShort{ACM Trans. Comput. Healthcare}% @@ -3837,6 +4133,8 @@ \or % JOCCH \def\@journalName{ACM Journal on Computing and Cultural Heritage}% \def\@journalNameShort{ACM J. Comput. Cult. Herit.}% + \def\@permissionCodeOne{1556-4673}% + \def\@permissionCodeTwo{1556-4711}% \or % PACMCGIT \def\@journalName{Proceedings of the ACM on Computer Graphics and Interactive Techniques}% \def\@journalNameShort{Proc. ACM Comput. Graph. Interact. Tech.}% @@ -3872,6 +4170,8 @@ \or % TACO \def\@journalName{ACM Transactions on Architecture and Code Optimization}% \def\@journalNameShort{ACM Trans. Arch. Code Optim.}% + \def\@permissionCodeOne{1544-3566}% + \def\@permissionCodeTwo{1544-3973}% \or % TALG \def\@journalName{ACM Transactions on Algorithms}% \def\@journalNameShort{ACM Trans. Algor.}% @@ -3966,6 +4266,7 @@ \def\@permissionCodeOne{0730-0301} \or % TOIS \def\@journalName{ACM Transactions on Information Systems}% + \def\@journalNameShort{ACM Trans. Inf. Syst.}% \def\@permissionCodeOne{1046-8188}% \or % TOIT \def\@journalName{ACM Transactions on Internet Technology}% @@ -3974,11 +4275,13 @@ \or % TOMACS \def\@journalName{ACM Transactions on Modeling and Computer Simulation}% \def\@journalNameShort{ACM Trans. Model. Comput. Simul.}% + \def\@permissionCodeOne{1049-3301}% + \def\@permissionCodeTwo{1558-1195}% \or % TOMM \def\@journalName{ACM Transactions on Multimedia Computing, Communications and Applications}% \def\@journalNameShort{ACM Trans. Multimedia Comput. Commun. Appl.}% \def\@permissionCodeOne{1551-6857}% - \def\@permissionCodeTwo{0100}% + \def\@permissionCodeTwo{1551-6865}% \or % TOMPECS \def\@journalName{ACM Transactions on Modeling and Performance Evaluation of Computing Systems}% \def\@journalNameShort{ACM Trans. Model. Perform. Eval. Comput. Syst.}% @@ -4036,8 +4339,8 @@ \def\@journalNameShort{ACM Trans. Web}% \def\@permissionCodeOne{1559-1131}% \else % FACMP, a dummy journal - \def\@journalName{Forthcoming ACM Publication}% - \def\@journalNameShort{ACM Forthcoming}% + \def\@journalName{ACM Just Accepted}% + \def\@journalNameShort{ACM Accepted}% \def\@permissionCodeOne{XXXX-XXXX}% \fi \ClassInfo{\@classname}{Using journal code \@journalCode}% @@ -4077,7 +4380,7 @@ \ifx\acmConference@shortname\@empty \gdef\acmConference@shortname{#2}% \fi - \global\@ACM@journal@bibstripfalse + \global\@ACM@journal@bibstripfalse } \if@ACM@journal\else \acmConference[Conference'17]{ACM Conference}{July 2017}{Washington, @@ -4099,7 +4402,7 @@ \acmBooktitle{Proceedings of \acmConference@name \ifx\acmConference@name\acmConference@shortname\else \ (\acmConference@shortname)\fi} -\fi +\fi % \end{macrocode} % % \end{macro} @@ -4195,7 +4498,7 @@ % entered. The trick is based on the idea that |\csname...\endcsname| % is \cs{relax} unless defined. Therefore we typeset authors by the % special macro |\csname typeset@author\the\num@authors\endcsname|, -% which is defined by \cs{orcid} command. +% which is defined by \cs{orcid} command. % \begin{macrocode} \renewcommand\author[2][]{% \IfSubStr{\detokenize{#2}}{,}{\ClassWarning{\@classname}{Do not put several @@ -4335,7 +4638,7 @@ \href{#1}{##1}}}{% \expandafter\gdef\csname typeset@author\the\num@authors\endcsname##1{% - \href{https://orcid.org/#1}{##1}}}} + \href{https://orcid.org/#1}{##1}}}} % \end{macrocode} % % \end{macro} @@ -4350,6 +4653,18 @@ % % \end{macro} % +% \begin{macro}{\@mktranslatedkeywords} +% \changes{v1.83}{2022/02/20}{Added macro} +% We have two argument: the language to typeset keywords and the +% keywords. +% \begin{macrocode} +\newcommand\@mktranslatedkeywords[2]{\bgroup + \selectlanguage{#1}% + {\@specialsection{\keywordsname}% + \noindent#2\par}\egroup} +% \end{macrocode} +% +% \end{macro} % % \begin{macro}{\@titlenotes} % The title notes @@ -4658,7 +4973,7 @@ for papers over two pages}% \fi\fi\fi} % \end{macrocode} -% +% % \end{macro} % % @@ -5245,6 +5560,21 @@ % % \end{macro} % +% \begin{macro}{\anon} +% \changes{v1.82}{2022/01/11}{Introduced macro}% +% We provide \cs{anon} command, which blinds parts of the text +% if the package option |anonymous| is set +% \begin{macrocode} +\newcommand{\anon}[2][ANONYMIZED]{% + \if@ACM@anonymous% + {\color{ACMOrange}#1}% + \else% + #2% + \fi} +% \end{macrocode} +% +% \end{macro} +% % %\subsection{Maketitle hook} %\label{sec:hook} @@ -5316,11 +5646,12 @@ % \changes{v1.64}{2019/08/17}{Added a switch setting to show that % \cs{maketitle} is typeset} % \changes{v1.72}{2020/06/14}{Do not andify authors for pdf metadata -% (Scott Pakin)} +% (Scott Pakin)} % \changes{v1.73}{2020/09/07}{Do not check again the presense of -% address fields} +% address fields} % \changes{v1.75}{2020/11/15}{Added \cs{@beginmaketitlehook}} % \changes{v1.76}{2021/04/05}{Put \cs{par} inside group for keywords} +% \changes{v1.83}{2022/02/20}{I13n} % The (in)famous \cs{maketitle}. Note that in |sigchi-a| mode, authors % are \emph{not} in the title box. % @@ -5421,6 +5752,8 @@ \endgroup \setcounter{footnote}{0}% \@mkabstract + \ifx\@translatedabstracts\@empty\else + \@translatedabstracts\fi \if@ACM@printccs \ifx\@concepts\@empty\else\bgroup {\@specialsection{CCS Concepts}% @@ -5428,13 +5761,12 @@ \fi \fi \ifx\@keywords\@empty\else\bgroup - {\if@ACM@journal - \@specialsection{Additional Key Words and Phrases}% - \else - \@specialsection{Keywords}% - \fi + {\@specialsection{\keywordsname}% \noindent\@keywords\par}\egroup \fi + \ifx\@translatedkeywords\@empty\else + \@translatedkeywords + \fi \let\metadata@authors=\authors \nxandlist{, }{, }{, }\metadata@authors \def\@ACM@checkaffil{}% @@ -5498,7 +5830,7 @@ \section*{#1}% \fi \let\@vspace\@vspace@acm - \let\@vspacer\@vspacer@acm + \let\@vspacer\@vspacer@acm } % \end{macrocode} % @@ -5526,7 +5858,7 @@ \@tempdima=\ht\mktitle@bx \advance\@tempdima by \dp\mktitle@bx \ifdim\@tempdima>0.9\textheight - \loop + \loop \setbox\@tempboxa=\vsplit \mktitle@bx to 0.9\textheight \thispagestyle{firstpagestyle}% \noindent\unvbox\@tempboxa @@ -5667,6 +5999,8 @@ % \begin{macro}{\@mktitle@i} % \changes{v1.06}{2016/05/01}{Made generic} % \changes{v1.06}{2016/05/01}{Added processing badges} +% \changes{v1.83}{2022/02/20}{Added \cs{translatedtitle} and +% \cs{translatedsubtitle}} % The version of \cs{mktitle} for most journals % \begin{macrocode} \def\@mktitle@i{\hsize=\textwidth @@ -5687,9 +6021,9 @@ \fi \parbox[t]{\@ACM@title@width}{\raggedright \@titlefont\noindent - \@title + \@title\@translatedtitle% \ifx\@subtitle\@empty\else - \par\noindent{\@subtitlefont\@subtitle} + \par\noindent{\@subtitlefont\@subtitle\@translatedsubtitle}% \fi}% \ifx\@acmBadgeR@image\@empty\else \hskip\@ACM@badge@skip @@ -5711,6 +6045,8 @@ % \begin{macro}{\@mktitle@iii} % \changes{v1.06}{2016/05/01}{Made more generic} % \changes{v1.06}{2016/05/01}{Added processing badges} +% \changes{v1.83}{2022/02/20}{Added \cs{translatedtitle} and +% \cs{translatedsubtitle}} % The version of \cs{@mktitle} for SIG proceedings. Note that since % the title is centered, we leave space for the left badge even if % only the right badge is defined. @@ -5729,9 +6065,9 @@ \hskip\@ACM@badge@skip \fi \parbox[t]{\@ACM@title@width}{\centering\@titlefont - \@title + \@title\@translatedtitle% \ifx\@subtitle\@empty\else - \par\noindent{\@subtitlefont\@subtitle} + \par\noindent{\@subtitlefont\@subtitle\@translatedsubtitle} \fi }% \if@ACM@badge @@ -5750,14 +6086,16 @@ % % \begin{macro}{\@mktitle@iv} % \changes{v1.06}{2016/05/01}{Made more generic} +% \changes{v1.83}{2022/02/20}{Added \cs{translatedtitle} and +% \cs{translatedsubtitle}} % The version of \cs{@mktitle} for |sigchi-a| % \begin{macrocode} \def\@mktitle@iv{\hsize=\textwidth \setbox\mktitle@bx=\vbox{\raggedright\leftskip5pc\@titlefont \noindent\leavevmode\leaders\hrule height 2pt\hfill\kern0pt\par - \noindent\@title + \noindent\@title\@translatedtitle% \ifx\@subtitle\@empty\else - \par\noindent\@subtitlefont\@subtitle + \par\noindent\@subtitlefont\@subtitle\@translatedsubtitle% \fi \par\bigskip}}% % \end{macrocode} @@ -5963,7 +6301,7 @@ \newif\if@ACM@instpresent \@ACM@instpresenttrue % \end{macrocode} -% +% % \end{macro} % % @@ -5974,7 +6312,7 @@ \newif\if@ACM@citypresent \@ACM@citypresenttrue % \end{macrocode} -% +% % \end{macro} % \begin{macro}{\if@ACM@countrypresent} % \changes{v1.73}{2020/09/07}{Added macro} @@ -5983,9 +6321,9 @@ \newif\if@ACM@countrypresent \@ACM@countrypresenttrue % \end{macrocode} -% +% % \end{macro} -% +% % % \begin{macro}{\@ACM@resetaffil} % \changes{v1.73}{2020/09/07}{Added macro} @@ -5997,7 +6335,7 @@ \global\@ACM@countrypresentfalse } % \end{macrocode} -% +% % \end{macro} % % \begin{macro}{\@ACM@checkaffil} @@ -6018,7 +6356,7 @@ \fi } % \end{macrocode} -% +% % \end{macro} % % @@ -6351,7 +6689,7 @@ \global\@undescribed@imagestrue \ClassWarning{\@classname}{A possible image without description}\fi - \medskip}% + \medskip}% \fi} % \end{macrocode} % @@ -6365,11 +6703,12 @@ % Wickerson)} % \changes{v1.48}{2017/09/16}{Removed spurious indentation if abstract % is followed by an empty line} +% \changes{v1.83}{2022/02/20}{I13n} % Typesetting the abstract % \begin{macrocode} \def\@mkabstract{\bgroup \ifx\@abstract\@lempty\else - {\phantomsection\addcontentsline{toc}{section}{Abstract}% + {\phantomsection\addcontentsline{toc}{section}{\abstractname}% \if@ACM@journal \everypar{\setbox\z@\lastbox\everypar{}}\small \else @@ -6381,6 +6720,22 @@ % % \end{macro} % +% \begin{macro}{\@mktranslatedabstract} +% \changes{v1.83}{2022/02/20}{Added macro} +% Typesetting a translated abstract +% \begin{macrocode} +\def\@mktranslatedabstract#1{\selectlanguage{#1}% + \if@ACM@journal + \everypar{\setbox\z@\lastbox\everypar{}}\small + \else + \section*{\abstractname}% + \fi + \ignorespaces} +% \end{macrocode} +% +% \end{macro} +% +% % \begin{macro}{\@mkbibcitation} % \changes{v1.17}{2016/07/10}{Changed format for sigs} % \changes{v1.17}{2016/07/10}{Added \cs{nobreak}} @@ -6735,7 +7090,7 @@ \acmConference@shortname, \acmConference@date, \acmConference@venue\ACM@linecountR}% \fi - \fi + \fi \if@ACM@sigchiamode \fancyheadoffset[L]{\dimexpr(\marginparsep+\marginparwidth)}% \fi @@ -7352,7 +7707,7 @@ % % We need balancing only if the user did not disable it, and we use a % two column format. Note that |pbalance| uses a different -% mechanism. +% mechanism. % \begin{macrocode} \AtEndPreamble{% \if@ACM@pbalance @@ -7372,7 +7727,7 @@ \or % sigchi \RequirePackage{pbalance}% \or % sigchi-a - \fi + \fi \fi \if@ACM@balance \ifcase\ACM@format@nr @@ -7393,7 +7748,7 @@ \or % sigchi \RequirePackage{balance}% \or % sigchi-a - \global\@ACM@balancefalse + \global\@ACM@balancefalse \fi \fi } @@ -7403,7 +7758,7 @@ \balance \fi\fi} % \end{macrocode} -% +% % %\subsection{Acknowledgments} %\label{sec:acks} @@ -7474,7 +7829,7 @@ \fi} % \end{macrocode} % -% +% % %\subsection{Additional bibliography commands} %\label{sec:bibliography} @@ -7483,7 +7838,7 @@ % \changes{v1.21}{2016/09/04}{Added macro} % The command \cs{showeprint} has two arguments: the (optional) % prefix and the eprint number. Right now the only prefix we understand is -% the (lowercase) word `arxiv'. +% the (lowercase) word `arxiv'. % \begin{macrocode} \newcommand\showeprint[2][arxiv]{% \def\@tempa{#1}% @@ -7496,7 +7851,7 @@ \ifx\@tempa\@tempb\relax arXiv:\href{https://arxiv.org/abs/#2}{#2}% \else - arXiv:#2% + #1:#2% \fi \fi} % \end{macrocode} @@ -7521,7 +7876,7 @@ \hyphenpenalty\@M \footnotesize} % \end{macrocode} -% +% % \end{macro} % %\subsection{End of Class} @@ -7538,14 +7893,14 @@ \let\@vspacer@orig=\@vspacer \apptocmd{\@vspace}{\ClassWarning{\@classname}{\string\vspace\space should only be used to provide space above/below surrounding - objects}}{}{} + objects}}{}{} \apptocmd{\@vspacer}{\ClassWarning{\@classname}{\string\vspace\space should only be used to provide space above/below surrounding objects}}{}{} \let\@vspace@acm=\@vspace \let\@vspacer@acm=\@vspacer % \end{macrocode} -% +% % \end{macro} % % @@ -7560,7 +7915,7 @@ \string\baselinestretch\space detected. Please do not do this for ACM submissions!}\fi} % \end{macrocode} -% +% % \end{macro} % % \changes{v1.30}{2017/02/10}{Added \cs{frenchspacing}} diff --git a/acmart.pdf b/acmart.pdf new file mode 100644 index 0000000..e93d3fd Binary files /dev/null and b/acmart.pdf differ diff --git a/acmart/acmart-primary.zip b/acmart/acmart-primary.zip new file mode 100644 index 0000000..41ba03d Binary files /dev/null and b/acmart/acmart-primary.zip differ diff --git a/acmart/acmart-primary/.gitignore b/acmart/acmart-primary/.gitignore new file mode 100644 index 0000000..ec15fb0 --- /dev/null +++ b/acmart/acmart-primary/.gitignore @@ -0,0 +1,31 @@ +acmart.cls +acmart.pdf +acmguide.pdf +samples/sample-*.pdf +*.log +*.aux +*.cfg +*.glo +*.idx +*.toc +*.ilg +*.ind +*.out +*.lof +*.lot +*.bbl +*.blg +*.gls +*.cut +*.hd +*.dvi +*.ps +*.thm +*.tgz +*.zip +*.rpi +*~ +*.bcf +*.run.xml +samples/ACM-Reference-Format.bst +samples/*.tex \ No newline at end of file diff --git a/acmart/acmart-primary/ACM-Reference-Format.bbx b/acmart/acmart-primary/ACM-Reference-Format.bbx new file mode 100644 index 0000000..e9cb545 --- /dev/null +++ b/acmart/acmart-primary/ACM-Reference-Format.bbx @@ -0,0 +1,830 @@ +\ProvidesFile{ACM-Reference-Format.bbx}[2017-09-27 v0.1 biblatex bibliography style] + +% Inherit a default style +\RequireBibliographyStyle{trad-plain} + + + +%%% Localisation strings for ACM + +\DefineBibliographyStrings{american}{% + mathesis = {Master's thesis}, + phdthesis = {Ph\adddot{}D\adddotspace Dissertation}, + editor = {(Ed\adddot)}, + editors = {(Eds\adddot)}, + edition = {ed\adddot}, +} + + + +%%% Formatting for fields + +%\DeclareFieldFormat +% [article,inbook,incollection,inproceedings,patent,thesis,unpublished] +% {title}{#1} +\DeclareFieldFormat{pages}{#1} + +\DeclareFieldFormat{numpages}{#1 pages} + +\DeclareFieldFormat{number}{#1} + +\DeclareFieldFormat{articleno}{Article #1} + +\DeclareFieldFormat{key}{#1} + +\DeclareFieldFormat{urldate}{Retrieved\space{}#1\space{}from} +\DeclareFieldAlias{lastaccessed}{urldate} + +\DeclareFieldFormat{url}{\url{#1}} + +\DeclareFieldFormat{edition}{% + \printtext[parens]{\ifinteger{#1} + {\mkbibordedition{#1}~\bibstring{edition}} + {#1\isdot~\bibstring{edition}}}} + + +% Handle urls field containing 'and' separated list of URLs +% https://github.com/plk/biblatex/issues/229 +\DeclareListFormat{urls}{% + \url{#1}% + \ifthenelse{\value{listcount}<\value{liststop}} + {\addcomma\space} + {}} +\renewbibmacro*{url}{\iffieldundef{url}{\printlist{urls}}{\printfield{url}}} + + + +%%% Bibmacro definitions + +\renewbibmacro*{translator+others}{% + \ifboolexpr{ + test \ifusetranslator + and + not test {\ifnameundef{translator}} + } + {\printnames{translator}% + \setunit{\addcomma\space}% + \usebibmacro{translator+othersstrg}% + \clearname{translator}} + {\printfield{key}}} + +\newbibmacro*{year}{% + \iffieldundef{year}% + {\printtext{[n.\ d.]}}% + {\printfield{year}}% +} + +\renewbibmacro*{date}{\printtext[parens]{\printdate}} + + +\renewbibmacro*{url+urldate}{\iffieldundef{urlyear} + {} + {\usebibmacro{urldate}% + \setunit*{\addspace}}% + \usebibmacro{url}% + } + + +\renewbibmacro*{journal+issuetitle}{% + \usebibmacro{journal}% + \setunit*{\addcomma\space}% + \iffieldundef{series} + {} + {\newunit% + \printfield{series}% + \setunit{\addspace}}% + \usebibmacro{volume+number+date+pages+eid}% + \newcommaunit% +% \setunit{\addspace}% + \usebibmacro{issue-issue}% + \setunit*{\addcolon\space}% + \usebibmacro{issue}% + \newunit} + + + +\newbibmacro*{volume+number+date+pages+eid}{% + \printfield{volume}% + \setunit*{\addcomma\space}% + \printfield{number}% + \setunit*{\addcomma\space}% + \printfield{articleno} + \setunit{\addcomma\space} + \usebibmacro{date-ifmonth} + \setunit{\addcomma\space}% + \iffieldundef{pages}% + {\printfield{numpages}}% + {\printfield{pages}}% + \newcommaunit% + \printfield{eid}}% + +\renewbibmacro*{chapter+pages}{% + \printfield{chapter}% + \setunit{\bibpagespunct}% + \iffieldundef{pages}% + {\printfield{numpages}}% + {\printfield{pages}}% + \newunit} + +\renewbibmacro*{editor+others}{% + \ifboolexpr{ + test \ifuseeditor + and + not test {\ifnameundef{editor}} + } + {\printnames{editor}% + \setunit{\addcomma\space}% + \usebibmacro{editor+othersstrg}% + \clearname{editor}} + {\iflistundef{organization}{}{\printlist{organization}}}} + + +\newbibmacro*{issue-issue}{% + \iffieldundef{issue}% + {}% + {\printfield{issue}% + \setunit*{\addcomma\space}% + \usebibmacro{date-ifmonth}% + }% + \newunit} + + + + +\newbibmacro*{maintitle+booktitle+series+number}{% + \iffieldundef{maintitle} + {} + {\usebibmacro{maintitle}% + \newunit\newblock + \iffieldundef{volume} + {} + {\printfield{volume}% + \printfield{part}% + \setunit{\addcolon\space}}}% + \usebibmacro{booktitle}% + \setunit*{\addspace} + \printfield[parens]{series}% + \setunit*{\addspace}% + \printfield{number}% + \setunit*{\addcomma\space}% + \printfield{articleno} + \newunit + } + +\renewbibmacro*{booktitle}{% + \ifboolexpr{ + test {\iffieldundef{booktitle}} + and + test {\iffieldundef{booksubtitle}} + } + {} + {\printtext[booktitle]{% + \printfield[titlecase]{booktitle}% + \iffieldundef{booksubtitle}{}{ + \setunit{\subtitlepunct}% + \printfield[titlecase]{booksubtitle}}% + }% + }% + \printfield{booktitleaddon}} + +\renewbibmacro*{volume+number+eid}{% + \printfield{volume}% + \setunit*{\addcomma\space}% + \printfield{number}% + \setunit*{\addcomma\space}% + \printfield{articleno} + \setunit{\addcomma\space}% + \printfield{eid}} + + +\renewbibmacro*{publisher+location+date}{% + \printlist{publisher}% + \setunit*{\addcomma\space}% + \printlist{location}% + \setunit*{\addcomma\space}% + \usebibmacro{date-ifmonth}% + \newunit} + + +\newbibmacro{date-ifmonth}{% + \iffieldundef{month}{}{% + \usebibmacro{date} + }% +} + + +\renewbibmacro*{institution+location+date}{% + \printlist{school}% + \setunit*{\addcomma\space}% + \printlist{institution}% + \setunit*{\addcomma\space}% + \printlist{location}% + \setunit*{\addcomma\space}% + \usebibmacro{date-ifmonth}% + \newunit} + + +\renewbibmacro*{periodical}{% + \iffieldundef{title} + {} + {\printtext[title]{% + \printfield[titlecase]{title}% + \setunit{\subtitlepunct}% + \printfield[titlecase]{subtitle}}}% + \newunit% + \usebibmacro{journal}} + +\renewbibmacro*{issue+date}{% + \iffieldundef{issue} + {\usebibmacro{date}} + {\printfield{issue}% + \setunit*{\addspace}% + \usebibmacro{date}}% + \newunit} + +\renewbibmacro*{title+issuetitle}{% + \usebibmacro{periodical}% + \setunit*{\addspace}% + \iffieldundef{series} + {} + {\newunit + \printfield{series}% + \setunit{\addspace}}% + \printfield{volume}% + \setunit*{\addcomma\space}% + \printfield{number}% + \setunit*{\addcomma\space}% + \printfield{articleno} + \setunit{\addcomma\space}% + \printfield{eid}% + \setunit{\addspace}% + \usebibmacro{issue+date}% + \setunit{\addcolon\space}% + \usebibmacro{issue}% + \newunit} + +\renewbibmacro*{doi+eprint+url}{% + \iftoggle{bbx:url} + {\iffieldundef{doi}{\usebibmacro{url+urldate}}{}} + {}% + \newunit\newblock + \iftoggle{bbx:eprint} + {\usebibmacro{eprint}} + {}% + \newunit\newblock + \iftoggle{bbx:doi} + {\printfield{doi}} + {}} + + +%%% Definitions for drivers (alphabetical) + + + +\DeclareBibliographyDriver{article}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock% + \usebibmacro{year}% + \newunit% + \usebibmacro{title}% + \newunit% + \printlist{language}% + \newunit\newblock% + \usebibmacro{byauthor}% + \newunit\newblock% + \usebibmacro{bytranslator+others}% + \newunit\newblock% + \printfield{version}% + \newunit\newblock% + \usebibmacro{journal+issuetitle}% + \newunit% + \usebibmacro{byeditor+others}% + \newunit% + \printfield{note}% + \newunit\newblock% + \iftoggle{bbx:isbn} + {\printfield{issn}} + {}% + \newunit\newblock% + \usebibmacro{doi+eprint+url}% + \newunit\newblock% + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock% + \usebibmacro{related}% + \usebibmacro{finentry}} + + + +\DeclareBibliographyDriver{book}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/editor+others/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{year}% + \newunit% + \usebibmacro{maintitle+title}% + \newunit% + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \printfield{edition}% + \newunit + \usebibmacro{series+number}% + \iffieldundef{maintitle} + {\printfield{volume}% + \printfield{part}} + {}% + \newunit + \newunit\newblock + \printfield{volumes}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \printfield{pagetotal}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + + +\DeclareBibliographyDriver{inbook}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \iffieldundef{author}% + {\usebibmacro{byeditor+others}}% + {\usebibmacro{author/translator+others}}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{year} + \newunit\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock +% \usebibmacro{in:}% + \usebibmacro{bybookauthor}% + \newunit\newblock + \usebibmacro{maintitle+booktitle}% + \newunit\newblock + \iffieldundef{author}{}%if undef then we already printed editor + {\usebibmacro{byeditor+others}}% + \newunit\newblock + \printfield{edition}% + \newunit + \iffieldundef{maintitle} + {\printfield{volume}% + \printfield{part}} + {}% + \newunit + \printfield{volumes}% + \newunit\newblock + \usebibmacro{series+number}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + + +\DeclareBibliographyDriver{incollection}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{year} + \newunit\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \usebibmacro{maintitle+booktitle}% + \newunit\newblock + \usebibmacro{series+number}% + \newunit\newblock + \printfield{edition}% + \newunit + \iffieldundef{maintitle} + {\printfield{volume}% + \printfield{part}} + {}% + \newunit + \printfield{volumes}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + + +\DeclareBibliographyDriver{inproceedings}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{year} + \newunit\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \usebibmacro{maintitle+booktitle+series+number}% + \newunit\newblock + \usebibmacro{event+venue+date}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \iffieldundef{maintitle} + {\printfield{volume}% + \printfield{part}} + {}% + \newunit + \printfield{volumes}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit + \usebibmacro{publisher+location+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + + +\DeclareBibliographyDriver{manual}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/editor+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{year} + \newunit\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor}% + \newunit\newblock + \printfield{edition}% + \newunit\newblock + \usebibmacro{series+number}% + \newunit\newblock + \printfield{type}% + \newunit + \printfield{version}% + \newunit + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit + \usebibmacro{publisher+location+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \printfield{pagetotal}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + + +\DeclareBibliographyDriver{misc}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/editor+others/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{year} + \newunit\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \printfield{howpublished}% + \newunit\newblock + \printfield{type}% + \newunit + \printfield{version}% + \newunit + \printfield{note}% + \newunit\newblock + \usebibmacro{organization+location+date}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + + +\DeclareBibliographyDriver{online}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/editor+others/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{year}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \printfield{version}% + \newunit + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit\newblock + \usebibmacro{date-ifmonth}% + \newunit\newblock + \iftoggle{bbx:eprint} + {\usebibmacro{eprint}} + {}% + \newunit\newblock + \usebibmacro{url+urldate}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + + +\DeclareFieldFormat[patent]{number}{Patent No.~#1} + +\DeclareBibliographyDriver{patent}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{year}% + \newunit + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{date}% + \newunit\newblock + \printfield{type}% + \setunit*{\addspace}% + \printfield{number}% + \iflistundef{location} + {} + {\setunit*{\addspace}% + \printtext[parens]{% + \printlist[][-\value{listtotal}]{location}}}% + \newunit\newblock + \usebibmacro{byholder}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + + +\DeclareBibliographyDriver{periodical}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{editor}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{year} + \newunit + \usebibmacro{title+issuetitle}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byeditor}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{issn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + + +\DeclareBibliographyDriver{report}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{year} + \newunit + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \printfield{type}% + \setunit*{\addspace}% + \printfield{number}% + \newunit\newblock + \printfield{version}% + \newunit + \printfield{note}% + \newunit\newblock + \usebibmacro{institution+location+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \printfield{pagetotal}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isrn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + + +\DeclareBibliographyDriver{thesis}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{year} + \newunit + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \printfield{type}% + \newunit + \usebibmacro{institution+location+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \printfield{pagetotal}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + diff --git a/acmart/acmart-primary/ACM-Reference-Format.bst b/acmart/acmart-primary/ACM-Reference-Format.bst new file mode 100644 index 0000000..7984639 --- /dev/null +++ b/acmart/acmart-primary/ACM-Reference-Format.bst @@ -0,0 +1,3081 @@ +%%% -*-BibTeX-*- +%%% ==================================================================== +%%% @BibTeX-style-file{ +%%% author = "Nelson H. F. Beebe, Boris Veytsman and Gerald Murray", +%%% version = "2.1", +%%% acmart-version = "1.79", +%%% date = "14 June 2017", +%%% filename = "ACM-Reference-Format.bst", +%%% email = "borisv@lk.net, boris@varphi.com", +%%% codetable = "ISO/ASCII", +%%% keywords = "ACM Transactions bibliography style; BibTeX", +%%% license = "public domain", +%%% supported = "yes", +%%% abstract = "", +%%% } +%%% ==================================================================== + +%%% Revision history: see source in git + +ENTRY + { address + advisor + archiveprefix + author + booktitle + chapter + city + date + edition + editor + eprint + eprinttype + eprintclass + howpublished + institution + journal + key + location + month + note + number + organization + pages + primaryclass + publisher + school + series + title + type + volume + year + % New keys recognized + issue % UTAH: used in, e.g., ACM SIGSAM Bulletin and ACM Communications in Computer Algebra + articleno + eid + day % UTAH: needed for newspapers, weeklies, bi-weeklies + doi % UTAH + url % UTAH + bookpages % UTAH + numpages + lastaccessed % UTAH: used only for @Misc{...} + coden % UTAH + isbn % UTAH + isbn-13 % UTAH + issn % UTAH + lccn % UTAH + distinctURL % whether to print url if doi is present + } + {} + { label.year extra.label sort.year sort.label basic.label.year} + +INTEGERS { output.state before.all mid.sentence after.sentence after.block } + +INTEGERS { show-isbn-10-and-13 } % initialized below in begin.bib + +INTEGERS { nameptr namesleft numnames } + +INTEGERS { multiresult } + +INTEGERS { len } + +INTEGERS { last.extra.num } + +STRINGS { s t t.org u } + +STRINGS { last.label next.extra } + +STRINGS { p1 p2 p3 page.count } + + +FUNCTION { not } +{ + { #0 } + { #1 } + if$ +} + +FUNCTION { and } +{ + 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION { or } +{ + { pop$ #1 } + 'skip$ + if$ +} + + +FUNCTION { dump.stack.1 } +{ + duplicate$ "STACK[top] = [" swap$ * "]" * warning$ +} + +FUNCTION { dump.stack.2 } +{ + duplicate$ "STACK[top ] = [" swap$ * "]" * warning$ + swap$ + duplicate$ "STACK[top-1] = [" swap$ * "]" * warning$ + swap$ +} + +FUNCTION { empty.or.unknown } +{ + %% Examine the top stack entry, and push 1 if it is empty, or + %% consists only of whitespace, or is a string beginning with two + %% queries (??), and otherwise, push 0. + %% + %% This function provides a replacement for empty$, with the + %% convenient feature that unknown values marked by two leading + %% queries are treated the same as missing values, and thus, do not + %% appear in the output .bbl file, and yet, their presence in .bib + %% file(s) serves to mark values which are temporarily missing, but + %% are expected to be filled in eventually once more data is + %% obtained. The TeX User Group and BibNet bibliography archives + %% make extensive use of this practice. + %% + %% An empty string cannot serve the same purpose, because just as in + %% statistics data processing, an unknown value is not the same as an + %% empty value. + %% + %% At entry: stack = ... top:[string] + %% At exit: stack = ... top:[0 or 1] + + duplicate$ empty$ + { pop$ #1 } + { #1 #2 substring$ "??" = } + if$ +} + +FUNCTION { empty.or.zero } +{ + %% Examine the top entry and push 1 if it is empty, or is zero + duplicate$ empty$ + { pop$ #1 } + { "0" = } + if$ +} + + +FUNCTION { writeln } +{ + %% In BibTeX style files, the sequences + %% + %% ... "one" "two" output + %% ... "one" "two" output.xxx + %% + %% ship "one" to the output file, possibly following by punctuation, + %% leaving the stack with + %% + %% ... "two" + %% + %% There is thus a one-string lag in output processing that must be + %% carefully handled to avoid duplicating a string in the output + %% file. Unless otherwise noted, all output.xxx functions leave + %% just one new string on the stack, and that model should be born + %% in mind when reading or writing function code. + %% + %% BibTeX's asynchronous buffering of output from strings from the + %% stack is confusing because newline$ bypasses the buffer. It + %% would have been so much easier for newline to be a character + %% rather than a state of the output-in-progress. + %% + %% The documentation in btxhak.dvi is WRONG: it says + %% + %% newline$ Writes onto the bbl file what's accumulated in the + %% output buffer. It writes a blank line if and only + %% if the output buffer is empty. Since write$ does + %% reasonable line breaking, you should use this + %% function only when you want a blank line or an + %% explicit line break. + %% + %% write$ Pops the top (string) literal and writes it on the + %% output buffer (which will result in stuff being + %% written onto the bbl file when the buffer fills + %% up). + %% + %% Examination of the BibTeX source code shows that write$ does + %% indeed behave as claimed, but newline$ sends a newline character + %% directly to the output file, leaving the stack unchanged. The + %% first line "Writes onto ... buffer." is therefore wrong. + %% + %% The original BibTeX style files almost always use "write$ newline$" + %% in that order, so it makes sense to hide that pair in a private + %% function like this one, named after a statement in Pascal, + %% the programming language embedded in the BibTeX Web program. + + write$ % output top-of-stack string + newline$ % immediate write of newline (not via stack) +} + +FUNCTION { init.state.consts } +{ + #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} + +FUNCTION { output.nonnull } +{ % Stack in: ... R S T Stack out: ... R T File out: S + 's := + output.state mid.sentence = + { + ", " * write$ + } + { + output.state after.block = + { + add.period$ writeln + "\newblock " write$ + } + { + output.state before.all = + { + write$ + } + { + add.period$ " " * write$ + } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION { output.nonnull.dot.space } +{ % Stack in: ... R S T Stack out: ... R T File out: S + 's := + output.state mid.sentence = % { ". " * write$ } + { + ". " * write$ + } + { + output.state after.block = + { + add.period$ writeln "\newblock " write$ + } + { + output.state before.all = + { + write$ + } + { + add.period$ " " * write$ + } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION { output.nonnull.remove } +{ % Stack in: ... R S T Stack out: ... R T File out: S + 's := + output.state mid.sentence = + { + " " * write$ + } + { + output.state after.block = + { + add.period$ writeln "\newblock " write$ + } + { + output.state before.all = + { + write$ + } + { + add.period$ " " * write$ + } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION { output.nonnull.removenospace } +{ % Stack in: ... R S T Stack out: ... R T File out: S + 's := + output.state mid.sentence = + { + "" * write$ + } + { + output.state after.block = + { + add.period$ writeln "\newblock " write$ + } + { + output.state before.all = + { + write$ + } + { + add.period$ " " * write$ + } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION { output } +{ % discard top token if empty, else like output.nonnull + duplicate$ empty.or.unknown + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION { output.dot.space } +{ % discard top token if empty, else like output.nonnull.dot.space + duplicate$ empty.or.unknown + 'pop$ + 'output.nonnull.dot.space + if$ +} + +FUNCTION { output.removenospace } +{ % discard top token if empty, else like output.nonnull.removenospace + duplicate$ empty.or.unknown + 'pop$ + 'output.nonnull.removenospace + if$ +} + +FUNCTION { output.check } +{ % like output, but warn if key name on top-of-stack is not set + 't := + duplicate$ empty.or.unknown + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +FUNCTION { bibinfo.output.check } +{ % like output.check, adding bibinfo field + 't := + duplicate$ empty.or.unknown + { pop$ "empty " t * " in " * cite$ * warning$ } + { "\bibinfo{" t "}{" * * swap$ * "}" * + output.nonnull } + if$ +} + +FUNCTION { output.check.dot.space } +{ % like output.dot.space, but warn if key name on top-of-stack is not set + 't := + duplicate$ empty.or.unknown + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull.dot.space + if$ +} + +FUNCTION { fin.block } +{ % functionally, but not logically, identical to fin.entry + add.period$ + writeln +} + +FUNCTION { fin.entry } +{ + add.period$ + writeln +} + +FUNCTION { new.sentence } +{ % update sentence state, with neither output nor stack change + output.state after.block = + 'skip$ + { + output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} + +FUNCTION { fin.sentence } +{ + add.period$ + write$ + new.sentence + "" +} + +FUNCTION { new.block } +{ + output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} + +FUNCTION { output.coden } % UTAH +{ % output non-empty CODEN as one-line sentence (stack untouched) + coden empty.or.unknown + { } + { "\showCODEN{" coden * "}" * writeln } + if$ +} + +% +% Sometimes articleno starts with the word 'Article' or 'Paper. +% (this is a bug of acmdl, sigh) +% We strip them. We assume eid or articleno is already on stack +% + +FUNCTION { strip.articleno.or.eid } +{ + 't := + t #1 #7 substring$ "Article" = + {t #8 t text.length$ substring$ 't :=} + { } + if$ + t #1 #7 substring$ "article" = + {t #8 t text.length$ substring$ 't :=} + { } + if$ + t #1 #5 substring$ "Paper" = + {t #6 t text.length$ substring$ 't :=} + { } + if$ + t #1 #5 substring$ "paper" = + {t #6 t text.length$ substring$ 't :=} + { } + if$ + % Strip any left trailing space or ~ + t #1 #1 substring$ " " = + {t #2 t text.length$ substring$ 't :=} + { } + if$ + t #1 #1 substring$ "~" = + {t #2 t text.length$ substring$ 't :=} + { } + if$ + t +} + + +FUNCTION { format.articleno } +{ + articleno empty.or.unknown not eid empty.or.unknown not and + { "Both articleno and eid are defined for " cite$ * warning$ } + 'skip$ + if$ + articleno empty.or.unknown eid empty.or.unknown and + { "" } + { + numpages empty.or.unknown + { "articleno or eid field, but no numpages field, in " + cite$ * warning$ } + { } + if$ + eid empty.or.unknown + { "Article \bibinfo{articleno}{" articleno strip.articleno.or.eid * "}" * } + { "Article \bibinfo{articleno}{" eid strip.articleno.or.eid * "}" * } + if$ + } + if$ +} + +FUNCTION { format.year } +{ % push year string or "[n.\,d.]" onto output stack + %% Because year is a mandatory field, we always force SOMETHING + %% to be output + "\bibinfo{year}{" + year empty.or.unknown + { "[n.\,d.]" } + { year } + if$ + * "}" * +} + +FUNCTION { format.day.month } +{ % push "day month " or "month " or "" onto output stack + day empty.or.unknown + { + month empty.or.unknown + { "" } + { "\bibinfo{date}{" month * "} " *} + if$ + } + { + month empty.or.unknown + { "" } + { "\bibinfo{date}{" day * " " * month * "} " *} + if$ + } + if$ +} + +FUNCTION { format.day.month.year } % UTAH +{ % if month is empty, push "" else push "(MON.)" or "(DD MON.)" + % Needed for frequent periodicals: 2008. ... New York Times C-1, C-2, C-17 (23 Oct.) + % acm-*.bst addition: prefix parenthesized date string with + % ", Article nnn " + articleno empty.or.unknown eid empty.or.unknown and + { "" } + { output.state after.block = + {", " format.articleno * } + { format.articleno } + if$ + } + if$ + " (" * format.day.month * format.year * ")" * +} + +FUNCTION { output.day.month.year } % UTAH +{ % if month is empty value, do nothing; else output stack top and + % leave with new top string "(MON.)" or "(DD MON.)" + % Needed for frequent periodicals: 2008. ... New York Times C-1, C-2, C-17 (23 Oct.) + format.day.month.year + output.nonnull.remove +} + +FUNCTION { strip.doi } % UTAH +{ % Strip any Web address prefix to recover the bare DOI, leaving the + % result on the output stack, as recommended by CrossRef DOI + % documentation. + % For example, reduce "http://doi.acm.org/10.1145/1534530.1534545" to + % "10.1145/1534530.1534545". A suitable URL is later typeset and + % displayed as the LAST item in the reference list entry. Publisher Web + % sites wrap this with a suitable link to a real URL to resolve the DOI, + % and the master https://doi.org/ address is preferred, since publisher- + % specific URLs can disappear in response to economic events. All + % journals are encouraged by the DOI authorities to use that typeset + % format and link procedures for uniformity across all publications that + % include DOIs in reference lists. + % The numeric prefix is guaranteed to start with "10.", so we use + % that as a test. + % 2017-02-04 Added stripping of https:// (Boris) + doi #1 #3 substring$ "10." = + { doi } + { + doi 't := % get modifiable copy of DOI + + % Change https:// to http:// to strip both prefixes (BV) + + t #1 #8 substring$ "https://" = + { "http://" t #9 t text.length$ #8 - substring$ * 't := } + { } + if$ + + t #1 #7 substring$ "http://" = + { + t #8 t text.length$ #7 - substring$ 't := + + "INTERNAL STYLE-FILE ERROR" 's := + + % search for next "/" and assign its suffix to s + + { t text.length$ } + { + t #1 #1 substring$ "/" = + { + % save rest of string as true DOI (should be 10.xxxx/yyyy) + t #2 t text.length$ #1 - substring$ 's := + "" 't := % empty string t terminates the loop + } + { + % discard first character and continue loop: t <= substring(t,2,last) + t #2 t text.length$ #1 - substring$ 't := + } + if$ + } + while$ + + % check for valid DOI (should be 10.xxxx/yyyy) + s #1 #3 substring$ "10." = + { } + { "unrecognized DOI substring " s * " in DOI value [" * doi * "]" * warning$ } + if$ + + s % push the stripped DOI on the output stack + + } + { + "unrecognized DOI value [" doi * "]" * warning$ + doi % push the unrecognized original DOI on the output stack + } + if$ + } + if$ +} + +% +% Change by BV: added standard prefix to URL +% +FUNCTION { output.doi } % UTAH +{ % output non-empty DOI as one-line sentence (stack untouched) + doi empty.or.unknown + { } + { + %% Use \urldef here for the same reason it is used in output.url, + %% see output.url for further discussion. + "\urldef\tempurl%" writeln + "\url{https://doi.org/" strip.doi * "}" * writeln + "\showDOI{\tempurl}" writeln + } + if$ +} + +FUNCTION { output.isbn } % UTAH +{ % output non-empty ISBN-10 and/or ISBN-13 as one-line sentences (stack untouched) + show-isbn-10-and-13 + { + %% show both 10- and 13-digit ISBNs + isbn empty.or.unknown + { } + { + "\showISBNx{" isbn * "}" * writeln + } + if$ + isbn-13 empty.or.unknown + { } + { + "\showISBNxiii{" isbn-13 * "}" * writeln + } + if$ + } + { + %% show 10-digit ISBNs only if 13-digit ISBNs not available + isbn-13 empty.or.unknown + { + isbn empty.or.unknown + { } + { + "\showISBNx{" isbn * "}" * writeln + } + if$ + } + { + "\showISBNxiii{" isbn-13 * "}" * writeln + } + if$ + } + if$ +} + +FUNCTION { output.issn } % UTAH +{ % output non-empty ISSN as one-line sentence (stack untouched) + issn empty.or.unknown + { } + { "\showISSN{" issn * "}" * writeln } + if$ +} + +FUNCTION { output.issue } +{ % output non-empty issue number as a one-line sentence (stack untouched) + issue empty.or.unknown + { } + { "Issue " issue * "." * writeln } + if$ +} + +FUNCTION { output.lccn } % UTAH +{ % return with stack untouched + lccn empty.or.unknown + { } + { "\showLCCN{" lccn * "}" * writeln } + if$ +} + +FUNCTION { output.note } % UTAH +{ % return with stack empty + note empty.or.unknown + { } + { "\shownote{" note * "}" add.period$ * writeln } + if$ +} + +FUNCTION { output.note.check } % UTAH +{ % return with stack empty + note empty.or.unknown + { "empty note in " cite$ * warning$ } + { "\shownote{" note * "}" add.period$ * writeln } + if$ +} + +FUNCTION { output.eprint } % +{ % return with stack empty + eprint empty.or.unknown + { } + { "\showeprint" + archiveprefix empty.or.unknown + { eprinttype empty.or.unknown + { } + { "[" eprinttype "]" * * * } + if$ + } + { "[" archiveprefix "l" change.case$ "]" * * * } + if$ + "{" eprint "}" * * * + primaryclass empty.or.unknown + { eprintclass empty.or.unknown + { } + { "~[" eprintclass "]" * * * } + if$ + } + { "~[" primaryclass "]" * * * } + if$ + writeln + } + if$ +} + + +% +% Changes by BV 2011/04/15. Do not output +% url if doi is defined +% +% +% Changes by BV 2021/11/26. Output url even if doi is defined +% if distinctURL is not zero. +% +FUNCTION { output.url } % UTAH +{ % return with stack untouched + % output URL and associated lastaccessed fields + doi empty.or.unknown distinctURL empty.or.zero not or + { + url empty.or.unknown + { } + { + %% Use \urldef, outside \showURL, so that %nn, #, etc in URLs work + %% correctly. Put the actual URL on its own line to reduce the + %% likelihood of BibTeX's nasty line wrapping after column 79. + %% \url{} can undo this, but if that doesn't work for some reason + %% the .bbl file would have to be repaired manually. + "\urldef\tempurl%" writeln + "\url{" url * "}" * writeln + + "\showURL{%" writeln + lastaccessed empty.or.unknown + { "" } + { "Retrieved " lastaccessed * " from " * } + if$ + "\tempurl}" * writeln + } + if$ + } + { } + if$ +} + +FUNCTION { output.year.check } +{ % warn if year empty, output top string and leave " YEAR