No description
Find a file
John Wiegley 0c070cde61 acprep: I don't keep ChangeLog files under version control anymore, but
automake requires it, so when preparing the sources for building the ChangeLog
is touch'd just as we were doing for AUTHORS and COPYING.
2008-07-23 15:54:44 -04:00
scripts Added a new script that enables use of Ledger as a smart "du". 2008-04-13 02:41:31 -04:00
tests Changed from using .cvsignore to .gitignore. 2008-05-08 02:50:05 -04:00
.gitignore acprep: I don't keep ChangeLog files under version control anymore, but 2008-07-23 15:54:44 -04:00
acprep acprep: I don't keep ChangeLog files under version control anymore, but 2008-07-23 15:54:44 -04:00
amount.cc If AMOUNT_PARSE_NO_MIGRATE is set, do not set a commodity's precision even if 2008-07-17 20:55:15 -04:00
amount.h Added #include lines for building on Debian lenny. 2008-07-13 22:50:21 -04:00
amounts.cc (read_binary_journal): Fixed a tiny memory leak when reading from a 2008-04-13 02:41:28 -04:00
balance.cc Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
balance.h Added helper methods for comparing a balance to a balance_pair. 2008-07-17 21:22:24 -04:00
binary.cc Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
binary.h Made several changes to the parsing infrastructure to allow passing 2008-04-13 02:41:23 -04:00
config.cc Made separate modules for the csv command, since the prior method was 2008-04-13 02:41:33 -04:00
config.h Made separate modules for the csv command, since the prior method was 2008-04-13 02:41:33 -04:00
configure.in A patch from Juergen Daubert, which fixes the output from --version. 2008-07-21 06:22:03 -04:00
csv.cc Made separate modules for the csv command, since the prior method was 2008-04-13 02:41:33 -04:00
csv.h Made separate modules for the csv command, since the prior method was 2008-04-13 02:41:33 -04:00
datetime.cc Added several more date/time fixes from Nathan Jones. Fixes #49. 2008-07-17 06:19:40 -04:00
datetime.h Changes to allow DATETIME values to be negated, for the purposes of reverse 2008-07-17 22:23:14 -04:00
debug.cc Added much better error location. 2008-04-13 02:41:29 -04:00
debug.h Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
derive.cc When using the "entry" command with an unknown payee, get the draw account 2008-07-20 20:31:53 -04:00
derive.h updated to version 2.0 2008-04-13 02:40:47 -04:00
emacs.cc Reconciling using ledger.el is now line-based, instead of character based, due 2008-07-17 23:42:19 -04:00
emacs.h Added an Emacs formatter, accessible with the new "emacs" command. 2008-04-13 02:40:56 -04:00
error.h *** empty log message *** 2008-04-13 02:41:32 -04:00
fdstream.hpp Whitespace changes. 2008-04-13 02:41:01 -04:00
format.cc Made separate modules for the csv command, since the prior method was 2008-04-13 02:41:33 -04:00
format.h Added elision styles. 2008-04-13 02:41:32 -04:00
gnucash.cc slanack: The problem was that <split:quantity> received the `transaction 2008-07-17 21:26:41 -04:00
gnucash.h Made several changes to the parsing infrastructure to allow passing 2008-04-13 02:41:23 -04:00
journal.cc Round unbalanced remainders before reporting them, because that will make a 2008-07-17 20:55:15 -04:00
journal.h Added a note field to entry_t objects. 2008-04-13 05:08:21 -04:00
ledger.el Corrected the copyright date in ledger.el. 2008-07-20 20:31:20 -04:00
ledger.h Made separate modules for the csv command, since the prior method was 2008-04-13 02:41:33 -04:00
ledger.texi More copyright date updates. 2008-07-21 06:29:40 -04:00
ledger.vim *** empty log message *** 2008-04-13 02:41:17 -04:00
LICENSE More copyright date updates. 2008-07-21 06:29:40 -04:00
main.cc Moved an auto_ptr up into main, since the memory it governs must still be 2008-07-17 20:55:15 -04:00
Makefile.am Updated the version number to 2.6.1. 2008-07-17 23:28:05 -04:00
mask.cc Added much better error location. 2008-04-13 02:41:29 -04:00
mask.h Added much better error location. 2008-04-13 02:41:29 -04:00
NEWS Updated the version number to 2.6.1. 2008-07-17 23:28:05 -04:00
ofx.cc *** empty log message *** 2008-04-13 02:41:29 -04:00
ofx.h Made several changes to the parsing infrastructure to allow passing 2008-04-13 02:41:23 -04:00
option.cc A patch from Juergen Daubert, which fixes the output from --version. 2008-07-21 06:22:03 -04:00
option.h Made separate modules for the csv command, since the prior method was 2008-04-13 02:41:33 -04:00
parser.cc Several fixes to lot price handling. 2008-04-13 02:41:31 -04:00
parser.h *** empty log message *** 2008-04-13 02:41:29 -04:00
qif.cc Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
qif.h Made several changes to the parsing infrastructure to allow passing 2008-04-13 02:41:23 -04:00
quotes.cc Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
quotes.h Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
README Removed Python integration support. 2008-04-13 02:41:21 -04:00
reconcile.cc Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
reconcile.h Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
report.cc Added elision styles. 2008-04-13 02:41:32 -04:00
report.h Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
sample.dat updated to version 2.0 2008-04-13 02:40:47 -04:00
setup.py Updated the version number to 2.6.1. 2008-07-17 23:28:05 -04:00
startup.cc Added a DATETIME value type. 2008-04-13 02:41:29 -04:00
test.py Added much better error location. 2008-04-13 02:41:29 -04:00
textual.cc Erroneously compared a character position to NUL, rather than setting it. 2008-07-19 21:31:36 -04:00
textual.h *** empty log message *** 2008-04-13 02:41:29 -04:00
timeclock.el Removed Python integration support. 2008-04-13 02:41:21 -04:00
timing.h Added a DATETIME value type. 2008-04-13 02:41:29 -04:00
util.h Added a fix for FreeBSD, so that Ledger can compile there. 2008-04-13 02:40:59 -04:00
valexpr.cc Rather than just aborting, report an intelligent error if the comma operator 2008-07-17 17:49:08 -04:00
valexpr.h *** empty log message *** 2008-04-13 02:41:32 -04:00
value.cc When converting datetime_t to a long, I now need to directly access the 'when' 2008-07-19 16:52:16 -04:00
value.h *** empty log message *** 2008-04-13 02:41:32 -04:00
walk.cc When converting datetime_t to a long, I now need to directly access the 'when' 2008-07-19 16:52:16 -04:00
walk.h Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
xml.cc Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
xml.h *** empty log message *** 2008-04-13 02:41:32 -04:00

			  Welcome to Ledger

		 the command-line accounting program

Introduction
============

Ledger is an accounting program which is invoked from the command-line
using a textual ledger file.  To start using Ledger, you will need to
create such a file containing your financial transactions.  A sample
has been provided in the file "sample.dat".  See the documentation
(ledger.pdf, or ledger.info) for full documentation on creating a
ledger file and using Ledger to generate reports.

Once you have such a file -- you might call it "ledger.dat" -- you can
start looking at balances and account registers using commands like
the following:

  ledger -f ledger.dat balance assets:checking
  ledger -f ledger.dat register expenses:food

This assumes, of course, that like the sample file you use account
names such as "Assets:Checking" and "Expenses:Food".  If you use other
account names, you will need to vary the reporting commands you use
accordingly.


Building
========

To build Ledger, you will need a fairly modern C++ compiler (gcc 2.95
will not work), and at least these two libraries installed:

    gmp        GNU multi-precision library
    pcre       Perl regular expression library

(On some GNU/Linux systems, the packages you need to install are
called "gmp-dev" and "pcre-dev").

If you wish to read Gnucash data files, you will also need two XML
libraries, which may or may not be available in a single package (it
depends on your distribution):

    libexpat, or libxmlparse and libxmltok

Once you have determined where the headers and libraries for the above
packages are installed, run the script "configure", passing those
paths.  If you installed everything under /usr/local, you can probably
just type "./configure".  Otherwise, do this:

    ./configure CPPFLAGS=-I<INCLUDE-PATH>  LDFLAGS=-L<LIBRARY-PATH>

If you need to specify multiple include or library paths, then do
this:

    ./configure CPPFLAGS="-I<PATH1> -I<PATH2>"  LDFLAGS="-L<PATH1> -L<PATH2>"

Once configure is done running, just type:

    make install


Mailing List and IRC
====================

If you need help on how to use Ledger, or run into problems, you can
join the Ledger mailing list at the following Web address:

    https://lists.sourceforge.net/lists/listinfo/ledger-discuss

You can also find help at the #ledger channel on the IRC server
irc.freenode.net.