John Wiegley
4681e58d7f
Converted the Ledger build system to use CMake
2012-05-20 04:48:05 -05:00
John Wiegley
22505d9527
Always call TRACE_CTOR at the end of constructors
2012-03-20 02:10:40 -05:00
John Wiegley
22c1b867f0
Added option --day-break
2012-03-17 05:27:43 -05:00
John Wiegley
5e0efb5e8b
Fixed options processing of --value-expr
2012-03-09 20:16:44 -06:00
John Wiegley
022059f2a8
Added --value-expr option
2012-03-09 20:11:38 -06:00
John Wiegley
b0cf90ab50
Added int and str value expression functions
2012-03-09 01:29:11 -06:00
John Wiegley
a125f24d29
Allow --options to be added by the user in Python
2012-03-01 23:40:02 -06:00
John Wiegley
9ec9cdf41e
Started writing Python unit tests
2012-03-01 05:50:07 -06:00
John Wiegley
944e580825
Refactored the notion of "the current parsing context"
2012-03-01 03:31:28 -06:00
John Wiegley
e2afc783db
Increased file copyrights to 2012
2012-02-29 22:32:23 -06:00
John Wiegley
c1ab9cad30
--explicit wasn't being handled correctly
2012-02-27 12:37:53 -06:00
John Wiegley
5532a1a8b7
Added --check-payees option
2012-02-27 11:52:23 -06:00
John Wiegley
61bc7362ca
Added new account/payee/commodity directives
...
Also added supporting options: --explicit, --permissive, --pedantic, as
well as new behavior for --strict.
2012-02-27 02:31:09 -06:00
John Wiegley
f0791bbd72
Cleanup whitespace
2011-08-18 14:48:38 -04:00
John Wiegley
8388baafd3
Support Boost 1.46 and Boost.Filesystem v3
2011-02-28 16:24:15 -05:00
John Wiegley
c00188d6a8
Increase display precision of hours to 2 places
2010-12-12 19:13:44 -05:00
John Wiegley
1ee16304b4
Transactions no longer needed for budget/forecast
...
This means you can forecast or budget against a file containing only
periodic transactions.
2010-06-20 20:58:07 -04:00
John Wiegley
47e91a8a92
Added initial implementation of lot_*() functions
2010-06-14 04:40:39 -04:00
John Wiegley
dcffd218a1
Revised how Ledger handles the "current year"
...
Now when the Y directive sets the current year for a region, it affects
everything, as if the clock really were set back to that year.
2010-06-14 03:23:09 -04:00
John Wiegley
526cbc4c93
Restored min() and max() virtual functions
2010-06-13 23:35:22 -04:00
John Wiegley
ea1642b3f9
Completely reworked argument passing in expressions
2010-06-13 05:02:14 -04:00
John Wiegley
536e3e7322
Added a new scope_value() inline helper function
2010-06-13 01:03:48 -04:00
John Wiegley
15bf3ed39e
account(NAME) function can lookup account objects
...
For example, just the word "account" returns the name of the current
posting's account, but account("Expenses:Food") returns the actual
account object, so that it's total may be accessed.
2010-06-13 01:03:47 -04:00
John Wiegley
dea2aed0b5
Untabified all source files
2010-06-11 17:02:25 -04:00
John Wiegley
038c24357e
Changed --european option to --decimal-comma
...
Fixes #211 / 1736ACA5-5DE6-4826-AEB4-DB5B2A2217AC
2010-06-01 17:56:41 -04:00
John Wiegley
ab416f759f
Updated copyrights to 2003-2010
2010-03-05 22:14:10 -05:00
John Wiegley
4e30fcdf40
Many improvements to Ledger's Python bindings
2009-11-19 22:24:24 -05:00
John Wiegley
b2b0ae37e8
session_t now holds a std::auto_prt<journal_t>
2009-11-12 03:32:10 -05:00
John Wiegley
3f00f8362c
Don't use archive_t if boost_serialization unavailable
2009-11-06 16:17:30 -05:00
John Wiegley
a05d39b722
Renamed --set-reported-account to just --account
...
This fits better with the --amount and --total options, which both
change the amount and total used for calculation. Same with --account:
it happens after filtering, but before calculation so that balance
reports look as you'd expect.
2009-11-06 02:39:30 -05:00
John Wiegley
05d0f1a17f
The binary cache is working again
2009-11-06 02:07:56 -05:00
John Wiegley
34ee358f5e
Moved journal reading code into journal_t
2009-11-05 02:27:42 -05:00
John Wiegley
3dc200983d
Moved xdata clearing code into each type proper
2009-11-05 02:27:39 -05:00
John Wiegley
78e6770c4c
Segregated symbols into 5 separate namespaces
...
The different namespaces are:
Function Value expression functions, which receive a "context"
Option Command-line options
Precommand Commands which are invoked before reading the journal
Command Commands which are invoked after reading the journal
Directive Directives that occur at column 0 in a data file
This greatly eases the ability for Python uses to add intercept hooks to
change how the basic Ledger module functions. An example of what should
be possible soon:
import ledger
def my_foo_handler(value):
print "--foo received:", value
ledger.add_handler(ledger.Option, "foo=", my_foo_handler)
2009-11-04 20:40:48 -05:00
John Wiegley
d9963b0312
Removed an unnecessary comment
2009-11-03 14:51:22 -05:00
John Wiegley
094794c640
Added a --european flag, to use commas for decimals
...
Ledger can often figure this out for itself, but this flag just makes it
the default behavior. It is meant to be added to one's ~/.ledgerrc
file.
2009-11-02 02:39:31 -05:00
John Wiegley
977e7db164
Improved archive header logic for cache files
2009-11-01 06:01:21 -05:00
John Wiegley
3909d2678e
Removed most #if 0 blocks and callout comments
2009-10-31 04:50:07 -04:00
John Wiegley
a0a980b9f4
Don't add price_db to sources if it doesn't exist
2009-10-31 04:15:29 -04:00
John Wiegley
2149a8e773
Create a --cache option, for using a binary cache
2009-10-31 00:09:57 -04:00
John Wiegley
63aa8992a8
Moved ownership of master account into journal_t
...
The journal_t now completely represents the data part of a session.
2009-10-30 19:03:28 -04:00
John Wiegley
a757b19f51
Added serialization methods for most type
...
This allows journal_t objects to be completed serialized to disk and
deserialized.
2009-10-30 18:06:37 -04:00
John Wiegley
55f5868380
Setting --date-format in ~/.ledgerrc works again
2009-10-29 00:52:51 -04:00
John Wiegley
8b3a75fbbf
The default ledger file is now ~/.ledger
2009-10-28 01:50:55 -04:00
John Wiegley
fc84eeb358
Rewrote the way date and time I/O is managed
2009-10-25 05:01:47 -04:00
John Wiegley
991e3a3eaf
Split commodity.h/cc into three files
...
commodity.h - code for commodity_t
annotate.h - commodity annotations
pool.h - commodity pool management
2009-06-24 16:43:46 +01:00
John Wiegley
440124eacc
Restored --download, although not done yet
...
The problem at this point is that it's recording prices in the price
database multiple times; it should only need to download a price for
each commodity once per day.
2009-06-24 02:44:07 +01:00
John Wiegley
521b935aa8
Restored --percent option, added baseline test
2009-06-21 18:07:27 +01:00
John Wiegley
3a926da4cb
When --end is used, set a "terminus" date
...
This means that final balance valuations (with -V or -X) will be done in
terms of the date given to --end, rather than based on the current day.
Fixes 647D5DB9-DBBB-47C8-80CE-F3F70E3B0253
2009-06-16 18:49:27 +01:00
John Wiegley
c79fd9e72d
Added new debug option --options
...
This reports which options are in place before invoking a command, and
where exactly each option value came from.
2009-06-02 19:14:46 +01:00