metanorma-ieee 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/rake.yml +13 -0
  3. data/.rubocop.yml +10 -0
  4. data/CODE_OF_CONDUCT.md +74 -0
  5. data/Gemfile +11 -0
  6. data/LICENSE +25 -0
  7. data/README.adoc +30 -0
  8. data/Rakefile +8 -0
  9. data/bin/console +14 -0
  10. data/bin/rspec +17 -0
  11. data/bin/setup +8 -0
  12. data/lib/html2doc/ieee.rb +89 -0
  13. data/lib/isodoc/ieee/base_convert.rb +33 -0
  14. data/lib/isodoc/ieee/html/header.html +146 -0
  15. data/lib/isodoc/ieee/html/html_ieee_intro.html +12 -0
  16. data/lib/isodoc/ieee/html/html_ieee_titlepage.html +44 -0
  17. data/lib/isodoc/ieee/html/htmlstyle.css +1027 -0
  18. data/lib/isodoc/ieee/html/htmlstyle.scss +736 -0
  19. data/lib/isodoc/ieee/html/ieee.css +3603 -0
  20. data/lib/isodoc/ieee/html/ieee.scss +3418 -0
  21. data/lib/isodoc/ieee/html/scripts.html +70 -0
  22. data/lib/isodoc/ieee/html/word_ieee_intro.html +70 -0
  23. data/lib/isodoc/ieee/html/word_ieee_titlepage.html +28 -0
  24. data/lib/isodoc/ieee/html/wordstyle.css +5310 -0
  25. data/lib/isodoc/ieee/html/wordstyle.scss +5026 -0
  26. data/lib/isodoc/ieee/html_convert.rb +52 -0
  27. data/lib/isodoc/ieee/i18n-en.yaml +28 -0
  28. data/lib/isodoc/ieee/i18n.rb +19 -0
  29. data/lib/isodoc/ieee/ieee.amendment.xsl +11177 -0
  30. data/lib/isodoc/ieee/ieee.rb +11 -0
  31. data/lib/isodoc/ieee/ieee.standard.xsl +11177 -0
  32. data/lib/isodoc/ieee/init.rb +28 -0
  33. data/lib/isodoc/ieee/metadata.rb +136 -0
  34. data/lib/isodoc/ieee/pdf_convert.rb +24 -0
  35. data/lib/isodoc/ieee/presentation_terms.rb +181 -0
  36. data/lib/isodoc/ieee/presentation_xml_convert.rb +89 -0
  37. data/lib/isodoc/ieee/word_authority.rb +160 -0
  38. data/lib/isodoc/ieee/word_cleanup.rb +134 -0
  39. data/lib/isodoc/ieee/word_convert.rb +75 -0
  40. data/lib/isodoc/ieee/xref.rb +77 -0
  41. data/lib/isodoc/ieee.rb +11 -0
  42. data/lib/metanorma/ieee/basicdoc.rng +1150 -0
  43. data/lib/metanorma/ieee/biblio.rng +1385 -0
  44. data/lib/metanorma/ieee/boilerplate.xml +298 -0
  45. data/lib/metanorma/ieee/cleanup.rb +160 -0
  46. data/lib/metanorma/ieee/converter.rb +81 -0
  47. data/lib/metanorma/ieee/front.rb +120 -0
  48. data/lib/metanorma/ieee/ieee.rng +97 -0
  49. data/lib/metanorma/ieee/isodoc.rng +2776 -0
  50. data/lib/metanorma/ieee/processor.rb +56 -0
  51. data/lib/metanorma/ieee/reqt.rng +226 -0
  52. data/lib/metanorma/ieee/validate.rb +198 -0
  53. data/lib/metanorma/ieee/validate_section.rb +119 -0
  54. data/lib/metanorma/ieee/validate_style.rb +108 -0
  55. data/lib/metanorma/ieee/version.rb +5 -0
  56. data/lib/metanorma/ieee.rb +11 -0
  57. data/lib/metanorma-ieee.rb +8 -0
  58. data/metanorma-itu.gemspec +41 -0
  59. metadata +284 -0
@@ -0,0 +1,736 @@
1
+ /*
2
+ 0 CSS RESET
3
+ */
4
+
5
+ /* http://meyerweb.com/eric/tools/css/reset/
6
+ v2.0 | 20110126
7
+ License: none (public domain)
8
+ */
9
+
10
+
11
+ @import 'base_style/all';
12
+
13
+ body {
14
+ @include bodyStyle1(null, 1.3, -internal-root-color, #ffffff, 300);
15
+
16
+ main {
17
+ margin: 0;
18
+ }
19
+ }
20
+
21
+ /* HTML5 display-role reset for older browsers */
22
+ article,
23
+ aside,
24
+ details,
25
+ figcaption,
26
+ figure,
27
+ footer,
28
+ header,
29
+ hgroup,
30
+ menu,
31
+ nav,
32
+ section {
33
+ display: block;
34
+ }
35
+
36
+ blockquote,
37
+ q {
38
+ quotes: none;
39
+ }
40
+
41
+ blockquote:before,
42
+ blockquote:after,
43
+ q:before,
44
+ q:after {
45
+ content: '';
46
+ content: none;
47
+ }
48
+
49
+ /* New CSS */
50
+
51
+ body {
52
+ margin-left: 298px;
53
+ margin-right: 2em;
54
+ }
55
+
56
+ main {
57
+ padding-left: 4em;
58
+ padding-right: 2em;
59
+ }
60
+
61
+ .title-section,
62
+ .prefatory-section {
63
+ padding-left: 4em;
64
+ padding-top: 2em;
65
+ }
66
+
67
+ .prefatory-section {
68
+ margin-bottom: 5em;
69
+ }
70
+
71
+ .doctitle-en,
72
+ .doctitle-fr {
73
+ margin-top: 2em;
74
+ text-align: left;
75
+ }
76
+
77
+ .doctitle-en {
78
+ background-color: black;
79
+ padding-left: 3em;
80
+ margin-left: -3em;
81
+ padding-top: 2em;
82
+ padding-bottom: 2em;
83
+
84
+ }
85
+
86
+ .doctitle-en span {
87
+ font-size: 1.5em;
88
+ line-height: 1.5em;
89
+ font-weight: 900;
90
+ display: block;
91
+ color: white;
92
+ }
93
+
94
+ .doctitle-fr span {
95
+ font-size: 1.2em;
96
+ line-height: 1.2em;
97
+ font-style: italic;
98
+ display: block;
99
+ }
100
+
101
+ .doctitle-part {
102
+ margin-top: 1em;
103
+ }
104
+
105
+ span.title {
106
+ text-transform: uppercase;
107
+ font-size: 1em;
108
+ font-weight: 800;
109
+ }
110
+
111
+ .coverpage_docstage {
112
+ margin-top: 2em;
113
+ margin-bottom: 2em;
114
+ }
115
+
116
+ .coverpage_warning {
117
+ font-size: 0.9em;
118
+ font-style: italic;
119
+ padding-bottom: 1em;
120
+ }
121
+
122
+ .coverpage_docnumber,
123
+ .coverpage_techcommittee {
124
+ text-align: right;
125
+ font-size: 0.9em;
126
+ line-height: 0.5em;
127
+ }
128
+
129
+ .boilerplate-copyright #boilerplate-name {
130
+ font-weight: 900;
131
+ padding-top: 1em;
132
+ }
133
+
134
+ .boilerplate-copyright p {
135
+ margin-top: 1em;
136
+ line-height: 1.1em;
137
+ display: block;
138
+ font-size: 0.9em;
139
+ }
140
+
141
+ /* TYPOGRAPHY */
142
+
143
+ h1, .h1 {
144
+ font-weight: 900;
145
+ }
146
+
147
+ h2,
148
+ h3,
149
+ h4,
150
+ h5,
151
+ h6,
152
+ .h2, .h3, .h4, .h5, .h6{
153
+ font-weight: 700;
154
+ }
155
+
156
+ h1, .h1 {
157
+ font-size: 1.5em;
158
+ line-height: 2em;
159
+ margin-top: 2em;
160
+ margin-bottom: 1em;
161
+ }
162
+
163
+ h2, .h2 {
164
+ font-size: 1.2em;
165
+ line-height: 1.5em;
166
+ margin-top: 2em;
167
+ margin-bottom: 1em;
168
+ }
169
+
170
+ h1,
171
+ h2,
172
+ h3,
173
+ h4,
174
+ h5,
175
+ h6,
176
+ .h1, .h2, .h3, .h4, .h5, .h6 {
177
+ line-height: 1.2;
178
+ }
179
+
180
+ /* override for amendments */
181
+
182
+ {% if doctype == "Amendment" or doctype == "Technical Corrigendum" %}
183
+
184
+ h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
185
+ font-weight: normal;
186
+ font-size: initial;
187
+ font-style: italic;
188
+ line-height: 2em;
189
+ margin-top: 2em;
190
+ margin-bottom: 1em;
191
+ }
192
+
193
+ {% endif %}
194
+
195
+ h2 p, .h2 p {
196
+ display: inline;
197
+ }
198
+
199
+ p {
200
+ margin-top: 1em;
201
+ margin-bottom: 1em;
202
+ line-height: 1.2em;
203
+ }
204
+
205
+ p.zzSTDTitle1 {
206
+ font-weight: 700;
207
+ font-size: 1.5em;
208
+ }
209
+
210
+ p.zzSTDTitle2 {
211
+ font-size: 1.5em;
212
+ }
213
+
214
+ span.obligation {
215
+ font-weight: 400;
216
+ }
217
+
218
+ a {
219
+ color: black;
220
+ text-decoration-color: black;
221
+ }
222
+
223
+ h2 p, .h2 p {
224
+ display: inline;
225
+ }
226
+
227
+ ul>li {
228
+ list-style: none;
229
+ }
230
+
231
+ ul>li>p:first-child:before {
232
+ content: "\2014";
233
+ display: inline-block;
234
+ width: 1em;
235
+ margin-left: -1.5em;
236
+ margin-right: 0.5em;
237
+ }
238
+
239
+ li p {
240
+ /* display: inline-block; */
241
+ margin-bottom: 0.6em;
242
+ line-height: 1.2;
243
+ }
244
+
245
+ #toc li:before {
246
+ content: " ";
247
+ display: none;
248
+ }
249
+
250
+ p.AltTerms {
251
+ margin-bottom: 0;
252
+ margin-left: 2em;
253
+ }
254
+
255
+ p.Terms {
256
+ margin-top: 0em;
257
+ }
258
+
259
+ /* Navigation*/
260
+
261
+ #toc, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) {
262
+ @include toc(null, #1d1d1d, white);
263
+ @include sidebarToc();
264
+
265
+ // .toc-active,
266
+ // li:hover {
267
+ // background: #1d1d1d;
268
+ // box-shadow: inset -5px 0px 10px -5px #1d1d1d !important;
269
+ // }
270
+
271
+ li:before {
272
+ content: " ";
273
+ display: none;
274
+ }
275
+ }
276
+
277
+ #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) {
278
+ margin-top: 0;
279
+ margin-bottom: 0;
280
+ font-size: 100%;
281
+ }
282
+
283
+ nav {
284
+ @include sidebarNav(#f7f7f7, 278px, 20px);
285
+ line-height: 1.2em;
286
+ }
287
+
288
+ #toggle {
289
+ @include sidebarNavToggle(white, black);
290
+ margin-left: -4em;
291
+ margin-top: -2em;
292
+ }
293
+
294
+ @media screen and (min-width: 768px) {
295
+ .container {
296
+ padding-left: 360px;
297
+ }
298
+
299
+ .rule.toc {
300
+ display: none;
301
+ }
302
+
303
+ h1.toc-contents {
304
+ margin-top: 1em;
305
+ }
306
+
307
+ ul#toc-list, ul#toc-list > :is(.h1, .h2, .h3, .h4, .h5, .h6) {
308
+ padding: 0;
309
+ margin: 0;
310
+ }
311
+ }
312
+
313
+ @media screen and (max-width: 768px) {
314
+ body {
315
+ margin-left: 2em;
316
+ }
317
+
318
+ main {
319
+ padding: 0;
320
+ }
321
+
322
+ .title-section,
323
+ .prefatory-section {
324
+ padding-left: 0;
325
+ padding-top: 0;
326
+ width: 100%;
327
+ }
328
+ }
329
+
330
+ .figure,
331
+ pre,
332
+ .pseudocode {
333
+ @include pseudocodeBlock(#f7f7f7);
334
+ font-size: $normalfontsize;
335
+ }
336
+
337
+ div.figure {
338
+ @include figureBlock();
339
+ }
340
+
341
+ /*
342
+ Document types + stages
343
+ */
344
+
345
+ .document-type-band {
346
+ @include docBand($order: 2, $offset: 180px);
347
+
348
+ .document-type {
349
+ top: 20px;
350
+ }
351
+ }
352
+
353
+ .document-stage-band {
354
+ @include docBand(1, 100%);
355
+ }
356
+
357
+ p.document-stage {
358
+ @include docBandTitle(210px);
359
+ writing-mode: vertical-rl;
360
+ }
361
+
362
+ #governance-band p.document-type {
363
+ font-weight: 400;
364
+ height: 230px !important;
365
+ }
366
+
367
+ p.document-stage {
368
+ font-weight: 300;
369
+ height: 160px;
370
+ }
371
+
372
+ #standard-band {
373
+ background-color: #0ac442;
374
+ }
375
+
376
+ #standard {
377
+ border-bottom: solid 3px #0ac442;
378
+ }
379
+
380
+ #governance {
381
+ border-bottom: solid 3px #750697;
382
+ }
383
+
384
+ #governance-band {
385
+ background-color: #750697;
386
+ }
387
+
388
+ #guide {
389
+ border-bottom: solid 3px #48a0e7;
390
+ }
391
+
392
+ #guide-band {
393
+ background-color: #48a0e7;
394
+ }
395
+
396
+ .coverpage-maturity {
397
+ font-family: 'Overpass', sans-serif;
398
+ font-weight: 400;
399
+ font-size: 1em;
400
+ margin: 0 0 2em 0;
401
+ text-transform: uppercase;
402
+ }
403
+
404
+ #working-draft {
405
+ border-bottom: solid 3px #fda706;
406
+ }
407
+
408
+ #working-draft-band {
409
+ background-color: #fda706;
410
+ }
411
+
412
+ #committee-draft {
413
+ border-bottom: solid 3px #fd06fd;
414
+ }
415
+
416
+ #committee-draft-band {
417
+ background-color: #fd06fd;
418
+ }
419
+
420
+ #draft-standard {
421
+ border-bottom: solid 3px #fdf906;
422
+ }
423
+
424
+ #draft-standard {
425
+ border-bottom: solid 3px #fdf906;
426
+ }
427
+
428
+ #standard {
429
+ border-bottom: solid 3px #0ac442;
430
+ }
431
+
432
+ #standard-band {
433
+ background-color: #0ac442;
434
+ }
435
+
436
+ #obsolete {
437
+ border-bottom: solid 3px #7e0d13;
438
+ }
439
+
440
+ #obsolete-band {
441
+ background-color: #7e0d13;
442
+ }
443
+
444
+
445
+ /* 3 Other styles */
446
+
447
+ /*
448
+ 3.2 Links
449
+ */
450
+ a {
451
+ color: black;
452
+ text-decoration-color: black;
453
+ }
454
+
455
+ /*
456
+ 3.3 Lists
457
+ */
458
+
459
+ ul,
460
+ ol {
461
+ margin-left: 2em;
462
+ }
463
+
464
+ #toc-list ul {
465
+ margin-bottom: 0.25em;
466
+ }
467
+
468
+ #toc-list ol li {
469
+ list-style-type: none;
470
+ }
471
+
472
+ /*
473
+ 3.4 Rules
474
+ */
475
+
476
+ .rule {
477
+ @include rule(1px, #0e1a85)
478
+ }
479
+
480
+ /*
481
+ 3.5 Bibliograhy
482
+ */
483
+
484
+ p.Biblio,
485
+ p.NormRef {
486
+ margin-top: 1em;
487
+ margin-left: 2em;
488
+ }
489
+
490
+ /*
491
+ 3.6 Source Code + figures
492
+ */
493
+
494
+ .figure,
495
+ pre,
496
+ .pseudocode {
497
+ @include pseudocodeBlock(#f7f7f7);
498
+ font-size: $normalfontsize;
499
+ }
500
+
501
+ pre {
502
+ @include monospaceBlockStyle()
503
+ }
504
+
505
+ @include admonitionBlock();
506
+ @include recommendationBlock();
507
+ @include listBlock();
508
+
509
+ .figure-title,
510
+ .FigureTitle,
511
+ .SourceTitle,
512
+ .AdmonitionTitle,
513
+ .RecommendationTitle {
514
+ @include blockTitle()
515
+ }
516
+
517
+ .figure dl {
518
+ }
519
+
520
+ /*
521
+ 3.7 Notes
522
+ */
523
+
524
+ .Note,
525
+ .note {
526
+ background-color: #fff495;
527
+ color: #47430c;
528
+ padding: 0.5em;
529
+ margin: 1.5em 0 1.5em 0;
530
+ text-align: left;
531
+ }
532
+
533
+ .Note p,
534
+ .note p {
535
+ margin: 0;
536
+ }
537
+
538
+ .Admonition {
539
+ background-color: #ffcccc;
540
+ color: #47430c;
541
+ padding: 0.5em;
542
+ margin: 1.5em 0 1.5em 0;
543
+ text-align: left;
544
+ }
545
+
546
+ .Admonition p {
547
+ margin: 0;
548
+ }
549
+
550
+
551
+ /*
552
+ 3.8 Examples
553
+ */
554
+
555
+ .example {
556
+ @include exampleBlock(#e1eef1, black, 0.5em);
557
+ color: black;
558
+
559
+ padding-left: 2em;
560
+
561
+ .example-title {
562
+ margin-left: -1.5em;
563
+ }
564
+
565
+ pre,
566
+ .pseudocode {
567
+ background: none;
568
+ }
569
+ }
570
+
571
+ /*
572
+ 3.9 Tables
573
+ */
574
+
575
+ table {
576
+ @include table(1px solid black);
577
+ text-align: center;
578
+ }
579
+
580
+ td,
581
+ th {
582
+ padding: 1em !important;
583
+ }
584
+
585
+ p.TableTitle {
586
+ text-align: center;
587
+ margin-top: 2.5em;
588
+ font-weight: 800;
589
+ font-size: 1.1em;
590
+ }
591
+
592
+ .TableFootnote {
593
+ text-align: left !important;
594
+ }
595
+
596
+ /*
597
+ 3.10 Footnotes
598
+ */
599
+
600
+ a.footnote-number,
601
+ a.TableFootnoteRef,
602
+ span.TableFootnoteRef {
603
+ vertical-align: super;
604
+ font-size: 0.8em;
605
+ }
606
+
607
+ .footnote {
608
+ font-size: $footnotefontsize;
609
+ }
610
+
611
+ sup a {
612
+ vertical-align: super;
613
+ font-size: 0.8em;
614
+ }
615
+
616
+ #footnote_box {
617
+ font-size: $footnotefontsize;
618
+ background: white;
619
+ padding: 0 10px;
620
+ margin: 10px;
621
+ border: 1px solid #888;
622
+ -moz-box-shadow: 0px 0px 5px #888;
623
+ -webkit-box-shadow: 0px 0px 5px #888;
624
+ box-shadow: 0px 0px 5px #888;
625
+ }
626
+
627
+ ol.footnotes-list,
628
+ aside.footnote {
629
+ margin-left: 1em;
630
+
631
+ }
632
+
633
+ ol.footnotes-list li,
634
+ aside.footnote {
635
+ font-size: $footnotefontsize;
636
+ vertical-align: top;
637
+ list-style: decimal;
638
+ margin-bottom: 1em;
639
+ }
640
+
641
+ ol.footnotes-list:first-child {
642
+ margin-top: 2em;
643
+ }
644
+
645
+ ol.footnotes-list p,
646
+ aside.footnote {
647
+ display: inline;
648
+ }
649
+
650
+ ol>li>p:before {
651
+ content: "";
652
+ display: none;
653
+ }
654
+
655
+
656
+ /*
657
+ 3.11 Blockquotes
658
+ */
659
+
660
+ .Quote {
661
+ @include blockquoteBlock(#f7f7f7);
662
+ }
663
+
664
+ /*
665
+ 3.12 Formulas
666
+ */
667
+
668
+ .formula {
669
+ @include formulaBlock(#f7f7f7);
670
+ margin-left: 20%;
671
+ margin-right: 20%;
672
+ font-size: $smallerfontsize;
673
+ }
674
+
675
+ dl.formula_dl {
676
+ background-color: #f7f7f7;
677
+ margin-left: 20%;
678
+ margin-right: 20%;
679
+ font-size: $smallerfontsize;
680
+ }
681
+
682
+ /*
683
+ Keywords
684
+ */
685
+
686
+ span.keyword {
687
+ font-weight: 600;
688
+ }
689
+
690
+ .Admonition,
691
+ .admonition {
692
+ background-color: #ffb3b3;
693
+ /* color: #47430c;*/
694
+ padding: 0.5em;
695
+ margin: 1.5em 0 1.5em 0;
696
+ text-align: left;
697
+ }
698
+
699
+ .Admonition p,
700
+ .admonition p,
701
+ .zzHelp p {
702
+ margin: 0;
703
+ }
704
+
705
+ div.zzHelp {
706
+ color: green;
707
+ padding: 0.5em;
708
+ margin: 1.5em 0 1.5em 0;
709
+ text-align: left;
710
+ }
711
+
712
+ /* Collapse TOC */
713
+
714
+ .collapse-group {
715
+ display: flex;
716
+ align-items: center;
717
+ position: relative;
718
+ }
719
+
720
+ .collapse-button {
721
+ position: absolute;
722
+ right: 0;
723
+ display: inline-block;
724
+ height: 20px;
725
+ width: 20px;
726
+ cursor: pointer;
727
+ background-image: url('data:image/svg+xml,<svg focusable="false" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="rgba(0,0,0,.54)" d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"></path></svg>');
728
+ }
729
+
730
+ .collapse {
731
+ display: none;
732
+ }
733
+
734
+ .expand {
735
+ transform: rotateZ(-180deg);
736
+ }