v0.2.0 - Red-Letter Bible Support
Red-Letter Bible Support
This major feature release adds support for identifying and styling Jesus' words in OSIS and USFX Bible formats.
✨ New Features
- Red-letter Bible support for OSIS and USFX formats
- New
TextSegmentclass for styled text segments with attributes segmentsfield inVerseclass for tracking speaker information- Support for
<q who="Jesus">tags in OSIS XML - Support for
<wj>(Words of Jesus) tags in USFX XML hasJesusWordsconvenience getter onVerseclass
- New
- Database persistence for segments
- New
verse_segmentstable for storing text segments - Automatic segment loading when retrieving verses from database
- Database version upgraded to 2 with migration support
- New
- Extensible design allows future support for other XML styling tags
- Exported parser classes (
OsisParser,UsfxParser,ZefaniaParser) for direct use
🔄 Changes
- OSIS parser now tracks quote tags and speaker attributes
- USFX parser now tracks wj tags and speaker attributes
Verseclass is backward compatible - existing code continues to workBibleRepositorynow persists and retrieves segments automatically- Database schema updated with proper foreign key constraints and indexes
📚 Documentation
- Added comprehensive design document at
/doc/red-letter-bible-support.md - Updated README with red-letter Bible usage examples
🧪 Testing
- Added 5 tests for OSIS red-letter parsing
- Added 5 tests for USFX red-letter parsing
- Added 5 tests for database segment persistence
- Added 29 tests for TextSegment serialization
- Added 1 test for cross-platform database support
- All 65 tests passing
📦 Package
Published to pub.dev: https://pub.dev/packages/bible_parser_flutter