mouseHole is a spiffy project. It’s a little web proxy that lives on your desktop and can rewrite html that passes through it in arbitrary ways using a powerful html parsing library called Hpricot.
Tres spiff. I had a hard time installing it until I realized the current version depends on libraries which depend on a newer version of Ruby than is shipped with the mac. I eventually found I could install everything I needed with MacPorts and RubyGems.
When I finally got it all working, I discovered there has just been a major, major version jump — the new 2.0 version is supposedly much better than the old — and there are very few scripts written for the new version.
No prob, the fun is making your own, right?
I tried, and while some things worked, I kept hitting errors that looked like this:
Sun Mar 25 23:13:11 -0400 2007: ERROR: execution expired
which hosed things up until I restarted the proxy.
That sort of thing can put a real cramp in your browsing style, so I’m gonna call this one a “keep an eye on it” project for now. It would be really cool to have a greasemonkey-like scripting engine that worked no matter what browser you were using, wouldn’t it? Forget your firefox extensions, you could have mousehole apps which were easier to read, write, and understand (they are), and which you could use with Safari as easily as with Firefox. It’s a beautiful dream.
But right now the dream requires more effort than I can give, despite the screeching of the futzmonkey.
For the record, here’s the easiest way to get mousehole installed and working on OS X:
Install the ports ‘ruby’ and ‘rb-rubygems’ (and any dependencies), to get the latest version of ruby.
sudo gem source -a http://code.whytheluckystiff.net/
sudo gem install mousehole
Say yes to all dependencies and kick back.
Overall though, sadly, the time I’ve spent on this this weekend falls in the what the hell is wrong with me category.