While none of my projects are particularly significant, I have written and continue to maintain a number of free and open source software projects. Here are links to them (all of them, as far as I know):
- LaTeX packages,
Metapost
package, and fonts
- basicarith: A package for typesetting textbook-style arithmetic. Mentioned in Karl Berry's "The Treasure Chest" in The TUGBoat, Volume 36, No. 1 (p. 55).
- catechis: A package providing macros for typesetting catechisms (question-and-answer; comments; redefined enumerates; and so forth). Useful for religious and non-religious question-and-answer type documents.
- clrdblpg: A tiny package which allows you to easily set the page style for the pages left blank when you run \cleardoublepage.
- colophon: A package for easily designing and configuring colophons, an interesting and important addendum for books explaining the book's design and production.
- dozenal: A package for typesetting dozenal documents. Redefines the appropriate counters, provides a macro (contributed by David Kastrup) for converting numbers to dozenal from decimal, and much more. Includes fonts with dozenal numerals to match Computer Modern and Latin Modern fonts.
- DRM: A complete family of fonts, in Metafont, Postscript, and Opentype versions. Has roman, italic, (real) small caps, titling caps, symbols, ornaments, and the lot. Written from scratch in Metafont. Includes dozenal characters for all text fonts.
- liturg: A package which provides very basic typesetting for a few very basic Catholic liturgical forms.
- lroundrect: A package for using the Metapost roundrect macros within LaTeX. Lots of interesting examples for how roundrect can be used to advantage.
- modulus: A tiny package which gives non-destructive routines for producing the modulus (remainder) and quotient of integer division operations.
- padcount: Allows you to easily pad a counter (or any list of tokens that expands to a string of characters) by an arbitrary number of arbitrary symbols.
- poetry: A LaTeX package for typesetting poems, or collections of poems. Developed initially to typeset Collected Poems of Joyce Kilmer and The War Poetry of Siegfried Sassoon.
- roundrect: A Metapost package providing macros for easily drawing rectangles with rounded corners, customizable in a large variety of ways, with or without contained text.
- shapes: A Metapost package providing macros for drawing simple geometric polygons, with or without an enclosing circle, with ticks at user-selected intervals around that circle, and colored as the user wishes. Also, circles divided into arbitrary fractions, again colored as the user wishes. In both cases, line width and style is also configurable. Intended for use in mathematics textbooks and demonstrations.
- texdate: Gives simple TeX macros for setting, printing, and manipulating dates in (mostly) arbitrary formats, along with saving and referencing them. Easily localized for other languages. Basically a lightweight alternative for some of the functionality of datetime2.
- xellipsis: A package providing insanely configurable ellipses, with options for the versions of ellipses most commonly required by various citation schemes (e.g., Turabian, Chicago Manual of Style, and so forth). Funnily enough, after basicarith, I get more comments on this package than any other.
- yaletter: A package providing fully customizable letters, including multiple (and saved) letterheads, address databases, and envelopes and labels of arbitrary sizes.
- dozenal suite: A group of several command-line programs which do a lot of great dozenal stuff: a converter both from decimal to dozenal (doz) and dozenal to decimal (dec); an RPN calculator (dozdc); a measurement converter, which deals with customary-imperial, SI metric, and TGM (a dozenal metric system) (tgmconv); a dozenal number pretty-printer (dozpret); a dozenal string converter (dozstring); and a drop-in (mostly) replacement for GNU date which works in dozenal (dozdate).
- makebook: A shell script (POSIX shell, not limited to bash) which takes a pdf and rearranges and imposes its pages so as to be suitable for printing and binding. Very configurable; allows for many different types of signatures, sizes of sections, and so forth.
- minlib: a console-based library management program. Keeps track of books, movies, whatever media files you want to give it; maintains your current directory structure; analyzes metadata without ever altering it. Very configurable, both in colors and in display. Intended to be in the tradition of the great console programs, like mutt, newsbeuter, and cmus.
- fitrecs: A small, efficient console-based fitness records keeper. Gives you personal bests, calculates totals, calculates speeds and paces (where appropriate), and summarizes achievements. Very simple data-file and config format; lots of options for preferred units. Small but fun.
- chasemaze a fun little terminal-based game that allows the user to either try to escape from a maze (that is, make his way past any obstacles to a target) or to hunt down a constantly moving target. Very simple, lots of fun. Arbitrary map files are supported; that is, you can provide your own maps and your own obstacles!
- Dozenal Clock: A dozenal clock app, with a homescreen/lockscreen widget. Replaces the one in dozenal-droid, below.
- DozenCalc: A dozenal calculator. This one is much better than, and therefore replaces, the one contained in dozenal-droid, below. It has the normal functions in simple mode, when held in portrait; when held in landscape orientation, it becomes a fully-functioned scientific calculator.
- cathbib: A Catholic Bible-search program. Comes with English, Latin, and Greek texts, though this is very easily expanded. Still needs some polishing, but is certainly usable right now; but that is why it doesn't have a real website yet. The code can be accessed, of course.
WARNING: The following programs are deprecated. By
that, I mean that while they still work, there are much
better options available, some of them written by me.
They are listed here in the interests of completeness and
not as a recommendation.
- dozenal-droid: A group of Android apps, downloadable from the Google Play store, to help work with dozenal. Currently has a working dozenal (TGM) clock (also available as a widget, to put on your home screen), called "Dozclock Widget"; a calculator, called "dozbc"; and a measurement converter, called "TGMDroid". A calendar is in the works, but is on a semi-permanent hiatus at the present time. Note that these Android apps, with the exception of TGMDroid, are more or less deprecated at this point. They have been replaced by Dozenal Clock and DozenCalc, above.
- bibsearch: A program intended to permit easy searching of the Scriptures in multiple languages. Currently has language files only for Latin (the Clementine Vulgate) and English (the Douay-Rheims versions, Challoner revision), but can be easily supplemented with others. Requires a working version of Perl.