I’m happy to announce the first beta release of pyIFBabel, a pure-Python implementation of the Treaty of Babel for developers of interactive fiction tools. This module was originally written for Grotesque. I figured that it might be useful for other developers, so I cleaned up the code greatly, packaged it up nicely and made it available separately. The goal is to both provide full compliance with the Treaty as far as correctly identifying story files of any supported format as well as properly handling and generating metadata for the story and wrapper formats that support it.
The bulk of the functionality has been implemented. All of the story formats covered by the Treaty are properly handled (tested on several files of each format), as well as the extraction of data from blorbed files. Creating IFiction XML files of metadata is supported, however this is likely to change a bit in the coming releases, as I have yet to properly implement the XML verification and lint processes supported by the official Treaty of Babel tool.
If you’re interested in using the module I invite you to download it from this page. If you encounter any bugs or a serious lack of functionality, please contact me and I’ll work on it. Alternatively, if you would like to fork my git repository, it’s available on Gitorious. I would gladly welcome some help on the package!
For those of you who are Grotesque users and aren’t concerned with development, I assure you that this is a good thing for Grotesque in the long run. Right now I am dedicated to making the its foundation as robust as possible, and the Treaty of Babel functionality is a key portion of Grotesque. It is important that it works well to provide you with the best organizing capabilities for your IF library!