asciidoctor-iso 0.7.0 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +12 -10
- data/asciidoctor-iso.gemspec +1 -1
- data/lib/asciidoctor/iso/base.rb +6 -3
- data/lib/asciidoctor/iso/blocks.rb +4 -18
- data/lib/asciidoctor/iso/cleanup.rb +20 -11
- data/lib/asciidoctor/iso/cleanup_block.rb +38 -21
- data/lib/asciidoctor/iso/cleanup_ref.rb +17 -4
- data/lib/asciidoctor/iso/converter.rb +0 -1
- data/lib/asciidoctor/iso/front.rb +23 -14
- data/lib/asciidoctor/iso/html/html_iso_intro.html +0 -36
- data/lib/asciidoctor/iso/html/isodoc.css +5 -0
- data/lib/asciidoctor/iso/inline.rb +14 -2
- data/lib/asciidoctor/iso/isodoc.rng +38 -6
- data/lib/asciidoctor/iso/isostandard.rng +16 -11
- data/lib/asciidoctor/iso/lists.rb +28 -23
- data/lib/asciidoctor/iso/section.rb +4 -14
- data/lib/asciidoctor/iso/table.rb +0 -3
- data/lib/asciidoctor/iso/utils.rb +2 -0
- data/lib/asciidoctor/iso/validate.rb +2 -2
- data/lib/asciidoctor/iso/validate_section.rb +62 -4
- data/lib/asciidoctor/iso/validate_style.rb +24 -15
- data/lib/asciidoctor/iso/version.rb +1 -1
- data/spec/asciidoctor-iso/base_spec.rb +32 -6
- data/spec/asciidoctor-iso/blocks_spec.rb +10 -0
- data/spec/asciidoctor-iso/cleanup_spec.rb +26 -18
- data/spec/asciidoctor-iso/inline_spec.rb +2 -0
- data/spec/asciidoctor-iso/lists_spec.rb +1 -0
- data/spec/asciidoctor-iso/refs_spec.rb +44 -11
- data/spec/asciidoctor-iso/validate_spec.rb +1 -0
- data/spec/examples/rice.doc +2751 -2732
- data/spec/examples/rice.html +184 -205
- data/spec/examples/rice.xml +244 -212
- data/spec/spec_helper.rb +6 -3
- metadata +6 -6
@@ -34,11 +34,22 @@ module Asciidoctor
|
|
34
34
|
type: node.attr("#{compname}-type"))
|
35
35
|
end
|
36
36
|
|
37
|
-
def
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
37
|
+
def organization(org, orgname)
|
38
|
+
if ["ISO",
|
39
|
+
"International Organization for Standardization"].include? orgname
|
40
|
+
org.name "International Organization for Standardization"
|
41
|
+
org.abbreviation "ISO"
|
42
|
+
else
|
43
|
+
org.name orgname
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
def metadata_author(node, xml)
|
48
|
+
publishers = node.attr("publisher") || "ISO"
|
49
|
+
publishers.split(/,[ ]?/).each do |p|
|
50
|
+
xml.contributor do |c|
|
51
|
+
c.role **{ type: "author" }
|
52
|
+
c.organization { |a| organization(a, p) }
|
42
53
|
end
|
43
54
|
end
|
44
55
|
end
|
@@ -48,20 +59,18 @@ module Asciidoctor
|
|
48
59
|
publishers.split(/,[ ]?/).each do |p|
|
49
60
|
xml.contributor do |c|
|
50
61
|
c.role **{ type: "publisher" }
|
51
|
-
c.organization
|
52
|
-
a.name p
|
53
|
-
end
|
62
|
+
c.organization { |a| organization(a, p) }
|
54
63
|
end
|
55
64
|
end
|
56
65
|
end
|
57
66
|
|
58
67
|
def metadata_copyright(node, xml)
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
owner
|
64
|
-
|
68
|
+
publishers = node.attr("publisher") || "ISO"
|
69
|
+
publishers.split(/,[ ]?/).each do |p|
|
70
|
+
xml.copyright do |c|
|
71
|
+
c.from (node.attr("copyright-year") || Date.today.year)
|
72
|
+
c.owner do |owner|
|
73
|
+
owner.organization { |o| organization(o, p) }
|
65
74
|
end
|
66
75
|
end
|
67
76
|
end
|
@@ -35,39 +35,3 @@ at the address below or ISO’s member body in the country of the requester.
|
|
35
35
|
|
36
36
|
<div class="rule"></div>
|
37
37
|
|
38
|
-
<script type="text/javascript"
|
39
|
-
src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js">
|
40
|
-
</script>
|
41
|
-
|
42
|
-
<script>
|
43
|
-
// http://tutorials.jenkov.com/jquery/generating-table-of-contents.html
|
44
|
-
$(document).ready(function() {
|
45
|
-
$("#toc-list").empty();
|
46
|
-
|
47
|
-
var prevH2Item = null;
|
48
|
-
var prevH2List = null;
|
49
|
-
|
50
|
-
var index = 0;
|
51
|
-
$("h1, h2").each(function() {
|
52
|
-
|
53
|
-
if ($(this).hasClass("toc-contents")) {
|
54
|
-
return;
|
55
|
-
}
|
56
|
-
//insert an anchor to jump to, from the TOC link.
|
57
|
-
var anchor = "<a name='" + index + "'></a>";
|
58
|
-
$(this).before(anchor);
|
59
|
-
|
60
|
-
var li = "<li><a href='#" + index + "'>" + $(this).text() + "</a></li>";
|
61
|
-
|
62
|
-
if ($(this).is("h1") ){
|
63
|
-
prevH2List = $("<ul></ul>");
|
64
|
-
prevH2Item = $(li);
|
65
|
-
prevH2Item.append(prevH2List);
|
66
|
-
prevH2Item.appendTo("#toc-list");
|
67
|
-
} else {
|
68
|
-
prevH2List.append(li);
|
69
|
-
}
|
70
|
-
index++;
|
71
|
-
});
|
72
|
-
});
|
73
|
-
</script>
|
@@ -431,6 +431,11 @@ p.Formula, li.Formula, div.Formula
|
|
431
431
|
mso-fareast-font-family:"Cambria";
|
432
432
|
mso-bidi-font-family:"Cambria";
|
433
433
|
mso-ansi-language:EN-GB;}
|
434
|
+
table.dl
|
435
|
+
{margin-top:0cm;
|
436
|
+
margin-right:0cm;
|
437
|
+
margin-bottom:11.0pt;
|
438
|
+
margin-left:20.15pt;}
|
434
439
|
.h2Annex
|
435
440
|
{mso-style-priority:2;
|
436
441
|
mso-style-unhide:no;
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require "asciidoctor/extensions"
|
2
|
+
require "HTMLEntities"
|
2
3
|
|
3
4
|
module Asciidoctor
|
4
5
|
module ISO
|
@@ -65,7 +66,6 @@ module Asciidoctor
|
|
65
66
|
@fn_number += 1
|
66
67
|
xml.fn **{ reference: @fn_number } do |fn|
|
67
68
|
fn.p { |p| p << node.text }
|
68
|
-
footnote_style(node, node.text)
|
69
69
|
end
|
70
70
|
end.join("\n")
|
71
71
|
end
|
@@ -85,6 +85,18 @@ module Asciidoctor
|
|
85
85
|
noko { |xml| xml.hr }.join("\n")
|
86
86
|
end
|
87
87
|
|
88
|
+
def stem_parse(text, xml)
|
89
|
+
if /<([^:>&]+:)?math(\s+[^>&]+)?> |
|
90
|
+
<([^:>&]+:)?math(\s+[^>&]+)?>/x.match? text
|
91
|
+
math = HTMLEntities.new.encode(text, :basic, :hexadecimal).
|
92
|
+
gsub(/&gt;/, ">").gsub(/\&lt;/, "<").gsub(/&amp;/, "&").
|
93
|
+
gsub(/>/, ">").gsub(/</, "<").gsub(/&/, "&")
|
94
|
+
xml.stem math, **{ type: "MathML" }
|
95
|
+
else
|
96
|
+
xml.stem text, **{ type: "AsciiMath" }
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|
88
100
|
def inline_quoted(node)
|
89
101
|
noko do |xml|
|
90
102
|
case node.type
|
@@ -95,7 +107,7 @@ module Asciidoctor
|
|
95
107
|
when :single then xml << "'#{node.text}'"
|
96
108
|
when :superscript then xml.sup node.text
|
97
109
|
when :subscript then xml.sub node.text
|
98
|
-
when :asciimath then
|
110
|
+
when :asciimath then stem_parse(node.text, xml)
|
99
111
|
else
|
100
112
|
case node.role
|
101
113
|
# the following three are legacy, they are now handled by macros
|
@@ -746,6 +746,11 @@
|
|
746
746
|
<ref name="bookmark"/>
|
747
747
|
</choice>
|
748
748
|
</define>
|
749
|
+
<define name="source">
|
750
|
+
<element name="source">
|
751
|
+
<data type="anyURI"/>
|
752
|
+
</element>
|
753
|
+
</define>
|
749
754
|
<define name="em">
|
750
755
|
<element name="em">
|
751
756
|
<text/>
|
@@ -1168,6 +1173,9 @@
|
|
1168
1173
|
<define name="organization">
|
1169
1174
|
<element name="organization">
|
1170
1175
|
<ref name="orgname"/>
|
1176
|
+
<optional>
|
1177
|
+
<ref name="abbreviation"/>
|
1178
|
+
</optional>
|
1171
1179
|
<optional>
|
1172
1180
|
<ref name="uri"/>
|
1173
1181
|
</optional>
|
@@ -1184,6 +1192,11 @@
|
|
1184
1192
|
<ref name="LocalizedString"/>
|
1185
1193
|
</element>
|
1186
1194
|
</define>
|
1195
|
+
<define name="abbreviation">
|
1196
|
+
<element name="abbreviation">
|
1197
|
+
<ref name="LocalizedString"/>
|
1198
|
+
</element>
|
1199
|
+
</define>
|
1187
1200
|
<define name="uri">
|
1188
1201
|
<element name="uri">
|
1189
1202
|
<data type="anyURI"/>
|
@@ -1470,14 +1483,17 @@
|
|
1470
1483
|
<ref name="FormattedString"/>
|
1471
1484
|
</element>
|
1472
1485
|
</define>
|
1473
|
-
<define name="
|
1474
|
-
<element name="
|
1475
|
-
<
|
1476
|
-
<attribute name="type"/>
|
1477
|
-
</optional>
|
1478
|
-
<data type="anyURI"/>
|
1486
|
+
<define name="link">
|
1487
|
+
<element name="link">
|
1488
|
+
<ref name="TypedUri"/>
|
1479
1489
|
</element>
|
1480
1490
|
</define>
|
1491
|
+
<define name="TypedUri">
|
1492
|
+
<optional>
|
1493
|
+
<attribute name="type"/>
|
1494
|
+
</optional>
|
1495
|
+
<data type="anyURI"/>
|
1496
|
+
</define>
|
1481
1497
|
<define name="bdate">
|
1482
1498
|
<element name="date">
|
1483
1499
|
<attribute name="type">
|
@@ -1489,6 +1505,22 @@
|
|
1489
1505
|
<value>obsoleted</value>
|
1490
1506
|
</choice>
|
1491
1507
|
</attribute>
|
1508
|
+
<ref name="bfrom"/>
|
1509
|
+
<optional>
|
1510
|
+
<ref name="bto"/>
|
1511
|
+
</optional>
|
1512
|
+
</element>
|
1513
|
+
</define>
|
1514
|
+
<define name="bfrom">
|
1515
|
+
<element name="from">
|
1516
|
+
<choice>
|
1517
|
+
<data type="gYear"/>
|
1518
|
+
<data type="date"/>
|
1519
|
+
</choice>
|
1520
|
+
</element>
|
1521
|
+
</define>
|
1522
|
+
<define name="bto">
|
1523
|
+
<element name="to">
|
1492
1524
|
<choice>
|
1493
1525
|
<data type="gYear"/>
|
1494
1526
|
<data type="date"/>
|
@@ -48,6 +48,9 @@
|
|
48
48
|
<define name="organization">
|
49
49
|
<element name="organization">
|
50
50
|
<ref name="orgname"/>
|
51
|
+
<optional>
|
52
|
+
<ref name="abbreviation"/>
|
53
|
+
</optional>
|
51
54
|
<optional>
|
52
55
|
<ref name="uri"/>
|
53
56
|
</optional>
|
@@ -125,6 +128,9 @@
|
|
125
128
|
<optional>
|
126
129
|
<ref name="editorialgroup"/>
|
127
130
|
</optional>
|
131
|
+
<optional>
|
132
|
+
<ref name="ics"/>
|
133
|
+
</optional>
|
128
134
|
</define>
|
129
135
|
<define name="BibData">
|
130
136
|
<optional>
|
@@ -176,18 +182,12 @@
|
|
176
182
|
<ref name="docrelation"/>
|
177
183
|
</zeroOrMore>
|
178
184
|
<ref name="editorialgroup"/>
|
185
|
+
<optional>
|
186
|
+
<ref name="ics"/>
|
187
|
+
</optional>
|
179
188
|
</define>
|
180
|
-
<define name="
|
181
|
-
<element name="
|
182
|
-
<attribute name="type">
|
183
|
-
<choice>
|
184
|
-
<value>published</value>
|
185
|
-
<value>accessed</value>
|
186
|
-
<value>created</value>
|
187
|
-
<value>activated</value>
|
188
|
-
<value>obsoleted</value>
|
189
|
-
</choice>
|
190
|
-
</attribute>
|
189
|
+
<define name="bfrom">
|
190
|
+
<element name="from">
|
191
191
|
<choice>
|
192
192
|
<data type="gYear"/>
|
193
193
|
<data type="date"/>
|
@@ -842,4 +842,9 @@
|
|
842
842
|
<ref name="erefType"/>
|
843
843
|
</element>
|
844
844
|
</define>
|
845
|
+
<define name="ics">
|
846
|
+
<element name="ics">
|
847
|
+
<text/>
|
848
|
+
</element>
|
849
|
+
</define>
|
845
850
|
</grammar>
|
@@ -4,7 +4,6 @@ module Asciidoctor
|
|
4
4
|
module Lists
|
5
5
|
def li(xml_ul, item)
|
6
6
|
xml_ul.li do |xml_li|
|
7
|
-
style(item, item.text)
|
8
7
|
if item.blocks?
|
9
8
|
xml_li.p(**id_attr(item)) { |t| t << item.text }
|
10
9
|
xml_li << item.content
|
@@ -15,8 +14,7 @@ module Asciidoctor
|
|
15
14
|
end
|
16
15
|
|
17
16
|
def ulist(node)
|
18
|
-
return reference(node
|
19
|
-
return reference(node, false) if in_biblio
|
17
|
+
return reference(node) if in_norm_ref? || in_biblio?
|
20
18
|
noko do |xml|
|
21
19
|
xml.ul **id_attr(node) do |xml_ul|
|
22
20
|
node.items.each do |item|
|
@@ -27,10 +25,12 @@ module Asciidoctor
|
|
27
25
|
end
|
28
26
|
|
29
27
|
def iso_publisher(t, code)
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
28
|
+
code.sub(/ .*$/, "").split(/\//).each do |abbrev|
|
29
|
+
t.contributor do |c|
|
30
|
+
c.role **{ type: "publisher" }
|
31
|
+
c.organization do |org|
|
32
|
+
organization(org, abbrev)
|
33
|
+
end
|
34
34
|
end
|
35
35
|
end
|
36
36
|
end
|
@@ -43,11 +43,20 @@ module Asciidoctor
|
|
43
43
|
{ id: m[:anchor], type: "standard" }
|
44
44
|
end
|
45
45
|
|
46
|
+
def set_date_range(date, text)
|
47
|
+
matched = /^(?<from>[0-9]+)(-+(?<to>[0-9]+))?$/.match text
|
48
|
+
return unless matched[:from]
|
49
|
+
date.from matched[:from]
|
50
|
+
date.to matched[:to] if matched[:to]
|
51
|
+
end
|
52
|
+
|
46
53
|
def isorefmatches(xml, m)
|
47
54
|
xml.bibitem **attr_code(ref_attributes(m)) do |t|
|
48
55
|
t.title(**plaintxt) { |i| i << ref_normalise(m[:text]) }
|
49
56
|
t.docidentifier m[:code]
|
50
|
-
|
57
|
+
m[:year] and t.date **{ type: "published" } do |d|
|
58
|
+
set_date_range(d, m[:year])
|
59
|
+
end
|
51
60
|
iso_publisher(t, m[:code])
|
52
61
|
end
|
53
62
|
end
|
@@ -56,7 +65,9 @@ module Asciidoctor
|
|
56
65
|
xml.bibitem **attr_code(ref_attributes(m)) do |t|
|
57
66
|
t.title(**plaintxt) { |i| i << ref_normalise(m[:text]) }
|
58
67
|
t.docidentifier m[:code]
|
59
|
-
t.date
|
68
|
+
t.date **{ type: "published" } do |d|
|
69
|
+
d.from "--"
|
70
|
+
end
|
60
71
|
iso_publisher(t, m[:code])
|
61
72
|
t.note(**plaintxt) { |p| p << "ISO DATE: #{m[:fn]}" }
|
62
73
|
end
|
@@ -66,7 +77,9 @@ module Asciidoctor
|
|
66
77
|
xml.bibitem **attr_code(ref_attributes(m)) do |t|
|
67
78
|
t.title(**plaintxt) { |i| i << ref_normalise(m[:text]) }
|
68
79
|
t.docidentifier "#{m[:code]}:All Parts"
|
69
|
-
|
80
|
+
m[:year] and t.date **{ type: "published" } do |d|
|
81
|
+
set_date_range(d, m[:year])
|
82
|
+
end
|
70
83
|
iso_publisher(t, m[:code])
|
71
84
|
end
|
72
85
|
end
|
@@ -99,7 +112,7 @@ module Asciidoctor
|
|
99
112
|
end
|
100
113
|
|
101
114
|
ISO_REF = %r{^<ref\sid="(?<anchor>[^"]+)">
|
102
|
-
\[(?<code>(ISO|IEC)[^0-9]*\s[0-9-]+)(:(?<year>[0-9]+))?\]</ref>,?\s
|
115
|
+
\[(?<code>(ISO|IEC)[^0-9]*\s[0-9-]+)(:(?<year>[0-9][0-9-]+))?\]</ref>,?\s
|
103
116
|
(?<text>.*)$}xm
|
104
117
|
|
105
118
|
ISO_REF_NO_YEAR = %r{^<ref\sid="(?<anchor>[^"]+)">
|
@@ -107,7 +120,7 @@ module Asciidoctor
|
|
107
120
|
<fn[^>]*>\s*<p>(?<fn>[^\]]+)</p>\s*</fn>,?\s?(?<text>.*)$}xm
|
108
121
|
|
109
122
|
ISO_REF_ALL_PARTS = %r{^<ref\sid="(?<anchor>[^"]+)">
|
110
|
-
\[(?<code>(ISO|IEC)[^0-9]*\s[0-9]+)(:(?<year>[0-9]+))?\s
|
123
|
+
\[(?<code>(ISO|IEC)[^0-9]*\s[0-9]+)(:(?<year>[0-9][0-9-]+))?\s
|
111
124
|
\(all\sparts\)\]</ref>,?\s
|
112
125
|
(?<text>.*)$}xm
|
113
126
|
|
@@ -115,8 +128,6 @@ module Asciidoctor
|
|
115
128
|
\[(?<code>[^\]]+)\]</ref>,?\s
|
116
129
|
(?<text>.*)$}xm
|
117
130
|
|
118
|
-
NORM_ISO_WARN = "non-ISO/IEC reference not expected as normative".freeze
|
119
|
-
|
120
131
|
def reference1_matches(item)
|
121
132
|
matched = ISO_REF.match item
|
122
133
|
matched2 = ISO_REF_NO_YEAR.match item
|
@@ -124,7 +135,7 @@ module Asciidoctor
|
|
124
135
|
[matched, matched2, matched3]
|
125
136
|
end
|
126
137
|
|
127
|
-
def reference1(node, item, xml
|
138
|
+
def reference1(node, item, xml)
|
128
139
|
matched, matched2, matched3 = reference1_matches(item)
|
129
140
|
if matched3.nil? && matched2.nil? && matched.nil?
|
130
141
|
refitem(xml, item, node)
|
@@ -132,15 +143,12 @@ module Asciidoctor
|
|
132
143
|
elsif !matched2.nil? then isorefmatches2(xml, matched2)
|
133
144
|
elsif !matched3.nil? then isorefmatches3(xml, matched3)
|
134
145
|
end
|
135
|
-
if matched3.nil? && matched2.nil? && matched.nil? && normative
|
136
|
-
Utils::warning(node, NORM_ISO_WARN, item)
|
137
|
-
end
|
138
146
|
end
|
139
147
|
|
140
|
-
def reference(node
|
148
|
+
def reference(node)
|
141
149
|
noko do |xml|
|
142
150
|
node.items.each do |item|
|
143
|
-
reference1(node, item.text, xml
|
151
|
+
reference1(node, item.text, xml)
|
144
152
|
end
|
145
153
|
end.join("\n")
|
146
154
|
end
|
@@ -164,7 +172,6 @@ module Asciidoctor
|
|
164
172
|
|
165
173
|
def dt(terms, xml_dl)
|
166
174
|
terms.each_with_index do |dt, idx|
|
167
|
-
style(dt, dt.text)
|
168
175
|
xml_dl.dt { |xml_dt| xml_dt << dt.text }
|
169
176
|
if idx < terms.size - 1
|
170
177
|
xml_dl.dd
|
@@ -178,7 +185,6 @@ module Asciidoctor
|
|
178
185
|
return
|
179
186
|
end
|
180
187
|
xml_dl.dd do |xml_dd|
|
181
|
-
style(dd, dd.text) if dd.text?
|
182
188
|
xml_dd.p { |t| t << dd.text } if dd.text?
|
183
189
|
xml_dd << dd.content if dd.blocks?
|
184
190
|
end
|
@@ -199,7 +205,6 @@ module Asciidoctor
|
|
199
205
|
noko do |xml|
|
200
206
|
node.items.each_with_index do |item, i|
|
201
207
|
xml.annotation **attr_code(id: i + 1) do |xml_li|
|
202
|
-
style(item, item.text)
|
203
208
|
xml_li.p { |p| p << item.text }
|
204
209
|
end
|
205
210
|
end
|
@@ -8,15 +8,15 @@ module Asciidoctor
|
|
8
8
|
@term_def = false
|
9
9
|
@norm_ref = false
|
10
10
|
|
11
|
-
def in_biblio
|
11
|
+
def in_biblio?
|
12
12
|
@biblio
|
13
13
|
end
|
14
14
|
|
15
|
-
def in_terms
|
15
|
+
def in_terms?
|
16
16
|
@term_def
|
17
17
|
end
|
18
18
|
|
19
|
-
def in_norm_ref
|
19
|
+
def in_norm_ref?
|
20
20
|
@norm_ref
|
21
21
|
end
|
22
22
|
|
@@ -66,14 +66,11 @@ module Asciidoctor
|
|
66
66
|
end
|
67
67
|
end
|
68
68
|
|
69
|
-
SCOPE_WARN = "Scope contains subsections: should be succint".freeze
|
70
|
-
|
71
69
|
# Not testing max depth of sections: Asciidoctor already limits
|
72
70
|
# it to 5 levels of nesting
|
73
71
|
def clause_parse(attrs, xml, node)
|
74
72
|
attrs["inline-header".to_sym] = node.option? "inline-header"
|
75
73
|
set_obligation(attrs, node)
|
76
|
-
style_warning(node, SCOPE_WARN, nil) if @scope
|
77
74
|
sect = node.level == 1 ? "clause" : "subsection"
|
78
75
|
xml.send sect, **attr_code(attrs) do |xml_section|
|
79
76
|
xml_section.title { |n| n << node.title } unless node.title.nil?
|
@@ -106,8 +103,8 @@ module Asciidoctor
|
|
106
103
|
end
|
107
104
|
end
|
108
105
|
|
106
|
+
# subclause contains subclauses
|
109
107
|
def term_def_subclause_parse(attrs, xml, node)
|
110
|
-
# subclause contains subclauses
|
111
108
|
sub = node.find_by(context: :section) { |s| s.level == node.level + 1 }
|
112
109
|
sub.empty? || (return term_def_parse(attrs, xml, node, false))
|
113
110
|
node.title.casecmp("symbols and abbreviated terms").zero? &&
|
@@ -151,9 +148,6 @@ module Asciidoctor
|
|
151
148
|
xml_section.title = "Introduction"
|
152
149
|
content = node.content
|
153
150
|
xml_section << content
|
154
|
-
introduction_style(node,
|
155
|
-
Utils::flatten_rawtext(content).
|
156
|
-
join("\n"))
|
157
151
|
end
|
158
152
|
end
|
159
153
|
|
@@ -165,15 +159,11 @@ module Asciidoctor
|
|
165
159
|
end
|
166
160
|
|
167
161
|
def scope_parse(attrs, xml, node)
|
168
|
-
@scope = true
|
169
162
|
xml.clause **attr_code(attrs) do |xml_section|
|
170
163
|
xml_section.title { |t| t << "Scope" }
|
171
164
|
content = node.content
|
172
165
|
xml_section << content
|
173
|
-
c = Utils::flatten_rawtext(content).join("\n")
|
174
|
-
scope_style(node, c)
|
175
166
|
end
|
176
|
-
@scope = false
|
177
167
|
end
|
178
168
|
end
|
179
169
|
end
|