[sword-devel] Tools for enhancing OSIS documents

Timothy Allen thristian at gmail.com
Tue Aug 29 03:53:26 EDT 2023


Since the Berean Standard Bible translation[1] was released under a 
Creative Commons Zero licence earlier this year[2], including the USFM 
sources and translation tables, I have been working on converting it for 
use with the SWORD Project[3]. Adyeths' "u2o" script[4] produced a very 
good initial conversion to OSIS XML, but there were additional cleanups 
I wanted to do. Since I didn't want to do them by hand, I wrote some 
scripts to do them for me, and I figured they might be useful for other 
people too. Since they generally work by adding or removing OSIS markup, 
I collectively refer to them as "OSIS Decorators". You can browse the 
code here:

    https://gitlab.com/Screwtapello/osis-decorators

...or if you'd prefer, just download them all in ZIP file:

    https://gitlab.com/Screwtapello/osis-decorators/-/archive/main/osis-decorators.zip

Currently, there's two scripts available, each with full documentation 
and example configuration:

  * "linkify-references" recognises human-readable references like "John
    3:16" or "Exodus 2:4, 7-9, and 17" and adds machine-readable OSIS
    markup to make them clickable links; book names and typographic
    conventions are configurable so it should be useful for texts in
    languages other than English
  * "remove-footnote-backrefs" removes the reference from the footnote
    text back to the verse it came from; very useful in printed Bibles
    but a distraction in digital Bibles where you can just close the
    footnote popup to get back to where you were

All the scripts are under the GPLv2+ licence (same as libSWORD) and 
require only Python 3.6 or higher (no third-party libraries), so 
hopefully it won't be too difficult for people to make use of them.

If these tools sound useful to you, please try them out! I'd love to 
hear about your experiences with them, or about anything you think could 
be improved.

Alternatively, if there's some existing repository of OSIS tools that 
these could be contributed to, I'm open to that too.


Timothy


[1]: https://berean.bible/

[2]: https://berean.bible/licensing.htm

[3]: https://crosswire.org/sword/modules/ModInfo.jsp?modName=BSB

[4]: https://github.com/adyeths/u2o/


More information about the sword-devel mailing list