I decided to turn the script into a semi-respectable coding project; the latest results are here. The program currently features a nice graphical interface using GTK+, a score tracking feature, and a specialized regex engine to account for variations in the acceptable answers. This answer-checking scheme must be declared only semi-sane, however, because it has a way of obfuscating answer lines that have a high degree of flexibility: for example, if the answer line is "The Stranger", we should accept "The Stranger", "Stranger", "L'Etranger", "Etranger", "The Outsider", and "Outsider". The most compact way to represent this in the program's regex scheme is {(The ){Strang|Outsid}|(L')Etrang}er. I have not had the time to convert the entire question bank answer set to this format; only the first 900-ish answers have been processed.
Features of the TPQBDB that are notably missing from this script are the following:
- Login: Since this is made to run without the internet, why bother with logging in? You're the only one using your copy.
- Categories: This will be implemented in a future version of the reader.
- Tournament selection: Ditto
- Difficulty selection: Ditto
- Universal compatibility: technically, since the script is written in Python, anybody can run the script on any platform, but you will need to install GTK+ and Python to run it. Windows comes without either; Mac OS X, apparently, comes with Python, but doesn't seem to have GTK+. Linux users should be able to run the program without installing anything.