Commit graph

601 commits

Author SHA1 Message Date
John Wiegley
47ff0b9fed Fixes to the way textual directives were parsed 2009-02-26 05:46:59 -04:00
John Wiegley
b302c340b6 Enriched the context report during textual parsing 2009-02-26 05:42:59 -04:00
John Wiegley
a0d8d84b87 Print more context if an automated xact fails 2009-02-26 05:39:13 -04:00
John Wiegley
f09c3906a2 Print better error msg if evaluating mask as bool 2009-02-26 05:35:57 -04:00
John Wiegley
69e2c733b9 If an item tag is already set, don't overwrite it 2009-02-26 05:33:06 -04:00
John Wiegley
badea00584 Added a warning_() macro 2009-02-26 05:30:48 -04:00
John Wiegley
87ec7bc34a Add error context while evaluating predicates 2009-02-26 05:02:49 -04:00
John Wiegley
fbb734689b Added a new source_context function 2009-02-26 04:41:38 -04:00
John Wiegley
d58797e98c The -B, -G, -V reports now show rounding amounts
This way, if the running total is off by a penny or two due to rounding
of one or more commodities in the account, the user will see it.

This commit also reorganizes the testing code a bit, which I did after
adding the ninth test series (ConfirmTests), to validate the new
rounding code.
2009-02-26 03:16:39 -04:00
John Wiegley
74e569e220 Added a truncated() method for amounts and values
When an amount is truncated, it drops all of the extra precision and
becomes exactly the value would have seen were it printed.
2009-02-26 00:10:08 -04:00
John Wiegley
247cf58bfa Allow sequences to be rounded and unrounded
The result is that every member of the sequence has the given operation
applied.
2009-02-25 23:42:31 -04:00
John Wiegley
55a6d588ff Allow uncommoditized amounts to +/- with an amount
Thus, you can say "$100 + 10" to increase it by $10.
2009-02-25 23:40:15 -04:00
Eugene Morozov
0667bc1a70 Fix for sensitive compilation environments. 2009-02-25 23:12:38 -04:00
John Wiegley
7e43b93782 Changed --exchange's short option from -x to -X 2009-02-25 13:52:17 -04:00
John Wiegley
238bd7f8a5 Marked all strings needing internationalization
These strings are now collected automagically in the file po/ledger.pot.
If you'd like to produce a translation, just run this command after
building Ledger:

    msginit -l LOCALE -o LANG.po -i po/ledger.pot

Where LOCALE is a string like de or en_GB, and LANG is a short
descriptive word for your language.

Then send me this .po file so I can commit it to the Ledger sources
(alternatively, you could maintain the file in a fork on GitHub), and
setup the build script to format and install your new message catalog
during a "make install".
2009-02-25 03:51:42 -04:00
John Wiegley
cdaba43fa7 Fixed the --gain option for balance reports 2009-02-25 02:07:57 -04:00
John Wiegley
ac8e27a4b8 Added a new --depth option 2009-02-25 01:15:53 -04:00
John Wiegley
76be843201 A slight improvement to the Python bindings 2009-02-24 22:13:46 -04:00
John Wiegley
5a194cbdf4 Allow value expressions access to session options 2009-02-24 22:10:41 -04:00
John Wiegley
23380aad04 Change behavior if "entry" ends with null account
A final null account (no amount specified) is now taken to be the "from"
account, not another "to" account.
2009-02-24 21:13:29 -04:00
John Wiegley
a8a87ab908 Added "date" valexpr to session, for bal -V 2009-02-24 21:07:05 -04:00
John Wiegley
6d880c2728 Removed some dead code 2009-02-24 20:25:49 -04:00
John Wiegley
45da776f96 Set the scope context in Scope.__getattr__(attr) 2009-02-24 20:01:46 -04:00
John Wiegley
0814c5a23f Added a new level of Python integration 2009-02-24 19:48:14 -04:00
John Wiegley
1799ed3a2a Moved python/*.cc files into src/
This is because soon, I intend to have real Python source files in
python/.
2009-02-24 16:08:49 -04:00
John Wiegley
5ad9bc3951 Propagate commodity flags in costs sometimes
If a commodity has never been seen before, and it is used in a cost
amount, remember the display flags.
2009-02-24 15:18:57 -04:00
John Wiegley
f13709f71a Be smarter about printing uncommoditized amounts 2009-02-24 15:13:21 -04:00
John Wiegley
1ecf62ce25 Output "@ AMOUNT" cost in the print report 2009-02-24 15:06:43 -04:00
John Wiegley
c4207a79d7 Allow any two amount values to be divided 2009-02-24 14:55:05 -04:00
John Wiegley
d396fa5145 Fixed an alignment bug in value context display 2009-02-24 14:53:33 -04:00
John Wiegley
38dd1b8655 Fixed an issue involving costs and reduced values 2009-02-24 13:29:08 -04:00
John Wiegley
ecf03b96a7 Removed the largely useless --performance option 2009-02-24 03:47:23 -04:00
John Wiegley
79c7478278 Fixes to the way annotated prices are displayed 2009-02-24 03:40:57 -04:00
John Wiegley
eb364f4183 Improved the way that entries are balanced 2009-02-24 03:03:04 -04:00
John Wiegley
267b2ba5d8 Made commodity reduction during parsing consistent 2009-02-24 02:40:28 -04:00
John Wiegley
2422838005 Restored the price conversion text directive (C) 2009-02-24 02:34:48 -04:00
John Wiegley
625b94cf04 Switched from using POST_AUTO to ITEM_GENERATED 2009-02-24 02:23:20 -04:00
John Wiegley
cb751913ef Fixed a minor bug in handling of automated xacts
There was a if statement with an inverse boolean meaning, which caused
some automated transaction postings to have a null amount.
2009-02-23 19:20:57 -04:00
John Wiegley
944c63e6f2 The Great Renaming, Part II
The last commit did not contain the majority of changes because of a
slight mishap.  This contains the real changeset.
2009-02-23 19:07:30 -04:00
John Wiegley
72a5e972c7 Always free memory at the end of a run
It turns out this is needed in order to properly close the pager
subprocess.
2009-02-23 17:28:13 -04:00
John Wiegley
4a43c22172 Restore the --gain option, for showing gain/loss 2009-02-23 15:47:09 -04:00
John Wiegley
f440fcd8b0 rounded() and quantity() act on the first value 2009-02-23 15:44:19 -04:00
John Wiegley
371fc62eec If interactive_t wants S, also accept bare values 2009-02-23 15:42:20 -04:00
John Wiegley
17fe4b752c If handle_value sees a sequence, make it compound 2009-02-23 15:39:18 -04:00
John Wiegley
a576842865 Added --revalued-total option, used by --gain
This option sets the total by which revalued transactions are
determined.  Only needed if the display total is not appropriate.
2009-02-23 15:37:39 -04:00
John Wiegley
aff7b56673 Added get_at and is_seq valexpr functions
These are for dealing with sequences.
2009-02-23 15:27:06 -04:00
John Wiegley
1406cbe853 Changed the constness of interactive_t::get<T> 2009-02-23 15:22:05 -04:00
John Wiegley
49d79045a5 Removed unused member keep_details_t::keep_base 2009-02-23 15:15:33 -04:00
John Wiegley
e919f53c99 Renamed O_COMMA to O_CONS, and changed semantics
In the old scheme, nested values would simply flatten and concatenate,
so that '((1, 2), 3) = (1, 2, 3)'.  Now sublists are preserved, so that
sequences may be passed as arguments to functions.
2009-02-23 15:04:07 -04:00
John Wiegley
9a44b8a547 Allow sequences to be compared to 0
It is true if every member of the sequence passes the test.
2009-02-23 14:49:03 -04:00