Lighthouse theme for Trac

Lighthouse is “beautifully simple issue tracking” (a hosted bugtracker to you and me). It looks great and is pretty much a joy to use.

At work we use Trac. Trac is a locally-installed bugtracker (plus wiki and source browser). It looks like a nightmare and there are parts which make the baby Jesus cry[1].

With that in mind, here is a greasemonkey script that makes Trac look like Lighthouse. It turns this:


into this:


(ticket titles hidden to protect the innocent!)

So far it has made my Trac usage much more enjoyable. I should point out that this is a tribute to Lighthouse, and I’ve not copied any of their actual CSS or images.

Be warned that it dials once every two weeks to see if there’s an update (since I’m sure there’s loads of things that I’ve missed and will fix as I go). To disable that, just remove lines 11-15 (the call to autoUpdateFromUserscriptsDotOrg).

We also use a couple of other simple Greasemonkey scripts for Trac at work (most of which are on our wiki here). A number of them were learning exercises, so YMMV. Caveat installer 🙂

[1] Of course, I do actually like Trac, or we wouldn’t be using it. It’s a great tool with excellent extensbility and plugins, but the UI could definitely do with some love!

BBC Podcasts list to OPML

This is a stupid Greasemonkey script which looks at a BBC podcast listings page and generates an OPML file. It’s a 20 minute hack and so is hard-coded for the Radio 4 podcasts – another five minutes should fix this. For the time being, try it out here.

I wanted to be able to import the file into my N95 so that I could browse them and import the ones I wanted. It seems to have done the job.

What’s on telly instead?

What’s on telly instead is a stupid Greasemonkey script that displays what the BBC are broadcasting on TV and radio at the same time as an event marked up with hCal. It’s very basic and only supports events where dtstart and dtend are specified using expanded iso8601 (i.e. of the format yyyy-mm-ddThh:mm:ssZ). It uses the BBC Web API which means that it is “supported by“. If and when the script ever works, it looks a bit like this:

screenshot of script in action