diff options
author | John Wiegley <johnw@newartisans.com> | 2010-03-05 22:12:32 -0500 |
---|---|---|
committer | John Wiegley <johnw@newartisans.com> | 2010-03-05 22:14:14 -0500 |
commit | 33187220891dd8826ff4d5a53b724b0058f6fef9 (patch) | |
tree | 79328965f8c183d92267ca46585d4640f72eb982 /src/journal.h | |
parent | dc1b3907207cc5ccf3d27a01aa877e841bf7ac6f (diff) | |
download | fork-ledger-33187220891dd8826ff4d5a53b724b0058f6fef9.tar.gz fork-ledger-33187220891dd8826ff4d5a53b724b0058f6fef9.tar.bz2 fork-ledger-33187220891dd8826ff4d5a53b724b0058f6fef9.zip |
Added new "payee" and "capture" directives
The payee directive allows for transformation of payee names during the
parsing of a Ledger file. This means you can record the payee name in
one form, but always have it reported in another form. The syntax is
(and will be):
payee PAYEE_NAME REGEXP
or
payee PAYEE_NAME
REGEXP1
REGEXP2
...
The account directive sets the account automatically based on the payee
iff the base account name is Unknown. For example, if you have a bunch
of transaction in Expenses:Unknown, you can assign accounts for several
automatically using:
account ACCOUNT_NAME PAYEE_REGEXP
or
account ACCOUNT_NAME
PAYEE_REGEXP1
PAYEE_REGEXP2
...
Diffstat (limited to 'src/journal.h')
-rw-r--r-- | src/journal.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/journal.h b/src/journal.h index 2711c3b5..e54814aa 100644 --- a/src/journal.h +++ b/src/journal.h @@ -44,6 +44,7 @@ #include "utils.h" #include "times.h" +#include "mask.h" namespace ledger { @@ -58,6 +59,11 @@ typedef std::list<xact_t *> xacts_list; typedef std::list<auto_xact_t *> auto_xacts_list; typedef std::list<period_xact_t *> period_xacts_list; +typedef std::pair<mask_t, string> payee_mapping_t; +typedef std::list<payee_mapping_t> payee_mappings_t; +typedef std::pair<mask_t, account_t *> account_mapping_t; +typedef std::list<account_mapping_t> account_mappings_t; + class journal_t : public noncopyable { public: @@ -110,6 +116,8 @@ public: period_xacts_list period_xacts; std::list<fileinfo_t> sources; bool was_loaded; + payee_mappings_t payee_mappings; + account_mappings_t account_mappings; journal_t(); journal_t(const path& pathname); |