Skip to content

ConvertUsfmVersificationHandler does not move headings immediately before re-versified verses to the new chapter #518

Description

@pmachapman

When changing versification moves verses to a new chapter (i.e. from English Joel 2:28-32 to Hebrew Joel 3:1-5, the headings and other non-verse text content should be moved to the start of the new chapter, for example:

[Test]
public void GetUsfm_PreceedingHeadingsNotMoved()
{
	// English vs. Original
	// JOL 2:27-28 = JOL 2:27-3:1

	string usfm =
		@"\id JOL
\c 2
\v 27 Then you will know that I am present in Israel
\q2 and that I am the LORD your God,
\q2 and there is no other.
\q1 My people will never again
\q2 be put to shame.
\s1 I Will Pour Out My Spirit
\r (Acts 2:14–36)
\q1
\v 28 And afterward, I will pour out My Spirit on all people.
\q2 Your sons and daughters will prophesy,
\q1 your old men will dream dreams,
\q2 your young men will see visions.
";

	string target = UpdateUsfm(usfm, sourceVersification: ScrVers.English, targetVersification: ScrVers.Original);
	string result =
		@"\id JOL
\c 2
\v 27 Then you will know that I am present in Israel
\q2 and that I am the LORD your God,
\q2 and there is no other.
\q1 My people will never again
\q2 be put to shame.
\c 3
\s1 I Will Pour Out My Spirit
\r (Acts 2:14–36)
\q1
\v 28 And afterward, I will pour out My Spirit on all people.
\q2 Your sons and daughters will prophesy,
\q1 your old men will dream dreams,
\q2 your young men will see visions.
";
	AssertUsfmEquals(target, result);
}

Instead, the following USFM is generated:

\id JOL
\c 2
\v 27 Then you will know that I am present in Israel
\q2 and that I am the LORD your God,
\q2 and there is no other.
\q1 My people will never again
\q2 be put to shame.
\s1 I Will Pour Out My Spirit
\r (Acts 2:14–36)
\q1
\c 3
\nb
\v 1 And afterward, I will pour out My Spirit on all people.
\q2 Your sons and daughters will prophesy,
\q1 your old men will dream dreams,
\q2 your young men will see visions.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

  • Status
    👀 In review

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions