|
12 | 12 | pre = "Start of " + pre
|
13 | 13 | }
|
14 | 14 |
|
| 15 | + v(2pt) |
15 | 16 | box(
|
16 | 17 | strong(pre) + v(-2pt) + content + if post != none { v(-2pt) + strong(post) },
|
17 | 18 | width: 100%,
|
|
25 | 26 |
|
26 | 27 | #let conf(
|
27 | 28 | title: none,
|
28 |
| - authors: (), |
29 |
| - abstract: [], |
| 29 | + subtitle: none, |
| 30 | + doctype: none, |
| 31 | + status: none, |
| 32 | + version: none, |
| 33 | + date: none, |
| 34 | + year: none, |
30 | 35 | doc,
|
31 |
| -) = { |
| 36 | +) = context { |
32 | 37 | //
|
33 | 38 | // Font settings
|
34 | 39 | //
|
35 | 40 | // Normal text
|
36 | 41 | set text(
|
37 | 42 | font: "Manuale",
|
38 |
| - size: 9pt, |
| 43 | + size: 10pt, |
39 | 44 | )
|
40 | 45 | // Math
|
41 | 46 | show math.equation: set text(
|
42 |
| - font: "Inter", |
43 |
| - size: 9pt, |
| 47 | + font: "Fira Math", |
| 48 | + size: 10pt, |
44 | 49 | )
|
45 | 50 | // Code
|
46 | 51 | show raw: set text(
|
47 | 52 | font: "Fira Code",
|
48 |
| - size: 9pt, |
| 53 | + size: 10pt, |
49 | 54 | )
|
50 | 55 | // Headings
|
51 | 56 | set heading(numbering: "1.1")
|
52 | 57 | show heading: it => block()[
|
53 |
| - #let size = 16pt - it.depth * 2pt |
| 58 | + #let size = 20pt - it.level * 3pt |
54 | 59 | #if size < 10pt { size = 10pt }
|
55 | 60 | #set align(center)
|
56 | 61 | #set text(
|
|
82 | 87 |
|
83 | 88 | show figure.where(kind: image): set figure.caption(position: bottom)
|
84 | 89 |
|
85 |
| - set align(center) |
86 |
| - text(17pt, title) |
87 |
| - |
88 |
| - let count = authors.len() |
89 |
| - let ncols = calc.min(count, 3) |
90 |
| - grid( |
91 |
| - columns: (1fr,) * ncols, |
92 |
| - row-gutter: 24pt, |
93 |
| - ..authors.map(author => [ |
94 |
| - #author.name \ |
95 |
| - #author.affiliation \ |
96 |
| - #link("mailto:" + author.email) |
97 |
| - ]), |
98 |
| - ) |
| 90 | + // |
| 91 | + // Title page |
| 92 | + // |
| 93 | + set page(paper: "us-letter", margin: 1in) |
| 94 | + set align(left + top) |
99 | 95 |
|
100 |
| - par(justify: false)[ |
101 |
| - *Abstract* \ |
102 |
| - #abstract |
103 |
| - ] |
| 96 | + image("tcg.png", width: 30%) |
104 | 97 |
|
105 |
| - set align(left) |
| 98 | + set align(left + bottom) |
106 | 99 |
|
107 |
| - pagebreak() |
| 100 | + text(48pt, title, font: "Inter", weight: "extrabold") |
| 101 | + v(-30pt) |
108 | 102 |
|
109 |
| - heading("Disclaimers, Notices, and License Terms", level: 1) |
| 103 | + if (subtitle != none) { |
| 104 | + text(32pt, subtitle, font: "Inter", weight: "medium") |
| 105 | + v(-20pt) |
| 106 | + } |
110 | 107 |
|
111 |
| - heading("Copyright Licenses", level: 2) |
| 108 | + line(length: 100%, stroke: 2pt) |
| 109 | + v(-20pt) |
112 | 110 |
|
113 |
| - [ |
114 |
| - Trusted Computing Group (TCG) grants to the user of the source code in this |
115 |
| - specification (the \"Source Code\") a worldwide, irrevocable, nonexclusive, |
116 |
| - royalty free, copyright license to reproduce, create derivative works, |
117 |
| - distribute, display and perform the Source Code and derivative works |
118 |
| - thereof, and to grant others the rights granted herein. |
119 |
| - |
120 |
| - The TCG grants to the user of the other parts of the specification (other |
121 |
| - than the Source Code) the rights to reproduce, distribute, display, and |
122 |
| - perform the specification solely for the purpose of developing products |
123 |
| - based on such documents. |
124 |
| - ] |
| 111 | + text(32pt, doctype, font: "Inter", weight: "light") |
| 112 | + v(-16pt) |
125 | 113 |
|
126 |
| - heading("Source Code Distribution Conditions", level: 2) |
| 114 | + text(24pt, status, font: "Inter", weight: "extralight") |
| 115 | + v(-12pt) |
127 | 116 |
|
128 |
| - [ |
129 |
| - Redistributions of Source Code must retain the above copyright licenses, |
130 |
| - this list of conditions and the following disclaimers. |
| 117 | + line(length: 100%, stroke: 2pt) |
131 | 118 |
|
132 |
| - Redistributions in binary form must reproduce the above copyright licenses, |
133 |
| - this list of conditions and the following disclaimers in the documentation |
134 |
| - and/or other materials provided with the distribution. |
135 |
| - ] |
| 119 | + v(-2pt) |
| 120 | + text(20pt, version, font: "Inter", weight: "light") |
| 121 | + v(-6pt) |
| 122 | + text(16pt, date, font: "Inter", weight: "light") |
| 123 | + v(-4pt) |
| 124 | + text( 12pt, "Contact: " + link( "mailto:[email protected]"), font: "Inter", weight: "extralight") |
136 | 125 |
|
137 |
| - heading("Disclaimers", level: 2) |
| 126 | + // |
| 127 | + // Front matter |
| 128 | + // |
| 129 | + let foot = ( |
| 130 | + line(length: 100%, stroke: 0.5pt) |
| 131 | + + grid( |
| 132 | + align: (left, center, right), |
| 133 | + columns: (1in, 5.5in, 1in), |
| 134 | + rows: 0.5in, |
| 135 | + sym.copyright + " " + year + " TCG", |
| 136 | + title + if subtitle != none { " " + subtitle }, |
| 137 | + context counter(page).display( |
| 138 | + "1", |
| 139 | + both: false, |
| 140 | + ), |
| 141 | + ) |
| 142 | + ) |
| 143 | + set text(font: "Inter", weight: "light") |
| 144 | + set page( |
| 145 | + paper: "us-letter", |
| 146 | + margin: (bottom: 1in, rest: 0.5in), |
| 147 | + footer: foot, |
| 148 | + ) |
138 | 149 |
|
139 |
| - [ |
140 |
| - THE COPYRIGHT LICENSES SET FORTH ABOVE DO NOT REPRESENT ANY FORM OF LICENSE |
141 |
| - OR WAIVER, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, WITH RESPECT TO |
142 |
| - PATENT RIGHTS HELD BY TCG MEMBERS (OR OTHER THIRD PARTIES) THAT MAY BE |
143 |
| - NECESSARY TO IMPLEMENT THIS SPECIFICATION OR OTHERWISE. Contact TCG |
144 |
| - Administration #link( "mailto:[email protected]") for information on |
145 |
| - specification licensing rights available through TCG membership agreements. |
146 |
| - |
147 |
| - THIS SPECIFICATION IS PROVIDED “AS IS” WITH NO EXPRESS OR IMPLIED WARRANTIES |
148 |
| - WHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A |
149 |
| - PARTICULAR PURPOSE, ACCURACY, COMPLETENESS, OR NONINFRINGEMENT OF |
150 |
| - INTELLECTUAL PROPERTY RIGHTS, OR ANY WARRANTY OTHERWISE ARISING OUT OF ANY |
151 |
| - PROPOSAL, SPECIFICATION OR SAMPLE. |
152 |
| - |
153 |
| - Without limitation, TCG and its members and licensors disclaim all |
154 |
| - liability, including liability for infringement of any proprietary rights, |
155 |
| - relating to use of information in this specification and to the |
156 |
| - implementation of this specification, and TCG disclaims all liability for |
157 |
| - cost of procurement of substitute goods or services, lost profits, loss of |
158 |
| - use, loss of data or any incidental, consequential, direct, indirect, or |
159 |
| - special damages, whether under contract, tort, warranty or otherwise, |
160 |
| - arising in any way out of use or reliance upon this specification or any |
161 |
| - information herein. |
162 |
| - |
163 |
| - Any marks and brands contained herein are the property of their respective |
164 |
| - owners. |
165 |
| - ] |
| 150 | + set align(left + top) |
| 151 | + |
| 152 | + set text(font: "Manuale", size: 10pt) |
166 | 153 |
|
167 | 154 | pagebreak()
|
168 | 155 |
|
| 156 | + heading("Disclaimers, Notices, and License Terms", level: 1, numbering: none, outlined: false) |
169 | 157 |
|
170 |
| - heading("Document Style", level: 1) |
| 158 | + [ |
| 159 | + THIS SPECIFICATION IS PROVIDED “AS IS” WITH NO WARRANTIES WHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY WARRANTY OTHERWISE ARISING OUT OF ANY PROPOSAL, SPECIFICATION OR SAMPLE. |
171 | 160 |
|
172 |
| - heading("Key Words", level: 2) |
| 161 | + Without limitation, TCG disclaims all liability, including liability for infringement of any proprietary rights, relating to use of information in this specification and to the implementation of this specification, and TCG disclaims all liability for cost of procurement of substitute goods or services, lost profits, loss of use, loss of data or any incidental, consequential, direct, indirect, or special damages, whether under contract, tort, warranty or otherwise, arising in any way out of use or reliance upon this specification or any information herein. |
173 | 162 |
|
174 |
| - [ |
175 |
| - The key words "MUST," "MUST NOT," "REQUIRED," "SHALL," "SHALL NOT," "SHOULD," |
176 |
| - "SHOULD NOT," "RECOMMENDED," "MAY," and "OPTIONAL" in this document's normative |
177 |
| - statements are to be interpreted as described in |
178 |
| - [RFC 2119: Key words for use in RFCs to Indicate Requirement Levels](https://www.ietf.org/rfc/rfc2119.txt). |
| 163 | + This document is copyrighted by Trusted Computing Group (TCG), and no license, express or implied, is granted herein other than as follows: You may not copy or reproduce the document or distribute it to others without written permission from TCG, except that you may freely do so for the purposes of (a) examining or implementing TCG specifications or (b) developing, testing, or promoting information technology standards and best practices, so long as you distribute the document with these disclaimers, notices, and license terms. |
| 164 | + Contact the Trusted Computing Group at www.trustedcomputinggroup.org for information on specification licensing through membership agreements. |
| 165 | + Any marks and brands contained herein are the property of their respective owners. |
179 | 166 | ]
|
180 | 167 |
|
181 |
| - heading("Statement Type", level: 2) |
| 168 | + heading("Statement Types", level: 1, numbering: none, outlined: false) |
182 | 169 |
|
183 | 170 | [
|
184 | 171 | Please note an important distinction between different sections of text
|
185 | 172 | throughout this document. There are two distinctive kinds of text: *informative
|
186 |
| - comments* and *normative statements*. Because most of the text in this |
187 |
| - specification will be of the kind *normative statements*, the authors have |
188 |
| - informally defined it as the default and, as such, have specifically called out |
189 |
| - text of the kind *informative comment*. They have done this by flagging the |
190 |
| - beginning and end of each informative comment and highlighting its text in gray. |
191 |
| - This means that unless text is specifically marked as of the kind *informative |
192 |
| - comment*, it can be considered a *normative statement*. |
| 173 | + comments* and *normative statements*. |
| 174 | + |
| 175 | + Whether a statement is normative or informative is typically |
| 176 | + clear from context. In cases where the context does not |
| 177 | + provide sufficient clarity, the following rules apply: |
| 178 | + |
| 179 | + 1. A statement with a capitalized RFC key word ("MUST," "MUST NOT," "REQUIRED," "SHALL," "SHALL NOT," "SHOULD," |
| 180 | + "SHOULD NOT," "RECOMMENDED," "MAY," and "OPTIONAL") as in RFC 8174 is always normative. |
| 181 | + |
| 182 | + 2. Text that is delimited by horizontal rules and labeled as an informative statement, note, example, etc. is always informative. |
193 | 183 | ]
|
194 | 184 |
|
195 | 185 | informative(
|
| 186 | + kind: "Example", |
196 | 187 | [Reach out to #link( "mailto:[email protected]") with any questions about this document.
|
197 | 188 | ],
|
198 |
| - kind: "Example", |
199 | 189 | )
|
200 | 190 |
|
201 | 191 | pagebreak()
|
202 | 192 |
|
| 193 | + outline() |
| 194 | + outline(title: "Figures", target: figure.where(kind: image)) |
| 195 | + outline(title: "Tables", target: figure.where(kind: table)) |
| 196 | + pagebreak() |
| 197 | + |
203 | 198 | doc
|
204 | 199 | }
|
0 commit comments