Mantis Source Integration

Source control integration framework for the Mantis bug tracker, including support for Github, Gitlab, Gitweb, Cgit, Subversion and Mercurial.

Note: I did not design or develop most of this set of plugins, that credit should go to John Reese and the other developers. What I did do was upgrade the SourceGithub plugin to support the GitHub API v3 and added support for private repositories. I also produced and maintain most of the installation & configuration documentation included in the repository.

Released under the MIT license. Source code available at

My development time was sponsored in part by Small Dog Electronics, Inc.

Current Release:


dasu is a bash script that automates the packaging of my software projects for public release.

Released under the MIT license. Source code available at

Current Release:

dasu-0.1.tar.gz – 2015-02-24


43f is a simple date-based storage management utility based on the forty-three folders concept from David Allen’s “Getting Things Done” program. It maintains 43 folders per year (one for every month (12) and one for every possible date in a month (31), therefore allowing you to store up to 31 daily file sets, 12 monthly file sets, and as many annual file sets as you would like. It is ideal for managing backup/snapshot sets, but should be flexible enough for any number of uses.

43f has been tested on Mac OS X and Linux.

NOTE: 43f is a destructive utility (it is designed to manage—and therefore delete—files), so please proceed with caution, have a backup, run the unit tests, and test thoroughly before deploying!

Released under the MIT license. Source code available at

Development sponsored in part by Small Dog Electronics, Inc.

Current Release:

43f-0.1.8.tar.bz2 – 2015-01-02

Previous Release(s):

43f-0.1.7.tar.bz2 – 2014-01-22
43f-0.1.6.tar.bz2 – 2014-01-16
43f-0.1.5.tar.bz2 – 2014-01-09
43f-0.1.4.tar.bz2 – 2013-10-29
43f-0.1.3.tar.bz2 – 2013-10-09
43f-0.1.2.tar.bz2 – 2013-08-08
43f-0.1.1.tar.bz2 – 2013-06-17
43f-0.1.tar.bz2 – 2013-05-31

NewtonScript Mode

A SubEthaEdit or Coda Mode (syntax highlighter) for the NewtonScript language. Keywords & functions sourced from The NewtonScript Programming Language (1996, Apple Computer, Inc.; Mirrored on & Newted) and NEWT/0 source code.

Source code available at

Current Release:

NewtonScriptMode-2012-07-03.tar.bz2 – 2012-07-03


A portable bash implementation of realpath(). Will return absolute paths for one or more relative paths and verify that the paths/files exist.

Released under the MIT license. Source code available at

Current Release:

realpath-2014-04-05.tar.bz2 – 2014-04-05

Previous Release(s):

realpath-2012-11-29.tar.bz2 – 2012-11-29
realpath-2012-03-26.tar.bz2 – 2012-03-26
realpath-2012-02-18.tar.bz2 – 2012-02-18

Cash Out

A free web app for quickly, easily, and accurately cashing out a register at the end of the business day. Sums the value of bills, coins, and checks, then calculates your deposit. Allows printing or emailing of completed cash out sheet.

Optimized & themed for iOS (iPod touch, iPhone, or iPad), but works great in a modern web browser as well. Better yet, since it’s a web app, there’s no need to worry about upgrades or waiting for bug fix releases as it’ll always be running the latest version. Save it to your home screen for access via a single touch and you’ll never remember it’s a web app.

Cash Out

Find it on Apple’s Web Apps & OpenAppMkt. Released under the MIT license. Source code available at

Development sponsored in part by Small Dog Electronics, Inc.

Current Release:


A small collection of command line tools that I’ve developed for Mac OS X over the years, à la NextStep/Mac OS X’s open, pbcopy, pbpaste, etc. These are mostly bash scripts as an exercise in honing my bash-fu.

  • clipcat prints and concatenates Mac OS Text Clippings. Submitted by David Kendal (
  • eject ejects a volume and all other volumes on the same disk. A simpler, shorter wrapper of `diskutil`‘s various eject/unmount options and allows specifying either a full path in /Volumes or just the volume name.
  • swuser switches users using Mac OS X’s Fast User Switching feature. You can either switch out to the login window or to another user. Note: unfortunately, this is not currently compatible with screen.
  • trash allows trashing of files instead of tempting fate with rm. Correctly handles trashing files on other volumes, can list trash contents w/disk usage summary, and empty trash w/confirmation.

Released under the MIT license. Source code available at

Current Release:

tools-osx-2011-06-02.tar.bz2 – 2011-06-02

Previous Release(s):

tools-osx-2011-02-25.tar.bz2 – 2011-02-25
tools-osx-2010-12-08.tar.bz2 – 2010-12-08
tools-osx-2010-10-26.tar.bz2 – 2010-10-26

Sysmon Patch: HTML 4.01 Transitional Status File

A patch for Sysmon 0.93-pre3 which modifies the generation of the HTML status file slightly so the table element contains thead & tbody elements for enhanced CSS styling and also provides fixes so it validates as HTML 4.01 Transitional.


Download the .diff file into the sysmon-0.93-pre3/src/ directory and run the following command before you call make:

patch < sysmon-patch-html_statusfile-4.01_transitional.diff


Current Release:
sysmon-patch-html_statusfile-4.01_transitional.diff – 2009-01-22

mta_tipd_it Textpattern Plug-in

A Textpattern plug-in which adds an <txp:mta_tipd_it /> tag which will embed a JavaScript “Tip It” button for in your article.

Change Log:
v0.1.1 – Updated to include JavaScript from instead of
v0.1 – Initial release.

Textpattern 4.0.3 or better.

Current Release:
mta_tipd_it-0.1.txt – 2009-02-20

Previous Release(s):
mta_tipd_it-0.1.txt – 2008-10-28

mta_author_section Textpattern Plug-in

The development of this plug-in was co-sponsored by Small Dog Electronics, Inc. and UNNA.

A Textpattern plug-in which allows you to link author names to a section containing an article per author, much like bos_author, but also provides some extra behind-the-scenes glue between author sections and article searches by author name.

It implements a preferences tab under the “Extensions” tab and two individual tags: mta_author and mta_author_article.

Change Log:
v0.1 – Initial release.

Textpattern 4.0.6 or better.

Current Release:
mta_author_section-0.1.txt – 2008-10-14

Previous Release(s):