No description
Find a file
John Wiegley fcae023196 Reverted the master branch back to the state of v2.6.0.90, because I intend to
be much more thorough about what gets commited to the master and why.  This
will still be the branch where new work will be checked in, but only after
thorough review in a development branch.
2008-05-02 01:24:29 -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 *** empty log message *** 2008-04-13 02:41:33 -04:00
acprep Reverted the master branch back to the state of v2.6.0.90, because I intend to 2008-05-02 01:24:29 -04:00
amount.cc Fixes to the commodity comparison logic. 2008-04-13 05:06:13 -04:00
amount.h *** empty log message *** 2008-04-13 02:41:32 -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 Reworked the way date/times are handled. 2008-04-13 02:41:32 -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 Increased version to 2.6.0.90 and added documentation for this release. 2008-04-13 05:09:39 -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 Increment month days, not months, when calculating a date. 2008-04-13 05:07:14 -04:00
datetime.h Added a class operator hack to allow building on FreeBSD 8. 2008-04-13 06:04:24 -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 Reworked the way date/times are handled. 2008-04-13 02:41:32 -04:00
derive.h updated to version 2.0 2008-04-13 02:40:47 -04:00
emacs.cc Transactions now track their beginning and ending position, as do 2008-04-13 02:41:24 -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 Made several fixes to commodity parsing, which were preventing Gnucash files 2008-04-13 05:02:38 -04:00
gnucash.h Made several changes to the parsing infrastructure to allow passing 2008-04-13 02:41:23 -04:00
journal.cc When building an auto-entry, copy over details so that the resulting 2008-04-13 05:07:58 -04:00
journal.h Added a note field to entry_t objects. 2008-04-13 05:08:21 -04:00
ledger.el *** empty log message *** 2008-04-13 02:41:30 -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 Reverted the master branch back to the state of v2.6.0.90, because I intend to 2008-05-02 01:24:29 -04:00
ledger.vim *** empty log message *** 2008-04-13 02:41:17 -04:00
LICENSE *** empty log message *** 2008-04-13 02:41:21 -04:00
main.cc Made separate modules for the csv command, since the prior method was 2008-04-13 02:41:33 -04:00
Makefile.am Increased version to 2.6.0.90 and added documentation for this release. 2008-04-13 05:09:39 -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 Reverted the master branch back to the state of v2.6.0.90, because I intend to 2008-05-02 01:24:29 -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 Reverted the master branch back to the state of v2.6.0.90, because I intend to 2008-05-02 01:24:29 -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 Increased version to 2.6.0.90 and added documentation for this release. 2008-04-13 05:09:39 -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 Improvements to the position calculation logic during parsing. 2008-04-13 05:08:55 -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 *** empty log message *** 2008-04-13 02:41:32 -04:00
valexpr.h *** empty log message *** 2008-04-13 02:41:32 -04:00
value.cc Added missing casts to amount_t. 2008-04-13 05:09:13 -04:00
value.h *** empty log message *** 2008-04-13 02:41:32 -04:00
walk.cc (handle_value): The transaction xdata.dflags were being set too late; the 2008-04-13 05:05:03 -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.