1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
## acmart.cls
* class to typeset articles for the Association
for Computing Machinery
* around 3500 lines of code
* bases on amsart.cls
* support various journal styles
## Packages
* xkeyval: probably harmless
* xstring: probably harmless
* iftex: probably harmless
* amsart.cls: ** must be checked**
* amsmath: good
* microtype: can be problematic, if needed disable patches
* etoolbox: probably harmless
* booktabs: table tagging is uncomplete anyway
* refcount: probably harmless
* ltxcmds: probably harmless
* infwarerr: probably harmless
* totpages: **?, should be checked**
* everyshi: harmless (now wrapper to kernel hook)
* environ: **probably harmless, but use should be checked**
* trimspaces: probably harmless
* setspace: probably harmless
* textcase: harmless but unneeded in current latex
* natbib: handled in latex-lab-bib
* hyperxmp: **incompatible, but doesn't harm as it is ignored. It must be checked if XMP-data are missing**
* kvoptions
* various internal hyperref packages: hopefully all harmless
* hyperref: explicitly handled by the latex-lab code
* nameref: explicitly handled by the latex-lab code
* graphicx: handled by the latex-lab code
* (x)color: probably harmless
* geometry: probably harmless
* manyfoot: **must be checked, could affect footnote tagging**
* nccfoots: **must be checked, could affect footnote tagging**
* font packages: probably harmless (but math packages can affect later math tagging)
* caption: **must be checked as latex-lab-floats redefines caption commands.**
* float: **must be checked as latex-lab-floats redefines floats. Handling of H is unclear.**
* comment: probably harmless
* fancyhdr: **should work, but if must be checked if there is meaningful content in the header/footer as by default there are artifact**.
* upquote: probably harmless
Some packages are only loaded sometimes, e.g.
* framed: probably problematic
With lualatex result is similar, but probably unicode-math should be loaded.
## Redefinitions of main LaTeX commands
### sectioning
* `\@startsection`: acmart definition is like kernel definition. Using new tagging definition should be fine.
* `\@sect`: acmart definition slightly different. Reason must be checked.
* `\@xsect`: acmart definition is like kernel definition. Using new tagging definition should be fine.
* `\@seccntformat`: not changed by tagging code, so probably fine
* `\@ssect`: acmart definition is like kernel definition. Using new tagging definition should be fine.
* `\section` etc defined with `\@startsection`: OK
* `\part` defined as level 9 command?? Does the tagging code handles that or gets it confused??
### toc
* `\@starttoc`: must be adjusted to the tagging code
* `\l@section`, `\l@subsection`, `\l@subsubsection`: they use `\@tocline` (amsart), so that must be changed similar to `\@dottedtocline`
### footnotes
It must be checked if this harms!
* `\@makefntext`
* `\@footnotetext` (sometimes)
* `\@mpfootnotetext`
* `\@makefnmark`
* `\footnoterule`
### floats
Must be checked.
* `\@dblfloat`, `\end@dblfloat` sometimes
### lists
* `\@listI` etc
* description
### title
lots of complicated box combinations
* `\author`
* `\maketitle`
* `abstract`
### other
* `\endminipage`: will probably break minipage tagging.
* `\theindex`
## New commands and environments
All their tagging must be checked!!
*
*
*
|