linkture 3.2.5__tar.gz → 3.3.1__tar.gz
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.
- {linkture-3.2.5 → linkture-3.3.1}/PKG-INFO +1 -1
- {linkture-3.2.5 → linkture-3.3.1}/pyproject.toml +1 -1
- {linkture-3.2.5 → linkture-3.3.1}/src/linkture/linkture.py +25 -18
- {linkture-3.2.5 → linkture-3.3.1}/src/linkture/res/custom.json +1 -0
- {linkture-3.2.5 → linkture-3.3.1}/LICENSE +0 -0
- {linkture-3.2.5 → linkture-3.3.1}/README.md +0 -0
- {linkture-3.2.5 → linkture-3.3.1}/src/linkture/__init__.py +0 -0
- {linkture-3.2.5 → linkture-3.3.1}/src/linkture/__main__.py +0 -0
- {linkture-3.2.5 → linkture-3.3.1}/src/linkture/res/resources.db +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: linkture
|
3
|
-
Version: 3.
|
3
|
+
Version: 3.3.1
|
4
4
|
Summary: PARSE and PROCESS BIBLE SCRIPTURE REFERENCES: extract, tag, link, rewrite, translate, BCV-encode and decode
|
5
5
|
Keywords: bible,scriptures,scripture-references,scripture-translation,scripture-parser,scripture-linker
|
6
6
|
Author-Email: "Eryk J." <infiniti@inventati.org>
|
@@ -27,7 +27,7 @@
|
|
27
27
|
"""
|
28
28
|
|
29
29
|
__app__ = 'linkture'
|
30
|
-
__version__ = 'v3.
|
30
|
+
__version__ = 'v3.3.1'
|
31
31
|
|
32
32
|
|
33
33
|
import json, regex, sqlite3
|
@@ -218,7 +218,8 @@ class Scriptures():
|
|
218
218
|
|
219
219
|
self._reported = []
|
220
220
|
text = regex.sub(self._first_pass, r, text)
|
221
|
-
|
221
|
+
text = regex.sub(self._second_pass, r, text)
|
222
|
+
return text
|
222
223
|
|
223
224
|
|
224
225
|
def list_scriptures(self, text):
|
@@ -227,7 +228,8 @@ class Scriptures():
|
|
227
228
|
for scripture in regex.findall(self._tagged, text):
|
228
229
|
script = scripture.strip('}{')
|
229
230
|
if self._rewrite:
|
230
|
-
|
231
|
+
temp = self.decode_scriptures(self._encoded[script])
|
232
|
+
script = temp[0] if temp else script
|
231
233
|
if self._upper:
|
232
234
|
script = script.upper()
|
233
235
|
lst.append(script)
|
@@ -241,7 +243,8 @@ class Scriptures():
|
|
241
243
|
def r(match):
|
242
244
|
script = match.group(1).strip('}{')
|
243
245
|
if self._rewrite:
|
244
|
-
|
246
|
+
temp = self.decode_scriptures(self._encoded[script])
|
247
|
+
script = temp[0] if temp else script
|
245
248
|
if self._upper:
|
246
249
|
script = script.upper()
|
247
250
|
if tag:
|
@@ -286,7 +289,11 @@ class Scriptures():
|
|
286
289
|
return None
|
287
290
|
if not (0 < c <= self._ranges.loc[(self._ranges.Book == b) & (self._ranges.Chapter.isnull()), ['Last']].values[0]): # chapter out of range
|
288
291
|
return None
|
289
|
-
if
|
292
|
+
if b == 19 and c in self._headings:
|
293
|
+
first = 0
|
294
|
+
else:
|
295
|
+
first = 1
|
296
|
+
if not (first <= v <= self._ranges.loc[(self._ranges.Book == b) & (self._ranges.Chapter == c), ['Last']].values[0]): # verse out of range
|
290
297
|
return None
|
291
298
|
return True
|
292
299
|
|
@@ -445,7 +452,7 @@ class Scriptures():
|
|
445
452
|
|
446
453
|
def _decode_scripture(self, bcv_range, book='', chap=0, sep=';'):
|
447
454
|
if not bcv_range:
|
448
|
-
return None, '', 0, False
|
455
|
+
return None, '', 0, False, ''
|
449
456
|
start, end = bcv_range
|
450
457
|
sb = int(start[:2])
|
451
458
|
sc = int(start[2:5])
|
@@ -455,22 +462,21 @@ class Scriptures():
|
|
455
462
|
ev = int(end[5:])
|
456
463
|
|
457
464
|
if not (sb == eb):
|
458
|
-
return None, '', 0, False
|
465
|
+
return None, '', 0, False, ''
|
459
466
|
if not ((0 < sb <= 66) & (sb == eb)): # book out of range
|
460
|
-
return None, '', 0, False
|
467
|
+
return None, '', 0, False, ''
|
461
468
|
lc = self._ranges.loc[(self._ranges.Book == sb) & (self._ranges.Chapter.isnull()), ['Last']].values[0][0]
|
462
469
|
if not (0 < sc <= ec <= lc): # chapter(s) out of range
|
463
|
-
return None, '', 0, False
|
470
|
+
return None, '', 0, False, ''
|
464
471
|
se = self._ranges.loc[(self._ranges.Book == sb) & (self._ranges.Chapter == sc), ['Last']].values[0][0]
|
465
472
|
le = self._ranges.loc[(self._ranges.Book == sb) & (self._ranges.Chapter == ec), ['Last']].values[0][0]
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
minev = 0
|
473
|
+
minev = 1
|
474
|
+
minsv = 1
|
475
|
+
if sb == 19 and (sc in self._headings):
|
476
|
+
minsv = 0
|
477
|
+
le += 1
|
472
478
|
if not ((minsv <= sv <= se) & (minev <= ev <= le)): # verse(s) out of range
|
473
|
-
return None, '', 0, False
|
479
|
+
return None, '', 0, False, ''
|
474
480
|
bk_name = self._tr_book_names[sb]
|
475
481
|
if book == bk_name:
|
476
482
|
cont = True
|
@@ -580,8 +586,9 @@ class Scriptures():
|
|
580
586
|
sep = ';'
|
581
587
|
for bcv_range in self._encoded[scripture]:
|
582
588
|
scrip, bk, ch, _, sep = self._decode_scripture(bcv_range, bk, ch, sep)
|
583
|
-
|
584
|
-
|
589
|
+
if scrip:
|
590
|
+
lnk = convert_range(bcv_range)
|
591
|
+
output += regex.sub(self._chunk, r2, scrip)
|
585
592
|
self._linked[scripture] = output.strip(' ;,')
|
586
593
|
if self._upper:
|
587
594
|
output = output.upper()
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|