I’ve just released version 0.3 of pyifbabel, a pure Python library implementing functions for determining, reading, and writing bibliographic data for interactive fiction files, as defined by the Treaty of Babel. It contains three primary modules: treatyofbabel, for deducing bibliographic data of story files; treatyofbabel.ifiction, for reading and writing IFiction XML files; and treatyofbabel.ifstory, implementing the IFStory class, for handling bibliographic data in an object-oriented manner.
New in this release:
- Support for the cover art description tag in IFiction files
- Support for reading cover art descriptions in blorbed files
- Support for creating basic blorbs consisting of a story file, an IFiction file and (optional) a cover file
- All functions that were previously in treatyofbabel.babel are now in treatyofbabel (i.e. just ‘import treatyofbabel’, now, rather than ‘import treatyofbabel.babel’ or ‘from treatyofbabel import babel’
- Major de-linting and PEP8-ing of the code
- Comments and docstrings added for all user-facing modules and functions
Note that this library is still effectively beta, meaning the API might change a bit, particularly in the IFiction file handling, which will probably (unfortunately) need to be rewritten in order to be able to provide proper checking/linting. Other than that, the two big "to-do" items before a 1.0 release are adding support for Python 3 and writing some documentation finally (all though, with the docstrings added in this release, future documentation should be pretty simple).
You can download pyifbabel here or you can install it via PyPI. If you have any problems, let me know!