The main thing I do around here is fiddle around with JavaScript and
web browsers. You can see some of these fiddlings (including a couple
of popular ones like nicetitles and aqtree) in "
Browser experiments: the DOM and JavaScript".
Other stuff I've written:
- Cruciforum
- Crucially simple web forum software
- fspot2lj
- Export F-Spot photos to LiveJournal
- FotoBilder Python bindings
- A Python library to access sites using FotoBilder, like pics.livejournal.com, LiveJournal's photo hosting site
- Jackfield
- Apple's Dashboard for the Gnome desktop
- Deskbar plugins
- Various plugins for Gnome Deskbar, including Delicious Deskbar and Gmail Deskbar
- windowmovie
- An X Window System utility that takes an animated GIF movie of
a window for a specified period of time. Useful for doing "screenshots"
of something that happens over time.
- dvd-cover
- A short script that prints a cover for a DVD case for a film of
your choice. Requires Python, my
hacked version of py-imdb,
cdlabelgen, and gv. It will
not work for you immediately; you'll need to poke the
sys.path.append line for a start. Invoke as
dvd-cover The Italian Job or similar. Note that the stuff
you enter gets used as a search on the IMDB, so you could do
dvd-cover python grail and get a Monty Python and the Holy
Grail cover. If it finds more than one match it'll ask you about it.
- Bloglines Monitor
- A monitor for users of the Bloglines RSS aggregator who also
use ROX; it's a ROX panel applet that
tells you if you have any unread Bloglines feeds.
- Browser.py
- An automated command-line web browser for Python, something
like Perl's WWW::Mechanize. There is a highlighted HTML version of the
code too, and some documentation.
- fc2rss
fc2rss, a thing to screen-scrape the appalling
FirstClass web interface and provide the conferences as an RSS feed.
This will be totally useless, and, indeed, meaningless to you if you're
not an Open University student, I imagine.
- RoughClock
- A rough clock applet for the ROX panel.
- checkMail
- Yet another "have you got mail?" applet for the ROX panel. It
displays how much mail you have and how much of it is unread. Warning:
it probably only works if you read mail using a local spool, and it's
hardcoded to start Mutt when clicked upon. Stephen Kerofin has a
nicer more configurable applet that does the same thing (but doesn't
display your unread count).
- Vellum
- A weblogging system which tries to be very configurable and
is written in (and uses the power of) Python.
- ipkgput
- A script that transfers the specified file to your Sharp Zaurus.
Get the Python code or the pretty coloured HTML version.
- fm
- A script that works a bit like apt-cache but instead does
searches of Freshmeat -- use "fm search foo" to display a short
summary of packages matching "foo", "fm show foo" to show full
details for package "foo", and "fm get foo" to retrieve the
tarball for the package. Updated 2006-06-18 with patch from
thp to handle spaces in
things searched for.
- Python talk
- A Python talk I did for my Linux User Group. It's in KPresenter format,
but can also be browsed in HTML.
- No more annoying Flash messages in Mozilla/Linux
- I got sick of Mozilla on Linux popping up a "download Flash" default plugin
dialog box every time I hit a page with Flash on it. So I grabbed the Netscape
Plugin SDK and wrote a plugin that handles the Flash mimetype
(application/x-shockwave-flash) and then doesn't do anything with it! No more
dialog box! Grab the plugin and drop it in
your Mozilla plugins directory (/usr/lib/mozilla/plugins on Debian Linux).
- The vodka is good, but the meat is rotten
- Insane-ify your pages by translating them into a language and then
back into English.
- Castalian
- Embed Python in HTML. Castalian provides the Active Server Pages
object model.
- Katalyst
- A system for building and displaying multimedia presentations. Think
Macromedia Director. Long since abandoned.
- wm8ball
- Daft Window Maker dockapp I wrote -- ask your questions of the
Magic 8-Ball! [Requires Python, Tkinter and Window Maker]
- splitmbox.py
- I had occasion to split a Unix style mailbox up into individual files, and I didn't want
to install procmail just to get formail, so I wrote a quick Python script to do it.
[Requires Python]
- FTE invocation shell script
- I use the FTE editor sometimes.
It's nice, but its configuration mechanism is unutterably broken; you have
to make changes to the config and then compile this into a configs file
which isn't human readable. That's a major pain. So, instead, use this
script, which recompiles on the fly if required, and gives each user a
personal configuration. Copy main.fte from the config distribution to
$HOME/.fte/main.fte, and then invoke FTE using this shell script instead.
Note that this works for me. It might not work for anyone else. :-)
- Plod -- a noddy database layer for Python
- I needed a simple way of storing data from a Python script. Since
I work with databases most of the time, I tend to think in terms of selects,
updates, deletes and whatnot. I didn't want to install a real DB like MySQL
or Gadfly, so I sat down and wrote a quick one, called Plod. You can think
of it as standing for Python Layer Of Database if it makes you feel happier,
although it's actually called Plod because PC Plod was the policeman in
Noddy, and it is a noddy database ;-)
Files: plod.py, which depends on Laurie Tratt's
CSV.py (which had a homepage at http://tratt.net/laurie/comp/python/csv/index.html once upon a time, but CSV itself has now been superseded by a more all-singing all dancing version.) I've made a minor change or two to CSV.py
to make it work for Plod, so use this version.
Examples of use can be found in testtable.py
and its associated datafile, data.csv.