accounting software based on ledger(1)

Kevin Bloom 9f4bc3bb39 added a little help thingie hace 4 meses
.gitignore 514532086e added more info hace 1 año
LICENSE ae31dc624e init hace 1 año
README.md a640d9d4f0 cleaned up argument parsing; finished up date options hace 10 meses
aledger 9f4bc3bb39 added a little help thingie hace 4 meses
balance.awk d40819616d Closes #1 hace 4 meses
final.awk e1c02abe28 added enhancements to balance command hace 11 meses
ledge.awk e1c02abe28 added enhancements to balance command hace 11 meses
makefile 6b6589dff5 added PREFIX to makefile hace 10 meses
reg_values.awk a640d9d4f0 cleaned up argument parsing; finished up date options hace 10 meses
register.awk d40819616d Closes #1 hace 4 meses
replace-share-path.awk d8ba046436 awk is more portable than sed hace 11 meses

README.md

aledger

plain text accounting software based on ledger(1) written in POSIX awk and shell.

Goals

  • 100% POSIX compliance
  • provide some of the features of ledger(1)
    • doing all of ledger(1) would likely be impossible and too difficult
  • display data in ways that are easy for other unix commands to manipulate
  • don't suck

Why?

ledger(1) is awesome but I only use a handful of the features it provides. This is kind of a test to see if I can make a ledger-like software using only awk and shell without it being really really hard and still being useful.

Supported Commands

  • register
    • --monthly
    • --weekly
  • balance

Usage

aledger command [options] file

command
  balance      display the current balance of all entries
    --start    specify the starting date (must be of form yyyy/mm/dd)
    --end      specify the ending date (must be of form yyyy/mm/dd)
  register     display a day-by-day register of cash flow
    --start    specify the starting date (must be of form yyyy/mm/dd)
    --end      specify the ending date (must be of form yyyy/mm/dd)
    --monthly  group the register by month
    --weekly   group the register by week

TODO

  • better balance output (sub-list everything)
  • --weekly option for register
  • --quarterly option for register
  • date range support
  • order register outputs alphabetically
  • man page