I had recently discovered the Lojban language while I was surfing the net. The characteristics of this language greatly appealed to me as a debater and so, I decided to heavily invest my effort into studying this language. Consequently, I came across two free software tools that could aid my study of Lojban: KVocTrain and Mnemosyne. These are two excellent programs that definitely have a place my studies.
These two programs are functionally adequate, they both do everything I would need to help me learn Lojban. However, I have a problem with the look of these programs; they are both written to target the Qt3/KDE3 platform and so, the look of these programs are inconsistent with the look of the rest of my GTK+ based Xfce system. At first, I thought I could install QGtkStyle to get a more consistent look. Upon installation, I realised that QGtkStyle wouldn't work on programs that target Qt versions older than Qt4.4 .
As I have a right to freedom, I know that I don't have to tolerate this minor inconvenience if I am willing to commission an improvement. I decided to update Mnemosyne as it is written in Python and PyQt3 and it looked like an easier target than KVocTrain. Documentation generators are essential whenever working with unfamiliar projects and I needed one to help me work with the Mnemosyne codebase. At first, I tried using pydoc but I couldn't figure out how to get it to automatically generate all the modules within a package using the
pydoc -w mnemosyne
option. I chose to seek out a different generator (instead of trying to improve pydoc) and I came across Pudge. This worked correctly and produced what I required when using:
The generation process for a codebase of the size of Mnemosyne (600kB) took longer than I expected as I was able to fix myself breakfast and consume it before it completed.
At this point, I am working on hacking Mnemosyne to get it to target PyQt4. I can say that hacking in Python is far more enjoyable than hacking in C/C++.