0 votes

It seems that if there is any \esb...\esbe material in the biblical text that a \ref field in a Module is trying to access, PTXPrint gets confused and is not able to expand the \ref field into its full form. Either PTXPrint finds the \esb marker and then never finds the \esbe  marker and fails with an error message "Reached end of book without finding \esbe" (which seems to happen when \ref specifies verse 1), or PTXPRINT just ignores the \ref field altogether and finishes without an error (which seems to happen when the \ref field  begins with verse 2 or later). I would have expected that PTXPrint would just ignore the \esb material and keep looking until it found a proper verse. If I take out the \esb material from the biblical text, the module and PTXPrint works as expected.  As our book of Psalms has a short \esb...\esbe section at the beginning of each Psalm, this means we can't use any Psalms. Any chance you guys can take a look at this? I have included a screenshot below of the Psalm 2 source text which creates the problem, the module source, the Final SFM which shows PTX's confusion, and the error message (for a Module specifying verse 1 as the start).

  

PTXprint by (181 points)

1 Answer

0 votes
The \esb in Psa 2 is faulty. You cannot have \ip inside an \esb. Changing the \ip paragraphs to \p seems to resolve the issue. See https://docs.usfm.bible/usfm/3.1/sbar/esb.html for more details. I have no idea if Paratext would fail this when doing basic marker checks, but somewhere along the line it will be considered faulty text.
by (366 points)
Thanks Martin. You are right that changing \ip to \p seems to help - if all I want is verse 1. But now the \ref in the module expands to include not just verse 1, but all the entire content of \esb as well.  That isn't really what I had in mind. I just want verse 1 without \esb. (Interestingly, it skips over \s which is between \esb and \v 1, so that shows that the algorithm CAN skip extraneous stuff.)

But if I specify verse 2 or any subsequent verse, the program fails. It only works - sort of - with verse 1. So it seems there is still some kind of issue here. Again, if I remove the \esb material, it all works fine. Sorry for the trouble!

NB: We have 600+ pages of Bible school materials in XXA-XXF which have hundreds (a thousand?) hard-coded scripture passages from ancient versions of our Biblical text. As we come down to the wire to publish the NT after all these years, the module capabilities would be a really  nice alternative to copying and pasting all those passages manually - probably not for the last time.

Related questions

0 votes
2 answers
0 votes
1 answer
0 votes
1 answer
0 votes
2 answers
PTXprint Jun 30, 2021 asked by Nam (110 points)
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
Every day they continued to meet together in the temple courts. They broke bread in their homes and ate together with glad and sincere hearts, praising God and enjoying the favor of all the people. And the Lord added to their number daily those who were being saved.
Acts 2:46-47
2,628 questions
5,370 answers
5,045 comments
1,420 users