New Backend (This week in OEB)

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

New Backend (This week in OEB)

Hi guys,

This week a bunch of stuff has happened with the GitHub repository.

Also, a new development build has gone up on

In the background, work is underway getting more OT books in our development build. Isaiah should be coming soon.  Newcomer Coby Ingram has done a nice rework of Malachai which I’m going through.

The big change with Github is that I’ve finally harmonised the build systems for the OT and NT. All books are now in the source/ directory, and are in the same format. The NT patch system, which was really useful early on when we were making large bulk changes has been changed over to the usfm+variations system that the OT books were using. This will allow us to adopt changes more quickly and take better advantage of the power of Git. As an immediate example, I will create a new Git branch to hold all our changes to the use of ‘soul’ in the NT and then we can merge that back in when done.

If you look at source/ you will see a number of books in .usfm.db format.

These files are valid USFM files, which is a standard for marking up scripture - more details than you want to know at

There is one difference from USFM which is a thin layer on top of the usfm allowing for tagged alternatives. So for example we should mark US and Commonwealth (British) spelling:

\rem Is this an idiom actually meaning “Zebras are striped”?
\v 23 Then the \nd Lord\nd* said, 'The [cth:colour|us:color] of the sky is blue'

\rem means ‘remark’ ie a comment which isn’t rendered.
\v 23 means start of verse 23
\nd Lord\nd* means 'Name of Deity' ie the Tetragrammaton. (We're rendering that by Lord in the OT by default)
[cth:colour|us:color] means that we insert 'colour' if we are rendering the Commonwealth version, 'color' if we are doing the US version.

The tools on GitHub will allow us to more clearly show what has changed with each commit, and as I said above big changes like dealing with ‘soul’ can go into their own branch then be merged back into master with a single merge.

Cheers, Russell