|
This should be fixed. I expanded out the input to include pretty much everything that's reasonable, and allow for : or periods. I used Logos pretty heavily so have gotten used to periods for notation. I also added about 20 credits for you, if you feel up to trying the engine. ```
BIBLE_ABBREVIATIONS = {
'Gen': 'Genesis', 'Gn': 'Genesis',
'Exod': 'Exodus', 'Ex': 'Exodus', 'Exo': 'Exodus',
'Lev': 'Leviticus', 'Lv': 'Leviticus',
'Num': 'Numbers',
'Deut': 'Deuteronomy', 'Dt': 'Deuteronomy',
'Josh': 'Joshua', 'Jos': 'Joshua',
'Judg': 'Judges', 'Jdg': 'Judges',
'1 Sam': '1 Samuel', '1Sam': '1 Samuel', '1st Sam': '1 Samuel', '1S': '1 Samuel', '1 S': '1 Samuel',
'2 Sam': '2 Samuel', '2Sam': '2 Samuel', '2nd Sam': '2 Samuel', '2S': '2 Samuel', '2 S': '2 Samuel',
'1 Kgs': '1 Kings', '1Kings': '1 Kings', '1st Kings': '1 Kings', '1K': '1 Kings', '1 K': '1 Kings',
'2 Kgs': '2 Kings', '2Kings': '2 Kings', '2nd Kings': '2 Kings', '2K': '2 Kings', '2 K': '2 Kings',
'1 Chr': '1 Chronicles', '1Chron': '1 Chronicles', '1st Chronicles': '1 Chronicles',
'2 Chr': '2 Chronicles', '2Chron': '2 Chronicles', '2nd Chronicles': '2 Chronicles',
'Neh': 'Nehemiah',
'Esth': 'Esther', 'Est': 'Esther',
'Ps': 'Psalms', 'Psa': 'Psalms',
'Prov': 'Proverbs', 'Pro': 'Proverbs',
'Eccl': 'Ecclesiastes', 'Ecc': 'Ecclesiastes',
'Song': 'Song of Solomon', 'SOS': 'Song of Solomon', 'Cant': 'Song of Solomon',
'Isa': 'Isaiah',
'Jer': 'Jeremiah',
'Lam': 'Lamentations',
'Ezek': 'Ezekiel', 'Eze': 'Ezekiel',
'Dan': 'Daniel',
'Hos': 'Hosea',
'Obad': 'Obadiah', 'Ob': 'Obadiah',
'Mic': 'Micah',
'Nah': 'Nahum',
'Hab': 'Habakkuk',
'Zeph': 'Zephaniah', 'Zep': 'Zephaniah',
'Hag': 'Haggai',
'Zech': 'Zechariah', 'Zec': 'Zechariah',
'Mal': 'Malachi',
'Matt': 'Matthew', 'Mt': 'Matthew',
'Mk': 'Mark', 'Mrk': 'Mark',
'Lk': 'Luke', 'Luk': 'Luke',
'Jn': 'John', 'Jhn': 'John',
'Rom': 'Romans', 'Rm': 'Romans',
'1 Cor': '1 Corinthians', '1Cor': '1 Corinthians', '1st Corinthians': '1 Corinthians',
'2 Cor': '2 Corinthians', '2Cor': '2 Corinthians', '2nd Corinthians': '2 Corinthians',
'Gal': 'Galatians',
'Eph': 'Ephesians',
'Phil': 'Philippians', 'Php': 'Philippians',
'Col': 'Colossians',
'1 Thess': '1 Thessalonians', '1Thess': '1 Thessalonians', '1st Thessalonians': '1 Thessalonians',
'2 Thess': '2 Thessalonians', '2Thess': '2 Thessalonians', '2nd Thessalonians': '2 Thessalonians',
'1 Tim': '1 Timothy', '1Tim': '1 Timothy', '1st Timothy': '1 Timothy',
'2 Tim': '2 Timothy', '2Tim': '2 Timothy', '2nd Timothy': '2 Timothy',
'Phlm': 'Philemon', 'Phm': 'Philemon',
'Heb': 'Hebrews',
'Jas': 'James', 'Jms': 'James',
'1 Pet': '1 Peter', '1Pet': '1 Peter', '1st Peter': '1 Peter',
'2 Pet': '2 Peter', '2Pet': '2 Peter', '2nd Peter': '2 Peter',
'1 Jn': '1 John', '1John': '1 John', '1st John': '1 John',
'2 Jn': '2 John', '2John': '2 John', '2nd John': '2 John',
'3 Jn': '3 John', '3John': '3 John', '3rd John': '3 John',
'Rev': 'Revelation', 'Rv': 'Revelation'
}
``` |
Fails with:
```
Matthew 5:31-32; Matthew 19:3-9; Mark 10:2-12; Luke 16:18; 1 Corinthians 7:10-16; 1 Corinthians 7:39; Romans 7:2-3
```
```
"Matthew 5:31–32", "Matthew 19:3–9", "Mark 10:2–12", "Luke 16:18", "1 Corinthians 7:10–16", "1 Corinthians 7:39", "Romans 7:2–3"
```
```
Matt 5:31-32, 19:3-9; Mk 10:2-12; Lk 16:18; 1 Cor 7:10-16, 7:39; Rom 7:2-3
```
```
Matt 5.31-32, 19.3-9; Mk 10.2-12; Lk 16.18; 1 Cor 7.10-16, 7.39; Rom 7.2-3
```
```
Matthew 5:31-32 Matthew 19:3-9 Mark 10:2-12 Luke 16:18 1 Corinthians 7:10-16 1 Corinthians 7:39 Romans 7:2-3
```
Maybe the validator isn't splitting the string on separators before parsing, or choke on leading numerals or spaces, or normalization to ascii?