@helloao/tools 0.0.4 → 0.0.5
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.
- package/LICENSE +21 -21
- package/README.md +97 -97
- package/generation/api.d.ts +32 -3
- package/generation/api.js +42 -16
- package/generation/api.spec.js +193 -0
- package/package.json +1 -1
- package/parser/iterators.spec.js +45 -45
- package/parser/usfm-parser.spec.js +171 -171
- package/parser/usx-parser.spec.js +487 -487
- package/typings/types.d.ts +13 -13
|
@@ -18,31 +18,31 @@ describe('USXParser', () => {
|
|
|
18
18
|
});
|
|
19
19
|
describe('parse()', () => {
|
|
20
20
|
it('should parse a simple USX file', () => {
|
|
21
|
-
const usx = `
|
|
22
|
-
<usx version="3.0">
|
|
23
|
-
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
24
|
-
<para style="h">Genesis</para>
|
|
25
|
-
<para style="toc2">Genesis</para>
|
|
26
|
-
<para style="toc1">Genesis</para>
|
|
27
|
-
<para style="mt1">Genesis</para>
|
|
28
|
-
<chapter number="1" style="c" sid="GEN 1"/>
|
|
29
|
-
<para style="s1">The Creation</para>
|
|
30
|
-
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
31
|
-
<para style="m">
|
|
32
|
-
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
33
|
-
<char style="w" strong="H8064">In</char>
|
|
34
|
-
<char style="w" strong="H1254">the</char>
|
|
35
|
-
<char style="w" strong="H7225">beginning</char>
|
|
36
|
-
<char style="w" strong="H8064">God</char>
|
|
37
|
-
<char style="w" strong="H1254">created</char>
|
|
38
|
-
<char style="w" strong="H1254">the</char>
|
|
39
|
-
<char style="w" strong="H8064">heavens</char>
|
|
40
|
-
<char style="w" strong="H8064">and</char>
|
|
41
|
-
<char style="w" strong="H1254">the</char>
|
|
42
|
-
<char style="w" strong="H8064">earth</char>.
|
|
43
|
-
<verse eid="GEN 1:1"/>
|
|
44
|
-
</para>
|
|
45
|
-
</usx>
|
|
21
|
+
const usx = `
|
|
22
|
+
<usx version="3.0">
|
|
23
|
+
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
24
|
+
<para style="h">Genesis</para>
|
|
25
|
+
<para style="toc2">Genesis</para>
|
|
26
|
+
<para style="toc1">Genesis</para>
|
|
27
|
+
<para style="mt1">Genesis</para>
|
|
28
|
+
<chapter number="1" style="c" sid="GEN 1"/>
|
|
29
|
+
<para style="s1">The Creation</para>
|
|
30
|
+
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
31
|
+
<para style="m">
|
|
32
|
+
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
33
|
+
<char style="w" strong="H8064">In</char>
|
|
34
|
+
<char style="w" strong="H1254">the</char>
|
|
35
|
+
<char style="w" strong="H7225">beginning</char>
|
|
36
|
+
<char style="w" strong="H8064">God</char>
|
|
37
|
+
<char style="w" strong="H1254">created</char>
|
|
38
|
+
<char style="w" strong="H1254">the</char>
|
|
39
|
+
<char style="w" strong="H8064">heavens</char>
|
|
40
|
+
<char style="w" strong="H8064">and</char>
|
|
41
|
+
<char style="w" strong="H1254">the</char>
|
|
42
|
+
<char style="w" strong="H8064">earth</char>.
|
|
43
|
+
<verse eid="GEN 1:1"/>
|
|
44
|
+
</para>
|
|
45
|
+
</usx>
|
|
46
46
|
`;
|
|
47
47
|
const tree = parser.parse(usx);
|
|
48
48
|
expect(tree).toEqual({
|
|
@@ -73,65 +73,65 @@ describe('USXParser', () => {
|
|
|
73
73
|
});
|
|
74
74
|
});
|
|
75
75
|
it('should parse line breaks', () => {
|
|
76
|
-
const usx = `
|
|
77
|
-
<usx version="3.0">
|
|
78
|
-
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
79
|
-
<para style="h">Genesis</para>
|
|
80
|
-
<para style="toc2">Genesis</para>
|
|
81
|
-
<para style="toc1">Genesis</para>
|
|
82
|
-
<para style="mt1">Genesis</para>
|
|
83
|
-
<chapter number="1" style="c" sid="GEN 1"/>
|
|
84
|
-
<para style="s1">The Creation</para>
|
|
85
|
-
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
86
|
-
<para style="m">
|
|
87
|
-
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
88
|
-
<char style="w" strong="H8064">In</char>
|
|
89
|
-
<char style="w" strong="H1254">the</char>
|
|
90
|
-
<char style="w" strong="H7225">beginning</char>
|
|
91
|
-
<char style="w" strong="H8064">God</char>
|
|
92
|
-
<char style="w" strong="H1254">created</char>
|
|
93
|
-
<char style="w" strong="H1254">the</char>
|
|
94
|
-
<char style="w" strong="H8064">heavens</char>
|
|
95
|
-
<char style="w" strong="H8064">and</char>
|
|
96
|
-
<char style="w" strong="H1254">the</char>
|
|
97
|
-
<char style="w" strong="H8064">earth</char>.
|
|
98
|
-
<verse eid="GEN 1:1"/>
|
|
99
|
-
</para>
|
|
100
|
-
<para style="b"/>
|
|
101
|
-
<para style="m">
|
|
102
|
-
<verse number="2" style="v" sid="GEN 1:2"/>
|
|
103
|
-
<char style="w" strong="H1961">Now</char>
|
|
104
|
-
<char style="w" strong="H6440">the</char>
|
|
105
|
-
<char style="w" strong="H0776">earth</char>
|
|
106
|
-
<char style="w" strong="H1961">was</char>
|
|
107
|
-
<char style="w" strong="H8414">formless</char>
|
|
108
|
-
<char style="w" strong="H6440">and</char>
|
|
109
|
-
<char style="w" strong="H2638">void</char>,
|
|
110
|
-
<char style="w" strong="H6440">and</char>
|
|
111
|
-
<char style="w" strong="H2822">darkness</char>
|
|
112
|
-
<char style="w" strong="H1961">was</char>
|
|
113
|
-
<char style="w" strong="H5921">over</char>
|
|
114
|
-
<char style="w" strong="H6440">the</char>
|
|
115
|
-
<char style="w" strong="H6440">surface</char>
|
|
116
|
-
<char style="w" strong="H6440">of</char>
|
|
117
|
-
<char style="w" strong="H6440">the</char>
|
|
118
|
-
<char style="w" strong="H8415">deep</char>.
|
|
119
|
-
<char style="w" strong="H6440">And</char>
|
|
120
|
-
<char style="w" strong="H6440">the</char>
|
|
121
|
-
<char style="w" strong="H7307">Spirit</char>
|
|
122
|
-
<char style="w" strong="H6440">of</char>
|
|
123
|
-
<char style="w" strong="H0430">God</char>
|
|
124
|
-
<char style="w" strong="H1961">was</char>
|
|
125
|
-
<char style="w" strong="H7363">hovering</char>
|
|
126
|
-
<char style="w" strong="H5921">over</char>
|
|
127
|
-
<char style="w" strong="H6440">the</char>
|
|
128
|
-
<char style="w" strong="H6440">surface</char>
|
|
129
|
-
<char style="w" strong="H6440">of</char>
|
|
130
|
-
<char style="w" strong="H6440">the</char>
|
|
131
|
-
<char style="w" strong="H4325">waters</char>.
|
|
132
|
-
<verse eid="GEN 1:2"/>
|
|
133
|
-
</para>
|
|
134
|
-
</usx>
|
|
76
|
+
const usx = `
|
|
77
|
+
<usx version="3.0">
|
|
78
|
+
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
79
|
+
<para style="h">Genesis</para>
|
|
80
|
+
<para style="toc2">Genesis</para>
|
|
81
|
+
<para style="toc1">Genesis</para>
|
|
82
|
+
<para style="mt1">Genesis</para>
|
|
83
|
+
<chapter number="1" style="c" sid="GEN 1"/>
|
|
84
|
+
<para style="s1">The Creation</para>
|
|
85
|
+
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
86
|
+
<para style="m">
|
|
87
|
+
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
88
|
+
<char style="w" strong="H8064">In</char>
|
|
89
|
+
<char style="w" strong="H1254">the</char>
|
|
90
|
+
<char style="w" strong="H7225">beginning</char>
|
|
91
|
+
<char style="w" strong="H8064">God</char>
|
|
92
|
+
<char style="w" strong="H1254">created</char>
|
|
93
|
+
<char style="w" strong="H1254">the</char>
|
|
94
|
+
<char style="w" strong="H8064">heavens</char>
|
|
95
|
+
<char style="w" strong="H8064">and</char>
|
|
96
|
+
<char style="w" strong="H1254">the</char>
|
|
97
|
+
<char style="w" strong="H8064">earth</char>.
|
|
98
|
+
<verse eid="GEN 1:1"/>
|
|
99
|
+
</para>
|
|
100
|
+
<para style="b"/>
|
|
101
|
+
<para style="m">
|
|
102
|
+
<verse number="2" style="v" sid="GEN 1:2"/>
|
|
103
|
+
<char style="w" strong="H1961">Now</char>
|
|
104
|
+
<char style="w" strong="H6440">the</char>
|
|
105
|
+
<char style="w" strong="H0776">earth</char>
|
|
106
|
+
<char style="w" strong="H1961">was</char>
|
|
107
|
+
<char style="w" strong="H8414">formless</char>
|
|
108
|
+
<char style="w" strong="H6440">and</char>
|
|
109
|
+
<char style="w" strong="H2638">void</char>,
|
|
110
|
+
<char style="w" strong="H6440">and</char>
|
|
111
|
+
<char style="w" strong="H2822">darkness</char>
|
|
112
|
+
<char style="w" strong="H1961">was</char>
|
|
113
|
+
<char style="w" strong="H5921">over</char>
|
|
114
|
+
<char style="w" strong="H6440">the</char>
|
|
115
|
+
<char style="w" strong="H6440">surface</char>
|
|
116
|
+
<char style="w" strong="H6440">of</char>
|
|
117
|
+
<char style="w" strong="H6440">the</char>
|
|
118
|
+
<char style="w" strong="H8415">deep</char>.
|
|
119
|
+
<char style="w" strong="H6440">And</char>
|
|
120
|
+
<char style="w" strong="H6440">the</char>
|
|
121
|
+
<char style="w" strong="H7307">Spirit</char>
|
|
122
|
+
<char style="w" strong="H6440">of</char>
|
|
123
|
+
<char style="w" strong="H0430">God</char>
|
|
124
|
+
<char style="w" strong="H1961">was</char>
|
|
125
|
+
<char style="w" strong="H7363">hovering</char>
|
|
126
|
+
<char style="w" strong="H5921">over</char>
|
|
127
|
+
<char style="w" strong="H6440">the</char>
|
|
128
|
+
<char style="w" strong="H6440">surface</char>
|
|
129
|
+
<char style="w" strong="H6440">of</char>
|
|
130
|
+
<char style="w" strong="H6440">the</char>
|
|
131
|
+
<char style="w" strong="H4325">waters</char>.
|
|
132
|
+
<verse eid="GEN 1:2"/>
|
|
133
|
+
</para>
|
|
134
|
+
</usx>
|
|
135
135
|
`;
|
|
136
136
|
const tree = parser.parse(usx);
|
|
137
137
|
expect(tree).toEqual({
|
|
@@ -172,33 +172,33 @@ describe('USXParser', () => {
|
|
|
172
172
|
});
|
|
173
173
|
});
|
|
174
174
|
it('should combine major title headings', () => {
|
|
175
|
-
const usx = `
|
|
176
|
-
<usx version="3.0">
|
|
177
|
-
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
178
|
-
<para style="h">Genesis</para>
|
|
179
|
-
<para style="toc2">Genesis</para>
|
|
180
|
-
<para style="toc1">Genesis</para>
|
|
181
|
-
<para style="mt1">The</para>
|
|
182
|
-
<para style="mt2">Title</para>
|
|
183
|
-
<para style="mt3">of the Book</para>
|
|
184
|
-
<chapter number="1" style="c" sid="GEN 1"/>
|
|
185
|
-
<para style="s1">The Creation</para>
|
|
186
|
-
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
187
|
-
<para style="m">
|
|
188
|
-
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
189
|
-
<char style="w" strong="H8064">In</char>
|
|
190
|
-
<char style="w" strong="H1254">the</char>
|
|
191
|
-
<char style="w" strong="H7225">beginning</char>
|
|
192
|
-
<char style="w" strong="H8064">God</char>
|
|
193
|
-
<char style="w" strong="H1254">created</char>
|
|
194
|
-
<char style="w" strong="H1254">the</char>
|
|
195
|
-
<char style="w" strong="H8064">heavens</char>
|
|
196
|
-
<char style="w" strong="H8064">and</char>
|
|
197
|
-
<char style="w" strong="H1254">the</char>
|
|
198
|
-
<char style="w" strong="H8064">earth</char>.
|
|
199
|
-
<verse eid="GEN 1:1"/>
|
|
200
|
-
</para>
|
|
201
|
-
</usx>
|
|
175
|
+
const usx = `
|
|
176
|
+
<usx version="3.0">
|
|
177
|
+
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
178
|
+
<para style="h">Genesis</para>
|
|
179
|
+
<para style="toc2">Genesis</para>
|
|
180
|
+
<para style="toc1">Genesis</para>
|
|
181
|
+
<para style="mt1">The</para>
|
|
182
|
+
<para style="mt2">Title</para>
|
|
183
|
+
<para style="mt3">of the Book</para>
|
|
184
|
+
<chapter number="1" style="c" sid="GEN 1"/>
|
|
185
|
+
<para style="s1">The Creation</para>
|
|
186
|
+
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
187
|
+
<para style="m">
|
|
188
|
+
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
189
|
+
<char style="w" strong="H8064">In</char>
|
|
190
|
+
<char style="w" strong="H1254">the</char>
|
|
191
|
+
<char style="w" strong="H7225">beginning</char>
|
|
192
|
+
<char style="w" strong="H8064">God</char>
|
|
193
|
+
<char style="w" strong="H1254">created</char>
|
|
194
|
+
<char style="w" strong="H1254">the</char>
|
|
195
|
+
<char style="w" strong="H8064">heavens</char>
|
|
196
|
+
<char style="w" strong="H8064">and</char>
|
|
197
|
+
<char style="w" strong="H1254">the</char>
|
|
198
|
+
<char style="w" strong="H8064">earth</char>.
|
|
199
|
+
<verse eid="GEN 1:1"/>
|
|
200
|
+
</para>
|
|
201
|
+
</usx>
|
|
202
202
|
`;
|
|
203
203
|
const tree = parser.parse(usx);
|
|
204
204
|
expect(tree).toEqual({
|
|
@@ -229,33 +229,33 @@ describe('USXParser', () => {
|
|
|
229
229
|
});
|
|
230
230
|
});
|
|
231
231
|
it('should combine major title in the order they appear', () => {
|
|
232
|
-
const usx = `
|
|
233
|
-
<usx version="3.0">
|
|
234
|
-
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
235
|
-
<para style="h">Genesis</para>
|
|
236
|
-
<para style="toc2">Genesis</para>
|
|
237
|
-
<para style="toc1">Genesis</para>
|
|
238
|
-
<para style="mt3">The</para>
|
|
239
|
-
<para style="mt2">Title</para>
|
|
240
|
-
<para style="mt1">of the Book</para>
|
|
241
|
-
<chapter number="1" style="c" sid="GEN 1"/>
|
|
242
|
-
<para style="s1">The Creation</para>
|
|
243
|
-
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
244
|
-
<para style="m">
|
|
245
|
-
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
246
|
-
<char style="w" strong="H8064">In</char>
|
|
247
|
-
<char style="w" strong="H1254">the</char>
|
|
248
|
-
<char style="w" strong="H7225">beginning</char>
|
|
249
|
-
<char style="w" strong="H8064">God</char>
|
|
250
|
-
<char style="w" strong="H1254">created</char>
|
|
251
|
-
<char style="w" strong="H1254">the</char>
|
|
252
|
-
<char style="w" strong="H8064">heavens</char>
|
|
253
|
-
<char style="w" strong="H8064">and</char>
|
|
254
|
-
<char style="w" strong="H1254">the</char>
|
|
255
|
-
<char style="w" strong="H8064">earth</char>.
|
|
256
|
-
<verse eid="GEN 1:1"/>
|
|
257
|
-
</para>
|
|
258
|
-
</usx>
|
|
232
|
+
const usx = `
|
|
233
|
+
<usx version="3.0">
|
|
234
|
+
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
235
|
+
<para style="h">Genesis</para>
|
|
236
|
+
<para style="toc2">Genesis</para>
|
|
237
|
+
<para style="toc1">Genesis</para>
|
|
238
|
+
<para style="mt3">The</para>
|
|
239
|
+
<para style="mt2">Title</para>
|
|
240
|
+
<para style="mt1">of the Book</para>
|
|
241
|
+
<chapter number="1" style="c" sid="GEN 1"/>
|
|
242
|
+
<para style="s1">The Creation</para>
|
|
243
|
+
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
244
|
+
<para style="m">
|
|
245
|
+
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
246
|
+
<char style="w" strong="H8064">In</char>
|
|
247
|
+
<char style="w" strong="H1254">the</char>
|
|
248
|
+
<char style="w" strong="H7225">beginning</char>
|
|
249
|
+
<char style="w" strong="H8064">God</char>
|
|
250
|
+
<char style="w" strong="H1254">created</char>
|
|
251
|
+
<char style="w" strong="H1254">the</char>
|
|
252
|
+
<char style="w" strong="H8064">heavens</char>
|
|
253
|
+
<char style="w" strong="H8064">and</char>
|
|
254
|
+
<char style="w" strong="H1254">the</char>
|
|
255
|
+
<char style="w" strong="H8064">earth</char>.
|
|
256
|
+
<verse eid="GEN 1:1"/>
|
|
257
|
+
</para>
|
|
258
|
+
</usx>
|
|
259
259
|
`;
|
|
260
260
|
const tree = parser.parse(usx);
|
|
261
261
|
expect(tree).toEqual({
|
|
@@ -286,33 +286,33 @@ describe('USXParser', () => {
|
|
|
286
286
|
});
|
|
287
287
|
});
|
|
288
288
|
it('should support section headings outside of chapters', () => {
|
|
289
|
-
const usx = `
|
|
290
|
-
<usx version="3.0">
|
|
291
|
-
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
292
|
-
<para style="h">Genesis</para>
|
|
293
|
-
<para style="toc2">Genesis</para>
|
|
294
|
-
<para style="toc1">Genesis</para>
|
|
295
|
-
<para style="mt1">Genesis</para>
|
|
296
|
-
<chapter number="1" style="c" sid="GEN 1"/>
|
|
297
|
-
<para style="s1">The Creation</para>
|
|
298
|
-
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
299
|
-
<para style="m">
|
|
300
|
-
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
301
|
-
<char style="w" strong="H8064">In</char>
|
|
302
|
-
<char style="w" strong="H1254">the</char>
|
|
303
|
-
<char style="w" strong="H7225">beginning</char>
|
|
304
|
-
<char style="w" strong="H8064">God</char>
|
|
305
|
-
<char style="w" strong="H1254">created</char>
|
|
306
|
-
<char style="w" strong="H1254">the</char>
|
|
307
|
-
<char style="w" strong="H8064">heavens</char>
|
|
308
|
-
<char style="w" strong="H8064">and</char>
|
|
309
|
-
<char style="w" strong="H1254">the</char>
|
|
310
|
-
<char style="w" strong="H8064">earth</char>.
|
|
311
|
-
<verse eid="GEN 1:1"/>
|
|
312
|
-
</para>
|
|
313
|
-
<chapter eid="GEN 1"/>
|
|
314
|
-
<para style="s2">The Second Section</para>
|
|
315
|
-
</usx>
|
|
289
|
+
const usx = `
|
|
290
|
+
<usx version="3.0">
|
|
291
|
+
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
292
|
+
<para style="h">Genesis</para>
|
|
293
|
+
<para style="toc2">Genesis</para>
|
|
294
|
+
<para style="toc1">Genesis</para>
|
|
295
|
+
<para style="mt1">Genesis</para>
|
|
296
|
+
<chapter number="1" style="c" sid="GEN 1"/>
|
|
297
|
+
<para style="s1">The Creation</para>
|
|
298
|
+
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
299
|
+
<para style="m">
|
|
300
|
+
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
301
|
+
<char style="w" strong="H8064">In</char>
|
|
302
|
+
<char style="w" strong="H1254">the</char>
|
|
303
|
+
<char style="w" strong="H7225">beginning</char>
|
|
304
|
+
<char style="w" strong="H8064">God</char>
|
|
305
|
+
<char style="w" strong="H1254">created</char>
|
|
306
|
+
<char style="w" strong="H1254">the</char>
|
|
307
|
+
<char style="w" strong="H8064">heavens</char>
|
|
308
|
+
<char style="w" strong="H8064">and</char>
|
|
309
|
+
<char style="w" strong="H1254">the</char>
|
|
310
|
+
<char style="w" strong="H8064">earth</char>.
|
|
311
|
+
<verse eid="GEN 1:1"/>
|
|
312
|
+
</para>
|
|
313
|
+
<chapter eid="GEN 1"/>
|
|
314
|
+
<para style="s2">The Second Section</para>
|
|
315
|
+
</usx>
|
|
316
316
|
`;
|
|
317
317
|
const tree = parser.parse(usx);
|
|
318
318
|
expect(tree).toEqual({
|
|
@@ -347,53 +347,53 @@ describe('USXParser', () => {
|
|
|
347
347
|
});
|
|
348
348
|
});
|
|
349
349
|
it('should support multiple chapters', () => {
|
|
350
|
-
const usx = `
|
|
351
|
-
<usx version="3.0">
|
|
352
|
-
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
353
|
-
<para style="h">Genesis</para>
|
|
354
|
-
<para style="toc2">Genesis</para>
|
|
355
|
-
<para style="toc1">Genesis</para>
|
|
356
|
-
<para style="mt1">Genesis</para>
|
|
357
|
-
<chapter number="1" style="c" sid="GEN 1"/>
|
|
358
|
-
<para style="s1">The Creation</para>
|
|
359
|
-
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
360
|
-
<para style="m">
|
|
361
|
-
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
362
|
-
<char style="w" strong="H8064">In</char>
|
|
363
|
-
<char style="w" strong="H1254">the</char>
|
|
364
|
-
<char style="w" strong="H7225">beginning</char>
|
|
365
|
-
<char style="w" strong="H8064">God</char>
|
|
366
|
-
<char style="w" strong="H1254">created</char>
|
|
367
|
-
<char style="w" strong="H1254">the</char>
|
|
368
|
-
<char style="w" strong="H8064">heavens</char>
|
|
369
|
-
<char style="w" strong="H8064">and</char>
|
|
370
|
-
<char style="w" strong="H1254">the</char>
|
|
371
|
-
<char style="w" strong="H8064">earth</char>.
|
|
372
|
-
<verse eid="GEN 1:1"/>
|
|
373
|
-
</para>
|
|
374
|
-
<chapter eid="GEN 1"/>
|
|
375
|
-
<para style="s2">The Second Section</para>
|
|
376
|
-
<chapter number="2" sid="GEN 2"/>
|
|
377
|
-
<para style="s1">The Seventh Day</para>
|
|
378
|
-
<para style="r">(Exodus 16:22–30; Hebrews 4:1–11)</para>
|
|
379
|
-
<para style="m">
|
|
380
|
-
<verse number="1" style="v" sid="GEN 2:1"/>
|
|
381
|
-
<char style="w" strong="H3541">Thus</char>
|
|
382
|
-
<char style="w" strong="H3605">the</char>
|
|
383
|
-
<char style="w" strong="H8064">heavens</char>
|
|
384
|
-
<char style="w" strong="H8064">and</char>
|
|
385
|
-
<char style="w" strong="H3605">the</char>
|
|
386
|
-
<char style="w" strong="H8064">earth</char>
|
|
387
|
-
<char style="w" strong="H8064">were</char>
|
|
388
|
-
<char style="w" strong="H3615">completed</char>
|
|
389
|
-
<char style="w" strong="H6635">in</char>
|
|
390
|
-
<char style="w" strong="H3605">all</char>
|
|
391
|
-
<char style="w" strong="H3605">their</char>
|
|
392
|
-
<char style="w" strong="H6635">vast</char>
|
|
393
|
-
<char style="w" strong="H6635">array</char>.
|
|
394
|
-
<verse eid="GEN 2:1"/>
|
|
395
|
-
</para>
|
|
396
|
-
</usx>
|
|
350
|
+
const usx = `
|
|
351
|
+
<usx version="3.0">
|
|
352
|
+
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
353
|
+
<para style="h">Genesis</para>
|
|
354
|
+
<para style="toc2">Genesis</para>
|
|
355
|
+
<para style="toc1">Genesis</para>
|
|
356
|
+
<para style="mt1">Genesis</para>
|
|
357
|
+
<chapter number="1" style="c" sid="GEN 1"/>
|
|
358
|
+
<para style="s1">The Creation</para>
|
|
359
|
+
<para style="r">(John 1:1–5; Hebrews 11:1–3)</para>
|
|
360
|
+
<para style="m">
|
|
361
|
+
<verse number="1" style="v" sid="GEN 1:1"/>
|
|
362
|
+
<char style="w" strong="H8064">In</char>
|
|
363
|
+
<char style="w" strong="H1254">the</char>
|
|
364
|
+
<char style="w" strong="H7225">beginning</char>
|
|
365
|
+
<char style="w" strong="H8064">God</char>
|
|
366
|
+
<char style="w" strong="H1254">created</char>
|
|
367
|
+
<char style="w" strong="H1254">the</char>
|
|
368
|
+
<char style="w" strong="H8064">heavens</char>
|
|
369
|
+
<char style="w" strong="H8064">and</char>
|
|
370
|
+
<char style="w" strong="H1254">the</char>
|
|
371
|
+
<char style="w" strong="H8064">earth</char>.
|
|
372
|
+
<verse eid="GEN 1:1"/>
|
|
373
|
+
</para>
|
|
374
|
+
<chapter eid="GEN 1"/>
|
|
375
|
+
<para style="s2">The Second Section</para>
|
|
376
|
+
<chapter number="2" sid="GEN 2"/>
|
|
377
|
+
<para style="s1">The Seventh Day</para>
|
|
378
|
+
<para style="r">(Exodus 16:22–30; Hebrews 4:1–11)</para>
|
|
379
|
+
<para style="m">
|
|
380
|
+
<verse number="1" style="v" sid="GEN 2:1"/>
|
|
381
|
+
<char style="w" strong="H3541">Thus</char>
|
|
382
|
+
<char style="w" strong="H3605">the</char>
|
|
383
|
+
<char style="w" strong="H8064">heavens</char>
|
|
384
|
+
<char style="w" strong="H8064">and</char>
|
|
385
|
+
<char style="w" strong="H3605">the</char>
|
|
386
|
+
<char style="w" strong="H8064">earth</char>
|
|
387
|
+
<char style="w" strong="H8064">were</char>
|
|
388
|
+
<char style="w" strong="H3615">completed</char>
|
|
389
|
+
<char style="w" strong="H6635">in</char>
|
|
390
|
+
<char style="w" strong="H3605">all</char>
|
|
391
|
+
<char style="w" strong="H3605">their</char>
|
|
392
|
+
<char style="w" strong="H6635">vast</char>
|
|
393
|
+
<char style="w" strong="H6635">array</char>.
|
|
394
|
+
<verse eid="GEN 2:1"/>
|
|
395
|
+
</para>
|
|
396
|
+
</usx>
|
|
397
397
|
`;
|
|
398
398
|
const tree = parser.parse(usx);
|
|
399
399
|
expect(tree).toEqual({
|
|
@@ -446,65 +446,65 @@ describe('USXParser', () => {
|
|
|
446
446
|
});
|
|
447
447
|
});
|
|
448
448
|
it('should support footnotes', () => {
|
|
449
|
-
const usx = `
|
|
450
|
-
<usx version="3.0">
|
|
451
|
-
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
452
|
-
<para style="h">Genesis</para>
|
|
453
|
-
<para style="toc2">Genesis</para>
|
|
454
|
-
<para style="toc1">Genesis</para>
|
|
455
|
-
<para style="mt1">Genesis</para>
|
|
456
|
-
<chapter number="2" style="c" sid="GEN 2"/>
|
|
457
|
-
<para style="s1">The Seventh Day</para>
|
|
458
|
-
<para style="r">(Exodus 16:22–30; Hebrews 4:1–11)</para>
|
|
459
|
-
<para style="m">
|
|
460
|
-
<verse number="1" style="v" sid="GEN 2:1"/>
|
|
461
|
-
<char style="w" strong="H3541">Thus</char>
|
|
462
|
-
<char style="w" strong="H3605">the</char>
|
|
463
|
-
<char style="w" strong="H8064">heavens</char>
|
|
464
|
-
<char style="w" strong="H8064">and</char>
|
|
465
|
-
<char style="w" strong="H3605">the</char>
|
|
466
|
-
<char style="w" strong="H8064">earth</char>
|
|
467
|
-
<char style="w" strong="H8064">were</char>
|
|
468
|
-
<char style="w" strong="H3615">completed</char>
|
|
469
|
-
<char style="w" strong="H6635">in</char>
|
|
470
|
-
<char style="w" strong="H3605">all</char>
|
|
471
|
-
<char style="w" strong="H3605">their</char>
|
|
472
|
-
<char style="w" strong="H6635">vast</char>
|
|
473
|
-
<char style="w" strong="H6635">array</char>.
|
|
474
|
-
<verse eid="GEN 2:1"/>
|
|
475
|
-
<verse number="2" style="v" sid="GEN 2:2"/>
|
|
476
|
-
<char style="w" strong="H3117">And</char>
|
|
477
|
-
<char style="w" strong="H3117">by</char>
|
|
478
|
-
<char style="w" strong="H3605">the</char>
|
|
479
|
-
<char style="w" strong="H7637">seventh</char>
|
|
480
|
-
<char style="w" strong="H3117">day</char>
|
|
481
|
-
<char style="w" strong="H0430">God</char>
|
|
482
|
-
<char style="w" strong="H3117">had</char>
|
|
483
|
-
<char style="w" strong="H3615">finished</char>
|
|
484
|
-
<char style="w" strong="H3605">the</char>
|
|
485
|
-
<char style="w" strong="H4399">work</char>
|
|
486
|
-
<char style="w" strong="H3117">He</char>
|
|
487
|
-
<char style="w" strong="H3117">had</char>
|
|
488
|
-
<char style="w" strong="H3615">been</char>
|
|
489
|
-
<char style="w" strong="H6213">doing</char>;
|
|
490
|
-
<char style="w" strong="H6213">so</char>
|
|
491
|
-
<char style="w" strong="H3117">on</char>
|
|
492
|
-
<char style="w" strong="H3605">that</char>
|
|
493
|
-
<char style="w" strong="H3117">day</char>
|
|
494
|
-
<char style="w" strong="H3117">He</char>
|
|
495
|
-
<char style="w" strong="H7673">rested</char>
|
|
496
|
-
<char style="w" strong="H3117">from</char>
|
|
497
|
-
<char style="w" strong="H3605">all</char>
|
|
498
|
-
<char style="w" strong="H3605">His</char>
|
|
499
|
-
<char style="w" strong="H4399">work</char>.
|
|
500
|
-
<note style="f" caller="+">
|
|
501
|
-
<char style="fr"/>
|
|
502
|
-
<char style="ft">2:2 </char>
|
|
503
|
-
<char style="ft">Cited in Hebrews 4:4</char>
|
|
504
|
-
</note>
|
|
505
|
-
<verse eid="GEN 2:2"/>
|
|
506
|
-
</para>
|
|
507
|
-
</usx>
|
|
449
|
+
const usx = `
|
|
450
|
+
<usx version="3.0">
|
|
451
|
+
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
452
|
+
<para style="h">Genesis</para>
|
|
453
|
+
<para style="toc2">Genesis</para>
|
|
454
|
+
<para style="toc1">Genesis</para>
|
|
455
|
+
<para style="mt1">Genesis</para>
|
|
456
|
+
<chapter number="2" style="c" sid="GEN 2"/>
|
|
457
|
+
<para style="s1">The Seventh Day</para>
|
|
458
|
+
<para style="r">(Exodus 16:22–30; Hebrews 4:1–11)</para>
|
|
459
|
+
<para style="m">
|
|
460
|
+
<verse number="1" style="v" sid="GEN 2:1"/>
|
|
461
|
+
<char style="w" strong="H3541">Thus</char>
|
|
462
|
+
<char style="w" strong="H3605">the</char>
|
|
463
|
+
<char style="w" strong="H8064">heavens</char>
|
|
464
|
+
<char style="w" strong="H8064">and</char>
|
|
465
|
+
<char style="w" strong="H3605">the</char>
|
|
466
|
+
<char style="w" strong="H8064">earth</char>
|
|
467
|
+
<char style="w" strong="H8064">were</char>
|
|
468
|
+
<char style="w" strong="H3615">completed</char>
|
|
469
|
+
<char style="w" strong="H6635">in</char>
|
|
470
|
+
<char style="w" strong="H3605">all</char>
|
|
471
|
+
<char style="w" strong="H3605">their</char>
|
|
472
|
+
<char style="w" strong="H6635">vast</char>
|
|
473
|
+
<char style="w" strong="H6635">array</char>.
|
|
474
|
+
<verse eid="GEN 2:1"/>
|
|
475
|
+
<verse number="2" style="v" sid="GEN 2:2"/>
|
|
476
|
+
<char style="w" strong="H3117">And</char>
|
|
477
|
+
<char style="w" strong="H3117">by</char>
|
|
478
|
+
<char style="w" strong="H3605">the</char>
|
|
479
|
+
<char style="w" strong="H7637">seventh</char>
|
|
480
|
+
<char style="w" strong="H3117">day</char>
|
|
481
|
+
<char style="w" strong="H0430">God</char>
|
|
482
|
+
<char style="w" strong="H3117">had</char>
|
|
483
|
+
<char style="w" strong="H3615">finished</char>
|
|
484
|
+
<char style="w" strong="H3605">the</char>
|
|
485
|
+
<char style="w" strong="H4399">work</char>
|
|
486
|
+
<char style="w" strong="H3117">He</char>
|
|
487
|
+
<char style="w" strong="H3117">had</char>
|
|
488
|
+
<char style="w" strong="H3615">been</char>
|
|
489
|
+
<char style="w" strong="H6213">doing</char>;
|
|
490
|
+
<char style="w" strong="H6213">so</char>
|
|
491
|
+
<char style="w" strong="H3117">on</char>
|
|
492
|
+
<char style="w" strong="H3605">that</char>
|
|
493
|
+
<char style="w" strong="H3117">day</char>
|
|
494
|
+
<char style="w" strong="H3117">He</char>
|
|
495
|
+
<char style="w" strong="H7673">rested</char>
|
|
496
|
+
<char style="w" strong="H3117">from</char>
|
|
497
|
+
<char style="w" strong="H3605">all</char>
|
|
498
|
+
<char style="w" strong="H3605">His</char>
|
|
499
|
+
<char style="w" strong="H4399">work</char>.
|
|
500
|
+
<note style="f" caller="+">
|
|
501
|
+
<char style="fr"/>
|
|
502
|
+
<char style="ft">2:2 </char>
|
|
503
|
+
<char style="ft">Cited in Hebrews 4:4</char>
|
|
504
|
+
</note>
|
|
505
|
+
<verse eid="GEN 2:2"/>
|
|
506
|
+
</para>
|
|
507
|
+
</usx>
|
|
508
508
|
`;
|
|
509
509
|
const tree = parser.parse(usx);
|
|
510
510
|
expect(tree).toEqual({
|
|
@@ -555,66 +555,66 @@ describe('USXParser', () => {
|
|
|
555
555
|
});
|
|
556
556
|
});
|
|
557
557
|
it('should ignore introduction paragraphs', () => {
|
|
558
|
-
const usx = `
|
|
559
|
-
<usx version="3.0">
|
|
560
|
-
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
561
|
-
<para style="h">Genesis</para>
|
|
562
|
-
<para style="toc2">Genesis</para>
|
|
563
|
-
<para style="toc1">Genesis</para>
|
|
564
|
-
<para style="mt1">Genesis</para>
|
|
565
|
-
<chapter number="2" style="c" sid="GEN 2"/>
|
|
566
|
-
<para style="s1">The Seventh Day</para>
|
|
567
|
-
<para style="r">(Exodus 16:22–30; Hebrews 4:1–11)</para>
|
|
568
|
-
<para style="ip">This is an introduction paragraph.</para>
|
|
569
|
-
<para style="m">
|
|
570
|
-
<verse number="1" style="v" sid="GEN 2:1"/>
|
|
571
|
-
<char style="w" strong="H3541">Thus</char>
|
|
572
|
-
<char style="w" strong="H3605">the</char>
|
|
573
|
-
<char style="w" strong="H8064">heavens</char>
|
|
574
|
-
<char style="w" strong="H8064">and</char>
|
|
575
|
-
<char style="w" strong="H3605">the</char>
|
|
576
|
-
<char style="w" strong="H8064">earth</char>
|
|
577
|
-
<char style="w" strong="H8064">were</char>
|
|
578
|
-
<char style="w" strong="H3615">completed</char>
|
|
579
|
-
<char style="w" strong="H6635">in</char>
|
|
580
|
-
<char style="w" strong="H3605">all</char>
|
|
581
|
-
<char style="w" strong="H3605">their</char>
|
|
582
|
-
<char style="w" strong="H6635">vast</char>
|
|
583
|
-
<char style="w" strong="H6635">array</char>.
|
|
584
|
-
<verse eid="GEN 2:1"/>
|
|
585
|
-
<verse number="2" style="v" sid="GEN 2:2"/>
|
|
586
|
-
<char style="w" strong="H3117">And</char>
|
|
587
|
-
<char style="w" strong="H3117">by</char>
|
|
588
|
-
<char style="w" strong="H3605">the</char>
|
|
589
|
-
<char style="w" strong="H7637">seventh</char>
|
|
590
|
-
<char style="w" strong="H3117">day</char>
|
|
591
|
-
<char style="w" strong="H0430">God</char>
|
|
592
|
-
<char style="w" strong="H3117">had</char>
|
|
593
|
-
<char style="w" strong="H3615">finished</char>
|
|
594
|
-
<char style="w" strong="H3605">the</char>
|
|
595
|
-
<char style="w" strong="H4399">work</char>
|
|
596
|
-
<char style="w" strong="H3117">He</char>
|
|
597
|
-
<char style="w" strong="H3117">had</char>
|
|
598
|
-
<char style="w" strong="H3615">been</char>
|
|
599
|
-
<char style="w" strong="H6213">doing</char>;
|
|
600
|
-
<char style="w" strong="H6213">so</char>
|
|
601
|
-
<char style="w" strong="H3117">on</char>
|
|
602
|
-
<char style="w" strong="H3605">that</char>
|
|
603
|
-
<char style="w" strong="H3117">day</char>
|
|
604
|
-
<char style="w" strong="H3117">He</char>
|
|
605
|
-
<char style="w" strong="H7673">rested</char>
|
|
606
|
-
<char style="w" strong="H3117">from</char>
|
|
607
|
-
<char style="w" strong="H3605">all</char>
|
|
608
|
-
<char style="w" strong="H3605">His</char>
|
|
609
|
-
<char style="w" strong="H4399">work</char>.
|
|
610
|
-
<note style="f" caller="+">
|
|
611
|
-
<char style="fr"/>
|
|
612
|
-
<char style="ft">2:2 </char>
|
|
613
|
-
<char style="ft">Cited in Hebrews 4:4</char>
|
|
614
|
-
</note>
|
|
615
|
-
<verse eid="GEN 2:2"/>
|
|
616
|
-
</para>
|
|
617
|
-
</usx>
|
|
558
|
+
const usx = `
|
|
559
|
+
<usx version="3.0">
|
|
560
|
+
<book code="GEN" style="id">- Berean Study Bible</book>
|
|
561
|
+
<para style="h">Genesis</para>
|
|
562
|
+
<para style="toc2">Genesis</para>
|
|
563
|
+
<para style="toc1">Genesis</para>
|
|
564
|
+
<para style="mt1">Genesis</para>
|
|
565
|
+
<chapter number="2" style="c" sid="GEN 2"/>
|
|
566
|
+
<para style="s1">The Seventh Day</para>
|
|
567
|
+
<para style="r">(Exodus 16:22–30; Hebrews 4:1–11)</para>
|
|
568
|
+
<para style="ip">This is an introduction paragraph.</para>
|
|
569
|
+
<para style="m">
|
|
570
|
+
<verse number="1" style="v" sid="GEN 2:1"/>
|
|
571
|
+
<char style="w" strong="H3541">Thus</char>
|
|
572
|
+
<char style="w" strong="H3605">the</char>
|
|
573
|
+
<char style="w" strong="H8064">heavens</char>
|
|
574
|
+
<char style="w" strong="H8064">and</char>
|
|
575
|
+
<char style="w" strong="H3605">the</char>
|
|
576
|
+
<char style="w" strong="H8064">earth</char>
|
|
577
|
+
<char style="w" strong="H8064">were</char>
|
|
578
|
+
<char style="w" strong="H3615">completed</char>
|
|
579
|
+
<char style="w" strong="H6635">in</char>
|
|
580
|
+
<char style="w" strong="H3605">all</char>
|
|
581
|
+
<char style="w" strong="H3605">their</char>
|
|
582
|
+
<char style="w" strong="H6635">vast</char>
|
|
583
|
+
<char style="w" strong="H6635">array</char>.
|
|
584
|
+
<verse eid="GEN 2:1"/>
|
|
585
|
+
<verse number="2" style="v" sid="GEN 2:2"/>
|
|
586
|
+
<char style="w" strong="H3117">And</char>
|
|
587
|
+
<char style="w" strong="H3117">by</char>
|
|
588
|
+
<char style="w" strong="H3605">the</char>
|
|
589
|
+
<char style="w" strong="H7637">seventh</char>
|
|
590
|
+
<char style="w" strong="H3117">day</char>
|
|
591
|
+
<char style="w" strong="H0430">God</char>
|
|
592
|
+
<char style="w" strong="H3117">had</char>
|
|
593
|
+
<char style="w" strong="H3615">finished</char>
|
|
594
|
+
<char style="w" strong="H3605">the</char>
|
|
595
|
+
<char style="w" strong="H4399">work</char>
|
|
596
|
+
<char style="w" strong="H3117">He</char>
|
|
597
|
+
<char style="w" strong="H3117">had</char>
|
|
598
|
+
<char style="w" strong="H3615">been</char>
|
|
599
|
+
<char style="w" strong="H6213">doing</char>;
|
|
600
|
+
<char style="w" strong="H6213">so</char>
|
|
601
|
+
<char style="w" strong="H3117">on</char>
|
|
602
|
+
<char style="w" strong="H3605">that</char>
|
|
603
|
+
<char style="w" strong="H3117">day</char>
|
|
604
|
+
<char style="w" strong="H3117">He</char>
|
|
605
|
+
<char style="w" strong="H7673">rested</char>
|
|
606
|
+
<char style="w" strong="H3117">from</char>
|
|
607
|
+
<char style="w" strong="H3605">all</char>
|
|
608
|
+
<char style="w" strong="H3605">His</char>
|
|
609
|
+
<char style="w" strong="H4399">work</char>.
|
|
610
|
+
<note style="f" caller="+">
|
|
611
|
+
<char style="fr"/>
|
|
612
|
+
<char style="ft">2:2 </char>
|
|
613
|
+
<char style="ft">Cited in Hebrews 4:4</char>
|
|
614
|
+
</note>
|
|
615
|
+
<verse eid="GEN 2:2"/>
|
|
616
|
+
</para>
|
|
617
|
+
</usx>
|
|
618
618
|
`;
|
|
619
619
|
const tree = parser.parse(usx);
|
|
620
620
|
expect(tree).toEqual({
|
|
@@ -665,44 +665,44 @@ describe('USXParser', () => {
|
|
|
665
665
|
});
|
|
666
666
|
});
|
|
667
667
|
it('should suppport parsing descriptive titles', () => {
|
|
668
|
-
const usx = `
|
|
669
|
-
<usx version="3.0">
|
|
670
|
-
<book code="PSA" style="id">- Berean Study Bible</book>
|
|
671
|
-
<chapter number="6" style="c" sid="PSA 6"/>
|
|
672
|
-
<para style="s1">Do Not Rebuke Me in Your Anger</para>
|
|
673
|
-
<para style="r">(Psalms 38:1–22)</para>
|
|
674
|
-
<para style="d">
|
|
675
|
-
For the choirmaster. With stringed instruments, according to Sheminith.
|
|
676
|
-
<note style="f" caller="+">
|
|
677
|
-
<char style="fr"/>
|
|
678
|
-
<char style="ft">6:0 </char>
|
|
679
|
-
<char style="ft">Sheminith is probably a musical term; here and in 1 Chronicles 15:21 and Psalms 12:1.</char>
|
|
680
|
-
</note>
|
|
681
|
-
A Psalm of David.
|
|
682
|
-
</para>
|
|
683
|
-
<para style="b"/>
|
|
684
|
-
<para style="q1">
|
|
685
|
-
<verse number="1" style="v" sid="PSA 6:1"/>
|
|
686
|
-
<char style="w" strong="H3069">O</char>
|
|
687
|
-
<char style="w" strong="H3068">LORD</char>,
|
|
688
|
-
<char style="w" strong="H6213">do</char>
|
|
689
|
-
<char style="w" strong="H1732">not</char>
|
|
690
|
-
<char style="w" strong="H1606">rebuke</char>
|
|
691
|
-
<char style="w" strong="H5921">me</char>
|
|
692
|
-
<char style="w" strong="H5921">in</char>
|
|
693
|
-
<char style="w" strong="H5921">Your</char>
|
|
694
|
-
<char style="w" strong="H0639">anger</char>
|
|
695
|
-
</para>
|
|
696
|
-
<para style="q2">
|
|
697
|
-
<char style="w" strong="H0176">or</char>
|
|
698
|
-
<char style="w" strong="H4148">discipline</char>
|
|
699
|
-
<char style="w" strong="H5921">me</char>
|
|
700
|
-
<char style="w" strong="H5921">in</char>
|
|
701
|
-
<char style="w" strong="H5921">Your</char>
|
|
702
|
-
<char style="w" strong="H2534">wrath</char>.
|
|
703
|
-
<verse eid="PSA 6:1"/>
|
|
704
|
-
</para>
|
|
705
|
-
</usx>
|
|
668
|
+
const usx = `
|
|
669
|
+
<usx version="3.0">
|
|
670
|
+
<book code="PSA" style="id">- Berean Study Bible</book>
|
|
671
|
+
<chapter number="6" style="c" sid="PSA 6"/>
|
|
672
|
+
<para style="s1">Do Not Rebuke Me in Your Anger</para>
|
|
673
|
+
<para style="r">(Psalms 38:1–22)</para>
|
|
674
|
+
<para style="d">
|
|
675
|
+
For the choirmaster. With stringed instruments, according to Sheminith.
|
|
676
|
+
<note style="f" caller="+">
|
|
677
|
+
<char style="fr"/>
|
|
678
|
+
<char style="ft">6:0 </char>
|
|
679
|
+
<char style="ft">Sheminith is probably a musical term; here and in 1 Chronicles 15:21 and Psalms 12:1.</char>
|
|
680
|
+
</note>
|
|
681
|
+
A Psalm of David.
|
|
682
|
+
</para>
|
|
683
|
+
<para style="b"/>
|
|
684
|
+
<para style="q1">
|
|
685
|
+
<verse number="1" style="v" sid="PSA 6:1"/>
|
|
686
|
+
<char style="w" strong="H3069">O</char>
|
|
687
|
+
<char style="w" strong="H3068">LORD</char>,
|
|
688
|
+
<char style="w" strong="H6213">do</char>
|
|
689
|
+
<char style="w" strong="H1732">not</char>
|
|
690
|
+
<char style="w" strong="H1606">rebuke</char>
|
|
691
|
+
<char style="w" strong="H5921">me</char>
|
|
692
|
+
<char style="w" strong="H5921">in</char>
|
|
693
|
+
<char style="w" strong="H5921">Your</char>
|
|
694
|
+
<char style="w" strong="H0639">anger</char>
|
|
695
|
+
</para>
|
|
696
|
+
<para style="q2">
|
|
697
|
+
<char style="w" strong="H0176">or</char>
|
|
698
|
+
<char style="w" strong="H4148">discipline</char>
|
|
699
|
+
<char style="w" strong="H5921">me</char>
|
|
700
|
+
<char style="w" strong="H5921">in</char>
|
|
701
|
+
<char style="w" strong="H5921">Your</char>
|
|
702
|
+
<char style="w" strong="H2534">wrath</char>.
|
|
703
|
+
<verse eid="PSA 6:1"/>
|
|
704
|
+
</para>
|
|
705
|
+
</usx>
|
|
706
706
|
`;
|
|
707
707
|
const tree = parser.parse(usx);
|
|
708
708
|
expect(tree).toEqual({
|
|
@@ -753,15 +753,15 @@ describe('USXParser', () => {
|
|
|
753
753
|
});
|
|
754
754
|
});
|
|
755
755
|
it('should suppport verses in descriptive titles', () => {
|
|
756
|
-
const usx = `
|
|
757
|
-
<usx version="3.0">
|
|
758
|
-
<book code="ZEC" style="id">- Berean Study Bible</book>
|
|
759
|
-
<chapter number="12" style="c" sid="ZEC 12"/>
|
|
760
|
-
<para style="s1">The Coming Deliverance of Jerusalem</para>
|
|
761
|
-
<para style="d"><verse number="1" style="v" sid="ZEC 12:1"/><char style="w" strong="H1697">This</char> <char style="w" strong="H3068">is</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H4853">burden</char> <char style="w" strong="H3068">of</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H1697">word</char> <char style="w" strong="H3068">of</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H3068">LORD</char> <char style="w" strong="H5921">concerning</char> <char style="w" strong="H3478">Israel</char>.</para>
|
|
762
|
-
<para style="b"/>
|
|
763
|
-
<para style="m"><char style="w" strong="H1697">Thus</char> <char style="w" strong="H5002">declares</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H3068">LORD</char>, <char style="w" strong="H3068">who</char> <char style="w" strong="H5186">stretches</char> <char style="w" strong="H5186">out</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H8064">heavens</char> <char style="w" strong="H3478">and</char> <char style="w" strong="H3245">lays</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H3245">foundation</char> <char style="w" strong="H3068">of</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H8064">earth</char>, <char style="w" strong="H3068">who</char> <char style="w" strong="H3335">forms</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H7307">spirit</char> <char style="w" strong="H3068">of</char> <char style="w" strong="H0376">man</char> <char style="w" strong="H7130">within</char> <char style="w" strong="H5921">him</char>:<verse eid="ZEC 12:1"/></para>
|
|
764
|
-
</usx>
|
|
756
|
+
const usx = `
|
|
757
|
+
<usx version="3.0">
|
|
758
|
+
<book code="ZEC" style="id">- Berean Study Bible</book>
|
|
759
|
+
<chapter number="12" style="c" sid="ZEC 12"/>
|
|
760
|
+
<para style="s1">The Coming Deliverance of Jerusalem</para>
|
|
761
|
+
<para style="d"><verse number="1" style="v" sid="ZEC 12:1"/><char style="w" strong="H1697">This</char> <char style="w" strong="H3068">is</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H4853">burden</char> <char style="w" strong="H3068">of</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H1697">word</char> <char style="w" strong="H3068">of</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H3068">LORD</char> <char style="w" strong="H5921">concerning</char> <char style="w" strong="H3478">Israel</char>.</para>
|
|
762
|
+
<para style="b"/>
|
|
763
|
+
<para style="m"><char style="w" strong="H1697">Thus</char> <char style="w" strong="H5002">declares</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H3068">LORD</char>, <char style="w" strong="H3068">who</char> <char style="w" strong="H5186">stretches</char> <char style="w" strong="H5186">out</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H8064">heavens</char> <char style="w" strong="H3478">and</char> <char style="w" strong="H3245">lays</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H3245">foundation</char> <char style="w" strong="H3068">of</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H8064">earth</char>, <char style="w" strong="H3068">who</char> <char style="w" strong="H3335">forms</char> <char style="w" strong="H5002">the</char> <char style="w" strong="H7307">spirit</char> <char style="w" strong="H3068">of</char> <char style="w" strong="H0376">man</char> <char style="w" strong="H7130">within</char> <char style="w" strong="H5921">him</char>:<verse eid="ZEC 12:1"/></para>
|
|
764
|
+
</usx>
|
|
765
765
|
`;
|
|
766
766
|
const tree = parser.parse(usx);
|
|
767
767
|
expect(tree).toEqual({
|
|
@@ -797,38 +797,38 @@ describe('USXParser', () => {
|
|
|
797
797
|
});
|
|
798
798
|
});
|
|
799
799
|
it('should ignore cross references', () => {
|
|
800
|
-
const usx = `
|
|
801
|
-
<usx version="3.0">
|
|
802
|
-
<book code="MAT" style="id">- World English Bible</book>
|
|
803
|
-
<chapter number="5" style="c" sid="MAT 5"/>
|
|
804
|
-
<para style="q1">
|
|
805
|
-
<verse number="3" style="v" sid="MAT 5:3"/>
|
|
806
|
-
<char style="wj">
|
|
807
|
-
“<char style="w" strong="G3107">Blessed</char>
|
|
808
|
-
<char style="w" strong="G1510">are</char>
|
|
809
|
-
<char style="w" strong="G3588">the</char>
|
|
810
|
-
<char style="w" strong="G4434">poor</char>
|
|
811
|
-
<char style="w" strong="G3588">in</char>
|
|
812
|
-
<char style="w" strong="G4151">spirit</char>,
|
|
813
|
-
</char>
|
|
814
|
-
</para>
|
|
815
|
-
<para style="q2">
|
|
816
|
-
<char style="wj">
|
|
817
|
-
<char style="w" strong="G3754">for</char>
|
|
818
|
-
<char style="w" strong="G0846">theirs</char>
|
|
819
|
-
<char style="w" strong="G1510">is</char>
|
|
820
|
-
<char style="w" strong="G3588">the</char>
|
|
821
|
-
<char style="w" strong="G0932">Kingdom</char>
|
|
822
|
-
<char style="w" strong="G4151">of</char>
|
|
823
|
-
<char style="w" strong="G3772">Heaven</char>.
|
|
824
|
-
</char>
|
|
825
|
-
<note style="x" caller="+">
|
|
826
|
-
<char style="xo">5:3 </char>
|
|
827
|
-
<char style="xt">Isaiah 57:15; 66:2</char>
|
|
828
|
-
</note>
|
|
829
|
-
<verse eid="MAT 5:3"/>
|
|
830
|
-
</para>
|
|
831
|
-
</usx>
|
|
800
|
+
const usx = `
|
|
801
|
+
<usx version="3.0">
|
|
802
|
+
<book code="MAT" style="id">- World English Bible</book>
|
|
803
|
+
<chapter number="5" style="c" sid="MAT 5"/>
|
|
804
|
+
<para style="q1">
|
|
805
|
+
<verse number="3" style="v" sid="MAT 5:3"/>
|
|
806
|
+
<char style="wj">
|
|
807
|
+
“<char style="w" strong="G3107">Blessed</char>
|
|
808
|
+
<char style="w" strong="G1510">are</char>
|
|
809
|
+
<char style="w" strong="G3588">the</char>
|
|
810
|
+
<char style="w" strong="G4434">poor</char>
|
|
811
|
+
<char style="w" strong="G3588">in</char>
|
|
812
|
+
<char style="w" strong="G4151">spirit</char>,
|
|
813
|
+
</char>
|
|
814
|
+
</para>
|
|
815
|
+
<para style="q2">
|
|
816
|
+
<char style="wj">
|
|
817
|
+
<char style="w" strong="G3754">for</char>
|
|
818
|
+
<char style="w" strong="G0846">theirs</char>
|
|
819
|
+
<char style="w" strong="G1510">is</char>
|
|
820
|
+
<char style="w" strong="G3588">the</char>
|
|
821
|
+
<char style="w" strong="G0932">Kingdom</char>
|
|
822
|
+
<char style="w" strong="G4151">of</char>
|
|
823
|
+
<char style="w" strong="G3772">Heaven</char>.
|
|
824
|
+
</char>
|
|
825
|
+
<note style="x" caller="+">
|
|
826
|
+
<char style="xo">5:3 </char>
|
|
827
|
+
<char style="xt">Isaiah 57:15; 66:2</char>
|
|
828
|
+
</note>
|
|
829
|
+
<verse eid="MAT 5:3"/>
|
|
830
|
+
</para>
|
|
831
|
+
</usx>
|
|
832
832
|
`;
|
|
833
833
|
const tree = parser.parse(usx);
|
|
834
834
|
expect(tree).toEqual({
|
|
@@ -854,12 +854,12 @@ describe('USXParser', () => {
|
|
|
854
854
|
});
|
|
855
855
|
});
|
|
856
856
|
it('should not ignore the node of a para element', () => {
|
|
857
|
-
const usx = `
|
|
858
|
-
<usx version="3.0">
|
|
859
|
-
<book code="JHN" style="id">43-JHN-web.sfm World English Bible (WEB)</book>
|
|
860
|
-
<chapter number="1" style="c" sid="JHN 1"/>
|
|
861
|
-
<para style="p"><verse number="1" style="v" sid="JHN 1:1"/><char style="w" strong="G1722">In</char> <char style="w" strong="G1722">the</char> <char style="w" strong="G0746">beginning</char> <char style="w" strong="G1510">was</char> <char style="w" strong="G1722">the</char> <char style="w" strong="G3056">Word</char>, <char style="w" strong="G2532">and</char> <char style="w" strong="G1722">the</char> <char style="w" strong="G3056">Word</char> <char style="w" strong="G1510">was</char> <char style="w" strong="G1722">with</char> <char style="w" strong="G2316">God</char>, <char style="w" strong="G2532">and</char> <char style="w" strong="G1722">the</char> <char style="w" strong="G3056">Word</char> <char style="w" strong="G1510">was</char> <char style="w" strong="G2316">God</char>.<verse eid="JHN 1:1"/></para>
|
|
862
|
-
</usx>
|
|
857
|
+
const usx = `
|
|
858
|
+
<usx version="3.0">
|
|
859
|
+
<book code="JHN" style="id">43-JHN-web.sfm World English Bible (WEB)</book>
|
|
860
|
+
<chapter number="1" style="c" sid="JHN 1"/>
|
|
861
|
+
<para style="p"><verse number="1" style="v" sid="JHN 1:1"/><char style="w" strong="G1722">In</char> <char style="w" strong="G1722">the</char> <char style="w" strong="G0746">beginning</char> <char style="w" strong="G1510">was</char> <char style="w" strong="G1722">the</char> <char style="w" strong="G3056">Word</char>, <char style="w" strong="G2532">and</char> <char style="w" strong="G1722">the</char> <char style="w" strong="G3056">Word</char> <char style="w" strong="G1510">was</char> <char style="w" strong="G1722">with</char> <char style="w" strong="G2316">God</char>, <char style="w" strong="G2532">and</char> <char style="w" strong="G1722">the</char> <char style="w" strong="G3056">Word</char> <char style="w" strong="G1510">was</char> <char style="w" strong="G2316">God</char>.<verse eid="JHN 1:1"/></para>
|
|
862
|
+
</usx>
|
|
863
863
|
`;
|
|
864
864
|
const tree = parser.parse(usx);
|
|
865
865
|
expect(tree).toEqual({
|
|
@@ -884,13 +884,13 @@ describe('USXParser', () => {
|
|
|
884
884
|
});
|
|
885
885
|
});
|
|
886
886
|
it('should not ignore newlines between two poem paras', () => {
|
|
887
|
-
const usx = `
|
|
888
|
-
<usx version="3.0">
|
|
889
|
-
<book code="MAT" style="id">- World English Bible</book>
|
|
890
|
-
<chapter number="2" style="c" sid="MAT 2"/>
|
|
891
|
-
<para style="q2"><verse number="18" style="v" sid="MAT 2:18"/><char style="w" strong="G2532">she</char> wouldn’t <char style="w" strong="G1510">be</char> <char style="w" strong="G3870">comforted</char>,</para>
|
|
892
|
-
<para style="q2"><char style="w" strong="G3754">because</char> <char style="w" strong="G2532">they</char> <char style="w" strong="G1510">are</char> <char style="w" strong="G3756">no</char> <char style="w" strong="G4183">more</char>.”<note style="x" caller="+"><char style="xo">2:18 </char><char style="xt">Jeremiah 31:15</char></note><verse eid="MAT 2:18"/></para>
|
|
893
|
-
</usx>
|
|
887
|
+
const usx = `
|
|
888
|
+
<usx version="3.0">
|
|
889
|
+
<book code="MAT" style="id">- World English Bible</book>
|
|
890
|
+
<chapter number="2" style="c" sid="MAT 2"/>
|
|
891
|
+
<para style="q2"><verse number="18" style="v" sid="MAT 2:18"/><char style="w" strong="G2532">she</char> wouldn’t <char style="w" strong="G1510">be</char> <char style="w" strong="G3870">comforted</char>,</para>
|
|
892
|
+
<para style="q2"><char style="w" strong="G3754">because</char> <char style="w" strong="G2532">they</char> <char style="w" strong="G1510">are</char> <char style="w" strong="G3756">no</char> <char style="w" strong="G4183">more</char>.”<note style="x" caller="+"><char style="xo">2:18 </char><char style="xt">Jeremiah 31:15</char></note><verse eid="MAT 2:18"/></para>
|
|
893
|
+
</usx>
|
|
894
894
|
`;
|
|
895
895
|
const tree = parser.parse(usx);
|
|
896
896
|
expect(tree).toEqual({
|
|
@@ -922,38 +922,38 @@ describe('USXParser', () => {
|
|
|
922
922
|
});
|
|
923
923
|
});
|
|
924
924
|
it('should support Words of Jesus', () => {
|
|
925
|
-
const usx = `
|
|
926
|
-
<usx version="3.0">
|
|
927
|
-
<book code="MAT" style="id">- World English Bible</book>
|
|
928
|
-
<chapter number="5" style="c" sid="MAT 5"/>
|
|
929
|
-
<para style="q1">
|
|
930
|
-
<verse number="3" style="v" sid="MAT 5:3"/>
|
|
931
|
-
<char style="wj">
|
|
932
|
-
“<char style="w" strong="G3107">Blessed</char>
|
|
933
|
-
<char style="w" strong="G1510">are</char>
|
|
934
|
-
<char style="w" strong="G3588">the</char>
|
|
935
|
-
<char style="w" strong="G4434">poor</char>
|
|
936
|
-
<char style="w" strong="G3588">in</char>
|
|
937
|
-
<char style="w" strong="G4151">spirit</char>,
|
|
938
|
-
</char>
|
|
939
|
-
</para>
|
|
940
|
-
<para style="q2">
|
|
941
|
-
<char style="wj">
|
|
942
|
-
<char style="w" strong="G3754">for</char>
|
|
943
|
-
<char style="w" strong="G0846">theirs</char>
|
|
944
|
-
<char style="w" strong="G1510">is</char>
|
|
945
|
-
<char style="w" strong="G3588">the</char>
|
|
946
|
-
<char style="w" strong="G0932">Kingdom</char>
|
|
947
|
-
<char style="w" strong="G4151">of</char>
|
|
948
|
-
<char style="w" strong="G3772">Heaven</char>.
|
|
949
|
-
</char>
|
|
950
|
-
<note style="x" caller="+">
|
|
951
|
-
<char style="xo">5:3 </char>
|
|
952
|
-
<char style="xt">Isaiah 57:15; 66:2</char>
|
|
953
|
-
</note>
|
|
954
|
-
<verse eid="MAT 5:3"/>
|
|
955
|
-
</para>
|
|
956
|
-
</usx>
|
|
925
|
+
const usx = `
|
|
926
|
+
<usx version="3.0">
|
|
927
|
+
<book code="MAT" style="id">- World English Bible</book>
|
|
928
|
+
<chapter number="5" style="c" sid="MAT 5"/>
|
|
929
|
+
<para style="q1">
|
|
930
|
+
<verse number="3" style="v" sid="MAT 5:3"/>
|
|
931
|
+
<char style="wj">
|
|
932
|
+
“<char style="w" strong="G3107">Blessed</char>
|
|
933
|
+
<char style="w" strong="G1510">are</char>
|
|
934
|
+
<char style="w" strong="G3588">the</char>
|
|
935
|
+
<char style="w" strong="G4434">poor</char>
|
|
936
|
+
<char style="w" strong="G3588">in</char>
|
|
937
|
+
<char style="w" strong="G4151">spirit</char>,
|
|
938
|
+
</char>
|
|
939
|
+
</para>
|
|
940
|
+
<para style="q2">
|
|
941
|
+
<char style="wj">
|
|
942
|
+
<char style="w" strong="G3754">for</char>
|
|
943
|
+
<char style="w" strong="G0846">theirs</char>
|
|
944
|
+
<char style="w" strong="G1510">is</char>
|
|
945
|
+
<char style="w" strong="G3588">the</char>
|
|
946
|
+
<char style="w" strong="G0932">Kingdom</char>
|
|
947
|
+
<char style="w" strong="G4151">of</char>
|
|
948
|
+
<char style="w" strong="G3772">Heaven</char>.
|
|
949
|
+
</char>
|
|
950
|
+
<note style="x" caller="+">
|
|
951
|
+
<char style="xo">5:3 </char>
|
|
952
|
+
<char style="xt">Isaiah 57:15; 66:2</char>
|
|
953
|
+
</note>
|
|
954
|
+
<verse eid="MAT 5:3"/>
|
|
955
|
+
</para>
|
|
956
|
+
</usx>
|
|
957
957
|
`;
|
|
958
958
|
const tree = parser.parse(usx);
|
|
959
959
|
expect(tree).toEqual({
|
|
@@ -979,14 +979,14 @@ describe('USXParser', () => {
|
|
|
979
979
|
});
|
|
980
980
|
});
|
|
981
981
|
it('should support verses that span multiple paragraphs', () => {
|
|
982
|
-
const usx = `
|
|
983
|
-
<usx version="3.0">
|
|
984
|
-
<book code="GET" style="id">- BSB</book>
|
|
985
|
-
<chapter number="26" style="c" sid="GEN 26"/>
|
|
986
|
-
<para style="m"><verse number="8" style="v" sid="GEN 26:8"/><char style="w" strong="H3588">When</char> <char style="w" strong="H3327">Isaac</char> <char style="w" strong="H1961">had</char> <char style="w" strong="H1961">been</char> <char style="w" strong="H8033">there</char> <char style="w" strong="H1961">a</char> <char style="w" strong="H3117">long</char> <char style="w" strong="H3117">time</char>, <char style="w" strong="H0040">Abimelech</char> <char style="w" strong="H4428">king</char> <char style="w" strong="H4428">of</char> <char style="w" strong="H7200">the</char> <char style="w" strong="H6430">Philistines</char> <char style="w" strong="H7200">looked</char> <char style="w" strong="H8259">down</char> <char style="w" strong="H3117">from</char> <char style="w" strong="H7200">the</char> <char style="w" strong="H2474">window</char> <char style="w" strong="H4428">and</char> <char style="w" strong="H1961">was</char> <char style="w" strong="H8610">surprised</char> <char style="w" strong="H1961">to</char> <char style="w" strong="H7200">see</char> <char style="w" strong="H3327">Isaac</char> <char style="w" strong="H6711">caressing</char> <char style="w" strong="H7200">his</char> <char style="w" strong="H0802">wife</char> <char style="w" strong="H7259">Rebekah</char>.<verse eid="GEN 26:8"/> <verse number="9" style="v" sid="GEN 26:9"/><char style="w" strong="H0040">Abimelech</char> <char style="w" strong="H3327">sent</char> <char style="w" strong="H3588">for</char> <char style="w" strong="H3327">Isaac</char> <char style="w" strong="H3327">and</char> <char style="w" strong="H7121">said</char>, “<char style="w" strong="H6435">So</char> <char style="w" strong="H1931">she</char> <char style="w" strong="H1931">is</char> <char style="w" strong="H2088">really</char> <char style="w" strong="H5921">your</char> <char style="w" strong="H0802">wife</char>! <char style="w" strong="H3588">How</char> <char style="w" strong="H3201">could</char> <char style="w" strong="H3588">you</char> <char style="w" strong="H0559">say</char>, ‘<char style="w" strong="H1931">She</char> <char style="w" strong="H1931">is</char> <char style="w" strong="H5921">my</char> sister’?”</para>
|
|
987
|
-
<para style="b"/>
|
|
988
|
-
<para style="m"><char style="w" strong="H3327">Isaac</char> <char style="w" strong="H0559">replied</char>, “<char style="w" strong="H3588">Because</char> <char style="w" strong="H3588">I</char> <char style="w" strong="H0559">thought</char> <char style="w" strong="H3588">I</char> <char style="w" strong="H6435">might</char> <char style="w" strong="H4191">die</char> <char style="w" strong="H5921">on</char> <char style="w" strong="H5921">account</char> <char style="w" strong="H5921">of</char> <char style="w" strong="H5921">her</char>.”<verse eid="GEN 26:9"/></para>
|
|
989
|
-
</usx>
|
|
982
|
+
const usx = `
|
|
983
|
+
<usx version="3.0">
|
|
984
|
+
<book code="GET" style="id">- BSB</book>
|
|
985
|
+
<chapter number="26" style="c" sid="GEN 26"/>
|
|
986
|
+
<para style="m"><verse number="8" style="v" sid="GEN 26:8"/><char style="w" strong="H3588">When</char> <char style="w" strong="H3327">Isaac</char> <char style="w" strong="H1961">had</char> <char style="w" strong="H1961">been</char> <char style="w" strong="H8033">there</char> <char style="w" strong="H1961">a</char> <char style="w" strong="H3117">long</char> <char style="w" strong="H3117">time</char>, <char style="w" strong="H0040">Abimelech</char> <char style="w" strong="H4428">king</char> <char style="w" strong="H4428">of</char> <char style="w" strong="H7200">the</char> <char style="w" strong="H6430">Philistines</char> <char style="w" strong="H7200">looked</char> <char style="w" strong="H8259">down</char> <char style="w" strong="H3117">from</char> <char style="w" strong="H7200">the</char> <char style="w" strong="H2474">window</char> <char style="w" strong="H4428">and</char> <char style="w" strong="H1961">was</char> <char style="w" strong="H8610">surprised</char> <char style="w" strong="H1961">to</char> <char style="w" strong="H7200">see</char> <char style="w" strong="H3327">Isaac</char> <char style="w" strong="H6711">caressing</char> <char style="w" strong="H7200">his</char> <char style="w" strong="H0802">wife</char> <char style="w" strong="H7259">Rebekah</char>.<verse eid="GEN 26:8"/> <verse number="9" style="v" sid="GEN 26:9"/><char style="w" strong="H0040">Abimelech</char> <char style="w" strong="H3327">sent</char> <char style="w" strong="H3588">for</char> <char style="w" strong="H3327">Isaac</char> <char style="w" strong="H3327">and</char> <char style="w" strong="H7121">said</char>, “<char style="w" strong="H6435">So</char> <char style="w" strong="H1931">she</char> <char style="w" strong="H1931">is</char> <char style="w" strong="H2088">really</char> <char style="w" strong="H5921">your</char> <char style="w" strong="H0802">wife</char>! <char style="w" strong="H3588">How</char> <char style="w" strong="H3201">could</char> <char style="w" strong="H3588">you</char> <char style="w" strong="H0559">say</char>, ‘<char style="w" strong="H1931">She</char> <char style="w" strong="H1931">is</char> <char style="w" strong="H5921">my</char> sister’?”</para>
|
|
987
|
+
<para style="b"/>
|
|
988
|
+
<para style="m"><char style="w" strong="H3327">Isaac</char> <char style="w" strong="H0559">replied</char>, “<char style="w" strong="H3588">Because</char> <char style="w" strong="H3588">I</char> <char style="w" strong="H0559">thought</char> <char style="w" strong="H3588">I</char> <char style="w" strong="H6435">might</char> <char style="w" strong="H4191">die</char> <char style="w" strong="H5921">on</char> <char style="w" strong="H5921">account</char> <char style="w" strong="H5921">of</char> <char style="w" strong="H5921">her</char>.”<verse eid="GEN 26:9"/></para>
|
|
989
|
+
</usx>
|
|
990
990
|
`;
|
|
991
991
|
const tree = parser.parse(usx);
|
|
992
992
|
expect(tree).toEqual({
|
|
@@ -1022,14 +1022,14 @@ describe('USXParser', () => {
|
|
|
1022
1022
|
});
|
|
1023
1023
|
});
|
|
1024
1024
|
it('should support verses that are contained in the words of Jesus', () => {
|
|
1025
|
-
const usx = `
|
|
1026
|
-
<usx version="3.0">
|
|
1027
|
-
<book code="MAT" style="id">- BSB</book>
|
|
1028
|
-
<chapter number="17" style="c" sid="MAT 17"/>
|
|
1029
|
-
<para style="p"><verse number="26" style="v" sid="MAT 17:26"/><char style="w" strong="G4074">Peter</char> <char style="w" strong="G3004">said</char> <char style="w" strong="G3004">to</char> <char style="w" strong="G3588">him</char>, “<char style="w" strong="G3588">From</char> <char style="w" strong="G3581">strangers</char>.”</para>
|
|
1030
|
-
<para style="p"><char style="w" strong="G2424">Jesus</char> <char style="w" strong="G3004">said</char> <char style="w" strong="G3004">to</char> <char style="w" strong="G3588">him</char>, <char style="wj">“<char style="w" strong="G1161">Therefore</char> <char style="w" strong="G1161">the</char> <char style="w" strong="G5207">children</char> <char style="w" strong="G1510">are</char> <char style="w" strong="G1658">exempt</char>. </char><verse eid="MAT 17:26"/> <verse number="27" style="v" sid="MAT 17:27"/><char style="wj"><char style="w" strong="G1161">But</char>, <char style="w" strong="G3361">lest</char> <char style="w" strong="G2532">we</char> <char style="w" strong="G4624">cause</char> <char style="w" strong="G3588">them</char> <char style="w" strong="G1519">to</char> <char style="w" strong="G4624">stumble</char>, <char style="w" strong="G4198">go</char> <char style="w" strong="G1519">to</char> <char style="w" strong="G2532">the</char> <char style="w" strong="G2281">sea</char>, <char style="w" strong="G2532">cast</char> <char style="w" strong="G2532">a</char> <char style="w" strong="G0044">hook</char>, <char style="w" strong="G2532">and</char> <char style="w" strong="G2983">take</char> <char style="w" strong="G1519">up</char> <char style="w" strong="G2532">the</char> <char style="w" strong="G4413">first</char> <char style="w" strong="G2486">fish</char> <char style="w" strong="G2443">that</char> <char style="w" strong="G2532">comes</char> <char style="w" strong="G1519">up</char>. <char style="w" strong="G1161">When</char> <char style="w" strong="G4771">you</char> <char style="w" strong="G2532">have</char> <char style="w" strong="G0455">opened</char> <char style="w" strong="G1325">its</char> <char style="w" strong="G4750">mouth</char>, <char style="w" strong="G4771">you</char> <char style="w" strong="G2532">will</char> <char style="w" strong="G2147">find</char> <char style="w" strong="G2532">a</char> stater <char style="w" strong="G1406">coin</char>.</char><note style="f" caller="+"><char style="fr">17:27 </char><char style="ft">A stater is a silver coin equivalent to four Attic or two Alexandrian drachmas, or a Jewish shekel: just exactly enough to cover the half-shekel temple tax for two people. A shekel is about 10 grams or about 0.35 ounces, usually in the form of a silver coin.</char></note> <char style="wj"><char style="w" strong="G2983">Take</char> <char style="w" strong="G2443">that</char>, <char style="w" strong="G2532">and</char> <char style="w" strong="G1325">give</char> <char style="w" strong="G2532">it</char> <char style="w" strong="G1519">to</char> <char style="w" strong="G3588">them</char> <char style="w" strong="G1519">for</char> <char style="w" strong="G1325">me</char> <char style="w" strong="G2532">and</char> <char style="w" strong="G4771">you</char>.”</char><verse eid="MAT 17:27"/></para>
|
|
1031
|
-
<chapter eid="MAT 17"/>
|
|
1032
|
-
</usx>
|
|
1025
|
+
const usx = `
|
|
1026
|
+
<usx version="3.0">
|
|
1027
|
+
<book code="MAT" style="id">- BSB</book>
|
|
1028
|
+
<chapter number="17" style="c" sid="MAT 17"/>
|
|
1029
|
+
<para style="p"><verse number="26" style="v" sid="MAT 17:26"/><char style="w" strong="G4074">Peter</char> <char style="w" strong="G3004">said</char> <char style="w" strong="G3004">to</char> <char style="w" strong="G3588">him</char>, “<char style="w" strong="G3588">From</char> <char style="w" strong="G3581">strangers</char>.”</para>
|
|
1030
|
+
<para style="p"><char style="w" strong="G2424">Jesus</char> <char style="w" strong="G3004">said</char> <char style="w" strong="G3004">to</char> <char style="w" strong="G3588">him</char>, <char style="wj">“<char style="w" strong="G1161">Therefore</char> <char style="w" strong="G1161">the</char> <char style="w" strong="G5207">children</char> <char style="w" strong="G1510">are</char> <char style="w" strong="G1658">exempt</char>. </char><verse eid="MAT 17:26"/> <verse number="27" style="v" sid="MAT 17:27"/><char style="wj"><char style="w" strong="G1161">But</char>, <char style="w" strong="G3361">lest</char> <char style="w" strong="G2532">we</char> <char style="w" strong="G4624">cause</char> <char style="w" strong="G3588">them</char> <char style="w" strong="G1519">to</char> <char style="w" strong="G4624">stumble</char>, <char style="w" strong="G4198">go</char> <char style="w" strong="G1519">to</char> <char style="w" strong="G2532">the</char> <char style="w" strong="G2281">sea</char>, <char style="w" strong="G2532">cast</char> <char style="w" strong="G2532">a</char> <char style="w" strong="G0044">hook</char>, <char style="w" strong="G2532">and</char> <char style="w" strong="G2983">take</char> <char style="w" strong="G1519">up</char> <char style="w" strong="G2532">the</char> <char style="w" strong="G4413">first</char> <char style="w" strong="G2486">fish</char> <char style="w" strong="G2443">that</char> <char style="w" strong="G2532">comes</char> <char style="w" strong="G1519">up</char>. <char style="w" strong="G1161">When</char> <char style="w" strong="G4771">you</char> <char style="w" strong="G2532">have</char> <char style="w" strong="G0455">opened</char> <char style="w" strong="G1325">its</char> <char style="w" strong="G4750">mouth</char>, <char style="w" strong="G4771">you</char> <char style="w" strong="G2532">will</char> <char style="w" strong="G2147">find</char> <char style="w" strong="G2532">a</char> stater <char style="w" strong="G1406">coin</char>.</char><note style="f" caller="+"><char style="fr">17:27 </char><char style="ft">A stater is a silver coin equivalent to four Attic or two Alexandrian drachmas, or a Jewish shekel: just exactly enough to cover the half-shekel temple tax for two people. A shekel is about 10 grams or about 0.35 ounces, usually in the form of a silver coin.</char></note> <char style="wj"><char style="w" strong="G2983">Take</char> <char style="w" strong="G2443">that</char>, <char style="w" strong="G2532">and</char> <char style="w" strong="G1325">give</char> <char style="w" strong="G2532">it</char> <char style="w" strong="G1519">to</char> <char style="w" strong="G3588">them</char> <char style="w" strong="G1519">for</char> <char style="w" strong="G1325">me</char> <char style="w" strong="G2532">and</char> <char style="w" strong="G4771">you</char>.”</char><verse eid="MAT 17:27"/></para>
|
|
1031
|
+
<chapter eid="MAT 17"/>
|
|
1032
|
+
</usx>
|
|
1033
1033
|
`;
|
|
1034
1034
|
const tree = parser.parse(usx);
|
|
1035
1035
|
expect(tree).toEqual({
|
|
@@ -1085,16 +1085,16 @@ describe('USXParser', () => {
|
|
|
1085
1085
|
});
|
|
1086
1086
|
});
|
|
1087
1087
|
it('should support multiple verses within a paragraph', () => {
|
|
1088
|
-
const usx = `
|
|
1089
|
-
<usx>
|
|
1090
|
-
<book code="ZEC" style="id">- BSB</book>
|
|
1091
|
-
<chapter number="12" style="c" sid="ZEC 17"/>
|
|
1092
|
-
<para style="b"/>
|
|
1093
|
-
<para style="m"><verse number="10" style="v" sid="ZEC 12:10"/><char style="w" strong="H1732">Then</char> <char style="w" strong="H5921">I</char> <char style="w" strong="H1004">will</char> <char style="w" strong="H8210">pour</char> <char style="w" strong="H8210">out</char> <char style="w" strong="H5921">on</char> <char style="w" strong="H5921">the</char> <char style="w" strong="H1004">house</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H1732">David</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H5921">on</char> <char style="w" strong="H5921">the</char> <char style="w" strong="H3427">people</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H3389">Jerusalem</char> <char style="w" strong="H5921">a</char> <char style="w" strong="H7307">spirit</char> <note style="f" caller="+"><char style="fr"/><char style="ft">12:10 </char><char style="ft">Or the Spirit</char></note> <char style="w" strong="H1004">of</char> <char style="w" strong="H2580">grace</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H8605">prayer</char>, <char style="w" strong="H1004">and</char> <char style="w" strong="H5921">they</char> <char style="w" strong="H1004">will</char> <char style="w" strong="H5027">look</char> <char style="w" strong="H5921">on</char> <char style="w" strong="H5921">Me</char>,<note style="f" caller="+"><char style="fr"/><char style="ft">12:10 </char><char style="ft">Or to Me</char></note> <char style="w" strong="H5921">the</char> <char style="w" strong="H3173">One</char> <char style="w" strong="H5921">they</char> <char style="w" strong="H1004">have</char> <char style="w" strong="H1856">pierced</char>.<note style="f" caller="+"><char style="fr"/><char style="ft">12:10 </char><char style="ft">Cited in John 19:37</char></note> <char style="w" strong="H5921">They</char> <char style="w" strong="H1004">will</char> <char style="w" strong="H5594">mourn</char> <char style="w" strong="H5921">for</char> <char style="w" strong="H5921">Him</char> <char style="w" strong="H3389">as</char> <char style="w" strong="H3173">one</char> <char style="w" strong="H5594">mourns</char> <char style="w" strong="H5921">for</char> <char style="w" strong="H7307">an</char> <char style="w" strong="H3173">only</char> <char style="w" strong="H3173">child</char>, <char style="w" strong="H1004">and</char> <char style="w" strong="H6087">grieve</char> <char style="w" strong="H4843">bitterly</char> <char style="w" strong="H5921">for</char> <char style="w" strong="H5921">Him</char> <char style="w" strong="H3389">as</char> <char style="w" strong="H3173">one</char> grieves <char style="w" strong="H5921">for</char> <char style="w" strong="H5921">a</char> <char style="w" strong="H1060">firstborn</char> <char style="w" strong="H3173">son</char>.<verse eid="ZEC 12:10"/></para>
|
|
1094
|
-
<para style="b"/>
|
|
1095
|
-
<para style="m"><verse number="11" style="v" sid="ZEC 12:11"/><char style="w" strong="H3117">On</char> <char style="w" strong="H3117">that</char> <char style="w" strong="H3117">day</char> <char style="w" strong="H3117">the</char> <char style="w" strong="H4553">wailing</char> <char style="w" strong="H3117">in</char> <char style="w" strong="H3389">Jerusalem</char> <char style="w" strong="H3389">will</char> <char style="w" strong="H3117">be</char> <char style="w" strong="H3117">as</char> <char style="w" strong="H1431">great</char> <char style="w" strong="H3117">as</char> <char style="w" strong="H3117">the</char> <char style="w" strong="H4553">wailing</char> <char style="w" strong="H3117">of</char> Hadad-rimmon <char style="w" strong="H3117">in</char> <char style="w" strong="H3117">the</char> <char style="w" strong="H1237">plain</char> <char style="w" strong="H3117">of</char> <char style="w" strong="H4023">Megiddo</char>.<verse eid="ZEC 12:11"/> <verse number="12" style="v" sid="ZEC 12:12"/><char style="w" strong="H1732">The</char> <char style="w" strong="H4940">land</char> <char style="w" strong="H1004">will</char> <char style="w" strong="H5594">mourn</char>, <char style="w" strong="H0376">each</char> <char style="w" strong="H4940">clan</char> <char style="w" strong="H1004">on</char> <char style="w" strong="H3605">its</char> <char style="w" strong="H1961">own</char>: <char style="w" strong="H1732">the</char> <char style="w" strong="H4940">clan</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H1732">the</char> <char style="w" strong="H1004">house</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H1732">David</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H1732">their</char> <char style="w" strong="H0802">wives</char>, <char style="w" strong="H1732">the</char> <char style="w" strong="H4940">clan</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H1732">the</char> <char style="w" strong="H1004">house</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H5416">Nathan</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H1732">their</char> <char style="w" strong="H0802">wives</char>,<verse eid="ZEC 12:12"/> <verse number="13" style="v" sid="ZEC 12:13"/><char style="w" strong="H1004">the</char> <char style="w" strong="H4940">clan</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H1004">the</char> <char style="w" strong="H1004">house</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H3878">Levi</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H3605">their</char> <char style="w" strong="H0802">wives</char>, <char style="w" strong="H1004">the</char> <char style="w" strong="H4940">clan</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H8097">Shimei</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H3605">their</char> <char style="w" strong="H0802">wives</char>,<verse eid="ZEC 12:13"/> <verse number="14" style="v" sid="ZEC 12:14"/><char style="w" strong="H3605">and</char> <char style="w" strong="H3605">all</char> <char style="w" strong="H3605">the</char> <char style="w" strong="H7604">remaining</char> <char style="w" strong="H4940">clans</char> <char style="w" strong="H3605">and</char> <char style="w" strong="H3605">their</char> <char style="w" strong="H0802">wives</char>.<verse eid="ZEC 12:14"/></para>
|
|
1096
|
-
<chapter eid="ZEC 12"/>
|
|
1097
|
-
</usx>
|
|
1088
|
+
const usx = `
|
|
1089
|
+
<usx>
|
|
1090
|
+
<book code="ZEC" style="id">- BSB</book>
|
|
1091
|
+
<chapter number="12" style="c" sid="ZEC 17"/>
|
|
1092
|
+
<para style="b"/>
|
|
1093
|
+
<para style="m"><verse number="10" style="v" sid="ZEC 12:10"/><char style="w" strong="H1732">Then</char> <char style="w" strong="H5921">I</char> <char style="w" strong="H1004">will</char> <char style="w" strong="H8210">pour</char> <char style="w" strong="H8210">out</char> <char style="w" strong="H5921">on</char> <char style="w" strong="H5921">the</char> <char style="w" strong="H1004">house</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H1732">David</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H5921">on</char> <char style="w" strong="H5921">the</char> <char style="w" strong="H3427">people</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H3389">Jerusalem</char> <char style="w" strong="H5921">a</char> <char style="w" strong="H7307">spirit</char> <note style="f" caller="+"><char style="fr"/><char style="ft">12:10 </char><char style="ft">Or the Spirit</char></note> <char style="w" strong="H1004">of</char> <char style="w" strong="H2580">grace</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H8605">prayer</char>, <char style="w" strong="H1004">and</char> <char style="w" strong="H5921">they</char> <char style="w" strong="H1004">will</char> <char style="w" strong="H5027">look</char> <char style="w" strong="H5921">on</char> <char style="w" strong="H5921">Me</char>,<note style="f" caller="+"><char style="fr"/><char style="ft">12:10 </char><char style="ft">Or to Me</char></note> <char style="w" strong="H5921">the</char> <char style="w" strong="H3173">One</char> <char style="w" strong="H5921">they</char> <char style="w" strong="H1004">have</char> <char style="w" strong="H1856">pierced</char>.<note style="f" caller="+"><char style="fr"/><char style="ft">12:10 </char><char style="ft">Cited in John 19:37</char></note> <char style="w" strong="H5921">They</char> <char style="w" strong="H1004">will</char> <char style="w" strong="H5594">mourn</char> <char style="w" strong="H5921">for</char> <char style="w" strong="H5921">Him</char> <char style="w" strong="H3389">as</char> <char style="w" strong="H3173">one</char> <char style="w" strong="H5594">mourns</char> <char style="w" strong="H5921">for</char> <char style="w" strong="H7307">an</char> <char style="w" strong="H3173">only</char> <char style="w" strong="H3173">child</char>, <char style="w" strong="H1004">and</char> <char style="w" strong="H6087">grieve</char> <char style="w" strong="H4843">bitterly</char> <char style="w" strong="H5921">for</char> <char style="w" strong="H5921">Him</char> <char style="w" strong="H3389">as</char> <char style="w" strong="H3173">one</char> grieves <char style="w" strong="H5921">for</char> <char style="w" strong="H5921">a</char> <char style="w" strong="H1060">firstborn</char> <char style="w" strong="H3173">son</char>.<verse eid="ZEC 12:10"/></para>
|
|
1094
|
+
<para style="b"/>
|
|
1095
|
+
<para style="m"><verse number="11" style="v" sid="ZEC 12:11"/><char style="w" strong="H3117">On</char> <char style="w" strong="H3117">that</char> <char style="w" strong="H3117">day</char> <char style="w" strong="H3117">the</char> <char style="w" strong="H4553">wailing</char> <char style="w" strong="H3117">in</char> <char style="w" strong="H3389">Jerusalem</char> <char style="w" strong="H3389">will</char> <char style="w" strong="H3117">be</char> <char style="w" strong="H3117">as</char> <char style="w" strong="H1431">great</char> <char style="w" strong="H3117">as</char> <char style="w" strong="H3117">the</char> <char style="w" strong="H4553">wailing</char> <char style="w" strong="H3117">of</char> Hadad-rimmon <char style="w" strong="H3117">in</char> <char style="w" strong="H3117">the</char> <char style="w" strong="H1237">plain</char> <char style="w" strong="H3117">of</char> <char style="w" strong="H4023">Megiddo</char>.<verse eid="ZEC 12:11"/> <verse number="12" style="v" sid="ZEC 12:12"/><char style="w" strong="H1732">The</char> <char style="w" strong="H4940">land</char> <char style="w" strong="H1004">will</char> <char style="w" strong="H5594">mourn</char>, <char style="w" strong="H0376">each</char> <char style="w" strong="H4940">clan</char> <char style="w" strong="H1004">on</char> <char style="w" strong="H3605">its</char> <char style="w" strong="H1961">own</char>: <char style="w" strong="H1732">the</char> <char style="w" strong="H4940">clan</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H1732">the</char> <char style="w" strong="H1004">house</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H1732">David</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H1732">their</char> <char style="w" strong="H0802">wives</char>, <char style="w" strong="H1732">the</char> <char style="w" strong="H4940">clan</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H1732">the</char> <char style="w" strong="H1004">house</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H5416">Nathan</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H1732">their</char> <char style="w" strong="H0802">wives</char>,<verse eid="ZEC 12:12"/> <verse number="13" style="v" sid="ZEC 12:13"/><char style="w" strong="H1004">the</char> <char style="w" strong="H4940">clan</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H1004">the</char> <char style="w" strong="H1004">house</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H3878">Levi</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H3605">their</char> <char style="w" strong="H0802">wives</char>, <char style="w" strong="H1004">the</char> <char style="w" strong="H4940">clan</char> <char style="w" strong="H1004">of</char> <char style="w" strong="H8097">Shimei</char> <char style="w" strong="H1004">and</char> <char style="w" strong="H3605">their</char> <char style="w" strong="H0802">wives</char>,<verse eid="ZEC 12:13"/> <verse number="14" style="v" sid="ZEC 12:14"/><char style="w" strong="H3605">and</char> <char style="w" strong="H3605">all</char> <char style="w" strong="H3605">the</char> <char style="w" strong="H7604">remaining</char> <char style="w" strong="H4940">clans</char> <char style="w" strong="H3605">and</char> <char style="w" strong="H3605">their</char> <char style="w" strong="H0802">wives</char>.<verse eid="ZEC 12:14"/></para>
|
|
1096
|
+
<chapter eid="ZEC 12"/>
|
|
1097
|
+
</usx>
|
|
1098
1098
|
`;
|
|
1099
1099
|
const tree = parser.parse(usx);
|
|
1100
1100
|
expect(tree).toEqual({
|
|
@@ -1210,12 +1210,12 @@ describe('USXParser', () => {
|
|
|
1210
1210
|
expect(tree).toMatchSnapshot();
|
|
1211
1211
|
});
|
|
1212
1212
|
it('should not ignore the first word of continuation on a verse', () => {
|
|
1213
|
-
const usx = `
|
|
1214
|
-
<usx version="3.0">
|
|
1215
|
-
<book code="MAT" style="id">- World English Bible</book>
|
|
1216
|
-
<chapter number="1" style="c" sid="MAT 1"/>
|
|
1217
|
-
<para style="q1"><verse number="23" style="v" sid="MAT 1:23"/>“<char style="w" strong="G2400">Behold</char>, <char style="w" strong="G1722">the</char> <char style="w" strong="G3933">virgin</char> <char style="w" strong="G2532">shall</char> <char style="w" strong="G1510">be</char> <char style="w" strong="G3326">with</char> <char style="w" strong="G1064">child</char>,</para>
|
|
1218
|
-
<para style="q2"><char style="w" strong="G2532">and</char> <char style="w" strong="G2532">shall</char> <char style="w" strong="G5088">give</char> <char style="w" strong="G5088">birth</char> <char style="w" strong="G2532">to</char> <char style="w" strong="G2192">a</char> <char style="w" strong="G5207">son</char>.</para>
|
|
1213
|
+
const usx = `
|
|
1214
|
+
<usx version="3.0">
|
|
1215
|
+
<book code="MAT" style="id">- World English Bible</book>
|
|
1216
|
+
<chapter number="1" style="c" sid="MAT 1"/>
|
|
1217
|
+
<para style="q1"><verse number="23" style="v" sid="MAT 1:23"/>“<char style="w" strong="G2400">Behold</char>, <char style="w" strong="G1722">the</char> <char style="w" strong="G3933">virgin</char> <char style="w" strong="G2532">shall</char> <char style="w" strong="G1510">be</char> <char style="w" strong="G3326">with</char> <char style="w" strong="G1064">child</char>,</para>
|
|
1218
|
+
<para style="q2"><char style="w" strong="G2532">and</char> <char style="w" strong="G2532">shall</char> <char style="w" strong="G5088">give</char> <char style="w" strong="G5088">birth</char> <char style="w" strong="G2532">to</char> <char style="w" strong="G2192">a</char> <char style="w" strong="G5207">son</char>.</para>
|
|
1219
1219
|
</usx>`;
|
|
1220
1220
|
const tree = parser.parse(usx);
|
|
1221
1221
|
expect(tree).toEqual({
|