metanorma-iec 1.4.4 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rake.yml +4 -32
  3. data/.gitignore +14 -0
  4. data/Gemfile +4 -0
  5. data/lib/isodoc/iec/base_convert.rb +25 -14
  6. data/lib/isodoc/iec/html/htmlstyle.css +36 -21
  7. data/lib/isodoc/iec/html/htmlstyle.scss +13 -7
  8. data/lib/isodoc/iec/html/wordstyle.css +13 -11
  9. data/lib/isodoc/iec/html/wordstyle.scss +13 -11
  10. data/lib/isodoc/iec/html_convert.rb +2 -1
  11. data/lib/isodoc/iec/i18n-fr.yaml +1 -1
  12. data/lib/isodoc/iec/iec.international-standard.xsl +1637 -1280
  13. data/lib/isodoc/iec/presentation_xml_convert.rb +37 -7
  14. data/lib/isodoc/iec/word_convert.rb +2 -0
  15. data/lib/isodoc/iec/xref.rb +9 -8
  16. data/lib/{asciidoctor → metanorma}/iec/basicdoc.rng +0 -0
  17. data/lib/{asciidoctor → metanorma}/iec/biblio.rng +2 -2
  18. data/lib/{asciidoctor → metanorma}/iec/converter.rb +22 -8
  19. data/lib/{asciidoctor → metanorma}/iec/front.rb +1 -1
  20. data/lib/{asciidoctor → metanorma}/iec/iec.rng +48 -0
  21. data/lib/{asciidoctor → metanorma}/iec/iec_intro_en.xml +0 -0
  22. data/lib/{asciidoctor → metanorma}/iec/iec_intro_fr.xml +0 -0
  23. data/lib/{asciidoctor → metanorma}/iec/isodoc.rng +104 -3
  24. data/lib/{asciidoctor → metanorma}/iec/isostandard.rng +0 -0
  25. data/lib/{asciidoctor → metanorma}/iec/reqt.rng +0 -0
  26. data/lib/metanorma/iec/version.rb +1 -1
  27. data/lib/metanorma-iec.rb +1 -1
  28. data/metanorma-iec.gemspec +1 -1
  29. data/spec/isodoc/i18n_spec.rb +2 -2
  30. data/spec/isodoc/iev_spec.rb +67 -57
  31. data/spec/isodoc/ref_spec.rb +359 -353
  32. data/spec/{asciidoctor → metanorma}/base_spec.rb +1 -1
  33. data/spec/{asciidoctor → metanorma}/blocks_spec.rb +1 -1
  34. data/spec/{asciidoctor → metanorma}/cleanup_spec.rb +1 -1
  35. data/spec/{asciidoctor → metanorma}/iev_spec.rb +10 -2
  36. data/spec/{asciidoctor → metanorma}/inline_spec.rb +1 -1
  37. data/spec/{asciidoctor → metanorma}/lists_spec.rb +1 -1
  38. data/spec/{asciidoctor → metanorma}/section_spec.rb +1 -1
  39. data/spec/{asciidoctor → metanorma}/validate_spec.rb +1 -1
  40. data/spec/spec_helper.rb +2 -2
  41. metadata +22 -22
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a02490c7cf51e0e7d6d7bc61f6afcfd457c56b18f8cf1e98037bf48b2f8ad993
4
- data.tar.gz: 54da10f826af0d1ba39362e74a46747cd52194dfae54115464b49b9c45882beb
3
+ metadata.gz: 6a9a7ccb87048ef451ffd636b6ba29c7cdf56d383ba7814427e9bb51c77126b0
4
+ data.tar.gz: 62935cdbf5fd3d9f6df5705b11e944c7f64e28b7dba5af5fadb6732c19010d59
5
5
  SHA512:
6
- metadata.gz: 6dd8918d63ec440964bfa7902a03a3b668fd9940115dc908fd1f92353d14342c76586ad87d288454374ee18d4509696e774cec4a36634f5d53f1305cee41dc1b
7
- data.tar.gz: 19cc0bbfe41cacb566e2e84c10194d5c48bc164f08c17d060f0002454df4c0edf41baee4ef8bc367dbb959dedc57df36c25abe3080dfad2916cb6675c6238857
6
+ metadata.gz: dd7849f9f6465ef7ee12f968029261003f074c843b6de479419e40d3478ac8a9600266dd53faf973cc7f9e7a7918cd7b0446284ee35b05f1c3812063d4b56228
7
+ data.tar.gz: a66f218acf2e29364adc6709feb6a104ca91062a39569579823a3deda80eeccd1100fc8c1f59e329a7f44e0317b3171d0c1e71da516b37ce2f3a56fb9190b695
@@ -9,35 +9,7 @@ on:
9
9
  pull_request:
10
10
 
11
11
  jobs:
12
- rake:
13
- name: Test on Ruby ${{ matrix.ruby }} ${{ matrix.os }}
14
- runs-on: ${{ matrix.os }}
15
- continue-on-error: ${{ matrix.experimental }}
16
- strategy:
17
- fail-fast: false
18
- matrix:
19
- ruby: [ '3.0', '2.7', '2.6', '2.5' ]
20
- os: [ ubuntu-latest, windows-latest, macos-latest ]
21
- experimental: [ false ]
22
- steps:
23
- - uses: actions/checkout@v2
24
- with:
25
- submodules: true
26
-
27
- - uses: ruby/setup-ruby@v1
28
- with:
29
- ruby-version: ${{ matrix.ruby }}
30
- bundler-cache: true
31
-
32
- - run: bundle exec rake
33
-
34
- tests-passed:
35
- needs: rake
36
- runs-on: ubuntu-latest
37
- steps:
38
- - uses: peter-evans/repository-dispatch@v1
39
- with:
40
- token: ${{ secrets.METANORMA_CI_PAT_TOKEN || secrets.GITHUB_TOKEN }}
41
- repository: ${{ github.repository }}
42
- event-type: tests-passed
43
- client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'
12
+ notify:
13
+ uses: metanorma/metanorma-build-scripts/.github/workflows/mn-processor-rake.yml@main
14
+ secrets:
15
+ pat_token: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
data/.gitignore CHANGED
@@ -4,3 +4,17 @@
4
4
  coverage/
5
5
 
6
6
  .rubocop-https--*
7
+
8
+ /Gemfile.devel
9
+ /Gemfile.lock
10
+ /spec/assets/iso.doc
11
+ /spec/assets/iso.html
12
+ /spec/assets/iso.pdf
13
+ /test.doc
14
+ /test.err
15
+ /test.html
16
+ /test.pdf
17
+ /test.presentation.xml
18
+ /test.sts.xml
19
+ /test.xml
20
+ /test_alt.html
data/Gemfile CHANGED
@@ -7,3 +7,7 @@ source "https://rubygems.org"
7
7
  gemspec
8
8
 
9
9
  gem "reline", "~> 0.2.8.pre.11"
10
+
11
+ if File.exist? "Gemfile.devel"
12
+ eval File.read("Gemfile.devel"), nil, "Gemfile.devel" # rubocop:disable Security/Eval
13
+ end
@@ -14,13 +14,17 @@ module IsoDoc
14
14
  page_break(out)
15
15
  iec_orgname(out)
16
16
  middle_title(isoxml, out)
17
- out.div **attr_code(id: f ? f["id"] : "") do |s|
17
+ foreword1(f, b, out)
18
+ end
19
+
20
+ def foreword1(sect, boilerplate, out)
21
+ out.div **attr_code(id: sect ? sect["id"] : "") do |s|
18
22
  s.h1(**{ class: "ForewordTitle" }) { |h1| h1 << @i18n.foreword }
19
23
  @meta.get[:doctype] == "Amendment" or
20
24
  s.div **attr_code(class: "boilerplate_legal") do |s1|
21
- b&.elements&.each { |e| parse(e, s1) }
25
+ boilerplate&.elements&.each { |e| parse(e, s1) }
22
26
  end
23
- f&.elements&.each { |e| parse(e, s) unless e.name == "title" }
27
+ sect&.elements&.each { |e| parse(e, s) unless e.name == "title" }
24
28
  end
25
29
  end
26
30
 
@@ -31,19 +35,11 @@ module IsoDoc
31
35
  end
32
36
 
33
37
  def middle_title(_isoxml, out)
34
- title1 = @meta.get[:doctitlemain]&.sub(/\s+$/, "")
35
- @meta.get[:doctitleintro] and
36
- title1 = "#{@meta.get[:doctitleintro]} &mdash; #{title1}"
37
- if @meta.get[:doctitlepart]
38
- title1 += " &mdash;"
39
- title2 = @meta.get[:doctitlepart]&.sub(/\s+$/, "")
40
- @meta.get[:doctitlepartlabel] and
41
- title2 = "#{@meta.get[:doctitlepartlabel]}: #{title2}"
42
- end
38
+ title1, title2 = middle_title_parts(out)
43
39
  out.p(**{ class: "zzSTDTitle1" }) do |p|
44
40
  p.b { |b| b << title1 }
45
41
  end
46
- if @meta.get[:doctitlepart]
42
+ if title2
47
43
  out.p(**{ class: "zzSTDTitle1" }) { |p| p << "&nbsp;" }
48
44
  out.p(**{ class: "zzSTDTitle2" }) do |p|
49
45
  p.b { |b| b << title2 }
@@ -52,6 +48,20 @@ module IsoDoc
52
48
  out.p(**{ class: "zzSTDTitle1" }) { |p| p << "&nbsp;" }
53
49
  end
54
50
 
51
+ def middle_title_parts(_out)
52
+ title1 = @meta.get[:doctitlemain]&.sub(/\s+$/, "")
53
+ @meta.get[:doctitleintro] and
54
+ title1 = "#{@meta.get[:doctitleintro]} &mdash; #{title1}"
55
+ title2 = nil
56
+ if @meta.get[:doctitlepart]
57
+ title1 += " &mdash;"
58
+ title2 = @meta.get[:doctitlepart]&.sub(/\s+$/, "")
59
+ @meta.get[:doctitlepartlabel] and
60
+ title2 = "#{@meta.get[:doctitlepartlabel]}: #{title2}"
61
+ end
62
+ [title1, title2]
63
+ end
64
+
55
65
  def bibliography(isoxml, out)
56
66
  return super unless @is_iev
57
67
  end
@@ -69,7 +79,8 @@ module IsoDoc
69
79
 
70
80
  page_break(out)
71
81
  out.div **attr_code(id: node["id"]) do |div|
72
- out.p(**{ class: "zzSTDTitle2" }) do |p|
82
+ depth = clause_title_depth(node, nil)
83
+ out.send "h#{depth}", **{ class: "zzSTDTitle2" } do |p|
73
84
  p.b do |b|
74
85
  node&.at(ns("./title"))&.children&.each { |c2| parse(c2, b) }
75
86
  end
@@ -75,6 +75,12 @@ code *, pre *, tt *, kbd *, samp * {
75
75
  font-family: {{monospacefont}} !important;
76
76
  font-variant-ligatures: none; }
77
77
 
78
+ p code, dt code, li code, label code, legend code, caption code, th code, td code,
79
+ p tt, dt tt, li tt, label tt, legend tt, caption tt, th tt, td tt,
80
+ p kbd, dt kbd, li kbd, label kbd, legend kbd, caption kbd, th kbd, td kbd,
81
+ p samp, dt samp, li samp, label samp, legend samp, caption samp, th samp, td samp {
82
+ font-size: {{monospacefontsize}}; }
83
+
78
84
  article, aside, details, figcaption, figure,
79
85
  footer, header, hgroup, menu, nav, section {
80
86
  display: block; }
@@ -86,6 +92,9 @@ table {
86
92
  h1, h2, h3, h4, h5, h6 {
87
93
  font-family: {{headerfont}}; }
88
94
 
95
+ .h1, .h2, .h3, .h4, .h5, .h6 {
96
+ font-family: {{headerfont}}; }
97
+
89
98
  blockquote, q {
90
99
  quotes: none; }
91
100
  blockquote:before, blockquote:after, q:before, q:after {
@@ -298,19 +307,19 @@ span.partlabel {
298
307
  font-size: 0.9em; }
299
308
 
300
309
  /* TYPOGRAPHY */
301
- h1 {
310
+ h1, .h1 {
302
311
  font-size: 1.5em;
303
312
  line-height: 2em;
304
313
  margin-top: 2em;
305
314
  margin-bottom: 1em; }
306
315
 
307
- h2 {
316
+ h2, .h2 {
308
317
  font-size: 1.2em;
309
318
  line-height: 1.5em;
310
319
  margin-top: 2em;
311
320
  margin-bottom: 1em; }
312
321
 
313
- h1, h2, h3, h4, h5, h6 {
322
+ h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
314
323
  line-height: 1.2; }
315
324
 
316
325
  p {
@@ -322,7 +331,7 @@ p.zzSTDTitle1 {
322
331
  font-size: 1.5em;
323
332
  text-transform: uppercase; }
324
333
 
325
- p.zzSTDTitle2 {
334
+ .zzSTDTitle2 {
326
335
  font-weight: 700;
327
336
  font-size: 1.5em; }
328
337
 
@@ -337,7 +346,7 @@ nav a {
337
346
  text-decoration: none;
338
347
  color: black; }
339
348
 
340
- h2 p {
349
+ h2 p, .h2 p {
341
350
  display: inline; }
342
351
 
343
352
  ul > li {
@@ -417,52 +426,58 @@ p.TermNum {
417
426
  #toggle {
418
427
  display: none; } }
419
428
 
420
- #toc {
429
+ #toc, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) {
421
430
  font-family: {{bodyfont}};
422
431
  font-weight: 400; }
423
- #toc ul {
432
+ #toc ul, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) ul {
424
433
  margin: 0;
425
434
  padding: 0;
426
435
  list-style: none; }
427
- #toc ul li a {
436
+ #toc ul li a, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) ul li a {
428
437
  padding: 5px 10px; }
429
- #toc ul a {
438
+ #toc ul a, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) ul a {
430
439
  color: black;
431
440
  text-decoration: none;
432
441
  display: block; }
433
- #toc ul a:hover {
442
+ #toc ul a:hover, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) ul a:hover {
434
443
  box-shadow: none;
435
444
  color: black; }
436
- #toc .h2 {
445
+ #toc .h2, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .h2 {
437
446
  padding-left: 30px; }
438
- #toc .h3 {
447
+ #toc .h3, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .h3 {
439
448
  padding-left: 50px; }
440
- #toc .toc-active, #toc li:hover {
449
+ #toc .toc-active, #toc li:hover, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .toc-active, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) li:hover {
441
450
  background: black;
442
451
  box-shadow: inset -5px 0px 10px -5px black !important; }
443
- #toc .toc-active a, #toc li:hover a {
452
+ #toc .toc-active a, #toc li:hover a, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .toc-active a, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) li:hover a {
444
453
  color: black; }
445
454
  @media print {
446
- #toc .toc-active, #toc li:hover {
455
+ #toc .toc-active, #toc li:hover, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .toc-active, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) li:hover {
447
456
  background: white;
448
457
  box-shadow: none !important; }
449
- #toc .toc-active a {
458
+ #toc .toc-active a, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .toc-active a {
450
459
  color: black; }
451
- #toc li:hover a {
460
+ #toc li:hover a, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) li:hover a {
452
461
  color: black; } }
453
462
  @media screen and (max-width: 768px) {
454
- #toc {
463
+ #toc, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) {
455
464
  padding: 0 1.5em;
456
465
  overflow: visible; } }
457
466
  #toc .toc-active,
458
- #toc li:hover {
467
+ #toc li:hover, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .toc-active,
468
+ #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) li:hover {
459
469
  box-shadow: 0px 1px 0px 0px black !important;
460
470
  color: black;
461
471
  background: none; }
462
- #toc ul a:hover {
472
+ #toc ul a:hover, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) ul a:hover {
463
473
  box-shadow: none;
464
474
  color: black; }
465
475
 
476
+ #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) {
477
+ margin-top: 0;
478
+ margin-bottom: 0;
479
+ font-size: 100%; }
480
+
466
481
  @media screen and (min-width: 768px) {
467
482
  nav {
468
483
  line-height: 1.2em; }
@@ -476,7 +491,7 @@ p.TermNum {
476
491
  display: none; }
477
492
  h1.toc-contents {
478
493
  margin-top: 1em; }
479
- ul#toc-list {
494
+ ul#toc-list, ul#toc-list > :is(.h1, .h2, .h3, .h4, .h5, .h6) {
480
495
  padding: 0;
481
496
  margin: 0; } }
482
497
 
@@ -104,21 +104,21 @@ span.partlabel {
104
104
 
105
105
  /* TYPOGRAPHY */
106
106
 
107
- h1 {
107
+ h1, .h1 {
108
108
  font-size: 1.5em;
109
109
  line-height: 2em;
110
110
  margin-top: 2em;
111
111
  margin-bottom: 1em;
112
112
  }
113
113
 
114
- h2 {
114
+ h2, .h2 {
115
115
  font-size: 1.2em;
116
116
  line-height: 1.5em;
117
117
  margin-top: 2em;
118
118
  margin-bottom: 1em;
119
119
  }
120
120
 
121
- h1, h2, h3, h4, h5, h6 {
121
+ h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
122
122
  line-height: 1.2;
123
123
  }
124
124
 
@@ -133,7 +133,7 @@ p.zzSTDTitle1 {
133
133
  text-transform: uppercase;
134
134
  }
135
135
 
136
- p.zzSTDTitle2 {
136
+ .zzSTDTitle2 {
137
137
  font-weight: 700;
138
138
  font-size: 1.5em;
139
139
  }
@@ -152,7 +152,7 @@ nav a {
152
152
  color: black;
153
153
  }
154
154
 
155
- h2 p {
155
+ h2 p, .h2 p {
156
156
  display: inline;
157
157
  }
158
158
 
@@ -205,7 +205,7 @@ nav {
205
205
  @include sidebarNavToggle(black, #f5faff)
206
206
  }
207
207
 
208
- #toc {
208
+ #toc, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) {
209
209
  @include toc(black, black, black);
210
210
  @include sidebarToc();
211
211
 
@@ -224,6 +224,12 @@ nav {
224
224
  }
225
225
  }
226
226
 
227
+ #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) {
228
+ margin-top: 0;
229
+ margin-bottom: 0;
230
+ font-size: 100%;
231
+ }
232
+
227
233
  @media screen and (min-width: 768px) {
228
234
  nav {
229
235
  line-height: 1.2em;
@@ -247,7 +253,7 @@ nav {
247
253
  margin-top: 1em;
248
254
  }
249
255
 
250
- ul#toc-list {
256
+ ul#toc-list, ul#toc-list > :is(.h1, .h2, .h3, .h4, .h5, .h6) {
251
257
  padding:0;
252
258
  margin:0;
253
259
  }
@@ -207,7 +207,7 @@ p.MsoListParagraphCxSpLast, li.MsoListParagraphCxSpLast, div.MsoListParagraphCxS
207
207
  div.figure, p.figure {
208
208
  text-align: center; }
209
209
 
210
- h1.main {
210
+ h1.main, .h1 {
211
211
  mso-style-unhide: no;
212
212
  mso-style-qformat: yes;
213
213
  mso-style-name: "Heading 1";
@@ -221,8 +221,6 @@ h1.main {
221
221
  text-indent: -19.85pt;
222
222
  mso-pagination: widow-orphan;
223
223
  page-break-after: avoid;
224
- mso-outline-level: 1;
225
- mso-list: l26 level1 lfo40;
226
224
  mso-hyphenate: none;
227
225
  tab-stops: list 19.85pt;
228
226
  layout-grid-mode: char;
@@ -234,6 +232,10 @@ h1.main {
234
232
  mso-fareast-language: ZH-CN;
235
233
  font-weight: bold; }
236
234
 
235
+ h1.main {
236
+ mso-outline-level: 1;
237
+ mso-list: l26 level1 lfo40; }
238
+
237
239
  /* IEC: p.ANNEXtitle */
238
240
  h1.Annex {
239
241
  mso-style-name: ANNEX_title;
@@ -265,7 +267,7 @@ h1.Annex {
265
267
  h1
266
268
  { mso-list:l26 level1 lfo40;}
267
269
  */
268
- .h2Annex, h2 {
270
+ .h2Annex, h2, .h3 {
269
271
  mso-style-unhide: no;
270
272
  mso-style-qformat: yes;
271
273
  mso-style-parent: "Heading 1";
@@ -293,7 +295,7 @@ h2 {
293
295
  mso-list: l26 level2 lfo40;
294
296
  mso-outline-level: 2; }
295
297
 
296
- .h3Annex, h3 {
298
+ .h3Annex, h3, .h3 {
297
299
  mso-style-unhide: no;
298
300
  mso-style-qformat: yes;
299
301
  mso-style-name: "Heading 3";
@@ -321,7 +323,7 @@ h3 {
321
323
  mso-list: l26 level3 lfo40;
322
324
  mso-outline-level: 3; }
323
325
 
324
- .h4Annex, h4 {
326
+ .h4Annex, h4, .h4 {
325
327
  mso-style-unhide: no;
326
328
  mso-style-qformat: yes;
327
329
  mso-style-name: "Heading 4";
@@ -349,7 +351,7 @@ h4 {
349
351
  mso-list: l26 level2 lfo40;
350
352
  mso-outline-level: 4; }
351
353
 
352
- .h5Annex, h5 {
354
+ .h5Annex, h5, .h5 {
353
355
  mso-style-unhide: no;
354
356
  mso-style-qformat: yes;
355
357
  mso-style-name: "Heading 5";
@@ -377,7 +379,7 @@ h5 {
377
379
  mso-list: l26 level5 lfo40;
378
380
  mso-outline-level: 5; }
379
381
 
380
- h6 {
382
+ h6, .h6 {
381
383
  mso-style-unhide: no;
382
384
  mso-style-qformat: yes;
383
385
  mso-style-name: "Heading 6";
@@ -405,7 +407,7 @@ h6 {
405
407
  mso-list: l26 level6 lfo40;
406
408
  mso-outline-level: 6; }
407
409
 
408
- p.MsoHeading7, li.MsoHeading7, div.MsoHeading7 {
410
+ p.MsoHeading7, li.MsoHeading7, div.MsoHeading7, .h7 {
409
411
  mso-style-unhide: no;
410
412
  mso-style-qformat: yes;
411
413
  mso-style-name: "Heading 7";
@@ -434,7 +436,7 @@ p.MsoHeading7, li.MsoHeading7, div.MsoHeading7 {
434
436
  p.MsoHeading7 {
435
437
  mso-list: l26 level7 lfo40; }
436
438
 
437
- p.MsoHeading8, li.MsoHeading8, div.MsoHeading8 {
439
+ p.MsoHeading8, li.MsoHeading8, div.MsoHeading8, .h8 {
438
440
  mso-style-unhide: no;
439
441
  mso-style-qformat: yes;
440
442
  mso-style-name: "Heading 8";
@@ -463,7 +465,7 @@ p.MsoHeading8, li.MsoHeading8, div.MsoHeading8 {
463
465
  p.MsoHeading8 {
464
466
  mso-list: l26 level8 lfo40; }
465
467
 
466
- p.MsoHeading9, li.MsoHeading9, div.MsoHeading9 {
468
+ p.MsoHeading9, li.MsoHeading9, div.MsoHeading9, .h9 {
467
469
  mso-style-unhide: no;
468
470
  mso-style-qformat: yes;
469
471
  mso-style-name: "Heading 9";
@@ -190,7 +190,7 @@ p.MsoListParagraphCxSpLast, li.MsoListParagraphCxSpLast, div.MsoListParagraphCxS
190
190
  div.figure, p.figure
191
191
  {text-align: center;}
192
192
 
193
- h1.main
193
+ h1.main, .h1
194
194
  {mso-style-unhide:no;
195
195
  mso-style-qformat:yes;
196
196
  mso-style-name:"Heading 1";
@@ -204,8 +204,6 @@ h1.main
204
204
  text-indent:-19.85pt;
205
205
  mso-pagination:widow-orphan;
206
206
  page-break-after:avoid;
207
- mso-outline-level:1;
208
- mso-list:l26 level1 lfo40;
209
207
  mso-hyphenate:none;
210
208
  tab-stops:list 19.85pt;
211
209
  layout-grid-mode:char;
@@ -216,6 +214,10 @@ h1.main
216
214
  mso-ansi-language:EN-GB;
217
215
  mso-fareast-language:ZH-CN;
218
216
  font-weight:bold;}
217
+ h1.main {
218
+ mso-outline-level:1;
219
+ mso-list:l26 level1 lfo40;
220
+ }
219
221
  /* IEC: p.ANNEXtitle */
220
222
  h1.Annex
221
223
  {mso-style-name:ANNEX_title;
@@ -246,7 +248,7 @@ h1.Annex
246
248
  h1
247
249
  { mso-list:l26 level1 lfo40;}
248
250
  */
249
- .h2Annex, h2
251
+ .h2Annex, h2, .h3
250
252
  {mso-style-unhide:no;
251
253
  mso-style-qformat:yes;
252
254
  mso-style-parent:"Heading 1";
@@ -273,7 +275,7 @@ h2
273
275
  { mso-list:l26 level2 lfo40;
274
276
  mso-outline-level:2;
275
277
  }
276
- .h3Annex, h3
278
+ .h3Annex, h3, .h3
277
279
  {mso-style-unhide:no;
278
280
  mso-style-qformat:yes;
279
281
  mso-style-name:"Heading 3";
@@ -299,7 +301,7 @@ h2
299
301
  h3 {mso-list:l26 level3 lfo40;
300
302
  mso-outline-level:3;
301
303
  }
302
- .h4Annex, h4
304
+ .h4Annex, h4, .h4
303
305
  {mso-style-unhide:no;
304
306
  mso-style-qformat:yes;
305
307
  mso-style-name:"Heading 4";
@@ -325,7 +327,7 @@ h3 {mso-list:l26 level3 lfo40;
325
327
  h4 {mso-list:l26 level2 lfo40;
326
328
  mso-outline-level:4;
327
329
  }
328
- .h5Annex, h5
330
+ .h5Annex, h5, .h5
329
331
  {mso-style-unhide:no;
330
332
  mso-style-qformat:yes;
331
333
  mso-style-name:"Heading 5";
@@ -351,7 +353,7 @@ h4 {mso-list:l26 level2 lfo40;
351
353
  h5 {mso-list:l26 level5 lfo40;
352
354
  mso-outline-level:5;
353
355
  }
354
- h6
356
+ h6, .h6
355
357
  {mso-style-unhide:no;
356
358
  mso-style-qformat:yes;
357
359
  mso-style-name:"Heading 6";
@@ -377,7 +379,7 @@ h6
377
379
  h6 {mso-list:l26 level6 lfo40;
378
380
  mso-outline-level:6;
379
381
  }
380
- p.MsoHeading7, li.MsoHeading7, div.MsoHeading7
382
+ p.MsoHeading7, li.MsoHeading7, div.MsoHeading7, .h7
381
383
  {mso-style-unhide:no;
382
384
  mso-style-qformat:yes;
383
385
  mso-style-name:"Heading 7";
@@ -403,7 +405,7 @@ p.MsoHeading7, li.MsoHeading7, div.MsoHeading7
403
405
  mso-fareast-language:ZH-CN;
404
406
  font-weight:bold;}
405
407
  p.MsoHeading7 {mso-list:l26 level7 lfo40;}
406
- p.MsoHeading8, li.MsoHeading8, div.MsoHeading8
408
+ p.MsoHeading8, li.MsoHeading8, div.MsoHeading8 ,.h8
407
409
  {mso-style-unhide:no;
408
410
  mso-style-qformat:yes;
409
411
  mso-style-name:"Heading 8";
@@ -429,7 +431,7 @@ p.MsoHeading8, li.MsoHeading8, div.MsoHeading8
429
431
  mso-fareast-language:ZH-CN;
430
432
  font-weight:bold;}
431
433
  p.MsoHeading8 {mso-list:l26 level8 lfo40;}
432
- p.MsoHeading9, li.MsoHeading9, div.MsoHeading9
434
+ p.MsoHeading9, li.MsoHeading9, div.MsoHeading9, .h9
433
435
  {mso-style-unhide:no;
434
436
  mso-style-qformat:yes;
435
437
  mso-style-name:"Heading 9";
@@ -38,7 +38,8 @@ module IsoDoc
38
38
  end
39
39
 
40
40
  def authority_cleanup(docxml)
41
- auth = docxml.at("//div[@id = 'boilerplate-feedback' or @class = 'boilerplate-feedback']")
41
+ auth = docxml.at("//div[@id = 'boilerplate-feedback' or "\
42
+ "@class = 'boilerplate-feedback']")
42
43
  auth&.remove
43
44
  super
44
45
  end
@@ -18,7 +18,7 @@ term_def_boilerplate: |
18
18
  <link target="http://www.iso.org/obp"/></p> </li>
19
19
  </ul>
20
20
  doctype_dict:
21
- international-standard: Norme international
21
+ international-standard: Norme internationale
22
22
  technical-specification: Spécification technique
23
23
  technical-report: Rapport technique
24
24
  publicly-available-specification: Spécification disponible publiquement