Convert usfm bibles into gemtext (python library/utility)
usx2gmi: Start this script
Zach DeCook 2021-02-27
parent 794d231 · commit 5d0d4ca
-rwxr-xr-xusx2gmi.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/usx2gmi.py b/usx2gmi.py
new file mode 100755
index 0000000..cc7709d
--- /dev/null
+++ b/usx2gmi.py
@@ -0,0 +1,33 @@
+#!/usr/bin/env python
+"""Convert a usx file into gemtext"""
+__author__ = "Zach DeCook"
+__email__ = "zachdecook@librem.one"
+__copyright__ = "Copyright (C) 2021 Zach DeCook"
+__license__ = "AGPL"
+__version__ = "3"
+
+import sys
+import xml.etree.ElementTree as ET
+
+def printf(string):
+ print(string,end='')
+
+def main(argv):
+ root = ET.parse(argv[1]).getroot()
+ for thing in list(root):
+ printf(convertBlock(thing))
+
+def convertBlock(thing):
+ if thing.tag == 'para':
+ # TODO: use style attribute to affect the prefix.
+ return "\n" + convertInline(thing)
+ return ''
+
+def convertInline(thing):
+ # TODO: Implement this.
+ if thing.text:
+ return thing.text.replace("\n"," ").strip()
+ return ''
+
+if __name__ == '__main__':
+ main(sys.argv)