With the start of the new fiscal year, I have been devising a new personal budget—hopefully one more suited to paying off college and expense tracking. The ideal scenario would be an efficient method for budgeting on the computer; something that takes as little time as pen and paper, but computes balances, statistics, and graphs quickly.
Sadly, I believe that most personal finance software is as deserving of my faith (in its reliability) as the old copy of Windows 98 hiding somewhere in the closet. A quick look at a friend's current version of Quicken is enough to remind me that conventional consumer software—once considering bugs, backups, and presentation—can often feel more cumbersome than performing the same task with pen, paper, and mental concentration…
About the same time I was trying to settle between using GNU Cash and just creating a checkbook-like spread sheet in Emacs `ses-mode', I happened upon a command-line finance application that could actually meet the requirements of speed, simplicity, data integrity, and statistical power. Appropriately named `ledger', this seemingly modest application performs everything from checkbook balancing and stocks to forecasting and detailed graphs; all with plain text and the command-line, regular expressions included. Thank you John Wiegley for providing the world with a first quality, well designed, accounting program!
Now using `ledger' regularly, my only regret was losing the spread
sheet-like “feel” of rapidly entering data into columns. So I created
ledger-indent.el, a small Emacs library that supplements the current CVS version
of ledger.el by providing some forced indentation, including a right-justified
unitary amount column. Using this code, writing tidy ledger entries is further
expedited by simple use of the TAB key.
The following files demonstrate some additional setup of `ledger' with Emacs, including prevention for a tiny cache bug I found in `ledger': …/ledgerrc, …/ledger.sh, …/set-ledger.el.
| © Copyright Timothy Stotts 2002-2009. All rights reserved. | ^ top of page |