From 49ec51835aa8913d04026b0b07cd1bbe1b379d0f Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 31 Mar 2017 23:22:45 +0000 Subject: acmart (31mar17) git-svn-id: svn://tug.org/texlive/trunk@43660 c570f23f-e606-0410-a88d-b1316a301751 --- .../bibtex/bst/acmart/ACM-Reference-Format.bst | 281 +++++---- Master/texmf-dist/doc/latex/acmart/Makefile | 3 +- Master/texmf-dist/doc/latex/acmart/README | 17 + Master/texmf-dist/doc/latex/acmart/acmart.bib | 85 ++- Master/texmf-dist/doc/latex/acmart/acmart.pdf | Bin 700944 -> 752775 bytes Master/texmf-dist/doc/latex/acmart/acmguide.pdf | Bin 421150 -> 442739 bytes .../doc/latex/acmart/sample-acmlarge.pdf | Bin 611083 -> 638201 bytes .../doc/latex/acmart/sample-acmsmall.pdf | Bin 626655 -> 644304 bytes .../texmf-dist/doc/latex/acmart/sample-acmtog.pdf | Bin 585821 -> 604659 bytes .../doc/latex/acmart/sample-bibliography.bib | 2 +- .../doc/latex/acmart/sample-manuscript.pdf | Bin 665157 -> 684657 bytes .../doc/latex/acmart/sample-sigchi-a.pdf | Bin 1292760 -> 1302800 bytes .../texmf-dist/doc/latex/acmart/sample-sigchi.pdf | Bin 1077217 -> 1101700 bytes .../latex/acmart/sample-sigconf-authordraft.pdf | Bin 0 -> 652563 bytes .../latex/acmart/sample-sigconf-authordraft.tex | 164 ++++++ .../texmf-dist/doc/latex/acmart/sample-sigconf.pdf | Bin 608998 -> 631195 bytes .../texmf-dist/doc/latex/acmart/sample-sigplan.pdf | Bin 978385 -> 997417 bytes Master/texmf-dist/source/latex/acmart/acmart.dtx | 630 ++++++++++++++++----- Master/texmf-dist/tex/latex/acmart/acmart.cls | 271 ++++++--- 19 files changed, 1049 insertions(+), 404 deletions(-) create mode 100644 Master/texmf-dist/doc/latex/acmart/sample-sigconf-authordraft.pdf create mode 100644 Master/texmf-dist/doc/latex/acmart/sample-sigconf-authordraft.tex (limited to 'Master') diff --git a/Master/texmf-dist/bibtex/bst/acmart/ACM-Reference-Format.bst b/Master/texmf-dist/bibtex/bst/acmart/ACM-Reference-Format.bst index 0ba60480249..53f7ba58b16 100644 --- a/Master/texmf-dist/bibtex/bst/acmart/ACM-Reference-Format.bst +++ b/Master/texmf-dist/bibtex/bst/acmart/ACM-Reference-Format.bst @@ -6,7 +6,7 @@ %%% date = "10 July 2016", %%% filename = "ACM-Reference-Format.bst", %%% email = "beebe@math.utah.edu, beebe@acm.org, -%%% beebe@computer.org, borisv@lk.net, murray@hq.acm.org", +%%% beebe@computer.org, borisv@lk.net, murray@hq.acm.org", %%% codetable = "ISO/ASCII", %%% keywords = "ACM Transactions bibliography style; BibTeX", %%% license = "public domain", @@ -153,10 +153,10 @@ % % Start of ACM-Reference-Format-Journals.bst % -% Note: Many of the new bibentry 'fields' will only work with the +% Note: Many of the new bibentry 'fields' will only work with the % 'ACM-Reference-Format-Journals.bst' file. Legacy .bib files (which will, in all probability, % NOT contain these new fields) will _still_ work with the ACM-Reference-Format-Journals.bst. -% +% % ENTRY { address @@ -187,9 +187,10 @@ ENTRY type volume year - % New keys recognized + % 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 @@ -223,6 +224,28 @@ 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$ @@ -543,14 +566,22 @@ FUNCTION { output.coden } % UTAH FUNCTION { format.articleno } { - articleno empty.or.unknown + 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 field, but no numpages field, in " cite$ * warning$ } + { "articleno or eid field, but no numpages field, in " + cite$ * warning$ } { } if$ - "Article \bibinfo{articleno}{" articleno * "}" * + eid empty.or.unknown + { "Article \bibinfo{articleno}{" articleno * "}" * } + { "Article \bibinfo{articleno}{" eid * "}" * } + if$ } if$ } @@ -559,7 +590,7 @@ FUNCTION { format.year } { % push year string or "????" onto output stack %% Because year is a mandatory field, we always force SOMETHING %% to be output - "\bibinfo{year}{" + "\bibinfo{year}{" year empty.or.unknown { "????" } { year } @@ -590,9 +621,13 @@ FUNCTION { format.day.month.year } % UTAH % 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 + articleno empty.or.unknown eid empty.or.unknown and { "" } - { ", " format.articleno * } + { output.state after.block = + {", " format.articleno * } + { format.articleno } + if$ + } if$ " (" * format.day.month * format.year * ")" * } @@ -636,7 +671,7 @@ FUNCTION { strip.doi } % UTAH t #1 #7 substring$ "http://" = { - t #8 t text.length$ #7 - substring$ 't := + t #8 t text.length$ #7 - substring$ 't := "INTERNAL STYLE-FILE ERROR" 's := @@ -773,21 +808,21 @@ FUNCTION { output.note.check } % UTAH if$ } -FUNCTION { output.eprint } % +FUNCTION { output.eprint } % { % return with stack empty eprint empty.or.unknown { } - { "\showeprint" + { "\showeprint" archiveprefix empty.or.unknown { } { "[" archiveprefix "l" change.case$ "]" * * * } if$ "{" * - primaryclass empty.or.unknown + primaryclass empty.or.unknown { } { primaryclass "/" * *} if$ - eprint "}" * * + eprint "}" * * writeln } if$ @@ -862,33 +897,13 @@ FUNCTION { output.year.check } year empty.or.unknown { "empty year in " cite$ * warning$ } { write$ - " \bibinfo{year}{" year * "}" * - "\natexlab{" extra.label * "}" * * + " \bibinfo{year}{" year * "}" * + "\natexlab{" extra.label * "}" * * mid.sentence 'output.state := } if$ } -FUNCTION { not } -{ - { #0 } - { #1 } - if$ -} - -FUNCTION { and } -{ - 'skip$ - { pop$ #0 } - if$ -} - -FUNCTION { or } -{ - { pop$ #1 } - 'skip$ - if$ -} FUNCTION { le } { @@ -1253,8 +1268,8 @@ FUNCTION { format.authors } { author empty.or.unknown { "" } - { - "\bibfield{author}{" + { + "\bibfield{author}{" author format.names add.period$ * "}" *} % jtb: add period if none before if$ } @@ -1285,8 +1300,8 @@ FUNCTION { format.editors.fml } editor empty.or.unknown { "" } { - "\bibfield{editor}{" - editor format.names.fml + "\bibfield{editor}{" + editor format.names.fml * "}" * editor num.names$ #1 > { " (Eds.)" * } @@ -1301,7 +1316,7 @@ FUNCTION { format.editors } editor empty.or.unknown { "" } { - "\bibfield{editor}{" + "\bibfield{editor}{" editor format.names * "}" * editor num.names$ #1 > @@ -1552,7 +1567,7 @@ FUNCTION { format.pages.check.without.articleno } { } if$ - articleno empty.or.unknown + articleno empty.or.unknown eid empty.or.unknown and { pages missing$ { numpages } @@ -1597,13 +1612,7 @@ FUNCTION { format.page.count } { page.count empty.or.unknown { "" } - { - articleno empty.or.unknown - { "numpages field, but no articleno field, in " cite$ * warning$ } - { } - if$ - "\bibinfo{numpages}{" page.count * "}~pages" * - } + { "\bibinfo{numpages}{" page.count * "}~pages" * } if$ } @@ -1625,11 +1634,12 @@ FUNCTION { format.articleno.numpages } %% numpages -> "numpages-value" %% pages -> "pages-value" - articleno empty.or.unknown + articleno empty.or.unknown eid empty.or.unknown and { numpages empty.or.unknown { } - { "require articleno with numpages field in " cite$ * warning$ } + { "numpages field, but no articleno or eid field, in " + cite$ * warning$ } if$ "" } @@ -1638,7 +1648,8 @@ FUNCTION { format.articleno.numpages } { pages empty.or.unknown { - "require pages or numpages fields with articleno field in " cite$ * warning$ + "articleno or eid, but no pages or numpages field in " + cite$ * warning$ "" 'page.count := } { reduce.pages.to.page.count } @@ -1656,6 +1667,24 @@ FUNCTION { format.articleno.numpages } if$ } +FUNCTION {calc.format.page.count} +{ + numpages empty.or.unknown + { + pages empty.or.unknown + { + "" 'page.count := + } + { reduce.pages.to.page.count } + if$ + } + { numpages 'page.count := } + if$ + format.page.count +} + + + FUNCTION { format.journal.volume.number.day.month.year } { % By Young (and Spencer) @@ -2102,12 +2131,19 @@ FUNCTION { format.journal.volume.number.day.month.year } " \bibinfo{number}{" * number * "}" * } { " \bibinfo{volume}{" * volume * "}, \bibinfo{number}{" * - number * "}" *} + number * "}" *} if$ } if$ + after.block 'output.state := - format.day.month.year * + % Sometimes proceedings are published in journals + % In this case we do not want to put year, day and month here + + type$ "inproceedings" = + { } + {format.day.month.year * } + if$ } FUNCTION { format.chapter.pages } @@ -2172,7 +2208,7 @@ FUNCTION { format.tr.number } { "\bibinfo{type}{" type empty.or.unknown - { "{T}echnical {R}eport" } + { "{T}echnical {R}eport" } 'type if$ "}" * * @@ -2303,23 +2339,6 @@ FUNCTION { author.key.label } if$ } -FUNCTION { author.key.organization.label } -{ % added - gnp. Provide label formatting by organization if author is null. - author empty.or.unknown - { organization empty.or.unknown - { key empty.or.unknown - { "no key, author or organization in " cite$ * warning$ - cite$ #1 #3 substring$ } - 'key - if$ - } - { organization } - if$ - } - { author format.lab.names } - if$ -} - FUNCTION { editor.key.organization.label } { % added - gnp. Provide label formatting by organization if editor is null. editor empty.or.unknown @@ -2354,30 +2373,58 @@ FUNCTION { author.editor.key.label } if$ } -FUNCTION { calc.label } -{ - % Changed - GNP. See also author.organization.sort, editor.organization.sort - % Form label for BibTeX entry. The classification of which fields are used - % for which type of entry (book, inbook, etc.) are taken from alpha.bst. - % The change here from newapa is to also include organization as a - % citation label if author or editor is missing. +FUNCTION { author.editor.key.organization.label } +{ % added - gnp. Provide label formatting by organization if author is null. + author empty.or.unknown + { editor empty.or.unknown + { organization empty.or.unknown + { key empty.or.unknown + { "no key, author, editor or organization in " cite$ * warning$ + cite$ #1 #3 substring$ } + 'key + if$ + } + { organization } + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} +FUNCTION { calc.basic.label } +{ type$ "book" = type$ "inbook" = or - type$ "periodical" = + type$ "article" = or 'author.editor.key.label { type$ "proceedings" = + type$ "periodical" = + or 'editor.key.organization.label { type$ "manual" = - 'author.key.organization.label + 'author.editor.key.organization.label 'author.key.label if$ } if$ } if$ +} + +FUNCTION { calc.label } +{ + % Changed - GNP. See also author.editor.organization.sort, editor.organization.sort + % Form label for BibTeX entry. The classification of which fields are used + % for which type of entry (book, inbook, etc.) are taken from alpha.bst. + % The change here from newapa is to also include organization as a + % citation label if author or editor is missing. + + calc.basic.label author empty.or.unknown % generate the full label citation information. { @@ -2460,7 +2507,7 @@ FUNCTION { output.issue.doi.coden.isxn.lccn.url.eprint } output.lccn output.doi % DOI is ALWAYS last according to CrossRef DOI documentation output.eprint - output.url % but ACM wants URL last + output.url % but ACM wants URL last } FUNCTION { output.issue.doi.coden.isxn.lccn.url.eprint.note } @@ -2514,13 +2561,12 @@ FUNCTION { article } if$ crossref missing$ - { format.journal.volume.number.day.month.year } + { format.journal.volume.number.day.month.year output} { "cross reference in @Article{...} is unusual" warning$ format.article.crossref output.nonnull } if$ - output format.pages.check.without.articleno output format.articleno.numpages output @@ -2550,7 +2596,7 @@ FUNCTION { book } new.block format.number.series output new.sentence - publisher "publisher" bibinfo.output.check + publisher "publisher" bibinfo.output.check address "address" bibinfo.output.check % jtb: require address fin.sentence pages empty.or.unknown @@ -2743,7 +2789,7 @@ FUNCTION { mastersthesis } format.title emphasize "title" output.check % NB: ACM style requires emphasized thesis title new.block "\bibinfo{thesistype}{Master's\ thesis}" format.thesis.type output - new.sentence + new.sentence school "school" bibinfo.output.check address empty.or.unknown { } @@ -2770,7 +2816,8 @@ FUNCTION { misc } { "\bibinfo{howpublished}{" howpublished "}" * * output } if$ "" output.nonnull.dot.space - output.day.month.year + output.day.month.year + calc.format.page.count output fin.block output.issue.doi.coden.isxn.lccn.url.eprint.note fin.entry @@ -2790,8 +2837,8 @@ FUNCTION { phdthesis } new.block format.title emphasize "title" output.check % NB: ACM style requires emphasized thesis title new.block - "\bibinfo{thesistype}{Ph.D. Dissertation}" format.thesis.type output - new.sentence + "\bibinfo{thesistype}{Ph.D. Dissertation}" format.thesis.type output + new.sentence school "school" bibinfo.output.check address empty.or.unknown { } @@ -2860,10 +2907,11 @@ FUNCTION { periodical } { format.editors output.nonnull } if$ new.block - output.year.check + output.year.check new.sentence format.articletitle "title" output.check format.journal.volume.number.day.month.year output + calc.format.page.count output fin.entry } @@ -2935,6 +2983,7 @@ FUNCTION { unpublished } format.title "title" output.check fin.sentence output.day.month.year % UTAH + calc.format.page.count output fin.block output.issue.doi.coden.isxn.lccn.url.eprint.note.check fin.entry @@ -3184,15 +3233,15 @@ FUNCTION { author.editor.sort } if$ } -FUNCTION { author.organization.sort } +FUNCTION { editor.organization.sort } { - % added - GNP. Stack author or organization for sorting (from alpha.bst). + % added - GNP. Stack editor or organization for sorting (from alpha.bst). % Unlike alpha.bst, we need entire names, not abbreviations - author empty.or.unknown + editor empty.or.unknown { organization empty.or.unknown { key empty.or.unknown - { "to sort, need author, organization, or key in " cite$ * warning$ + { "to sort, need editor, organization, or key in " cite$ * warning$ "" } { key sortify } @@ -3201,28 +3250,33 @@ FUNCTION { author.organization.sort } { organization sortify } if$ } - { author sort.format.names } + { editor sort.format.names } if$ } -FUNCTION { editor.organization.sort } +FUNCTION { author.editor.organization.sort } { - % added - GNP. Stack editor or organization for sorting (from alpha.bst). + % added - GNP. Stack author or organization for sorting (from alpha.bst). % Unlike alpha.bst, we need entire names, not abbreviations - editor empty.or.unknown - { organization empty.or.unknown - { key empty.or.unknown - { "to sort, need editor, organization, or key in " cite$ * warning$ - "" + author empty.or.unknown + { + editor empty.or.unknown + { organization empty.or.unknown + { key empty.or.unknown + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ } - { key sortify } + { organization sortify } if$ } - { organization sortify } + { editor sort.format.names } if$ } - { editor sort.format.names } + { author sort.format.names } if$ } @@ -3239,12 +3293,16 @@ FUNCTION { presort } * type$ "book" = type$ "inbook" = + or + type$ "article" = or 'author.editor.sort { type$ "proceedings" = + type$ "periodical" = + or 'editor.organization.sort { type$ "manual" = - 'author.organization.sort + 'author.editor.organization.sort 'author.sort if$ } @@ -3283,7 +3341,7 @@ FUNCTION { forward.pass } last.label % OLD:calc.label year field.or.null purify$ #-1 #4 substring$ * % add year % NEW: - author.key.label year field.or.null purify$ #-1 #4 substring$ * % add year + calc.basic.label year field.or.null purify$ #-1 #4 substring$ * % add year #1 entry.max$ substring$ = % are they equal? { last.extra.num #1 + 'last.extra.num := last.extra.num int.to.chr$ 'extra.label := @@ -3292,7 +3350,7 @@ FUNCTION { forward.pass } "" 'extra.label := % OLD: calc.label year field.or.null purify$ #-1 #4 substring$ * % add year % NEW: - author.key.label year field.or.null purify$ #-1 #4 substring$ * % add year + calc.basic.label year field.or.null purify$ #-1 #4 substring$ * % add year #1 entry.max$ substring$ 'last.label := % assign to last.label } if$ @@ -3395,7 +3453,7 @@ FUNCTION { begin.bib } "\ifx \showLCCN \undefined \def \showLCCN #1{\unskip} \fi" writeln "\ifx \shownote \undefined \def \shownote #1{#1} \fi" writeln % NB: final period supplied by add.period$ above "\ifx \showarticletitle \undefined \def \showarticletitle #1{#1} \fi" writeln - "\ifx \showURL \undefined \def \showURL #1{#1} \fi" writeln + "\ifx \showURL \undefined \def \showURL {\relax} \fi" writeln "% The following commands are used for tagged output and should be " writeln "% invisible to TeX" writeln "\providecommand\bibfield[2]{#2}" writeln @@ -3418,6 +3476,3 @@ FUNCTION { end.bib } } EXECUTE {end.bib} - - - diff --git a/Master/texmf-dist/doc/latex/acmart/Makefile b/Master/texmf-dist/doc/latex/acmart/Makefile index 626bff6bade..7f5c1990c0d 100644 --- a/Master/texmf-dist/doc/latex/acmart/Makefile +++ b/Master/texmf-dist/doc/latex/acmart/Makefile @@ -14,6 +14,7 @@ SAMPLES = \ sample-acmlarge.tex \ sample-acmtog.tex \ sample-sigconf.tex \ + sample-sigconf-authordraft.tex \ sample-sigplan.tex \ sample-sigchi.tex \ sample-sigchi-a.tex @@ -59,7 +60,7 @@ sample-acmlarge.pdf \ sample-acmtog.pdf: samplebody-journals.tex sample-sigconf.pdf \ -sample-siggraph.pdf \ +sample-sigconf-authordraft.pdf \ sample-sigplan.pdf \ sample-sigchi.pdf: samplebody-conf.tex diff --git a/Master/texmf-dist/doc/latex/acmart/README b/Master/texmf-dist/doc/latex/acmart/README index 9926b7f6308..ec9162742c4 100644 --- a/Master/texmf-dist/doc/latex/acmart/README +++ b/Master/texmf-dist/doc/latex/acmart/README @@ -1,6 +1,10 @@ This package provides a class for typesetting publications of Association for Computing Machinery. +Your TeX distribution probably includes the latest released version of +this package. If you decide to install it yourself, please see +Installation section of the User's Guide. + Changes version 1.08 SIGPLAN reformatting (Matthew Fluet); bug fixes @@ -78,3 +82,16 @@ version 1.32 New DOI formatting. Format siggraph is now obsolete, and sigconf is used instead. New proceedings title: POMACS. + +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 + diff --git a/Master/texmf-dist/doc/latex/acmart/acmart.bib b/Master/texmf-dist/doc/latex/acmart/acmart.bib index bb56301f3ee..a9fa7861af5 100644 --- a/Master/texmf-dist/doc/latex/acmart/acmart.bib +++ b/Master/texmf-dist/doc/latex/acmart/acmart.bib @@ -1,89 +1,80 @@ -@misc{TeXFAQ, - author = {{UK \TeX{} Users Group}}, - howpublished = {\url{http://www.tex.ac.uk}}, - title = {{UK} List of {\TeX} Frequently Asked Questions}, - year = {2016}, +@Misc{TeXFAQ, + title = {{UK} List of {\TeX} Frequently Asked Questions}, + author = {{UK \TeX{} Users Group}}, + year = 2016, + howpublished = {\url{http://www.tex.ac.uk}} } @Manual{Downes04:amsart, - title = {The \textsf{amsart}, \textsf{amsproc}, and + title = {The \textsf{amsart}, \textsf{amsproc}, and \textsf{amsbook} document~classes}, author = {Michael Downes and Barbara Beeton}, organization = {American Mathematical Society}, year = 2004, - month = {August}, - note = {\url{http://www.ctan.org/pkg/amslatex}} -} - -@Manual{instr-l, - title = {Instructions for Preparation of Papers and - Monographs, {AMS\LaTeX}}, - organization = {American Mathematical Society}, - month = {August}, - year = 2004, + month = aug, note = {\url{http://www.ctan.org/pkg/amslatex}} } @Manual{Fiorio15, - title = {{a}lgorithm2e.sty---package for algorithms}, + title = {{a}lgorithm2e.sty---package for algorithms}, author = {Cristophe Fiorio}, - month = {October}, year = 2015, - annote = {\url{http://www.ctan.org/pkg/algorithm2e}} + month = oct, + note = {\url{http://www.ctan.org/pkg/algorithm2e}} } @Manual{Brito09, - title = {The algorithms bundle}, + title = {The algorithms bundle}, author = {Rog\'erio Brito}, - month = {August}, year = 2009, - annote = {\url{http://www.ctan.org/pkg/algorithms}} + month = aug, + note = {\url{http://www.ctan.org/pkg/algorithms}} } - @Manual{Heinz15, - title = {The Listings Package}, + title = {The Listings Package}, author = {Carsten Heinz and Brooks Moses and Jobst Hoffmann}, - month = {June}, year = 2015, + month = jun, note = {\url{http://www.ctan.org/pkg/listings}} } @Manual{Fear05, - title = {Publication quality tables in {\LaTeX}}, + title = {Publication quality tables in {\LaTeX}}, author = {Simon Fear}, - month = {April}, year = 2005, + month = apr, note = {\url{http://www.ctan.org/pkg/booktabs}} } @Manual{ACMIdentityStandards, - title = {{ACM} Visual Identity Standards}, + title = {{ACM} Visual Identity Standards}, organization = {Association for Computing Machinery}, - year = 2007 + year = 2007, + note = {\url{http://identitystandards.acm.org}} } @Manual{Sommerfeldt13:Subcaption, - title = {The subcaption package}, - author = {Axel Sommerfeldt}, - month = {April}, - year = 2013, - note = {\url{http://www.ctan.org/pkg/subcaption}}, + title = {The subcaption package}, + author = {Axel Sommerfeldt}, + year = 2013, + month = apr, + note = {\url{http://www.ctan.org/pkg/subcaption}} } - @Manual{Nomencl, - title = {A package to create a nomenclature}, - author = {Boris Veytsman and Bern Schandl and Lee Netherton - and CV Radhakrishnan}, - month = {September}, - note = {\url{http://www.ctan.org/pkg/nomencl}}, - year = 2005} + title = {A package to create a nomenclature}, + author = {Boris Veytsman and Bern Schandl and Lee Netherton + and C. V. Radhakrishnan}, + year = 2005, + month = sep, + note = {\url{http://www.ctan.org/pkg/nomencl}} +} @Manual{Talbot16:Glossaries, - title = {User Manual for glossaries.sty v4.25}, - author = {Nicola L. C. Talbot}, - month = {June}, - year = 2016, - note = {\url{http://www.ctan.org/pkg/subcaption}}} - + title = {User Manual for glossaries.sty v4.25}, + author = {Nicola L. C. Talbot}, + year = 2016, + month = jun, + note = {\url{http://www.ctan.org/pkg/subcaption}} +} diff --git a/Master/texmf-dist/doc/latex/acmart/acmart.pdf b/Master/texmf-dist/doc/latex/acmart/acmart.pdf index 3b791e6575e..50424b247e0 100644 Binary files a/Master/texmf-dist/doc/latex/acmart/acmart.pdf and b/Master/texmf-dist/doc/latex/acmart/acmart.pdf differ diff --git a/Master/texmf-dist/doc/latex/acmart/acmguide.pdf b/Master/texmf-dist/doc/latex/acmart/acmguide.pdf index 1d2ae66f295..2313f4f64f3 100644 Binary files a/Master/texmf-dist/doc/latex/acmart/acmguide.pdf and b/Master/texmf-dist/doc/latex/acmart/acmguide.pdf differ diff --git a/Master/texmf-dist/doc/latex/acmart/sample-acmlarge.pdf b/Master/texmf-dist/doc/latex/acmart/sample-acmlarge.pdf index e198d583e8f..93d3e62ebc9 100644 Binary files a/Master/texmf-dist/doc/latex/acmart/sample-acmlarge.pdf and b/Master/texmf-dist/doc/latex/acmart/sample-acmlarge.pdf differ diff --git a/Master/texmf-dist/doc/latex/acmart/sample-acmsmall.pdf b/Master/texmf-dist/doc/latex/acmart/sample-acmsmall.pdf index 8f45ae17da0..bed79309e6b 100644 Binary files a/Master/texmf-dist/doc/latex/acmart/sample-acmsmall.pdf and b/Master/texmf-dist/doc/latex/acmart/sample-acmsmall.pdf differ diff --git a/Master/texmf-dist/doc/latex/acmart/sample-acmtog.pdf b/Master/texmf-dist/doc/latex/acmart/sample-acmtog.pdf index 976a46c6479..6ae236ed611 100644 Binary files a/Master/texmf-dist/doc/latex/acmart/sample-acmtog.pdf and b/Master/texmf-dist/doc/latex/acmart/sample-acmtog.pdf differ diff --git a/Master/texmf-dist/doc/latex/acmart/sample-bibliography.bib b/Master/texmf-dist/doc/latex/acmart/sample-bibliography.bib index 7bc39956732..f87f308a170 100644 --- a/Master/texmf-dist/doc/latex/acmart/sample-bibliography.bib +++ b/Master/texmf-dist/doc/latex/acmart/sample-bibliography.bib @@ -696,7 +696,7 @@ year = {2003}, year = "2005", title = "Interview with Bill Kinder: January 13, 2005", journal = "Comput. Entertain.", - articleno = "4", + eid = "4", volume = "3", number = "1", month = "Jan.-March", diff --git a/Master/texmf-dist/doc/latex/acmart/sample-manuscript.pdf b/Master/texmf-dist/doc/latex/acmart/sample-manuscript.pdf index 4c0c3f211c0..c0be7e1ab04 100644 Binary files a/Master/texmf-dist/doc/latex/acmart/sample-manuscript.pdf and b/Master/texmf-dist/doc/latex/acmart/sample-manuscript.pdf differ diff --git a/Master/texmf-dist/doc/latex/acmart/sample-sigchi-a.pdf b/Master/texmf-dist/doc/latex/acmart/sample-sigchi-a.pdf index 6d38b3f4d9d..d8c67ef8e5b 100644 Binary files a/Master/texmf-dist/doc/latex/acmart/sample-sigchi-a.pdf and b/Master/texmf-dist/doc/latex/acmart/sample-sigchi-a.pdf differ diff --git a/Master/texmf-dist/doc/latex/acmart/sample-sigchi.pdf b/Master/texmf-dist/doc/latex/acmart/sample-sigchi.pdf index 97ee6c88d07..276171c20a8 100644 Binary files a/Master/texmf-dist/doc/latex/acmart/sample-sigchi.pdf and b/Master/texmf-dist/doc/latex/acmart/sample-sigchi.pdf differ diff --git a/Master/texmf-dist/doc/latex/acmart/sample-sigconf-authordraft.pdf b/Master/texmf-dist/doc/latex/acmart/sample-sigconf-authordraft.pdf new file mode 100644 index 00000000000..f7ba3f06a64 Binary files /dev/null and b/Master/texmf-dist/doc/latex/acmart/sample-sigconf-authordraft.pdf differ diff --git a/Master/texmf-dist/doc/latex/acmart/sample-sigconf-authordraft.tex b/Master/texmf-dist/doc/latex/acmart/sample-sigconf-authordraft.tex new file mode 100644 index 00000000000..c54d024e4d0 --- /dev/null +++ b/Master/texmf-dist/doc/latex/acmart/sample-sigconf-authordraft.tex @@ -0,0 +1,164 @@ +\documentclass[sigconf, authordraft]{acmart} + +\usepackage{booktabs} % For formal tables + + +% Copyright +%\setcopyright{none} +%\setcopyright{acmcopyright} +%\setcopyright{acmlicensed} +\setcopyright{rightsretained} +%\setcopyright{usgov} +%\setcopyright{usgovmixed} +%\setcopyright{cagov} +%\setcopyright{cagovmixed} + + +% DOI +\acmDOI{10.475/123_4} + +% ISBN +\acmISBN{123-4567-24-567/08/06} + +%Conference +\acmConference[WOODSTOCK'97]{ACM Woodstock conference}{July 1997}{El + Paso, Texas USA} +\acmYear{1997} +\copyrightyear{2016} + +\acmPrice{15.00} + +\acmSubmissionID{123-A12-B3} + +\begin{document} +\title{SIG Proceedings Paper in LaTeX Format} +\titlenote{Produces the permission block, and + copyright information} +\subtitle{Extended Abstract} +\subtitlenote{The full version of the author's guide is available as + \texttt{acmart.pdf} document} + + +\author{Ben Trovato} +\authornote{Dr.~Trovato insisted his name be first.} +\orcid{1234-5678-9012} +\affiliation{% + \institution{Institute for Clarity in Documentation} + \streetaddress{P.O. Box 1212} + \city{Dublin} + \state{Ohio} + \postcode{43017-6221} +} +\email{trovato@corporation.com} + +\author{G.K.M. Tobin} +\authornote{The secretary disavows any knowledge of this author's actions.} +\affiliation{% + \institution{Institute for Clarity in Documentation} + \streetaddress{P.O. Box 1212} + \city{Dublin} + \state{Ohio} + \postcode{43017-6221} +} +\email{webmaster@marysville-ohio.com} + +\author{Lars Th{\o}rv{\"a}ld} +\authornote{This author is the + one who did all the really hard work.} +\affiliation{% + \institution{The Th{\o}rv{\"a}ld Group} + \streetaddress{1 Th{\o}rv{\"a}ld Circle} + \city{Hekla} + \country{Iceland}} +\email{larst@affiliation.org} + +\author{Lawrence P. Leipuner} +\affiliation{ + \institution{Brookhaven Laboratories} + \streetaddress{P.O. Box 5000}} +\email{lleipuner@researchlabs.org} + +\author{Sean Fogarty} +\affiliation{% + \institution{NASA Ames Research Center} + \city{Moffett Field} + \state{California} + \postcode{94035}} +\email{fogartys@amesres.org} + +\author{Charles Palmer} +\affiliation{% + \institution{Palmer Research Laboratories} + \streetaddress{8600 Datapoint Drive} + \city{San Antonio} + \state{Texas} + \postcode{78229}} +\email{cpalmer@prl.com} + +\author{John Smith} +\affiliation{\institution{The Th{\o}rv{\"a}ld Group}} +\email{jsmith@affiliation.org} + +\author{Julius P.~Kumquat} +\affiliation{\institution{The Kumquat Consortium}} +\email{jpkumquat@consortium.net} + +% The default list of authors is too long for headers} +\renewcommand{\shortauthors}{B. Trovato et al.} + + +\begin{abstract} +This paper provides a sample of a \LaTeX\ document which conforms, +somewhat loosely, to the formatting guidelines for +ACM SIG Proceedings.\footnote{This is an abstract footnote} +\end{abstract} + +% +% The code below should be generated by the tool at +% http://dl.acm.org/ccs.cfm +% Please copy and paste the code instead of the example below. +% +\begin{CCSXML} + + + 10010520.10010553.10010562 + Computer systems organization~Embedded systems + 500 + + + 10010520.10010575.10010755 + Computer systems organization~Redundancy + 300 + + + 10010520.10010553.10010554 + Computer systems organization~Robotics + 100 + + + 10003033.10003083.10003095 + Networks~Network reliability + 100 + + +\end{CCSXML} + +\ccsdesc[500]{Computer systems organization~Embedded systems} +\ccsdesc[300]{Computer systems organization~Redundancy} +\ccsdesc{Computer systems organization~Robotics} +\ccsdesc[100]{Networks~Network reliability} + +% We no longer use \terms command +%\terms{Theory} + +\keywords{ACM proceedings, \LaTeX, text tagging} + + +\maketitle + +\input{samplebody-conf} + +\bibliographystyle{ACM-Reference-Format} +\bibliography{sigproc} + +\end{document} diff --git a/Master/texmf-dist/doc/latex/acmart/sample-sigconf.pdf b/Master/texmf-dist/doc/latex/acmart/sample-sigconf.pdf index 3c27201b76e..90925bf7ca0 100644 Binary files a/Master/texmf-dist/doc/latex/acmart/sample-sigconf.pdf and b/Master/texmf-dist/doc/latex/acmart/sample-sigconf.pdf differ diff --git a/Master/texmf-dist/doc/latex/acmart/sample-sigplan.pdf b/Master/texmf-dist/doc/latex/acmart/sample-sigplan.pdf index 9d003d30e99..07895d1d45c 100644 Binary files a/Master/texmf-dist/doc/latex/acmart/sample-sigplan.pdf and b/Master/texmf-dist/doc/latex/acmart/sample-sigplan.pdf differ diff --git a/Master/texmf-dist/source/latex/acmart/acmart.dtx b/Master/texmf-dist/source/latex/acmart/acmart.dtx index a28ef814ea9..bbac104e45b 100644 --- a/Master/texmf-dist/source/latex/acmart/acmart.dtx +++ b/Master/texmf-dist/source/latex/acmart/acmart.dtx @@ -123,12 +123,14 @@ % At this address you can file a bug report---or even contribute your % own enhancement making a pull request. % -% If you decide to install the package yourself, follow the standard -% rules: +% +% Most users should not attempt to install this package themselves, +% and rather rely on their \TeX\ distributions to provide it. If you +% decide to install the package yourself, follow the standard rules: % \begin{enumerate} % \item Run \progname{latex} on |acmart.ins|. This will produce the file % |acmart.cls|. -% \item Put the file |acmart.cls| and the bibligoraphy files |*.bst| +% \item Put the file |acmart.cls| and the bibliography files |*.bst| % to the places where \LaTeX{} can find them (see \cite{TeXFAQ} or % the documentation for your \TeX{} system).\label{item:install} % \item Update the database of file names. Again, see \cite{TeXFAQ} @@ -153,6 +155,9 @@ % \item \textsl{binhex}, \url{http://www.ctan.org/pkg/binhex} % \item \textsl{caption}, \url{http://www.ctan.org/pkg/caption} % \item \textsl{comment}, \url{http://www.ctan.org/pkg/comment} +% \item \textsl{cm-super}, \url{http://www.ctan.org/pkg/cm-super} +% \item \textsl{cmap}, \url{http://www.ctan.org/pkg/cmap} +% \item \textsl{draftwatermark}, \url{http://www.ctan.org/pkg/draftwatermark} % \item \textsl{environ}, \url{http://www.ctan.org/pkg/environ} % \item \textsl{fancyhdr}, \url{http://www.ctan.org/pkg/fancyhdr} % \item \textsl{float}, \url{http://www.ctan.org/pkg/float} @@ -167,6 +172,7 @@ % \item \textsl{libertine}, \url{http://www.ctan.org/pkg/libertine} % \item \textsl{manyfoot}, \url{http://www.ctan.org/pkg/manyfoot} % \item \textsl{microtype}, \url{http://www.ctan.org/pkg/microtype} +% \item \textsl{mmap}, \url{http://www.ctan.org/pkg/mmap} % \item \textsl{ms}, \url{http://www.ctan.org/pkg/ms} % \item \textsl{mweights}, \url{http://www.ctan.org/pkg/mweights} % \item \textsl{natbib}, \url{http://www.ctan.org/pkg/natbib} @@ -213,6 +219,11 @@ % are intended for journals and transactions, while formats starting % with |sig| are intended for proceedings published as books. % +% Note that sometimes conference proceedings are published as a +% special issue (or issues) of an ACM journal. In this case you +% should use the journal format for a conference paper. Please +% contact your conference committee if in doubt. +% % \begin{table} % \centering % \caption{The possible values for the \texttt{format} option} @@ -228,19 +239,19 @@ % TOCS, TOCT, TODAES, TODS, TOIS, TOIT, TOMACS, TOMM (formerly % TOMCCAP), TOMPECS, TOMS, TOPC, TOPLAS, TOPS, % TOS, TOSEM, TOSN, TRETS, -% TSAS, TSC, TSLP, TWEB\@. \\ +% TSAS, TSC, TSLP, TWEB, including special issues. \\ % acmlarge & Large single column format, used for -% IMWUT, JOCCH, PACMPL, POMACS, TAP \\ +% IMWUT, JOCCH, PACMPL, POMACS, TAP, including special issues. \\ % acmtog & Large double column format, used for -% TOG\\ +% TOG, including special issues.\\ % sigconf & Proceedings format for most of ACM % conferences (with the exceptions listed below) and all ICPS -% volumes\\ +% volumes.\\ % siggraph & As of March 2017, this format is no longer % used. Please use sigconf for SIGGRAPH conferences. \\ -% sigplan & Proceedings format for SIGPLAN conferences\\ -% sigchi & Proceedings format for SIGCHI conferences\\ -% sigchi-a & Format for SIGCHI extended abstract\\ +% sigplan & Proceedings format for SIGPLAN conferences.\\ +% sigchi & Proceedings format for SIGCHI conferences.\\ +% sigchi-a & Format for SIGCHI extended abstract.\\ % \bottomrule % \end{tabularx} % \end{table} @@ -268,7 +279,21 @@ % % The option |anonymous| is used % for anonymous review process: all author information becomes -% obscured. +% obscured. +% +% The option |timestamp| is used to include a time stamp in the +% footer of each page. When preparing a document, this can help avoid +% confusing different revisions. The footer also include the page range of +% the document. This helps detect missing pages in hard copies. +% +% The option |authordraft| is intended for the authors' drafts, not +% intended for distribution. It typesets copyright block to give the +% authors the idea of its size and overall size of the paper, but +% overprints it with the phrase ``Unpublished working draft. Not for +% distribution'', which also is used as a watermark. This option sets +% |timestamp| and |review| to |true|, but these decisions can be +% overriden by setting these options to |false| \emph{after} +% |authordraft|. % % \begin{table} % \centering @@ -286,7 +311,10 @@ % anonymous & false & Whether to make author(s) anonymous\\ % authorversion & false & Whether to generate a special % version for authors' personal use or posting (see -% Section~\ref{sec:ug_topmatter})\\ +% Section~\ref{sec:ug_topmatter})\\ +% timestamp & false & Whether to put a time stamp in the +% footer of each page\\ +% authordraft & false & Whether author's draft mode is enabled\\ % \bottomrule % \end{tabularx} % \end{table} @@ -471,7 +499,7 @@ % \end{verbatim} % Similarly you can repeat \cs{email} command. % -% You may have several authors with the same afifliation, different +% You may have several authors with the same affiliation, different % affiliations or overlapping affiliations (author~$A_1$ is affiliated % with institutions $I_1$ and $I_2$, while author $A_2$ is affiliated % with $I_2$ only, and author $A_3$ is affiliated with @@ -613,6 +641,51 @@ % \end{verbatim} % % +% The command \cs{affiliation} formats the output according to +% American conventions. This might be wrong for some cases. +% Consider, for example, a German address. In Germany postcode is put +% before city and is not separated by a comma. We can handle this +% order using +% \begin{verbatim} +% \affiliation{% +% \institution{Fluginstitut} +% \streetaddress{Sonnenallee 17} +% \postcode{123456} +% \city{Helm} +% \country{Germany} +% } +% \end{verbatim} +% However, the comma after postcode is unfortunate: the address will +% be typeset (with a SIG format) as +% \begin{verbatim} +% Fluginstitut +% Sonenallee 17 +% 123456, Helm, Germany +% \end{verbatim} +% +% +% To overcome this problem, the command \cs{affiliation} has an +% optional parameter |obeypunctuation|, which can be |false| (the +% default) or |true|. If this parameter is |true|, \cs{afffiliation} +% obeys the author's command. Thus +% \begin{verbatim} +% \affiliation[obeypuctuation=true]{% +% \institution{Fluginstitut}\\ +% \streetaddress{Sonnenallee 17}\\ +% \postcode{123456} +% \city{Helm}, +% \country{Germany} +% } +% \end{verbatim} +% will be typeset as +% \begin{verbatim} +% Fluginstitut +% Sonenallee 17 +% 123456 Helm, Germany +% \end{verbatim} +% +% 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. % @@ -682,7 +755,13 @@ % \acmArticleSeq{5} % We redefine it to 5 % \end{verbatim} % -% +% \DescribeMacro{\acmSubmissionID}% +% If you paper got a Submission~ID from the Conference Management +% System, put it here: +% \begin{verbatim} +% \acmSubmissionID{123-A56-BU3} +% \end{verbatim} +% % % \DescribeMacro{\acmPrice}% % The macro \cs{acmPrice}\marg{price} sets the price for the article @@ -1046,13 +1125,14 @@ % theorem environments: % \begin{description} % \item[acmplain:] this is the style used for -% |theorem|, -% |conjecture|, -% |proposition|, -% |lemma|, -% |corollary|, and -% \item[acmdefinition:] this is the style used for |example| and -% |definition|. +% |theorem|, +% |conjecture|, +% |proposition|, +% |lemma|, and +% |corollary|, and +% \item[acmdefinition:] this is the style used for +% |example| and +% |definition|. % \end{description} % % @@ -1125,8 +1205,7 @@ % % As for |printonly| and |screenonly| environments, % |\begin{acks}| and |\end{acls}| should start the -% line of their own (no leading or trailing spaces). - +% line of their own (no leading or trailing spaces). % % \DescribeMacro{\grantsponsor}% % \DescribeMacro{\grantnum}% @@ -1207,14 +1286,14 @@ % % The style supports fields \path{doi} and \path{url}, for example, % \begin{verbatim} -% doi = "10.1145/1188913.1188915", -% url = "http://ccrma.stanford.edu/~jos/bayes/bayes.pdf", +% doi = "10.1145/1188913.1188915", +% url = "http://ccrma.stanford.edu/~jos/bayes/bayes.pdf", % \end{verbatim} % % The style supports arXiv recommended fields \path{eprint} and % (optionally) \path{primaryclass}, for example, % \begin{verbatim} -% eprint = "960935712", +% eprint = "960935712", % primaryclass = "cs", % \end{verbatim} % See the examples at \url{http://arxiv.org/hypertex/bibstyles/}. @@ -1223,11 +1302,11 @@ % \path{game} for Web pages and games, for example, % \begin{verbatim} % @online{Thornburg01, -% author = "Harry Thornburg", -% year = "2001", -% title = "Introduction to Bayesian Statistics", -% url = "http://ccrma.stanford.edu/~jos/bayes/bayes.html", -% month = mar, +% author = "Harry Thornburg", +% year = "2001", +% title = "Introduction to Bayesian Statistics", +% url = "http://ccrma.stanford.edu/~jos/bayes/bayes.html", +% month = mar, % lastaccessed = "March 2, 2005", % } % \end{verbatim} @@ -1240,13 +1319,13 @@ % entry, setting there \path{howpublished} field, for example, % \begin{verbatim} % @online{Obama08, -% author = "Barack Obama", -% year = "2008", -% title = "A more perfect union", -% howpublished = "Video", -% day = "5", -% url = "http://video.google.com/videoplay?docid=6528042696351994555", -% month = mar, +% author = "Barack Obama", +% year = "2008", +% title = "A more perfect union", +% howpublished = "Video", +% day = "5", +% url = "http://video.google.com/videoplay?docid=6528042696351994555", +% month = mar, % lastaccessed = "March 21, 2008", % } % \end{verbatim} @@ -1258,15 +1337,14 @@ % @Inproceedings{Novak03, % author = "Dave Novak", % title = "Solder man", -% booktitle = {ACM SIGGRAPH 2003 Video Review on Animation theater -% Program}, +% booktitle = "ACM SIGGRAPH 2003 Video Review on Animation theater Program", % year = "2003", -% publisher = "ACM Press", -% address = "New York, NY", +% publisher = "ACM Press", +% address = "New York, NY", % pages = "4", -% month = "March 21, 2008", -% doi = "99.9999/woot07-S422", -% howpublished = "Video" +% month = "March 21, 2008", +% doi = "10.9999/woot07-S422", +% howpublished = "Video", % } % \end{verbatim} % @@ -1274,17 +1352,17 @@ % \path{periodical} is intended for this: % \begin{verbatim} % @periodical{JCohen96, -% key = "Cohen", +% key = "Cohen", % editor = "Jacques Cohen", % title = "Special issue: Digital Libraries", -% journal = CACM, +% journal = "Communications of the {ACM}", % volume = "39", -% number = "11", -% month = nov, -% year = "1996", +% number = "11", +% month = nov, +% year = "1996", % } -% % \end{verbatim} +% % % %\subsection{Colors} @@ -1363,6 +1441,48 @@ % % % +%\subsection{A note for wizards: \texttt{acmart-preload-hook.tex}} +%\label{sec:ug_preload} +% +% Sometimes you need to change the behavior of |acmart|. The +% usual way to do this is to redefine commands in the preamble. +% However, these definitions are executed \emph{after} |acmart| is +% loaded, and certain decisions are made. This presents a number of +% problems. +% +% For example, one may want to use |titletoc| package with |acmart|. +% This package should be loaded before |hyperref|. However, since +% |acmart| loads |hyperref| itself, the line |\usepackage{titletoc}| +% in the preamble will lead to grief (see +% \url{http://tex.stackexchange.com/questions/357265/using-titletoc-with-acm-acmart-style}). +% +% Another example is passing options to package. Suppose you want to +% use |dvipsnames| option of |xcolor| package. Normally you cannot do +% this because |acmart| loads this package itself without options. +% +% The file |acmart-preload-hook.tex| may be used to solve these +% problems. If this file exists, it will be processed before any other +% package. You can use this file to load packages or pass options to +% them. For example, if you put in this file +% \begin{verbatim} +% \let\LoadClassOrig\LoadClass +% \renewcommand\LoadClass[2][]{\LoadClassOrig[#1]{#2}% +% \usepackage{titletoc}} +% \end{verbatim} +% then |titletoc| will be loaded before |hyperref|. If you put in +% this file +% \begin{verbatim} +% \PassOptionsToPackage{dvipsnames}{xcolor} +% \end{verbatim} +% you will pass |dvipsnames| to |xcolor|. +% +% \textbf{Important note.} This hook makes it too easy to create a +% manuscript which is not acceptable by ACM. Even easier it is to +% create a file which cannot be compiled. So please do not use it +% \emph{unless you know what you are doing.} And if you use it, +% \emph{do not ask for support.} If you decided to use this hook, you +% are on your own. +% % \StopEventually{ % \clearpage % \bibliography{acmart} @@ -1386,7 +1506,7 @@ \ProvidesFile{acmart.dtx} % %\ProvidesClass{acmart} -[2017/03/07 v1.32 Typesetting articles for Association of +[2017/03/30 v1.33 Typesetting articles for Association of Computing Machinery] % \end{macrocode} % @@ -1432,6 +1552,12 @@ Computing Machinery] % \changes{v1.31}{2017/03/04}{Documentation changes} % \changes{v1.32}{2017/03/07}{Format siggraph is now obsolete} % \changes{v1.32}{2017/03/07}{Added POMACS journal option} +% \changes{v1.33}{2017/03/12}{BibTeX crossref bug corrected} +% \changes{v1.33}{2017/03/18}{BibTeX comma before articleno bug +% corrected} +% \changes{v1.33}{2017/03/18}{BibTeX numpages bug corrected} +% \changes{v1.33}{2017/03/28}{Added acmart-preload-hook} +% \changes{v1.33}{2017/03/33}{Documentation updates} % % % And the driver code: @@ -1439,7 +1565,7 @@ Computing Machinery] %<*gobble> \documentclass{ltxdoc} \usepackage{array,booktabs,amsmath,graphicx,fancyvrb,tabularx} -\usepackage[tt=false]{libertine} +\usepackage[tt=false, type1=true]{libertine} \usepackage[varqu]{zi4} \usepackage[libertine]{newtxmath} \usepackage[tableposition=top]{caption} @@ -1456,6 +1582,19 @@ Computing Machinery] \def\@classname{acmart} % \end{macrocode} % +% +% +%\subsection{Preload} +%\label{sec:preload} +% +% We preload |acmart-preload-hook|: +% \begin{macrocode} +\InputIfFileExists{acmart-preload-hook.tex}{% + \ClassWarning{\@classname}{% + I am loading acmart-preload-hook.tex. You are fully responsible + for any problems from now on.}}{} +% \end{macrocode} +% % \subsection{Options} % \label{sec:options} % @@ -1464,6 +1603,8 @@ Computing Machinery] \RequirePackage{xkeyval} % \end{macrocode} % +% +% % \begin{macro}{format} % The possible formats % \begin{macrocode} @@ -1538,25 +1679,20 @@ Computing Machinery] % % \begin{macro}{\if@ACM@natbib@override} % \changes{v1.12}{2016/05/30}{Added macro} -% Whether to override the format decision about \textsl{natbib} -% \begin{macrocode} -\newif\if@ACM@natbib@override -\@ACM@natbib@overridefalse -% \end{macrocode} -% +% \changes{v1.33}{2017/03/28}{Deleted macro} % \end{macro} % % \begin{macro}{\if@ACM@natbib} % Whether we use natbib mode % \begin{macrocode} \define@boolkey+{acmart.cls}[@ACM@]{natbib}[true]{% - \@ACM@natbib@overridetrue \if@ACM@natbib \PackageInfo{\@classname}{Explicitly selecting natbib mode}% \else \PackageInfo{\@classname}{Explicitly deselecting natbib mode}% \fi}{\PackageError{\@classname}{Option natbib can be either true or false}} +\ExecuteOptionsX{natbib=true} % \end{macrocode} % % \end{macro} @@ -1577,6 +1713,43 @@ Computing Machinery] % % \end{macro} % +% +% \begin{macro}{\if@ACM@timestamp} +% \changes{v1.33}{2017/03/10}{Added macro (Michael D.~Adams)} +% Whether we use timestamp mode +% \begin{macrocode} +\define@boolkey+{acmart.cls}[@ACM@]{timestamp}[true]{% + \if@ACM@timestamp + \PackageInfo{\@classname}{Using timestamp mode}% + \else + \PackageInfo{\@classname}{Not using timestamp mode}% + \fi}{\PackageError{\@classname}{Option timestamp can be either true or + false}} +\ExecuteOptionsX{timestamp=false} +% \end{macrocode} +% +% \end{macro} +% +% +% \begin{macro}{\if@ACM@authordraft} +% \changes{v1.33}{2017/03/28}{Added macro} +% Whether we use authordraft mode +% \begin{macrocode} +\define@boolkey+{acmart.cls}[@ACM@]{authordraft}[true]{% + \if@ACM@authordraft + \PackageInfo{\@classname}{Using authordraft mode}% + \@ACM@timestamptrue + \@ACM@reviewtrue + \else + \PackageInfo{\@classname}{Not using authordraft mode}% + \fi}{\PackageError{\@classname}{Option authordraft can be either true or + false}} +\ExecuteOptionsX{timestamp=false} +% \end{macrocode} +% +% \end{macro} +% +% % \begin{macro}{\ACM@fontsize} % The font size to pass to the base class % \begin{macrocode} @@ -1667,14 +1840,6 @@ Computing Machinery] \fi % \end{macrocode} % -% A format sets up \cs{if@ACM@natbib} only if -% \cs{@ACM@natbib@override} is false (i.e. user did \emph{not} -% overrode format's selection): -% \begin{macrocode} -\if@ACM@natbib@override\else - \@ACM@natbibtrue -\fi -% \end{macrocode} % % %\subsection{Loading base class and package} @@ -2040,6 +2205,8 @@ Computing Machinery] % \end{macrocode} % % Bibliography mangling. +% \changes{v1.33}{2017/03/23}{Moved \cs{citename} definition for +% non-natbib bibliography, so a package may redefine it} % \begin{macrocode} \if@ACM@natbib \let\citeN\cite @@ -2054,9 +2221,12 @@ Computing Machinery] \let\NAT@ctype\@ne\NAT@partrue\NAT@fullfalse\NAT@open\NAT@citetp}% \providecommand\newblock{}% \else - \providecommand\citename[1]{#1} + \AtBeginDocument{% + \let\shortcite\cite% + \providecommand\citename[1]{#1}} \fi -\def\shortcite#1{\ifNAT@numbers\cite{#1}\else\citeyear{#1}\fi} +\newcommand\shortcite[2][]{% + \ifNAT@numbers\cite[#1]{#2}\else\citeyear[#1]{#2}\fi} % \end{macrocode} % % @@ -2095,6 +2265,19 @@ Computing Machinery] % \end{macrocode} % % +% Author draft mode +% \begin{macrocode} +\if@ACM@authordraft + \RequirePackage{draftwatermark} + \SetWatermarkFontSize{0.5in} + \SetWatermarkColor[gray]{.9} + \SetWatermarkText{\parbox{12em}{\centering + Unpublished working draft\\ + Not for distribution}} +\fi +% \end{macrocode} +% +% %\subsection{Paper size and paragraphing} %\label{sec:paper} % @@ -2321,7 +2504,20 @@ Computing Machinery] %\label{sec:fonts} % % \changes{v1.12}{2016/05/30}{Added graceful behavior when libertine -% fonts are absent}% +% fonts are absent} +% \changes{v1.33}{2017/03/29}{Added cmap and glyphtounicode} +% +% Somehow PDFTeX and XeTeX require different incantations to make PDF +% compliant with the current Acrobat bugs. Xpdf is much better. +% \begin{macrocode} +\RequirePackage{iftex} +\ifPDFTeX +\input{glyphtounicode} +\pdfgentounicode=1 +\fi +\RequirePackage{cmap} +% \end{macrocode} +% % % \begin{macro}{\if@ACM@newfonts} % \changes{v1.12}{2016/05/30}{Added macro}% @@ -2343,10 +2539,12 @@ Computing Machinery] % % \changes{v1.30}{2017/02/15}{Switched to T1: looks like libertine has % problems with \cs{l} in OT1}% +% \changes{v1.33}{2017/03/12}{Switched to Type~1 fonts for libertine +% even if OTF-capable engine is used (Kai Mindermann)} % We use Libertine throughout. % \begin{macrocode} \if@ACM@newfonts -\RequirePackage[tt=false]{libertine} +\RequirePackage[tt=false, type1=true]{libertine} \RequirePackage[varqu]{zi4} \RequirePackage[libertine]{newtxmath} \RequirePackage[T1]{fontenc} @@ -2934,8 +3132,8 @@ Computing Machinery] % \begin{macro}{\affiliation} % \changes{v1.15}{2016/06/25}{Added code for author groups} % The macro \cs{affiliation} mimics \cs{address} from |amsart|. -% Note that it has an optional argument we do not currently need, -% but keep for the possible future use. +% Note that it has an optional argument, which we use differently +% from |amsart|. % \begin{macrocode} \newcommand{\affiliation}[2][]{% \global\@insideauthorgroupfalse @@ -2946,6 +3144,19 @@ Computing Machinery] % % \end{macro} % +% \begin{macro}{\if@ACM@affiliation@obeypunctuation} +% \changes{v1.33}{2017/03/28}{Added macro} +% Whether to use author's punctuation (by default false = add +% American punctuation) +% \begin{macrocode} +\define@boolkey+{@ACM@affiliation@}[@ACM@affiliation@]{obeypunctuation}% +[true]{}{\ClassError{\@classname}{obeypunctuation must be true or false}} +% \end{macrocode} +% +% \end{macro} +% +% +% % \begin{macro}{\additionalaffiliation} % \changes{v1.31}{2017/03/04}{Added macro} % Additional affiliations go to footnotes @@ -3146,6 +3357,18 @@ Computing Machinery] % % \end{macro} % +% +% \begin{macro}{\acmSubmissionID} +% \changes{v1.33}{2017/03/29}{Added macro} +% The submission id +% \begin{macrocode} +\def\acmSubmissionID#1{\def\@acmSubmissionID{#1}} +\acmSubmissionID{} +% \end{macrocode} +% +% \end{macro} +% +% % \begin{macro}{\acmISBN} % \changes{v1.04}{2016/04/26}{Name change by Matthew Fluet} % The book isbn @@ -3422,7 +3645,7 @@ Computing Machinery] % \changes{v1.29}{2017/01/22}{Add spacing after bullet and around % rightarrow; semicolon separators no longer in bold/italic (John Wickerson)} % The parser of the expression |Significance~General~Specific| (we need -% |textcomp| for |\\textrightarrow|: +% |textcomp| for |\\textrightarrow|): % \begin{macrocode} \RequirePackage{textcomp} \def\ccsdesc@parse#1~#2~#3~{% @@ -3754,6 +3977,8 @@ Computing Machinery] % and author vertsion, % \url{https://github.com/borisveytsman/acmart/issues/36}} % \changes{v1.12}{2016/05/30}{Moved thankses to copyrightpermission box} +% \changes{v1.33}{2017/03/27}{Fixed the bug with figures on top and +% bottom of the title page, thanks to David Epstein} % The (in)famous \cs{maketitle}. Note that in sigchi-a mode authors % are \emph{not} in the title box. % @@ -3771,8 +3996,9 @@ Computing Machinery] \let\@footnotemark\@footnotemark@nolink \let\@footnotetext\@footnotetext@nolink \renewcommand\thefootnote{\@fnsymbol\c@footnote}% - \@topnum\z@ % this prevents figures from falling at the top of page - % 1 + \global\@topnum\z@ % this prevents floats from falling + % at the top of page 1 + \global\@botnum\z@ % we do not want them to be on bottom either \hsize=\textwidth \def\@makefnmark{\hbox{\@textsuperscript{\@thefnmark}}}% \@mktitle\if@ACM@sigchiamode\else\@mkauthors\fi\@mkteasers @@ -3789,49 +4015,56 @@ Computing Machinery] \footnotetextcopyrightpermission{% \def\par{\let\par\@par}\parindent\z@\@setthanks}% \fi - \footnotetextcopyrightpermission{\parindent\z@\parskip0.1\baselineskip - \if@ACM@authorversion\else - \if@printpermission\@copyrightpermission\par\fi - \fi - \if@ACM@manuscript\else - \if@ACM@journal\else % Print the conference short name - {\itshape \acmConference@shortname, \acmConference@venue}\par + \footnotetextcopyrightpermission{% + \if@ACM@authordraft + \raisebox{-2ex}[\z@][\z@]{\makebox[0pt][l]{\large\bfseries + Unpublished + working draft. Not for distribution}}% + \color[gray]{0.9}% \fi - \fi - \if@printcopyright - \copyright\ \@copyrightyear\ \@copyrightowner\ - \else - \@copyrightyear.\ - \fi - \if@ACM@manuscript - Manuscript submitted to ACM\\ - \else - \if@ACM@authorversion - This is the author's version of the work. It is posted here for - your personal use. Not for redistribution. The definitive Version - of Record was published in - \if@ACM@journal - \emph{\@journalName}% - \else - \emph{Proceedings of \acmConference@name, \acmConference@date}% - \fi - \ifx\@acmDOI\@empty - . + \parindent\z@\parskip0.1\baselineskip + \if@ACM@authorversion\else + \if@printpermission\@copyrightpermission\par\fi + \fi + \if@ACM@manuscript\else + \if@ACM@journal\else % Print the conference short name + {\itshape \acmConference@shortname, \acmConference@venue}\par + \fi + \fi + \if@printcopyright + \copyright\ \@copyrightyear\ \@copyrightowner\ + \else + \@copyrightyear.\ + \fi + \if@ACM@manuscript + Manuscript submitted to ACM\\ + \else + \if@ACM@authorversion + This is the author's version of the work. It is posted here for + your personal use. Not for redistribution. The definitive Version + of Record was published in + \if@ACM@journal + \emph{\@journalName}% + \else + \emph{Proceedings of \acmConference@name, \acmConference@date}% + \fi + \ifx\@acmDOI\@empty + . + \else + , \@formatdoi{\@acmDOI}. + \fi\\ \else - , \@formatdoi{\@acmDOI}. - \fi\\ - \else - \if@ACM@journal - \@permissionCodeOne/\@acmYear/\@acmMonth-ART\@acmArticle\ - \$\@acmPrice\\ - DOI: \nolinkurl{\@acmDOI}% - \else % Conference - \@acmISBN - \ifx\@acmPrice\@empty.\else\dots\$\@acmPrice\fi\\ - DOI: \nolinkurl{\@acmDOI}% + \if@ACM@journal + \@permissionCodeOne/\@acmYear/\@acmMonth-ART\@acmArticle\ + \$\@acmPrice\\ + DOI: \nolinkurl{\@acmDOI}% + \else % Conference + \@acmISBN + \ifx\@acmPrice\@empty.\else\dots\$\@acmPrice\fi\\ + DOI: \nolinkurl{\@acmDOI}% + \fi \fi - \fi - \fi}% + \fi} \endgroup \setcounter{footnote}{0}% \@mkabstract @@ -4013,9 +4246,10 @@ Computing Machinery] % % \begin{macro}{\@subtitlefont} % \changes{v1.06}{2016/05/01}{Added macro} +% \changes{v1.33}{2017/03/12}{Added \cs{normalsize}} % The font to typeset title % \begin{macrocode} -\def\@subtitlefont{% +\def\@subtitlefont{\normalsize \ifcase\ACM@format@nr \relax % manuscript \mdseries @@ -4142,6 +4376,7 @@ Computing Machinery] % % \begin{macro}{\@ACM@addtoaddress} % \changes{v1.15}{2016/07/03}{Added macro} +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} % The macro adds an item to address using the following rules: % \begin{enumerate} % \item If we start a paragraph, add the item @@ -4153,30 +4388,39 @@ Computing Machinery] \newbox\@ACM@commabox \def\@ACM@addtoaddress#1{% \ifvmode\else + \if@ACM@affiliation@obeypunctuation\else \setbox\@ACM@commabox=\hbox{, }% \unskip\cleaders\copy\@ACM@commabox\hskip\wd\@ACM@commabox - \fi + \fi\fi #1} % \end{macrocode} % \end{macro} % % \begin{macro}{\institution} % \changes{v1.15}{2016/07/03}{Added macro} +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} % \begin{macro}{\position} % \changes{v1.15}{2016/07/03}{Added macro} +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} % \begin{macro}{\department} % \changes{v1.15}{2016/07/03}{Added macro} % \changes{v1.30}{2017/02/10}{Added optional parameter} +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} % \begin{macro}{\streetaddress} % \changes{v1.15}{2016/07/03}{Added macro} +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} % \begin{macro}{\city} % \changes{v1.15}{2016/07/03}{Added macro} +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} % \begin{macro}{\state} % \changes{v1.15}{2016/07/03}{Added macro} +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} % \begin{macro}{\postcode} % \changes{v1.15}{2016/07/03}{Added macro} +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} % \begin{macro}{\country} % \changes{v1.15}{2016/07/03}{Added macro} +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} % Theoretically we can define the macros for \cs{affiliation} inside % the \cs{@mkauthors}-style commands. However, this would lead to a % strange error if an author uses them outside \cs{affiliation}. Of @@ -4195,13 +4439,14 @@ Computing Machinery] \let\postcode\@gobble \let\country\@gobble \else - \def\position#1{#1\par}% - \def\institution#1{#1\par}% - \newcommand\department[2][0]{#2\par}% - \def\streetaddress#1{#1\par}% + \def\position#1{\if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}% + \def\institution#1{\if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}% + \newcommand\department[2][0]{\if@ACM@affiliation@obeypunctuation + #2\else#2\par\fi}% + \def\streetaddress#1{\if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}% \let\city\@ACM@addtoaddress \let\state\@ACM@addtoaddress - \def\postcode#1{\unskip\space#1}% + \def\postcode#1{\if@ACM@affiliation@obeypunctuation#1\else\unskip\space#1\fi}% \let\country\@ACM@addtoaddress \fi % \end{macrocode} @@ -4314,7 +4559,8 @@ Computing Machinery] % % \begin{macro}{\@mkauthors@i} % \changes{v1.18}{2016/07/12}{Now we andify affiliations} -% This is version used in most formats. Note that \cs{and} between +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} +% This is version used in most journal formats. Note that \cs{and} between % authors with the same affiliation becomes \verb*| and |: % \begin{macrocode} \def\@mkauthors@i{% @@ -4332,9 +4578,14 @@ Computing Machinery] \def\affiliation##1##2{% \def\@tempa{##2}\ifx\@tempa\@empty\else \ifx\@currentaffiliations\@empty - \gdef\@currentaffiliations{\@affiliationfont##2}% + \gdef\@currentaffiliations{% + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}% + \@affiliationfont##2}% \else - \g@addto@macro{\@currentaffiliations}{\and##2}% + \g@addto@macro{\@currentaffiliations}{\and + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}##2}% \fi \fi \global\let\and\@typeset@author@line}% @@ -4396,6 +4647,7 @@ Computing Machinery] % % \begin{macro}{\@mkauthors@iii} % \changes{v1.15}{2016/07/04}{New authors system} +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} % The |sigconf| version. Here we use centered design with each % author in a separate box. % \begin{macrocode} @@ -4439,9 +4691,13 @@ Computing Machinery] \g@addto@macro\@currentaffiliation{\par\nolinkurl{##2}}% \fi}% \def\affiliation##1##2{\ifx\@currentaffiliation\@empty - \gdef\@currentaffiliation{##2}% + \gdef\@currentaffiliation{% + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}##2}% \else - \g@addto@macro\@currentaffiliation{\par##2}% + \g@addto@macro\@currentaffiliation{\par + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}##2}% \fi \global\let\and\@typeset@author@bx }% @@ -4459,6 +4715,7 @@ Computing Machinery] % % % \begin{macro}{\@mkauthors@iv} +% \changes{v1.33}{2017/03/28}{Added obeypunctuation code} % The |sigchia| version. Now we put % authors in the main text, and no more than 2 authors per line. % \begin{macrocode} @@ -4496,9 +4753,13 @@ Computing Machinery] \g@addto@macro\@currentaffiliation{\par\nolinkurl{##2}}% \fi}% \def\affiliation##1##2{\ifx\@currentaffiliation\@empty - \gdef\@currentaffiliation{##2}% + \gdef\@currentaffiliation{% + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}##2}% \else - \g@addto@macro\@currentaffiliation{\par##2}% + \g@addto@macro\@currentaffiliation{\par + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}##2}% \fi \global\let\and\@typeset@author@bx}% % @@ -4658,10 +4919,11 @@ Computing Machinery] % % \end{macro} % -% \begin{macro}{\ACM@linecount} -% How to display the box +% \begin{macro}{\ACM@linecountL} +% \changes{v1.33}{2017/03/29}{Renamed macro} +% How to display the box on the left % \begin{macrocode} -\def\ACM@linecount{% +\def\ACM@linecountL{% \if@ACM@review \begin{picture}(0,0)% \put(-26,-22){\usebox{\ACM@linecount@bx}}% @@ -4671,6 +4933,46 @@ Computing Machinery] % % \end{macro} % +% \begin{macro}{\ACM@linecountR} +% \changes{v1.33}{2017/03/29}{Added macro} +% How to display the box on the right +% \begin{macrocode} +\def\ACM@linecountR{% + \if@ACM@review + \begin{picture}(0,0)% + \put(20,-22){\usebox{\ACM@linecount@bx}}% + \end{picture}% + \fi} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\ACM@timestamp} +% \changes{v1.33}{2017/03/10}{Added macro (Michael D.~Adams)} +% \changes{v1.33}{2017/03/28}{Added current page number} +% \changes{v1.33}{2017/03/29}{Added submission id} +% The timestamp system +% \begin{macrocode} +\if@ACM@timestamp + % Subtracting 30 from \time gives us the effect of rounding-down despite + % \numexpr rounding to nearest + \newcounter{ACM@time@hours} + \setcounter{ACM@time@hours}{\numexpr (\time - 30) / 60 \relax} + \newcounter{ACM@time@minutes} + \setcounter{ACM@time@minutes}{\numexpr \time - \theACM@time@hours * 60 \relax} + \newcommand\ACM@timestamp{% + \footnotesize% + \the\year-\two@digits{\the\month}-\two@digits{\the\day}{ }% + \two@digits{\theACM@time@hours}:\two@digits{\theACM@time@minutes}{ }% + page~\thepage\ (pp. \@startPage-\pageref*{TotPages})% + \ifx\@acmSubmissionID\@empty\relax\else + ~Submission~ID: \@acmSubmissionID + \fi + } +\fi +% \end{macrocode} +% \end{macro} +% % \begin{macro}{\@shortauthors} % \changes{v1.15}{2016/07/04}{Introduced macro} % Even if the author redefined \cs{shortauthors}, we do not print @@ -4719,6 +5021,8 @@ Computing Machinery] % \changes{v1.16}{2016/07/07}{Customize header/footer text font} % \changes{v1.17}{2016/07/10}{Added paper title to sigs} % \changes{v1.29}{2017/01/22}{Corrected printfolios (Matthew Fluet)} +% \changes{v1.33}{2017/03/10}{Added timestamp (Michael D.~Adams)} +% \changes{v1.33}{2017/03/29}{Added right linecount for two column formats} % The pagestyle for all pages but the first one % \begin{macrocode} \fancypagestyle{standardpagestyle}{% @@ -4727,46 +5031,50 @@ Computing Machinery] \renewcommand{\footrulewidth}{\z@}% \ifcase\ACM@format@nr \relax % manuscript - \fancyhead[LE]{\ACM@linecount\if@ACM@printfolios\thepage\fi}% + \fancyhead[LE]{\ACM@linecountL\if@ACM@printfolios\thepage\fi}% \fancyhead[RO]{\if@ACM@printfolios\thepage\fi}% \fancyhead[RE]{\@shortauthors}% - \fancyhead[LO]{\ACM@linecount\shorttitle}% + \fancyhead[LO]{\ACM@linecountL\shorttitle}% \fancyfoot[RO,LE]{\footnotesize Manuscript submitted to ACM}% \or % acmsmall - \fancyhead[LE]{\ACM@linecount\@headfootfont\@acmArticle\if@ACM@printfolios:\thepage\fi}% + \fancyhead[LE]{\ACM@linecountL\@headfootfont\@acmArticle\if@ACM@printfolios:\thepage\fi}% \fancyhead[RO]{\@headfootfont\@acmArticle\if@ACM@printfolios:\thepage\fi}% \fancyhead[RE]{\@headfootfont\@shortauthors}% - \fancyhead[LO]{\ACM@linecount\@headfootfont\shorttitle}% + \fancyhead[LO]{\ACM@linecountL\@headfootfont\shorttitle}% \fancyfoot[RO,LE]{\footnotesize \@journalName, Vol. \@acmVolume, No. \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% \or % acmlarge - \fancyhead[LE]{\ACM@linecount\@headfootfont + \fancyhead[LE]{\ACM@linecountL\@headfootfont \@acmArticle\if@ACM@printfolios:\thepage\fi\quad\textbullet\quad\@shortauthors}% - \fancyhead[LO]{\ACM@linecount}% + \fancyhead[LO]{\ACM@linecountL}% \fancyhead[RO]{\@headfootfont \shorttitle\quad\textbullet\quad\@acmArticle\if@ACM@printfolios:\thepage\fi}% \fancyfoot[RO,LE]{\footnotesize \@journalName, Vol. \@acmVolume, No. \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% \or % acmtog - \fancyhead[LE]{\ACM@linecount\@headfootfont + \fancyhead[LE]{\ACM@linecountL\@headfootfont \@acmArticle\if@ACM@printfolios:\thepage\fi\quad\textbullet\quad\@shortauthors}% - \fancyhead[LO]{\ACM@linecount}% + \fancyhead[LO]{\ACM@linecountL}% + \fancyhead[RE]{\ACM@linecountR}% \fancyhead[RO]{\@headfootfont - \shorttitle\quad\textbullet\quad\@acmArticle\if@ACM@printfolios:\thepage\fi}% + \shorttitle\quad\textbullet\quad\@acmArticle\if@ACM@printfolios:\thepage\fi\ACM@linecountR}% \fancyfoot[RO,LE]{\footnotesize \@journalName, Vol. \@acmVolume, No. \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% \else % Proceedings \fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}% - \fancyhead[LO]{\ACM@linecount\@headfootfont\shorttitle}% - \fancyhead[RE]{\@headfootfont\@shortauthors}% - \fancyhead[LE]{\ACM@linecount\@headfootfont\acmConference@shortname, + \fancyhead[LO]{\ACM@linecountL\@headfootfont\shorttitle}% + \fancyhead[RE]{\@headfootfont\@shortauthors\ACM@linecountR}% + \fancyhead[LE]{\ACM@linecountL\@headfootfont\acmConference@shortname, \acmConference@date, \acmConference@venue}% \fancyhead[RO]{\@headfootfont\acmConference@shortname, - \acmConference@date, \acmConference@venue}% + \acmConference@date, \acmConference@venue\ACM@linecountR}% \fi \if@ACM@sigchiamode \fancyheadoffset[L]{\dimexpr(\marginparsep+\marginparwidth)}% \fi + \if@ACM@timestamp + \fancyfoot[LO,RE]{\ACM@timestamp} + \fi } \pagestyle{standardpagestyle} % \end{macrocode} @@ -4840,6 +5148,8 @@ Computing Machinery] % \end{macro} % % \begin{macro}{firstpagestyle} +% \changes{v1.33}{2017/03/10}{Added timestamp (Michael D.~Adams)} +% \changes{v1.33}{2017/03/29}{Added right linecount for two column formats} % The pagestyle for the first page only. % \begin{macrocode} \fancypagestyle{firstpagestyle}{% @@ -4848,15 +5158,15 @@ Computing Machinery] \renewcommand{\footrulewidth}{\z@}% \ifcase\ACM@format@nr \relax % manuscript - \fancyhead[L]{\ACM@linecount}% + \fancyhead[L]{\ACM@linecountL}% \fancyfoot[RO,LE]{\if@ACM@printfolios\small\thepage\fi}% \fancyfoot[RE,LO]{\footnotesize Manuscript submitted to ACM}% \or % acmsmall \fancyfoot[RO,LE]{\footnotesize \@journalName, Vol. \@acmVolume, No. \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% - \fancyhead[LE]{\ACM@linecount\@folioblob}% - \fancyhead[LO]{\ACM@linecount}% + \fancyhead[LE]{\ACM@linecountL\@folioblob}% + \fancyhead[LO]{\ACM@linecountL}% \fancyhead[RO]{\@folioblob}% \fancyheadoffset[RO,LE]{0.6\@folio@wd}% \or % acmlarge @@ -4864,18 +5174,28 @@ Computing Machinery] \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% \fancyhead[RO]{\@folioblob}% - \fancyhead[LE]{\ACM@linecount\@folioblob}% - \fancyhead[LO]{\ACM@linecount}% + \fancyhead[LE]{\ACM@linecountL\@folioblob}% + \fancyhead[LO]{\ACM@linecountL}% \fancyheadoffset[RO,LE]{1.4\@folio@wd}% \or % acmtog \fancyfoot[RO,LE]{\footnotesize \@journalName, Vol. \@acmVolume, No. \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% - \fancyhead[L]{\ACM@linecount}% + \fancyhead[L]{\ACM@linecountL}% + \fancyhead[R]{\ACM@linecountR}% \else % Conference proceedings - \fancyhead[L]{\ACM@linecount}% + \fancyhead[L]{\ACM@linecountL}% + \fancyhead[R]{\ACM@linecountR}% \fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}% \fi + \if@ACM@timestamp + \ifnum\ACM@format@nr=0\relax % Manuscript + \fancyfoot[LO,RE]{\ACM@timestamp\quad + \footnotesize Manuscript submitted to ACM} + \else + \fancyfoot[LO,RE]{\ACM@timestamp} + \fi + \fi } % \end{macrocode} % @@ -5295,7 +5615,7 @@ Computing Machinery] % 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' (see -% \url{http://arxiv.org/hypertex/bibstyles/}. +% \url{http://arxiv.org/hypertex/bibstyles/}). % \begin{macrocode} \newcommand\showeprint[2][arxiv]{% \def\@tempa{#1}% diff --git a/Master/texmf-dist/tex/latex/acmart/acmart.cls b/Master/texmf-dist/tex/latex/acmart/acmart.cls index 20e80c6609f..4c9d138690e 100644 --- a/Master/texmf-dist/tex/latex/acmart/acmart.cls +++ b/Master/texmf-dist/tex/latex/acmart/acmart.cls @@ -35,12 +35,15 @@ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} - \NeedsTeXFormat{LaTeX2e} \ProvidesClass{acmart} -[2017/03/07 v1.32 Typesetting articles for Association of +[2017/03/30 v1.33 Typesetting articles for Association of Computing Machinery] \def\@classname{acmart} +\InputIfFileExists{acmart-preload-hook.tex}{% + \ClassWarning{\@classname}{% + I am loading acmart-preload-hook.tex. You are fully responsible + for any problems from now on.}}{} \RequirePackage{xkeyval} \define@choicekey*+{acmart.cls}{format}[\ACM@format\ACM@format@nr]{% manuscript, acmsmall, acmlarge, acmtog, sigconf, siggraph, @@ -83,16 +86,14 @@ Computing Machinery] \fi}{\PackageError{\@classname}{Option authorversion can be either true or false}} \ExecuteOptionsX{authorversion=false} -\newif\if@ACM@natbib@override -\@ACM@natbib@overridefalse \define@boolkey+{acmart.cls}[@ACM@]{natbib}[true]{% - \@ACM@natbib@overridetrue \if@ACM@natbib \PackageInfo{\@classname}{Explicitly selecting natbib mode}% \else \PackageInfo{\@classname}{Explicitly deselecting natbib mode}% \fi}{\PackageError{\@classname}{Option natbib can be either true or false}} +\ExecuteOptionsX{natbib=true} \define@boolkey+{acmart.cls}[@ACM@]{anonymous}[true]{% \if@ACM@anonymous \PackageInfo{\@classname}{Using anonymous mode}% @@ -101,6 +102,24 @@ Computing Machinery] \fi}{\PackageError{\@classname}{Option anonymous can be either true or false}} \ExecuteOptionsX{anonymous=false} +\define@boolkey+{acmart.cls}[@ACM@]{timestamp}[true]{% + \if@ACM@timestamp + \PackageInfo{\@classname}{Using timestamp mode}% + \else + \PackageInfo{\@classname}{Not using timestamp mode}% + \fi}{\PackageError{\@classname}{Option timestamp can be either true or + false}} +\ExecuteOptionsX{timestamp=false} +\define@boolkey+{acmart.cls}[@ACM@]{authordraft}[true]{% + \if@ACM@authordraft + \PackageInfo{\@classname}{Using authordraft mode}% + \@ACM@timestamptrue + \@ACM@reviewtrue + \else + \PackageInfo{\@classname}{Not using authordraft mode}% + \fi}{\PackageError{\@classname}{Option authordraft can be either true or + false}} +\ExecuteOptionsX{timestamp=false} \def\ACM@fontsize{} \DeclareOptionX{9pt}{\edef\ACM@fontsize{\CurrentOption}} \DeclareOptionX{10pt}{\edef\ACM@fontsize{\CurrentOption}} @@ -145,9 +164,6 @@ Computing Machinery] \@ACM@journalfalse \@ACM@sigchiamodetrue \fi -\if@ACM@natbib@override\else - \@ACM@natbibtrue -\fi \ifx\ACM@fontsize\@empty \ifcase\ACM@format@nr \relax % manuscript @@ -425,9 +441,12 @@ Computing Machinery] \let\NAT@ctype\@ne\NAT@partrue\NAT@fullfalse\NAT@open\NAT@citetp}% \providecommand\newblock{}% \else - \providecommand\citename[1]{#1} + \AtBeginDocument{% + \let\shortcite\cite% + \providecommand\citename[1]{#1}} \fi -\def\shortcite#1{\ifNAT@numbers\cite{#1}\else\citeyear{#1}\fi} +\newcommand\shortcite[2][]{% + \ifNAT@numbers\cite[#1]{#2}\else\citeyear[#1]{#2}\fi} \def\bibliographystyle#1{% \ifx\@begindocumenthook\@undefined\else \expandafter\AtBeginDocument @@ -444,6 +463,14 @@ Computing Machinery] \definecolor[named]{ACMGreen}{cmyk}{0.20,0,1,0.19} \definecolor[named]{ACMPurple}{cmyk}{0.55,1,0,0.15} \definecolor[named]{ACMDarkBlue}{cmyk}{1,0.58,0,0.21} +\if@ACM@authordraft + \RequirePackage{draftwatermark} + \SetWatermarkFontSize{0.5in} + \SetWatermarkColor[gray]{.9} + \SetWatermarkText{\parbox{12em}{\centering + Unpublished working draft\\ + Not for distribution}} +\fi \RequirePackage{geometry} \ifcase\ACM@format@nr \relax % manuscript @@ -569,6 +596,12 @@ Computing Machinery] \def\@makefnmark{\hbox{\@textsuperscript{\normalfont\@thefnmark}}} \def\@textbottom{\vskip \z@ \@plus 1pt} \let\@texttop\relax +\RequirePackage{iftex} +\ifPDFTeX +\input{glyphtounicode} +\pdfgentounicode=1 +\fi +\RequirePackage{cmap} \newif\if@ACM@newfonts \@ACM@newfontstrue \IfFileExists{libertine.sty}{}{\ClassWarning{\@classname}{You do not @@ -580,7 +613,7 @@ Computing Machinery] have newtxmath package installed. Please upgrade your TeX}\@ACM@newfontsfalse} \if@ACM@newfonts -\RequirePackage[tt=false]{libertine} +\RequirePackage[tt=false, type1=true]{libertine} \RequirePackage[varqu]{zi4} \RequirePackage[libertine]{newtxmath} \RequirePackage[T1]{fontenc} @@ -989,6 +1022,8 @@ Computing Machinery] \if@ACM@anonymous\else \g@addto@macro\addresses{\affiliation{#1}{#2}}% \fi} +\define@boolkey+{@ACM@affiliation@}[@ACM@affiliation@]{obeypunctuation}% +[true]{}{\ClassError{\@classname}{obeypunctuation must be true or false}} \def\additionalaffiliation#1{\authornote{\@additionalaffiliation{#1}}} \def\@additionalaffiliation#1{\bgroup \def\position##1{\ignorespaces}% @@ -1050,6 +1085,8 @@ Computing Machinery] December\fi~\@acmYear} \def\acmPrice#1{\def\@acmPrice{#1}} \acmPrice{15.00} +\def\acmSubmissionID#1{\def\@acmSubmissionID{#1}} +\acmSubmissionID{} \def\acmISBN#1{\def\@acmISBN{#1}} \acmISBN{978-x-xxxx-xxxx-x/YY/MM} \def\acmDOI#1{\def\@acmDOI{#1}} @@ -1344,8 +1381,9 @@ Computing Machinery] \let\@footnotemark\@footnotemark@nolink \let\@footnotetext\@footnotetext@nolink \renewcommand\thefootnote{\@fnsymbol\c@footnote}% - \@topnum\z@ % this prevents figures from falling at the top of page - % 1 + \global\@topnum\z@ % this prevents floats from falling + % at the top of page 1 + \global\@botnum\z@ % we do not want them to be on bottom either \hsize=\textwidth \def\@makefnmark{\hbox{\@textsuperscript{\@thefnmark}}}% \@mktitle\if@ACM@sigchiamode\else\@mkauthors\fi\@mkteasers @@ -1362,49 +1400,56 @@ Computing Machinery] \footnotetextcopyrightpermission{% \def\par{\let\par\@par}\parindent\z@\@setthanks}% \fi - \footnotetextcopyrightpermission{\parindent\z@\parskip0.1\baselineskip - \if@ACM@authorversion\else - \if@printpermission\@copyrightpermission\par\fi - \fi - \if@ACM@manuscript\else - \if@ACM@journal\else % Print the conference short name - {\itshape \acmConference@shortname, \acmConference@venue}\par + \footnotetextcopyrightpermission{% + \if@ACM@authordraft + \raisebox{-2ex}[\z@][\z@]{\makebox[0pt][l]{\large\bfseries + Unpublished + working draft. Not for distribution}}% + \color[gray]{0.9}% \fi - \fi - \if@printcopyright - \copyright\ \@copyrightyear\ \@copyrightowner\ - \else - \@copyrightyear.\ - \fi - \if@ACM@manuscript - Manuscript submitted to ACM\\ - \else - \if@ACM@authorversion - This is the author's version of the work. It is posted here for - your personal use. Not for redistribution. The definitive Version - of Record was published in - \if@ACM@journal - \emph{\@journalName}% - \else - \emph{Proceedings of \acmConference@name, \acmConference@date}% - \fi - \ifx\@acmDOI\@empty - . + \parindent\z@\parskip0.1\baselineskip + \if@ACM@authorversion\else + \if@printpermission\@copyrightpermission\par\fi + \fi + \if@ACM@manuscript\else + \if@ACM@journal\else % Print the conference short name + {\itshape \acmConference@shortname, \acmConference@venue}\par + \fi + \fi + \if@printcopyright + \copyright\ \@copyrightyear\ \@copyrightowner\ + \else + \@copyrightyear.\ + \fi + \if@ACM@manuscript + Manuscript submitted to ACM\\ + \else + \if@ACM@authorversion + This is the author's version of the work. It is posted here for + your personal use. Not for redistribution. The definitive Version + of Record was published in + \if@ACM@journal + \emph{\@journalName}% + \else + \emph{Proceedings of \acmConference@name, \acmConference@date}% + \fi + \ifx\@acmDOI\@empty + . + \else + , \@formatdoi{\@acmDOI}. + \fi\\ \else - , \@formatdoi{\@acmDOI}. - \fi\\ - \else - \if@ACM@journal - \@permissionCodeOne/\@acmYear/\@acmMonth-ART\@acmArticle\ - \$\@acmPrice\\ - DOI: \nolinkurl{\@acmDOI}% - \else % Conference - \@acmISBN - \ifx\@acmPrice\@empty.\else\dots\$\@acmPrice\fi\\ - DOI: \nolinkurl{\@acmDOI}% + \if@ACM@journal + \@permissionCodeOne/\@acmYear/\@acmMonth-ART\@acmArticle\ + \$\@acmPrice\\ + DOI: \nolinkurl{\@acmDOI}% + \else % Conference + \@acmISBN + \ifx\@acmPrice\@empty.\else\dots\$\@acmPrice\fi\\ + DOI: \nolinkurl{\@acmDOI}% + \fi \fi - \fi - \fi}% + \fi} \endgroup \setcounter{footnote}{0}% \@mkabstract @@ -1547,7 +1592,7 @@ Computing Machinery] \or % sigchi-a \Huge\bfseries \fi} -\def\@subtitlefont{% +\def\@subtitlefont{\normalsize \ifcase\ACM@format@nr \relax % manuscript \mdseries @@ -1635,9 +1680,10 @@ Computing Machinery] \newbox\@ACM@commabox \def\@ACM@addtoaddress#1{% \ifvmode\else + \if@ACM@affiliation@obeypunctuation\else \setbox\@ACM@commabox=\hbox{, }% \unskip\cleaders\copy\@ACM@commabox\hskip\wd\@ACM@commabox - \fi + \fi\fi #1} \if@ACM@journal \let\position\@gobble @@ -1649,13 +1695,14 @@ Computing Machinery] \let\postcode\@gobble \let\country\@gobble \else - \def\position#1{#1\par}% - \def\institution#1{#1\par}% - \newcommand\department[2][0]{#2\par}% - \def\streetaddress#1{#1\par}% + \def\position#1{\if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}% + \def\institution#1{\if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}% + \newcommand\department[2][0]{\if@ACM@affiliation@obeypunctuation + #2\else#2\par\fi}% + \def\streetaddress#1{\if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}% \let\city\@ACM@addtoaddress \let\state\@ACM@addtoaddress - \def\postcode#1{\unskip\space#1}% + \def\postcode#1{\if@ACM@affiliation@obeypunctuation#1\else\unskip\space#1\fi}% \let\country\@ACM@addtoaddress \fi \def\@mkauthors{\begingroup @@ -1732,9 +1779,14 @@ Computing Machinery] \def\affiliation##1##2{% \def\@tempa{##2}\ifx\@tempa\@empty\else \ifx\@currentaffiliations\@empty - \gdef\@currentaffiliations{\@affiliationfont##2}% + \gdef\@currentaffiliations{% + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}% + \@affiliationfont##2}% \else - \g@addto@macro{\@currentaffiliations}{\and##2}% + \g@addto@macro{\@currentaffiliations}{\and + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}##2}% \fi \fi \global\let\and\@typeset@author@line}% @@ -1783,9 +1835,13 @@ Computing Machinery] \g@addto@macro\@currentaffiliation{\par\nolinkurl{##2}}% \fi}% \def\affiliation##1##2{\ifx\@currentaffiliation\@empty - \gdef\@currentaffiliation{##2}% + \gdef\@currentaffiliation{% + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}##2}% \else - \g@addto@macro\@currentaffiliation{\par##2}% + \g@addto@macro\@currentaffiliation{\par + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}##2}% \fi \global\let\and\@typeset@author@bx }% @@ -1818,9 +1874,13 @@ Computing Machinery] \g@addto@macro\@currentaffiliation{\par\nolinkurl{##2}}% \fi}% \def\affiliation##1##2{\ifx\@currentaffiliation\@empty - \gdef\@currentaffiliation{##2}% + \gdef\@currentaffiliation{% + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}##2}% \else - \g@addto@macro\@currentaffiliation{\par##2}% + \g@addto@macro\@currentaffiliation{\par + \setkeys{@ACM@affiliation@}{obeypunctuation=false}% + \setkeys{@ACM@affiliation@}{##1}##2}% \fi \global\let\and\@typeset@author@bx}% \bgroup\hsize=\columnwidth @@ -1900,12 +1960,35 @@ Computing Machinery] \addtolength{\ACM@linecount@bxht}{\baselineskip} \ifdim\ACM@linecount@bxht<\textheight\repeat}} \fi -\def\ACM@linecount{% +\def\ACM@linecountL{% \if@ACM@review \begin{picture}(0,0)% \put(-26,-22){\usebox{\ACM@linecount@bx}}% \end{picture}% \fi} +\def\ACM@linecountR{% + \if@ACM@review + \begin{picture}(0,0)% + \put(20,-22){\usebox{\ACM@linecount@bx}}% + \end{picture}% + \fi} +\if@ACM@timestamp + % Subtracting 30 from \time gives us the effect of rounding-down despite + % \numexpr rounding to nearest + \newcounter{ACM@time@hours} + \setcounter{ACM@time@hours}{\numexpr (\time - 30) / 60 \relax} + \newcounter{ACM@time@minutes} + \setcounter{ACM@time@minutes}{\numexpr \time - \theACM@time@hours * 60 \relax} + \newcommand\ACM@timestamp{% + \footnotesize% + \the\year-\two@digits{\the\month}-\two@digits{\the\day}{ }% + \two@digits{\theACM@time@hours}:\two@digits{\theACM@time@minutes}{ }% + page~\thepage\ (pp. \@startPage-\pageref*{TotPages})% + \ifx\@acmSubmissionID\@empty\relax\else + ~Submission~ID: \@acmSubmissionID + \fi + } +\fi \def\@shortauthors{\if@ACM@anonymous Anon.\else\shortauthors\fi} \def\@headfootfont{% \ifcase\ACM@format@nr @@ -1934,46 +2017,50 @@ Computing Machinery] \renewcommand{\footrulewidth}{\z@}% \ifcase\ACM@format@nr \relax % manuscript - \fancyhead[LE]{\ACM@linecount\if@ACM@printfolios\thepage\fi}% + \fancyhead[LE]{\ACM@linecountL\if@ACM@printfolios\thepage\fi}% \fancyhead[RO]{\if@ACM@printfolios\thepage\fi}% \fancyhead[RE]{\@shortauthors}% - \fancyhead[LO]{\ACM@linecount\shorttitle}% + \fancyhead[LO]{\ACM@linecountL\shorttitle}% \fancyfoot[RO,LE]{\footnotesize Manuscript submitted to ACM}% \or % acmsmall - \fancyhead[LE]{\ACM@linecount\@headfootfont\@acmArticle\if@ACM@printfolios:\thepage\fi}% + \fancyhead[LE]{\ACM@linecountL\@headfootfont\@acmArticle\if@ACM@printfolios:\thepage\fi}% \fancyhead[RO]{\@headfootfont\@acmArticle\if@ACM@printfolios:\thepage\fi}% \fancyhead[RE]{\@headfootfont\@shortauthors}% - \fancyhead[LO]{\ACM@linecount\@headfootfont\shorttitle}% + \fancyhead[LO]{\ACM@linecountL\@headfootfont\shorttitle}% \fancyfoot[RO,LE]{\footnotesize \@journalName, Vol. \@acmVolume, No. \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% \or % acmlarge - \fancyhead[LE]{\ACM@linecount\@headfootfont + \fancyhead[LE]{\ACM@linecountL\@headfootfont \@acmArticle\if@ACM@printfolios:\thepage\fi\quad\textbullet\quad\@shortauthors}% - \fancyhead[LO]{\ACM@linecount}% + \fancyhead[LO]{\ACM@linecountL}% \fancyhead[RO]{\@headfootfont \shorttitle\quad\textbullet\quad\@acmArticle\if@ACM@printfolios:\thepage\fi}% \fancyfoot[RO,LE]{\footnotesize \@journalName, Vol. \@acmVolume, No. \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% \or % acmtog - \fancyhead[LE]{\ACM@linecount\@headfootfont + \fancyhead[LE]{\ACM@linecountL\@headfootfont \@acmArticle\if@ACM@printfolios:\thepage\fi\quad\textbullet\quad\@shortauthors}% - \fancyhead[LO]{\ACM@linecount}% + \fancyhead[LO]{\ACM@linecountL}% + \fancyhead[RE]{\ACM@linecountR}% \fancyhead[RO]{\@headfootfont - \shorttitle\quad\textbullet\quad\@acmArticle\if@ACM@printfolios:\thepage\fi}% + \shorttitle\quad\textbullet\quad\@acmArticle\if@ACM@printfolios:\thepage\fi\ACM@linecountR}% \fancyfoot[RO,LE]{\footnotesize \@journalName, Vol. \@acmVolume, No. \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% \else % Proceedings \fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}% - \fancyhead[LO]{\ACM@linecount\@headfootfont\shorttitle}% - \fancyhead[RE]{\@headfootfont\@shortauthors}% - \fancyhead[LE]{\ACM@linecount\@headfootfont\acmConference@shortname, + \fancyhead[LO]{\ACM@linecountL\@headfootfont\shorttitle}% + \fancyhead[RE]{\@headfootfont\@shortauthors\ACM@linecountR}% + \fancyhead[LE]{\ACM@linecountL\@headfootfont\acmConference@shortname, \acmConference@date, \acmConference@venue}% \fancyhead[RO]{\@headfootfont\acmConference@shortname, - \acmConference@date, \acmConference@venue}% + \acmConference@date, \acmConference@venue\ACM@linecountR}% \fi \if@ACM@sigchiamode \fancyheadoffset[L]{\dimexpr(\marginparsep+\marginparwidth)}% \fi + \if@ACM@timestamp + \fancyfoot[LO,RE]{\ACM@timestamp} + \fi } \pagestyle{standardpagestyle} \newdimen\@folio@wd @@ -2021,15 +2108,15 @@ Computing Machinery] \renewcommand{\footrulewidth}{\z@}% \ifcase\ACM@format@nr \relax % manuscript - \fancyhead[L]{\ACM@linecount}% + \fancyhead[L]{\ACM@linecountL}% \fancyfoot[RO,LE]{\if@ACM@printfolios\small\thepage\fi}% \fancyfoot[RE,LO]{\footnotesize Manuscript submitted to ACM}% \or % acmsmall \fancyfoot[RO,LE]{\footnotesize \@journalName, Vol. \@acmVolume, No. \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% - \fancyhead[LE]{\ACM@linecount\@folioblob}% - \fancyhead[LO]{\ACM@linecount}% + \fancyhead[LE]{\ACM@linecountL\@folioblob}% + \fancyhead[LO]{\ACM@linecountL}% \fancyhead[RO]{\@folioblob}% \fancyheadoffset[RO,LE]{0.6\@folio@wd}% \or % acmlarge @@ -2037,18 +2124,28 @@ Computing Machinery] \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% \fancyhead[RO]{\@folioblob}% - \fancyhead[LE]{\ACM@linecount\@folioblob}% - \fancyhead[LO]{\ACM@linecount}% + \fancyhead[LE]{\ACM@linecountL\@folioblob}% + \fancyhead[LO]{\ACM@linecountL}% \fancyheadoffset[RO,LE]{1.4\@folio@wd}% \or % acmtog \fancyfoot[RO,LE]{\footnotesize \@journalName, Vol. \@acmVolume, No. \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}% - \fancyhead[L]{\ACM@linecount}% + \fancyhead[L]{\ACM@linecountL}% + \fancyhead[R]{\ACM@linecountR}% \else % Conference proceedings - \fancyhead[L]{\ACM@linecount}% + \fancyhead[L]{\ACM@linecountL}% + \fancyhead[R]{\ACM@linecountR}% \fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}% \fi + \if@ACM@timestamp + \ifnum\ACM@format@nr=0\relax % Manuscript + \fancyfoot[LO,RE]{\ACM@timestamp\quad + \footnotesize Manuscript submitted to ACM} + \else + \fancyfoot[LO,RE]{\ACM@timestamp} + \fi + \fi } \renewcommand\section{\@startsection{section}{1}{\z@}% {-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}% -- cgit v1.2.3