parent
							
								
									9501b43471
								
							
						
					
					
						commit
						079e76a370
					
				| @ -92,8 +92,8 @@ m4_define({{_inputoptions_}}, {{ | |||||||
| `--anon` | `--anon` | ||||||
| : anonymize accounts and payees | : anonymize accounts and payees | ||||||
| 
 | 
 | ||||||
| `--pivot TAGNAME` | `--pivot FIELDNAME` | ||||||
| : use some other field/tag for account names | : use some other field or tag for the account name | ||||||
| 
 | 
 | ||||||
| `-I --ignore-assertions` | `-I --ignore-assertions` | ||||||
| : ignore any failing balance assertions | : ignore any failing balance assertions | ||||||
|  | |||||||
| @ -77,7 +77,10 @@ This can be followed by any of the following, separated by spaces: | |||||||
| parentheses) | parentheses) | ||||||
| .IP \[bu] 2 | .IP \[bu] 2 | ||||||
| (optional) a transaction description (any remaining text until end of | (optional) a transaction description (any remaining text until end of | ||||||
| line) | line or a semicolon) | ||||||
|  | .IP \[bu] 2 | ||||||
|  | (optional) a transaction comment (any remaining text following a | ||||||
|  | semicolon until end of line) | ||||||
| .PP | .PP | ||||||
| Then comes zero or more (but usually at least 2) indented lines | Then comes zero or more (but usually at least 2) indented lines | ||||||
| representing... | representing... | ||||||
| @ -300,6 +303,23 @@ With this scheme, you would use \f[C]\-PC\f[] to see the current balance | |||||||
| at your bank, \f[C]\-U\f[] to see things which will probably hit your | at your bank, \f[C]\-U\f[] to see things which will probably hit your | ||||||
| bank soon (like uncashed checks), and no flags to see the most | bank soon (like uncashed checks), and no flags to see the most | ||||||
| up\-to\-date state of your finances. | up\-to\-date state of your finances. | ||||||
|  | .SS Description, payee and note | ||||||
|  | .PP | ||||||
|  | As mentioned, a transaction\[aq]s description is the rest of the line | ||||||
|  | following the date and status mark (or, the rest of line until a comment | ||||||
|  | begins). | ||||||
|  | Sometimes called the "narration" in traditional bookkeeping, it can be | ||||||
|  | used for whatever you wish, or left blank. | ||||||
|  | The description can be queried, unlike comments. | ||||||
|  | .PP | ||||||
|  | Including a \f[C]|\f[] (pipe) character in the description will | ||||||
|  | subdivide it into a payee/payer name (on the left) and additional notes | ||||||
|  | (on the right). | ||||||
|  | This is entirely optional, but it can allow more precise | ||||||
|  | .PD 0 | ||||||
|  | .P | ||||||
|  | .PD | ||||||
|  | querying and pivoting. | ||||||
| .SS Account names | .SS Account names | ||||||
| .PP | .PP | ||||||
| Account names typically have several parts separated by a full colon, | Account names typically have several parts separated by a full colon, | ||||||
| @ -797,24 +817,6 @@ For example, the following transaction has three tags (\f[C]A\f[], | |||||||
| .PP | .PP | ||||||
| Tags are like Ledger\[aq]s metadata feature, except hledger\[aq]s tag | Tags are like Ledger\[aq]s metadata feature, except hledger\[aq]s tag | ||||||
| values are simple strings. | values are simple strings. | ||||||
| .SS Implicit tags |  | ||||||
| .PP |  | ||||||
| Some predefined "implicit" tags are also provided: |  | ||||||
| .IP \[bu] 2 |  | ||||||
| \f[C]code\f[] \- the transaction\[aq]s code field |  | ||||||
| .IP \[bu] 2 |  | ||||||
| \f[C]description\f[] \- the transaction\[aq]s description |  | ||||||
| .IP \[bu] 2 |  | ||||||
| \f[C]payee\f[] \- the part of description before \f[C]|\f[], or all of |  | ||||||
| it |  | ||||||
| .IP \[bu] 2 |  | ||||||
| \f[C]note\f[] \- the part of description after \f[C]|\f[], or all of it |  | ||||||
| .PP |  | ||||||
| \f[C]payee\f[] and \f[C]note\f[] support descriptions written in a |  | ||||||
| special \f[C]PAYEE\ |\ NOTE\f[] format, accessing the parts before and |  | ||||||
| after the pipe character respectively. |  | ||||||
| For descriptions not containing a pipe character they are the same as |  | ||||||
| \f[C]description\f[]. |  | ||||||
| .SS Directives | .SS Directives | ||||||
| .SS Account aliases | .SS Account aliases | ||||||
| .PP | .PP | ||||||
|  | |||||||
| @ -71,6 +71,7 @@ File: hledger_journal.5.info,  Node: FILE FORMAT,  Next: EDITOR SUPPORT,  Prev: | |||||||
| * Postings:: | * Postings:: | ||||||
| * Dates:: | * Dates:: | ||||||
| * Status:: | * Status:: | ||||||
|  | * Description payee and note:: | ||||||
| * Account names:: | * Account names:: | ||||||
| * Amounts:: | * Amounts:: | ||||||
| * Virtual Postings:: | * Virtual Postings:: | ||||||
| @ -96,7 +97,9 @@ following, separated by spaces: | |||||||
|    * (optional) a transaction code (any short number or text, enclosed |    * (optional) a transaction code (any short number or text, enclosed | ||||||
|      in parentheses) |      in parentheses) | ||||||
|    * (optional) a transaction description (any remaining text until end |    * (optional) a transaction description (any remaining text until end | ||||||
|      of line) |      of line or a semicolon) | ||||||
|  |    * (optional) a transaction comment (any remaining text following a | ||||||
|  |      semicolon until end of line) | ||||||
| 
 | 
 | ||||||
|    Then comes zero or more (but usually at least 2) indented lines |    Then comes zero or more (but usually at least 2) indented lines | ||||||
| representing... | representing... | ||||||
| @ -231,7 +234,7 @@ characters in this way.  With this syntax, DATE infers its year from the | |||||||
| transaction and DATE2 infers its year from DATE. | transaction and DATE2 infers its year from DATE. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Status,  Next: Account names,  Prev: Dates,  Up: FILE FORMAT | File: hledger_journal.5.info,  Node: Status,  Next: Description payee and note,  Prev: Dates,  Up: FILE FORMAT | ||||||
| 
 | 
 | ||||||
| 1.4 Status | 1.4 Status | ||||||
| ========== | ========== | ||||||
| @ -281,9 +284,26 @@ your bank, '-U' to see things which will probably hit your bank soon | |||||||
| your finances. | your finances. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Account names,  Next: Amounts,  Prev: Status,  Up: FILE FORMAT | File: hledger_journal.5.info,  Node: Description payee and note,  Next: Account names,  Prev: Status,  Up: FILE FORMAT | ||||||
| 
 | 
 | ||||||
| 1.5 Account names | 1.5 Description, payee and note | ||||||
|  | =============================== | ||||||
|  | 
 | ||||||
|  | As mentioned, a transaction's description is the rest of the line | ||||||
|  | following the date and status mark (or, the rest of line until a comment | ||||||
|  | begins).  Sometimes called the "narration" in traditional bookkeeping, | ||||||
|  | it can be used for whatever you wish, or left blank.  The description | ||||||
|  | can be queried, unlike comments. | ||||||
|  | 
 | ||||||
|  |    Including a '|' (pipe) character in the description will subdivide it | ||||||
|  | into a payee/payer name (on the left) and additional notes (on the | ||||||
|  | right).  This is entirely optional, but it can allow more precise | ||||||
|  | querying and pivoting. | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | File: hledger_journal.5.info,  Node: Account names,  Next: Amounts,  Prev: Description payee and note,  Up: FILE FORMAT | ||||||
|  | 
 | ||||||
|  | 1.6 Account names | ||||||
| ================= | ================= | ||||||
| 
 | 
 | ||||||
| Account names typically have several parts separated by a full colon, | Account names typically have several parts separated by a full colon, | ||||||
| @ -301,7 +321,7 @@ more spaces* (or newline). | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Amounts,  Next: Virtual Postings,  Prev: Account names,  Up: FILE FORMAT | File: hledger_journal.5.info,  Node: Amounts,  Next: Virtual Postings,  Prev: Account names,  Up: FILE FORMAT | ||||||
| 
 | 
 | ||||||
| 1.6 Amounts | 1.7 Amounts | ||||||
| =========== | =========== | ||||||
| 
 | 
 | ||||||
| After the account name, there is usually an amount.  Important: between | After the account name, there is usually an amount.  Important: between | ||||||
| @ -356,7 +376,7 @@ format with a commodity directive. | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Virtual Postings,  Next: Balance Assertions,  Prev: Amounts,  Up: FILE FORMAT | File: hledger_journal.5.info,  Node: Virtual Postings,  Next: Balance Assertions,  Prev: Amounts,  Up: FILE FORMAT | ||||||
| 
 | 
 | ||||||
| 1.7 Virtual Postings | 1.8 Virtual Postings | ||||||
| ==================== | ==================== | ||||||
| 
 | 
 | ||||||
| When you parenthesise the account name in a posting, we call that a | When you parenthesise the account name in a posting, we call that a | ||||||
| @ -391,7 +411,7 @@ is more correct and provides better error checking. | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Balance Assertions,  Next: Balance Assignments,  Prev: Virtual Postings,  Up: FILE FORMAT | File: hledger_journal.5.info,  Node: Balance Assertions,  Next: Balance Assignments,  Prev: Virtual Postings,  Up: FILE FORMAT | ||||||
| 
 | 
 | ||||||
| 1.8 Balance Assertions | 1.9 Balance Assertions | ||||||
| ====================== | ====================== | ||||||
| 
 | 
 | ||||||
| hledger supports Ledger-style balance assertions in journal files. | hledger supports Ledger-style balance assertions in journal files. | ||||||
| @ -425,7 +445,7 @@ or for reading Ledger files. | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Assertions and ordering,  Next: Assertions and included files,  Up: Balance Assertions | File: hledger_journal.5.info,  Node: Assertions and ordering,  Next: Assertions and included files,  Up: Balance Assertions | ||||||
| 
 | 
 | ||||||
| 1.8.1 Assertions and ordering | 1.9.1 Assertions and ordering | ||||||
| ----------------------------- | ----------------------------- | ||||||
| 
 | 
 | ||||||
| hledger sorts an account's postings and assertions first by date and | hledger sorts an account's postings and assertions first by date and | ||||||
| @ -444,7 +464,7 @@ can assert intra-day balances. | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Assertions and included files,  Next: Assertions and multiple -f options,  Prev: Assertions and ordering,  Up: Balance Assertions | File: hledger_journal.5.info,  Node: Assertions and included files,  Next: Assertions and multiple -f options,  Prev: Assertions and ordering,  Up: Balance Assertions | ||||||
| 
 | 
 | ||||||
| 1.8.2 Assertions and included files | 1.9.2 Assertions and included files | ||||||
| ----------------------------------- | ----------------------------------- | ||||||
| 
 | 
 | ||||||
| With included files, things are a little more complicated.  Including | With included files, things are a little more complicated.  Including | ||||||
| @ -456,7 +476,7 @@ you'll have to put the assertion in the right file. | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Assertions and multiple -f options,  Next: Assertions and commodities,  Prev: Assertions and included files,  Up: Balance Assertions | File: hledger_journal.5.info,  Node: Assertions and multiple -f options,  Next: Assertions and commodities,  Prev: Assertions and included files,  Up: Balance Assertions | ||||||
| 
 | 
 | ||||||
| 1.8.3 Assertions and multiple -f options | 1.9.3 Assertions and multiple -f options | ||||||
| ---------------------------------------- | ---------------------------------------- | ||||||
| 
 | 
 | ||||||
| Balance assertions don't work well across files specified with multiple | Balance assertions don't work well across files specified with multiple | ||||||
| @ -465,7 +485,7 @@ Balance assertions don't work well across files specified with multiple | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Assertions and commodities,  Next: Assertions and subaccounts,  Prev: Assertions and multiple -f options,  Up: Balance Assertions | File: hledger_journal.5.info,  Node: Assertions and commodities,  Next: Assertions and subaccounts,  Prev: Assertions and multiple -f options,  Up: Balance Assertions | ||||||
| 
 | 
 | ||||||
| 1.8.4 Assertions and commodities | 1.9.4 Assertions and commodities | ||||||
| -------------------------------- | -------------------------------- | ||||||
| 
 | 
 | ||||||
| The asserted balance must be a simple single-commodity amount, and in | The asserted balance must be a simple single-commodity amount, and in | ||||||
| @ -484,7 +504,7 @@ for this kind of total balance assertion if there's demand.) | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Assertions and subaccounts,  Next: Assertions and virtual postings,  Prev: Assertions and commodities,  Up: Balance Assertions | File: hledger_journal.5.info,  Node: Assertions and subaccounts,  Next: Assertions and virtual postings,  Prev: Assertions and commodities,  Up: Balance Assertions | ||||||
| 
 | 
 | ||||||
| 1.8.5 Assertions and subaccounts | 1.9.5 Assertions and subaccounts | ||||||
| -------------------------------- | -------------------------------- | ||||||
| 
 | 
 | ||||||
| Balance assertions do not count the balance from subaccounts; they check | Balance assertions do not count the balance from subaccounts; they check | ||||||
| @ -507,7 +527,7 @@ $ hledger bal checking --flat | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Assertions and virtual postings,  Prev: Assertions and subaccounts,  Up: Balance Assertions | File: hledger_journal.5.info,  Node: Assertions and virtual postings,  Prev: Assertions and subaccounts,  Up: Balance Assertions | ||||||
| 
 | 
 | ||||||
| 1.8.6 Assertions and virtual postings | 1.9.6 Assertions and virtual postings | ||||||
| ------------------------------------- | ------------------------------------- | ||||||
| 
 | 
 | ||||||
| Balance assertions are checked against all postings, both real and | Balance assertions are checked against all postings, both real and | ||||||
| @ -517,8 +537,8 @@ query. | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Balance Assignments,  Next: Prices,  Prev: Balance Assertions,  Up: FILE FORMAT | File: hledger_journal.5.info,  Node: Balance Assignments,  Next: Prices,  Prev: Balance Assertions,  Up: FILE FORMAT | ||||||
| 
 | 
 | ||||||
| 1.9 Balance Assignments | 1.10 Balance Assignments | ||||||
| ======================= | ======================== | ||||||
| 
 | 
 | ||||||
| Ledger-style balance assignments are also supported.  These are like | Ledger-style balance assignments are also supported.  These are like | ||||||
| balance assertions, but with no posting amount on the left side of the | balance assertions, but with no posting amount on the left side of the | ||||||
| @ -550,7 +570,7 @@ hledger or do the calculations yourself, instead of just reading it. | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Prices,  Next: Comments,  Prev: Balance Assignments,  Up: FILE FORMAT | File: hledger_journal.5.info,  Node: Prices,  Next: Comments,  Prev: Balance Assignments,  Up: FILE FORMAT | ||||||
| 
 | 
 | ||||||
| 1.10 Prices | 1.11 Prices | ||||||
| =========== | =========== | ||||||
| 
 | 
 | ||||||
| * Menu: | * Menu: | ||||||
| @ -561,7 +581,7 @@ File: hledger_journal.5.info,  Node: Prices,  Next: Comments,  Prev: Balance Ass | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Transaction prices,  Next: Market prices,  Up: Prices | File: hledger_journal.5.info,  Node: Transaction prices,  Next: Market prices,  Up: Prices | ||||||
| 
 | 
 | ||||||
| 1.10.1 Transaction prices | 1.11.1 Transaction prices | ||||||
| ------------------------- | ------------------------- | ||||||
| 
 | 
 | ||||||
| Within a transaction, you can note an amount's price in another | Within a transaction, you can note an amount's price in another | ||||||
| @ -622,7 +642,7 @@ $ hledger bal -N --flat -B | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Market prices,  Prev: Transaction prices,  Up: Prices | File: hledger_journal.5.info,  Node: Market prices,  Prev: Transaction prices,  Up: Prices | ||||||
| 
 | 
 | ||||||
| 1.10.2 Market prices | 1.11.2 Market prices | ||||||
| -------------------- | -------------------- | ||||||
| 
 | 
 | ||||||
| Market prices are not tied to a particular transaction; they represent | Market prices are not tied to a particular transaction; they represent | ||||||
| @ -651,7 +671,7 @@ P 2010/1/1 € $1.40 | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Comments,  Next: Tags,  Prev: Prices,  Up: FILE FORMAT | File: hledger_journal.5.info,  Node: Comments,  Next: Tags,  Prev: Prices,  Up: FILE FORMAT | ||||||
| 
 | 
 | ||||||
| 1.11 Comments | 1.12 Comments | ||||||
| ============= | ============= | ||||||
| 
 | 
 | ||||||
| Lines in the journal beginning with a semicolon (';') or hash ('#') or | Lines in the journal beginning with a semicolon (';') or hash ('#') or | ||||||
| @ -691,7 +711,7 @@ end comment | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Tags,  Next: Directives,  Prev: Comments,  Up: FILE FORMAT | File: hledger_journal.5.info,  Node: Tags,  Next: Directives,  Prev: Comments,  Up: FILE FORMAT | ||||||
| 
 | 
 | ||||||
| 1.12 Tags | 1.13 Tags | ||||||
| ========= | ========= | ||||||
| 
 | 
 | ||||||
| Tags are a way to add extra labels or labelled data to postings and | Tags are a way to add extra labels or labelled data to postings and | ||||||
| @ -730,32 +750,11 @@ example, the following transaction has three tags ('A', 'TAG2', | |||||||
| 
 | 
 | ||||||
|    Tags are like Ledger's metadata feature, except hledger's tag values |    Tags are like Ledger's metadata feature, except hledger's tag values | ||||||
| are simple strings. | are simple strings. | ||||||
| * Menu: |  | ||||||
| 
 |  | ||||||
| * Implicit tags:: |  | ||||||
| 
 |  | ||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Implicit tags,  Up: Tags |  | ||||||
| 
 |  | ||||||
| 1.12.1 Implicit tags |  | ||||||
| -------------------- |  | ||||||
| 
 |  | ||||||
| Some predefined "implicit" tags are also provided: |  | ||||||
| 
 |  | ||||||
|    * 'code' - the transaction's code field |  | ||||||
|    * 'description' - the transaction's description |  | ||||||
|    * 'payee' - the part of description before '|', or all of it |  | ||||||
|    * 'note' - the part of description after '|', or all of it |  | ||||||
| 
 |  | ||||||
|    'payee' and 'note' support descriptions written in a special 'PAYEE | |  | ||||||
| NOTE' format, accessing the parts before and after the pipe character |  | ||||||
| respectively.  For descriptions not containing a pipe character they are |  | ||||||
| the same as 'description'. |  | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Directives,  Prev: Tags,  Up: FILE FORMAT | File: hledger_journal.5.info,  Node: Directives,  Prev: Tags,  Up: FILE FORMAT | ||||||
| 
 | 
 | ||||||
| 1.13 Directives | 1.14 Directives | ||||||
| =============== | =============== | ||||||
| 
 | 
 | ||||||
| * Menu: | * Menu: | ||||||
| @ -772,7 +771,7 @@ File: hledger_journal.5.info,  Node: Directives,  Prev: Tags,  Up: FILE FORMAT | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Account aliases,  Next: account directive,  Up: Directives | File: hledger_journal.5.info,  Node: Account aliases,  Next: account directive,  Up: Directives | ||||||
| 
 | 
 | ||||||
| 1.13.1 Account aliases | 1.14.1 Account aliases | ||||||
| ---------------------- | ---------------------- | ||||||
| 
 | 
 | ||||||
| You can define aliases which rewrite your account names (after reading | You can define aliases which rewrite your account names (after reading | ||||||
| @ -797,7 +796,7 @@ be useful for: | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Basic aliases,  Next: Regex aliases,  Up: Account aliases | File: hledger_journal.5.info,  Node: Basic aliases,  Next: Regex aliases,  Up: Account aliases | ||||||
| 
 | 
 | ||||||
| 1.13.1.1 Basic aliases | 1.14.1.1 Basic aliases | ||||||
| ...................... | ...................... | ||||||
| 
 | 
 | ||||||
| To set an account alias, use the 'alias' directive in your journal file. | To set an account alias, use the 'alias' directive in your journal file. | ||||||
| @ -820,7 +819,7 @@ alias checking = assets:bank:wells fargo:checking | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Regex aliases,  Next: Multiple aliases,  Prev: Basic aliases,  Up: Account aliases | File: hledger_journal.5.info,  Node: Regex aliases,  Next: Multiple aliases,  Prev: Basic aliases,  Up: Account aliases | ||||||
| 
 | 
 | ||||||
| 1.13.1.2 Regex aliases | 1.14.1.2 Regex aliases | ||||||
| ...................... | ...................... | ||||||
| 
 | 
 | ||||||
| There is also a more powerful variant that uses a regular expression, | There is also a more powerful variant that uses a regular expression, | ||||||
| @ -843,7 +842,7 @@ alias /^(.+):bank:([^:]+)(.*)/ = \1:\2 \3 | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Multiple aliases,  Next: end aliases,  Prev: Regex aliases,  Up: Account aliases | File: hledger_journal.5.info,  Node: Multiple aliases,  Next: end aliases,  Prev: Regex aliases,  Up: Account aliases | ||||||
| 
 | 
 | ||||||
| 1.13.1.3 Multiple aliases | 1.14.1.3 Multiple aliases | ||||||
| ......................... | ......................... | ||||||
| 
 | 
 | ||||||
| You can define as many aliases as you like using directives or | You can define as many aliases as you like using directives or | ||||||
| @ -859,7 +858,7 @@ following order: | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: end aliases,  Prev: Multiple aliases,  Up: Account aliases | File: hledger_journal.5.info,  Node: end aliases,  Prev: Multiple aliases,  Up: Account aliases | ||||||
| 
 | 
 | ||||||
| 1.13.1.4 end aliases | 1.14.1.4 end aliases | ||||||
| .................... | .................... | ||||||
| 
 | 
 | ||||||
| You can clear (forget) all currently defined aliases with the 'end | You can clear (forget) all currently defined aliases with the 'end | ||||||
| @ -870,7 +869,7 @@ end aliases | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: account directive,  Next: apply account directive,  Prev: Account aliases,  Up: Directives | File: hledger_journal.5.info,  Node: account directive,  Next: apply account directive,  Prev: Account aliases,  Up: Directives | ||||||
| 
 | 
 | ||||||
| 1.13.2 account directive | 1.14.2 account directive | ||||||
| ------------------------ | ------------------------ | ||||||
| 
 | 
 | ||||||
| The 'account' directive predefines account names, as in Ledger and | The 'account' directive predefines account names, as in Ledger and | ||||||
| @ -891,7 +890,7 @@ account expenses:food | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: apply account directive,  Next: Multi-line comments,  Prev: account directive,  Up: Directives | File: hledger_journal.5.info,  Node: apply account directive,  Next: Multi-line comments,  Prev: account directive,  Up: Directives | ||||||
| 
 | 
 | ||||||
| 1.13.3 apply account directive | 1.14.3 apply account directive | ||||||
| ------------------------------ | ------------------------------ | ||||||
| 
 | 
 | ||||||
| You can specify a parent account which will be prepended to all accounts | You can specify a parent account which will be prepended to all accounts | ||||||
| @ -927,7 +926,7 @@ supported. | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Multi-line comments,  Next: commodity directive,  Prev: apply account directive,  Up: Directives | File: hledger_journal.5.info,  Node: Multi-line comments,  Next: commodity directive,  Prev: apply account directive,  Up: Directives | ||||||
| 
 | 
 | ||||||
| 1.13.4 Multi-line comments | 1.14.4 Multi-line comments | ||||||
| -------------------------- | -------------------------- | ||||||
| 
 | 
 | ||||||
| A line containing just 'comment' starts a multi-line comment, and a line | A line containing just 'comment' starts a multi-line comment, and a line | ||||||
| @ -936,7 +935,7 @@ containing just 'end comment' ends it.  See comments. | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: commodity directive,  Next: Default commodity,  Prev: Multi-line comments,  Up: Directives | File: hledger_journal.5.info,  Node: commodity directive,  Next: Default commodity,  Prev: Multi-line comments,  Up: Directives | ||||||
| 
 | 
 | ||||||
| 1.13.5 commodity directive | 1.14.5 commodity directive | ||||||
| -------------------------- | -------------------------- | ||||||
| 
 | 
 | ||||||
| The 'commodity' directive predefines commodities (currently this is just | The 'commodity' directive predefines commodities (currently this is just | ||||||
| @ -968,7 +967,7 @@ commodity INR | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Default commodity,  Next: Default year,  Prev: commodity directive,  Up: Directives | File: hledger_journal.5.info,  Node: Default commodity,  Next: Default year,  Prev: commodity directive,  Up: Directives | ||||||
| 
 | 
 | ||||||
| 1.13.6 Default commodity | 1.14.6 Default commodity | ||||||
| ------------------------ | ------------------------ | ||||||
| 
 | 
 | ||||||
| The D directive sets a default commodity (and display format), to be | The D directive sets a default commodity (and display format), to be | ||||||
| @ -988,7 +987,7 @@ D $1,000.00 | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Default year,  Next: Including other files,  Prev: Default commodity,  Up: Directives | File: hledger_journal.5.info,  Node: Default year,  Next: Including other files,  Prev: Default commodity,  Up: Directives | ||||||
| 
 | 
 | ||||||
| 1.13.7 Default year | 1.14.7 Default year | ||||||
| ------------------- | ------------------- | ||||||
| 
 | 
 | ||||||
| You can set a default year to be used for subsequent dates which don't | You can set a default year to be used for subsequent dates which don't | ||||||
| @ -1014,7 +1013,7 @@ Y2010      ; change default year to 2010 | |||||||
|  |  | ||||||
| File: hledger_journal.5.info,  Node: Including other files,  Prev: Default year,  Up: Directives | File: hledger_journal.5.info,  Node: Including other files,  Prev: Default year,  Up: Directives | ||||||
| 
 | 
 | ||||||
| 1.13.8 Including other files | 1.14.8 Including other files | ||||||
| ---------------------------- | ---------------------------- | ||||||
| 
 | 
 | ||||||
| You can pull in the content of additional journal files by writing an | You can pull in the content of additional journal files by writing an | ||||||
| @ -1055,81 +1054,81 @@ Tag Table: | |||||||
| Node: Top78 | Node: Top78 | ||||||
| Node: FILE FORMAT2380 | Node: FILE FORMAT2380 | ||||||
| Ref: #file-format2506 | Ref: #file-format2506 | ||||||
| Node: Transactions2713 | Node: Transactions2744 | ||||||
| Ref: #transactions2836 | Ref: #transactions2867 | ||||||
| Node: Postings3401 | Node: Postings3551 | ||||||
| Ref: #postings3530 | Ref: #postings3680 | ||||||
| Node: Dates4525 | Node: Dates4675 | ||||||
| Ref: #dates4642 | Ref: #dates4792 | ||||||
| Node: Simple dates4707 | Node: Simple dates4857 | ||||||
| Ref: #simple-dates4835 | Ref: #simple-dates4985 | ||||||
| Node: Secondary dates5201 | Node: Secondary dates5351 | ||||||
| Ref: #secondary-dates5357 | Ref: #secondary-dates5507 | ||||||
| Node: Posting dates6920 | Node: Posting dates7070 | ||||||
| Ref: #posting-dates7051 | Ref: #posting-dates7201 | ||||||
| Node: Status8425 | Node: Status8575 | ||||||
| Ref: #status8549 | Ref: #status8712 | ||||||
| Node: Account names10263 | Node: Description payee and note10426 | ||||||
| Ref: #account-names10403 | Ref: #description-payee-and-note10613 | ||||||
| Node: Amounts10890 | Node: Account names11157 | ||||||
| Ref: #amounts11028 | Ref: #account-names11317 | ||||||
| Node: Virtual Postings13129 | Node: Amounts11804 | ||||||
| Ref: #virtual-postings13290 | Ref: #amounts11942 | ||||||
| Node: Balance Assertions14510 | Node: Virtual Postings14043 | ||||||
| Ref: #balance-assertions14687 | Ref: #virtual-postings14204 | ||||||
| Node: Assertions and ordering15583 | Node: Balance Assertions15424 | ||||||
| Ref: #assertions-and-ordering15771 | Ref: #balance-assertions15601 | ||||||
| Node: Assertions and included files16471 | Node: Assertions and ordering16497 | ||||||
| Ref: #assertions-and-included-files16714 | Ref: #assertions-and-ordering16685 | ||||||
| Node: Assertions and multiple -f options17047 | Node: Assertions and included files17385 | ||||||
| Ref: #assertions-and-multiple--f-options17303 | Ref: #assertions-and-included-files17628 | ||||||
| Node: Assertions and commodities17435 | Node: Assertions and multiple -f options17961 | ||||||
| Ref: #assertions-and-commodities17672 | Ref: #assertions-and-multiple--f-options18217 | ||||||
| Node: Assertions and subaccounts18368 | Node: Assertions and commodities18349 | ||||||
| Ref: #assertions-and-subaccounts18602 | Ref: #assertions-and-commodities18586 | ||||||
| Node: Assertions and virtual postings19123 | Node: Assertions and subaccounts19282 | ||||||
| Ref: #assertions-and-virtual-postings19332 | Ref: #assertions-and-subaccounts19516 | ||||||
| Node: Balance Assignments19474 | Node: Assertions and virtual postings20037 | ||||||
| Ref: #balance-assignments19643 | Ref: #assertions-and-virtual-postings20246 | ||||||
| Node: Prices20762 | Node: Balance Assignments20388 | ||||||
| Ref: #prices20897 | Ref: #balance-assignments20559 | ||||||
| Node: Transaction prices20948 | Node: Prices21678 | ||||||
| Ref: #transaction-prices21095 | Ref: #prices21813 | ||||||
| Node: Market prices23251 | Node: Transaction prices21864 | ||||||
| Ref: #market-prices23388 | Ref: #transaction-prices22011 | ||||||
| Node: Comments24348 | Node: Market prices24167 | ||||||
| Ref: #comments24472 | Ref: #market-prices24304 | ||||||
| Node: Tags25585 | Node: Comments25264 | ||||||
| Ref: #tags25705 | Ref: #comments25388 | ||||||
| Node: Implicit tags27134 | Node: Tags26501 | ||||||
| Ref: #implicit-tags27242 | Ref: #tags26621 | ||||||
| Node: Directives27759 | Node: Directives28023 | ||||||
| Ref: #directives27874 | Ref: #directives28138 | ||||||
| Node: Account aliases28067 | Node: Account aliases28331 | ||||||
| Ref: #account-aliases28213 | Ref: #account-aliases28477 | ||||||
| Node: Basic aliases28817 | Node: Basic aliases29081 | ||||||
| Ref: #basic-aliases28962 | Ref: #basic-aliases29226 | ||||||
| Node: Regex aliases29652 | Node: Regex aliases29916 | ||||||
| Ref: #regex-aliases29822 | Ref: #regex-aliases30086 | ||||||
| Node: Multiple aliases30537 | Node: Multiple aliases30801 | ||||||
| Ref: #multiple-aliases30711 | Ref: #multiple-aliases30975 | ||||||
| Node: end aliases31209 | Node: end aliases31473 | ||||||
| Ref: #end-aliases31351 | Ref: #end-aliases31615 | ||||||
| Node: account directive31452 | Node: account directive31716 | ||||||
| Ref: #account-directive31634 | Ref: #account-directive31898 | ||||||
| Node: apply account directive31930 | Node: apply account directive32194 | ||||||
| Ref: #apply-account-directive32128 | Ref: #apply-account-directive32392 | ||||||
| Node: Multi-line comments32787 | Node: Multi-line comments33051 | ||||||
| Ref: #multi-line-comments32979 | Ref: #multi-line-comments33243 | ||||||
| Node: commodity directive33107 | Node: commodity directive33371 | ||||||
| Ref: #commodity-directive33293 | Ref: #commodity-directive33557 | ||||||
| Node: Default commodity34165 | Node: Default commodity34429 | ||||||
| Ref: #default-commodity34340 | Ref: #default-commodity34604 | ||||||
| Node: Default year34877 | Node: Default year35141 | ||||||
| Ref: #default-year35044 | Ref: #default-year35308 | ||||||
| Node: Including other files35467 | Node: Including other files35731 | ||||||
| Ref: #including-other-files35626 | Ref: #including-other-files35890 | ||||||
| Node: EDITOR SUPPORT36023 | Node: EDITOR SUPPORT36287 | ||||||
| Ref: #editor-support36143 | Ref: #editor-support36407 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
|  | |||||||
| @ -75,7 +75,8 @@ This can be followed by any of the following, separated by spaces: | |||||||
| 
 | 
 | ||||||
| - (optional) a [status](#status) character (empty, `!`, or `*`)  | - (optional) a [status](#status) character (empty, `!`, or `*`)  | ||||||
| - (optional) a transaction code (any short number or text, enclosed in parentheses) | - (optional) a transaction code (any short number or text, enclosed in parentheses) | ||||||
| - (optional) a transaction description (any remaining text until end of line) | - (optional) a transaction description (any remaining text until end of line or a semicolon) | ||||||
|  | - (optional) a transaction comment (any remaining text following a semicolon until end of line) | ||||||
| 
 | 
 | ||||||
| Then comes zero or more (but usually at least 2) indented lines representing... | Then comes zero or more (but usually at least 2) indented lines representing... | ||||||
| 
 | 
 | ||||||
| @ -228,6 +229,18 @@ With this scheme, you would use | |||||||
| `-U` to see things which will probably hit your bank soon (like uncashed checks), | `-U` to see things which will probably hit your bank soon (like uncashed checks), | ||||||
| and no flags to see the most up-to-date state of your finances. | and no flags to see the most up-to-date state of your finances. | ||||||
| 
 | 
 | ||||||
|  | ## Description, payee and note | ||||||
|  | 
 | ||||||
|  | As mentioned, a transaction's description is the rest of the line following the date and status mark | ||||||
|  | (or, the rest of line until a comment begins). | ||||||
|  | Sometimes called the "narration" in traditional bookkeeping, it can be used for whatever you wish, | ||||||
|  | or left blank. The description can be queried, unlike [comments](#comments).  | ||||||
|  | 
 | ||||||
|  | Including a `|` (pipe) character in the description will subdivide it  | ||||||
|  | into a payee/payer name (on the left) and additional notes (on the right). | ||||||
|  | This is entirely optional, but it can allow more precise   | ||||||
|  | [querying](/hledger.html#queries) and [pivoting](/hledger.html#pivoting). | ||||||
|  | 
 | ||||||
| ## Account names | ## Account names | ||||||
| 
 | 
 | ||||||
| Account names typically have several parts separated by a full colon, from | Account names typically have several parts separated by a full colon, from | ||||||
| @ -604,19 +617,6 @@ Tags are like Ledger's | |||||||
| [metadata](http://ledger-cli.org/3.0/doc/ledger3.html#Metadata) | [metadata](http://ledger-cli.org/3.0/doc/ledger3.html#Metadata) | ||||||
| feature, except hledger's tag values are simple strings. | feature, except hledger's tag values are simple strings. | ||||||
| 
 | 
 | ||||||
| ### Implicit tags |  | ||||||
| 
 |  | ||||||
| Some predefined "implicit" tags are also provided: |  | ||||||
| 
 |  | ||||||
| - `code`        - the transaction's code field |  | ||||||
| - `description` - the transaction's description |  | ||||||
| - `payee`       - the part of description before `|`, or all of it |  | ||||||
| - `note`        - the part of description after `|`, or all of it |  | ||||||
| 
 |  | ||||||
| `payee` and `note` support descriptions written in a special `PAYEE | NOTE` format, |  | ||||||
| accessing the parts before and after the pipe character respectively. |  | ||||||
| For descriptions not containing a pipe character they are the same as `description`. |  | ||||||
| 
 |  | ||||||
| ## Directives | ## Directives | ||||||
| 
 | 
 | ||||||
| ### Account aliases | ### Account aliases | ||||||
|  | |||||||
| @ -68,7 +68,10 @@ FILE FORMAT | |||||||
|          parentheses) |          parentheses) | ||||||
| 
 | 
 | ||||||
|        o (optional) a transaction description (any remaining text until end of |        o (optional) a transaction description (any remaining text until end of | ||||||
|          line) |          line or a semicolon) | ||||||
|  | 
 | ||||||
|  |        o (optional) a transaction comment  (any  remaining  text  following  a | ||||||
|  |          semicolon until end of line) | ||||||
| 
 | 
 | ||||||
|        Then  comes zero or more (but usually at least 2) indented lines repre- |        Then  comes zero or more (but usually at least 2) indented lines repre- | ||||||
|        senting... |        senting... | ||||||
| @ -218,6 +221,18 @@ FILE FORMAT | |||||||
|        uncashed checks), and no flags to see the most up-to-date state of your |        uncashed checks), and no flags to see the most up-to-date state of your | ||||||
|        finances. |        finances. | ||||||
| 
 | 
 | ||||||
|  |    Description, payee and note | ||||||
|  |        As  mentioned, a transaction's description is the rest of the line fol- | ||||||
|  |        lowing the date and status mark (or, the rest of line until  a  comment | ||||||
|  |        begins).   Sometimes called the "narration" in traditional bookkeeping, | ||||||
|  |        it can be used for whatever you wish, or left blank.   The  description | ||||||
|  |        can be queried, unlike comments. | ||||||
|  | 
 | ||||||
|  |        Including  a  |  (pipe)  character in the description will subdivide it | ||||||
|  |        into a payee/payer name (on the left)  and  additional  notes  (on  the | ||||||
|  |        right).  This is entirely optional, but it can allow more precise | ||||||
|  |        querying and pivoting. | ||||||
|  | 
 | ||||||
|    Account names |    Account names | ||||||
|        Account  names  typically have several parts separated by a full colon, |        Account  names  typically have several parts separated by a full colon, | ||||||
|        from which hledger derives a hierarchical chart of accounts.  They  can |        from which hledger derives a hierarchical chart of accounts.  They  can | ||||||
| @ -581,22 +596,6 @@ FILE FORMAT | |||||||
|        Tags  are  like  Ledger's metadata feature, except hledger's tag values |        Tags  are  like  Ledger's metadata feature, except hledger's tag values | ||||||
|        are simple strings. |        are simple strings. | ||||||
| 
 | 
 | ||||||
|    Implicit tags |  | ||||||
|        Some predefined "implicit" tags are also provided: |  | ||||||
| 
 |  | ||||||
|        o code - the transaction's code field |  | ||||||
| 
 |  | ||||||
|        o description - the transaction's description |  | ||||||
| 
 |  | ||||||
|        o payee - the part of description before |, or all of it |  | ||||||
| 
 |  | ||||||
|        o note - the part of description after |, or all of it |  | ||||||
| 
 |  | ||||||
|        payee  and  note support descriptions written in a special PAYEE | NOTE |  | ||||||
|        format, accessing the parts before and after the pipe character respec- |  | ||||||
|        tively.   For descriptions not containing a pipe character they are the |  | ||||||
|        same as description. |  | ||||||
| 
 |  | ||||||
|    Directives |    Directives | ||||||
|    Account aliases |    Account aliases | ||||||
|        You can define aliases which rewrite your account names (after  reading |        You can define aliases which rewrite your account names (after  reading | ||||||
| @ -809,8 +808,6 @@ EDITOR SUPPORT | |||||||
|                           ting-started |                           ting-started | ||||||
|        Sublime Text       https://github.com/ledger/ledger/wiki/Using-Sub- |        Sublime Text       https://github.com/ledger/ledger/wiki/Using-Sub- | ||||||
|                           lime-Text |                           lime-Text | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
|        Textmate           https://github.com/ledger/ledger/wiki/Using-Text- |        Textmate           https://github.com/ledger/ledger/wiki/Using-Text- | ||||||
|                           Mate-2 |                           Mate-2 | ||||||
|        Text Wrangler      https://github.com/ledger/ledger/wiki/Edit- |        Text Wrangler      https://github.com/ledger/ledger/wiki/Edit- | ||||||
|  | |||||||
| @ -88,8 +88,8 @@ anonymize accounts and payees | |||||||
| .RS | .RS | ||||||
| .RE | .RE | ||||||
| .TP | .TP | ||||||
| .B \f[C]\-\-pivot\ TAGNAME\f[] | .B \f[C]\-\-pivot\ FIELDNAME\f[] | ||||||
| use some other field/tag for account names | use some other field or tag for the account name | ||||||
| .RS | .RS | ||||||
| .RE | .RE | ||||||
| .TP | .TP | ||||||
|  | |||||||
| @ -67,9 +67,9 @@ the data. | |||||||
| '--anon' | '--anon' | ||||||
| 
 | 
 | ||||||
|      anonymize accounts and payees |      anonymize accounts and payees | ||||||
| '--pivot TAGNAME' | '--pivot FIELDNAME' | ||||||
| 
 | 
 | ||||||
|      use some other field/tag for account names |      use some other field or tag for the account name | ||||||
| '-I --ignore-assertions' | '-I --ignore-assertions' | ||||||
| 
 | 
 | ||||||
|      ignore any failing balance assertions |      ignore any failing balance assertions | ||||||
| @ -358,17 +358,17 @@ Tag Table: | |||||||
| Node: Top73 | Node: Top73 | ||||||
| Node: OPTIONS831 | Node: OPTIONS831 | ||||||
| Ref: #options930 | Ref: #options930 | ||||||
| Node: KEYS3479 | Node: KEYS3487 | ||||||
| Ref: #keys3576 | Ref: #keys3584 | ||||||
| Node: SCREENS6372 | Node: SCREENS6380 | ||||||
| Ref: #screens6459 | Ref: #screens6467 | ||||||
| Node: Accounts screen6549 | Node: Accounts screen6557 | ||||||
| Ref: #accounts-screen6679 | Ref: #accounts-screen6687 | ||||||
| Node: Register screen8909 | Node: Register screen8917 | ||||||
| Ref: #register-screen9066 | Ref: #register-screen9074 | ||||||
| Node: Transaction screen11140 | Node: Transaction screen11148 | ||||||
| Ref: #transaction-screen11300 | Ref: #transaction-screen11308 | ||||||
| Node: Error screen12170 | Node: Error screen12178 | ||||||
| Ref: #error-screen12294 | Ref: #error-screen12302 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
|  | |||||||
| @ -65,8 +65,8 @@ OPTIONS | |||||||
| 
 | 
 | ||||||
|        --anon anonymize accounts and payees |        --anon anonymize accounts and payees | ||||||
| 
 | 
 | ||||||
|        --pivot TAGNAME |        --pivot FIELDNAME | ||||||
|               use some other field/tag for account names |               use some other field or tag for the account name | ||||||
| 
 | 
 | ||||||
|        -I --ignore-assertions |        -I --ignore-assertions | ||||||
|               ignore any failing balance assertions |               ignore any failing balance assertions | ||||||
|  | |||||||
| @ -144,8 +144,8 @@ anonymize accounts and payees | |||||||
| .RS | .RS | ||||||
| .RE | .RE | ||||||
| .TP | .TP | ||||||
| .B \f[C]\-\-pivot\ TAGNAME\f[] | .B \f[C]\-\-pivot\ FIELDNAME\f[] | ||||||
| use some other field/tag for account names | use some other field or tag for the account name | ||||||
| .RS | .RS | ||||||
| .RE | .RE | ||||||
| .TP | .TP | ||||||
|  | |||||||
| @ -112,9 +112,9 @@ options as shown above. | |||||||
| '--anon' | '--anon' | ||||||
| 
 | 
 | ||||||
|      anonymize accounts and payees |      anonymize accounts and payees | ||||||
| '--pivot TAGNAME' | '--pivot FIELDNAME' | ||||||
| 
 | 
 | ||||||
|      use some other field/tag for account names |      use some other field or tag for the account name | ||||||
| '-I --ignore-assertions' | '-I --ignore-assertions' | ||||||
| 
 | 
 | ||||||
|      ignore any failing balance assertions |      ignore any failing balance assertions | ||||||
|  | |||||||
| @ -110,8 +110,8 @@ OPTIONS | |||||||
| 
 | 
 | ||||||
|        --anon anonymize accounts and payees |        --anon anonymize accounts and payees | ||||||
| 
 | 
 | ||||||
|        --pivot TAGNAME |        --pivot FIELDNAME | ||||||
|               use some other field/tag for account names |               use some other field or tag for the account name | ||||||
| 
 | 
 | ||||||
|        -I --ignore-assertions |        -I --ignore-assertions | ||||||
|               ignore any failing balance assertions |               ignore any failing balance assertions | ||||||
|  | |||||||
| @ -199,8 +199,8 @@ anonymize accounts and payees | |||||||
| .RS | .RS | ||||||
| .RE | .RE | ||||||
| .TP | .TP | ||||||
| .B \f[C]\-\-pivot\ TAGNAME\f[] | .B \f[C]\-\-pivot\ FIELDNAME\f[] | ||||||
| use some other field/tag for account names | use some other field or tag for the account name | ||||||
| .RS | .RS | ||||||
| .RE | .RE | ||||||
| .TP | .TP | ||||||
| @ -750,21 +750,17 @@ Use this when you want a summary with less detail. | |||||||
| .PP | .PP | ||||||
| Normally hledger sums amounts, and organizes them in a hierarchy, based | Normally hledger sums amounts, and organizes them in a hierarchy, based | ||||||
| on account name. | on account name. | ||||||
| The \f[C]\-\-pivot\ TAGNAME\f[] option causes it to sum and organize | The \f[C]\-\-pivot\ FIELD\f[] option causes it to sum and organize | ||||||
| hierarchy based on some other field instead. | hierarchy based on the value of some other field instead. | ||||||
| .PP | FIELD can be: \f[C]code\f[], \f[C]description\f[], \f[C]payee\f[], | ||||||
| TAGNAME is the full, case\-insensitive name of a tag you have defined, | \f[C]note\f[], or the full name (case insensitive) of any tag. | ||||||
| or one of the built\-in implicit tags (like \f[C]code\f[] or | As with account names, values containing \f[C]colon:separated:parts\f[] | ||||||
| \f[C]payee\f[]). | will be displayed hierarchically in reports. | ||||||
| As with account names, when tag values have |  | ||||||
| \f[C]multiple:colon\-separated:parts\f[] hledger will build hierarchy, |  | ||||||
| displayed in tree\-mode reports, summarisable with a depth limit, and so |  | ||||||
| on. |  | ||||||
| .PP | .PP | ||||||
| \f[C]\-\-pivot\f[] is a general option affecting all reports; you can | \f[C]\-\-pivot\f[] is a general option affecting all reports; you can | ||||||
| think of hledger transforming the journal before any other processing, | think of hledger transforming the journal before any other processing, | ||||||
| replacing every posting\[aq]s account name with the value of the | replacing every posting\[aq]s account name with the value of the | ||||||
| specified tag on that posting, inheriting it from the transaction or | specified field on that posting, inheriting it from the transaction or | ||||||
| using a blank value if it\[aq]s not present. | using a blank value if it\[aq]s not present. | ||||||
| .PP | .PP | ||||||
| An example: | An example: | ||||||
| @ -1007,7 +1003,7 @@ quoting to hide it from the shell, so eg do: | |||||||
| .RE | .RE | ||||||
| .TP | .TP | ||||||
| .B \f[B]\f[C]desc:REGEX\f[]\f[] | .B \f[B]\f[C]desc:REGEX\f[]\f[] | ||||||
| match transaction descriptions | match transaction descriptions. | ||||||
| .RS | .RS | ||||||
| .RE | .RE | ||||||
| .TP | .TP | ||||||
| @ -1031,6 +1027,18 @@ match (or display, depending on command) accounts at or above this depth | |||||||
| .RS | .RS | ||||||
| .RE | .RE | ||||||
| .TP | .TP | ||||||
|  | .B \f[B]\f[C]note:REGEX\f[]\f[] | ||||||
|  | match transaction notes (part of description right of \f[C]|\f[], or | ||||||
|  | whole description when there\[aq]s no \f[C]|\f[]) | ||||||
|  | .RS | ||||||
|  | .RE | ||||||
|  | .TP | ||||||
|  | .B \f[B]\f[C]payee:REGEX\f[]\f[] | ||||||
|  | match transaction payee/payer names (part of description left of | ||||||
|  | \f[C]|\f[], or whole description when there\[aq]s no \f[C]|\f[]) | ||||||
|  | .RS | ||||||
|  | .RE | ||||||
|  | .TP | ||||||
| .B \f[B]\f[C]real:,\ real:0\f[]\f[] | .B \f[B]\f[C]real:,\ real:0\f[]\f[] | ||||||
| match real or virtual postings respectively | match real or virtual postings respectively | ||||||
| .RS | .RS | ||||||
|  | |||||||
| @ -167,9 +167,9 @@ different, like git.) | |||||||
| '--anon' | '--anon' | ||||||
| 
 | 
 | ||||||
|      anonymize accounts and payees |      anonymize accounts and payees | ||||||
| '--pivot TAGNAME' | '--pivot FIELDNAME' | ||||||
| 
 | 
 | ||||||
|      use some other field/tag for account names |      use some other field or tag for the account name | ||||||
| '-I --ignore-assertions' | '-I --ignore-assertions' | ||||||
| 
 | 
 | ||||||
|      ignore any failing balance assertions |      ignore any failing balance assertions | ||||||
| @ -507,20 +507,17 @@ File: hledger.1.info,  Node: Pivoting,  Next: Cost,  Prev: Depth limiting,  Up: | |||||||
| ============= | ============= | ||||||
| 
 | 
 | ||||||
| Normally hledger sums amounts, and organizes them in a hierarchy, based | Normally hledger sums amounts, and organizes them in a hierarchy, based | ||||||
| on account name.  The '--pivot TAGNAME' option causes it to sum and | on account name.  The '--pivot FIELD' option causes it to sum and | ||||||
| organize hierarchy based on some other field instead. | organize hierarchy based on the value of some other field instead. | ||||||
| 
 | FIELD can be: 'code', 'description', 'payee', 'note', or the full name | ||||||
|    TAGNAME is the full, case-insensitive name of a tag you have defined, | (case insensitive) of any tag.  As with account names, values containing | ||||||
| or one of the built-in implicit tags (like 'code' or 'payee').  As with | 'colon:separated:parts' will be displayed hierarchically in reports. | ||||||
| account names, when tag values have 'multiple:colon-separated:parts' |  | ||||||
| hledger will build hierarchy, displayed in tree-mode reports, |  | ||||||
| summarisable with a depth limit, and so on. |  | ||||||
| 
 | 
 | ||||||
|    '--pivot' is a general option affecting all reports; you can think of |    '--pivot' is a general option affecting all reports; you can think of | ||||||
| hledger transforming the journal before any other processing, replacing | hledger transforming the journal before any other processing, replacing | ||||||
| every posting's account name with the value of the specified tag on that | every posting's account name with the value of the specified field on | ||||||
| posting, inheriting it from the transaction or using a blank value if | that posting, inheriting it from the transaction or using a blank value | ||||||
| it's not present. | if it's not present. | ||||||
| 
 | 
 | ||||||
|    An example: |    An example: | ||||||
| 
 | 
 | ||||||
| @ -717,7 +714,7 @@ match (or negatively match) | |||||||
|      print cur:'\$'' or 'hledger print cur:\\$'. |      print cur:'\$'' or 'hledger print cur:\\$'. | ||||||
| *'desc:REGEX'* | *'desc:REGEX'* | ||||||
| 
 | 
 | ||||||
|      match transaction descriptions |      match transaction descriptions. | ||||||
| *'date:PERIODEXPR'* | *'date:PERIODEXPR'* | ||||||
| 
 | 
 | ||||||
|      match dates within the specified period.  PERIODEXPR is a period |      match dates within the specified period.  PERIODEXPR is a period | ||||||
| @ -732,6 +729,14 @@ match (or negatively match) | |||||||
| 
 | 
 | ||||||
|      match (or display, depending on command) accounts at or above this |      match (or display, depending on command) accounts at or above this | ||||||
|      depth |      depth | ||||||
|  | *'note:REGEX'* | ||||||
|  | 
 | ||||||
|  |      match transaction notes (part of description right of '|', or whole | ||||||
|  |      description when there's no '|') | ||||||
|  | *'payee:REGEX'* | ||||||
|  | 
 | ||||||
|  |      match transaction payee/payer names (part of description left of | ||||||
|  |      '|', or whole description when there's no '|') | ||||||
| *'real:, real:0'* | *'real:, real:0'* | ||||||
| 
 | 
 | ||||||
|      match real or virtual postings respectively |      match real or virtual postings respectively | ||||||
| @ -2129,123 +2134,123 @@ Node: OPTIONS3640 | |||||||
| Ref: #options3744 | Ref: #options3744 | ||||||
| Node: General options4025 | Node: General options4025 | ||||||
| Ref: #general-options4152 | Ref: #general-options4152 | ||||||
| Node: Command options6498 | Node: Command options6506 | ||||||
| Ref: #command-options6651 | Ref: #command-options6659 | ||||||
| Node: Command arguments7049 | Node: Command arguments7057 | ||||||
| Ref: #command-arguments7209 | Ref: #command-arguments7217 | ||||||
| Node: Special characters7330 | Node: Special characters7338 | ||||||
| Ref: #special-characters7488 | Ref: #special-characters7496 | ||||||
| Node: Input files8656 | Node: Input files8664 | ||||||
| Ref: #input-files8794 | Ref: #input-files8802 | ||||||
| Node: Smart dates10757 | Node: Smart dates10765 | ||||||
| Ref: #smart-dates10900 | Ref: #smart-dates10908 | ||||||
| Node: Report start & end date11879 | Node: Report start & end date11887 | ||||||
| Ref: #report-start-end-date12051 | Ref: #report-start-end-date12059 | ||||||
| Node: Report intervals13117 | Node: Report intervals13125 | ||||||
| Ref: #report-intervals13282 | Ref: #report-intervals13290 | ||||||
| Node: Period expressions13683 | Node: Period expressions13691 | ||||||
| Ref: #period-expressions13843 | Ref: #period-expressions13851 | ||||||
| Node: Depth limiting16183 | Node: Depth limiting16191 | ||||||
| Ref: #depth-limiting16329 | Ref: #depth-limiting16337 | ||||||
| Node: Pivoting16530 | Node: Pivoting16538 | ||||||
| Ref: #pivoting16650 | Ref: #pivoting16658 | ||||||
| Node: Cost18421 | Node: Cost18334 | ||||||
| Ref: #cost18531 | Ref: #cost18444 | ||||||
| Node: Market value18649 | Node: Market value18562 | ||||||
| Ref: #market-value18786 | Ref: #market-value18699 | ||||||
| Node: Regular expressions20086 | Node: Regular expressions19999 | ||||||
| Ref: #regular-expressions20224 | Ref: #regular-expressions20137 | ||||||
| Node: QUERIES21585 | Node: QUERIES21498 | ||||||
| Ref: #queries21689 | Ref: #queries21602 | ||||||
| Node: COMMANDS25354 | Node: COMMANDS25534 | ||||||
| Ref: #commands25468 | Ref: #commands25648 | ||||||
| Node: accounts26147 | Node: accounts26327 | ||||||
| Ref: #accounts26247 | Ref: #accounts26427 | ||||||
| Node: activity27229 | Node: activity27409 | ||||||
| Ref: #activity27341 | Ref: #activity27521 | ||||||
| Node: add27700 | Node: add27880 | ||||||
| Ref: #add27801 | Ref: #add27981 | ||||||
| Node: balance30459 | Node: balance30639 | ||||||
| Ref: #balance30572 | Ref: #balance30752 | ||||||
| Node: Flat mode33587 | Node: Flat mode33767 | ||||||
| Ref: #flat-mode33714 | Ref: #flat-mode33894 | ||||||
| Node: Depth limited balance reports34134 | Node: Depth limited balance reports34314 | ||||||
| Ref: #depth-limited-balance-reports34337 | Ref: #depth-limited-balance-reports34517 | ||||||
| Node: Multicolumn balance reports34757 | Node: Multicolumn balance reports34937 | ||||||
| Ref: #multicolumn-balance-reports34968 | Ref: #multicolumn-balance-reports35148 | ||||||
| Node: Custom balance output39616 | Node: Custom balance output39796 | ||||||
| Ref: #custom-balance-output39800 | Ref: #custom-balance-output39980 | ||||||
| Node: Colour support41893 | Node: Colour support42073 | ||||||
| Ref: #colour-support42054 | Ref: #colour-support42234 | ||||||
| Node: Output destination42227 | Node: Output destination42407 | ||||||
| Ref: #output-destination42385 | Ref: #output-destination42565 | ||||||
| Node: CSV output42655 | Node: CSV output42835 | ||||||
| Ref: #csv-output42774 | Ref: #csv-output42954 | ||||||
| Node: balancesheet43171 | Node: balancesheet43351 | ||||||
| Ref: #balancesheet43309 | Ref: #balancesheet43489 | ||||||
| Node: balancesheetequity45216 | Node: balancesheetequity45396 | ||||||
| Ref: #balancesheetequity45367 | Ref: #balancesheetequity45547 | ||||||
| Node: cashflow46156 | Node: cashflow46336 | ||||||
| Ref: #cashflow46279 | Ref: #cashflow46459 | ||||||
| Node: help48130 | Node: help48310 | ||||||
| Ref: #help48242 | Ref: #help48422 | ||||||
| Node: incomestatement49316 | Node: incomestatement49496 | ||||||
| Ref: #incomestatement49447 | Ref: #incomestatement49627 | ||||||
| Node: print51339 | Node: print51519 | ||||||
| Ref: #print51456 | Ref: #print51636 | ||||||
| Node: register55212 | Node: register55392 | ||||||
| Ref: #register55325 | Ref: #register55505 | ||||||
| Node: Custom register output59821 | Node: Custom register output60001 | ||||||
| Ref: #custom-register-output59952 | Ref: #custom-register-output60132 | ||||||
| Node: stats61249 | Node: stats61429 | ||||||
| Ref: #stats61355 | Ref: #stats61535 | ||||||
| Node: test62236 | Node: test62416 | ||||||
| Ref: #test62323 | Ref: #test62503 | ||||||
| Node: ADD-ON COMMANDS62691 | Node: ADD-ON COMMANDS62871 | ||||||
| Ref: #add-on-commands62803 | Ref: #add-on-commands62983 | ||||||
| Node: Official add-ons64090 | Node: Official add-ons64270 | ||||||
| Ref: #official-add-ons64232 | Ref: #official-add-ons64412 | ||||||
| Node: api64319 | Node: api64499 | ||||||
| Ref: #api64410 | Ref: #api64590 | ||||||
| Node: ui64462 | Node: ui64642 | ||||||
| Ref: #ui64563 | Ref: #ui64743 | ||||||
| Node: web64621 | Node: web64801 | ||||||
| Ref: #web64712 | Ref: #web64892 | ||||||
| Node: Third party add-ons64758 | Node: Third party add-ons64938 | ||||||
| Ref: #third-party-add-ons64935 | Ref: #third-party-add-ons65115 | ||||||
| Node: diff65070 | Node: diff65250 | ||||||
| Ref: #diff65169 | Ref: #diff65349 | ||||||
| Node: iadd65268 | Node: iadd65448 | ||||||
| Ref: #iadd65384 | Ref: #iadd65564 | ||||||
| Node: interest65467 | Node: interest65647 | ||||||
| Ref: #interest65590 | Ref: #interest65770 | ||||||
| Node: irr65685 | Node: irr65865 | ||||||
| Ref: #irr65785 | Ref: #irr65965 | ||||||
| Node: Experimental add-ons65863 | Node: Experimental add-ons66043 | ||||||
| Ref: #experimental-add-ons66017 | Ref: #experimental-add-ons66197 | ||||||
| Node: autosync66419 | Node: autosync66599 | ||||||
| Ref: #autosync66533 | Ref: #autosync66713 | ||||||
| Node: budget66772 | Node: budget66952 | ||||||
| Ref: #budget66896 | Ref: #budget67076 | ||||||
| Node: chart66962 | Node: chart67142 | ||||||
| Ref: #chart67081 | Ref: #chart67261 | ||||||
| Node: check67152 | Node: check67332 | ||||||
| Ref: #check67276 | Ref: #check67456 | ||||||
| Node: check-dates67343 | Node: check-dates67523 | ||||||
| Ref: #check-dates67485 | Ref: #check-dates67665 | ||||||
| Node: check-dupes67558 | Node: check-dupes67738 | ||||||
| Ref: #check-dupes67701 | Ref: #check-dupes67881 | ||||||
| Node: equity67778 | Node: equity67958 | ||||||
| Ref: #equity67906 | Ref: #equity68086 | ||||||
| Node: prices68025 | Node: prices68205 | ||||||
| Ref: #prices68154 | Ref: #prices68334 | ||||||
| Node: print-unique68209 | Node: print-unique68389 | ||||||
| Ref: #print-unique68358 | Ref: #print-unique68538 | ||||||
| Node: register-match68451 | Node: register-match68631 | ||||||
| Ref: #register-match68607 | Ref: #register-match68787 | ||||||
| Node: rewrite68705 | Node: rewrite68885 | ||||||
| Ref: #rewrite68839 | Ref: #rewrite69019 | ||||||
| Node: tags68917 | Node: tags69097 | ||||||
| Ref: #tags69022 | Ref: #tags69202 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
|  | |||||||
| @ -140,8 +140,8 @@ OPTIONS | |||||||
| 
 | 
 | ||||||
|        --anon anonymize accounts and payees |        --anon anonymize accounts and payees | ||||||
| 
 | 
 | ||||||
|        --pivot TAGNAME |        --pivot FIELDNAME | ||||||
|               use some other field/tag for account names |               use some other field or tag for the account name | ||||||
| 
 | 
 | ||||||
|        -I --ignore-assertions |        -I --ignore-assertions | ||||||
|               ignore any failing balance assertions |               ignore any failing balance assertions | ||||||
| @ -460,18 +460,15 @@ OPTIONS | |||||||
| 
 | 
 | ||||||
|    Pivoting |    Pivoting | ||||||
|        Normally hledger sums amounts, and organizes them in a hierarchy, based |        Normally hledger sums amounts, and organizes them in a hierarchy, based | ||||||
|        on account name.  The --pivot TAGNAME option causes it to sum and orga- |        on  account  name.  The --pivot FIELD option causes it to sum and orga- | ||||||
|        nize hierarchy based on some other field instead. |        nize hierarchy based on the value of some other field  instead.   FIELD | ||||||
| 
 |        can be: code, description, payee, note, or the full name (case insensi- | ||||||
|        TAGNAME is the full, case-insensitive name of a tag you  have  defined, |        tive) of any tag.  As with account names, values containing colon:sepa- | ||||||
|        or  one  of  the  built-in implicit tags (like code or payee).  As with |        rated:parts will be displayed hierarchically in reports. | ||||||
|        account names,  when  tag  values  have  multiple:colon-separated:parts |  | ||||||
|        hledger will build hierarchy, displayed in tree-mode reports, summaris- |  | ||||||
|        able with a depth limit, and so on. |  | ||||||
| 
 | 
 | ||||||
|        --pivot  is  a  general  option affecting all reports; you can think of |        --pivot  is  a  general  option affecting all reports; you can think of | ||||||
|        hledger transforming the journal before any other processing, replacing |        hledger transforming the journal before any other processing, replacing | ||||||
|        every posting's account name with the value of  the  specified  tag  on |        every  posting's  account name with the value of the specified field on | ||||||
|        that posting, inheriting it from the transaction or using a blank value |        that posting, inheriting it from the transaction or using a blank value | ||||||
|        if it's not present. |        if it's not present. | ||||||
| 
 | 
 | ||||||
| @ -660,7 +657,7 @@ QUERIES | |||||||
|               hledger print cur:'\$' or hledger print cur:\\$. |               hledger print cur:'\$' or hledger print cur:\\$. | ||||||
| 
 | 
 | ||||||
|        desc:REGEX |        desc:REGEX | ||||||
|               match transaction descriptions |               match transaction descriptions. | ||||||
| 
 | 
 | ||||||
|        date:PERIODEXPR |        date:PERIODEXPR | ||||||
|               match dates within the specified period.  PERIODEXPR is a period |               match dates within the specified period.  PERIODEXPR is a period | ||||||
| @ -676,6 +673,14 @@ QUERIES | |||||||
|               match (or display, depending on command) accounts  at  or  above |               match (or display, depending on command) accounts  at  or  above | ||||||
|               this depth |               this depth | ||||||
| 
 | 
 | ||||||
|  |        note:REGEX | ||||||
|  |               match  transaction  notes  (part  of  description right of |, or | ||||||
|  |               whole description when there's no |) | ||||||
|  | 
 | ||||||
|  |        payee:REGEX | ||||||
|  |               match transaction payee/payer names (part of description left of | ||||||
|  |               |, or whole description when there's no |) | ||||||
|  | 
 | ||||||
|        real:, real:0 |        real:, real:0 | ||||||
|               match real or virtual postings respectively |               match real or virtual postings respectively | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -265,16 +265,15 @@ tree, down to level N. Use this when you want a summary with less detail. | |||||||
| ## Pivoting | ## Pivoting | ||||||
| 
 | 
 | ||||||
| Normally hledger sums amounts, and organizes them in a hierarchy, based on account name. | Normally hledger sums amounts, and organizes them in a hierarchy, based on account name. | ||||||
| The `--pivot TAGNAME` option causes it to sum and organize hierarchy based on some other field instead. | The `--pivot FIELD` option causes it to sum and organize hierarchy based on the value of some other field instead. | ||||||
| 
 | FIELD can be: | ||||||
| TAGNAME is the full, case-insensitive name of a [tag](/journal.html#tags) you have defined, | `code`, `description`, `payee`, `note`,  | ||||||
| or one of the built-in implicit tags (like `code` or `payee`). | or the full name (case insensitive) of any [tag](/journal.html#tags). | ||||||
| As with account names, when tag values have `multiple:colon-separated:parts` hledger will build hierarchy, | As with account names, values containing `colon:separated:parts` will be displayed hierarchically in reports. | ||||||
| displayed in tree-mode reports, summarisable with a depth limit, and so on. |  | ||||||
| 
 | 
 | ||||||
| `--pivot` is a general option affecting all reports; you can think of hledger transforming  | `--pivot` is a general option affecting all reports; you can think of hledger transforming  | ||||||
| the journal before any other processing, replacing every posting's account name with  | the journal before any other processing, replacing every posting's account name with  | ||||||
| the value of the specified tag on that posting, inheriting it from the transaction  | the value of the specified field on that posting, inheriting it from the transaction  | ||||||
| or using a blank value if it's not present. | or using a blank value if it's not present. | ||||||
| 
 | 
 | ||||||
| An example: | An example: | ||||||
|  | |||||||
| @ -54,7 +54,7 @@ quoting to hide it from the shell, so eg do: `hledger print cur:'\$'` | |||||||
| or `hledger print cur:\\$`. | or `hledger print cur:\\$`. | ||||||
| 
 | 
 | ||||||
| **`desc:REGEX`** | **`desc:REGEX`** | ||||||
| : match transaction descriptions | : match transaction [descriptions](/manual.html#description-payee-and-note). | ||||||
| 
 | 
 | ||||||
| **`date:PERIODEXPR`** | **`date:PERIODEXPR`** | ||||||
| : match dates within the specified period. | : match dates within the specified period. | ||||||
| @ -68,6 +68,14 @@ If the `--date2` command line flag is present, this matches [secondary dates](ma | |||||||
| **`depth:N`** | **`depth:N`** | ||||||
| : match (or display, depending on command) accounts at or above this depth | : match (or display, depending on command) accounts at or above this depth | ||||||
| 
 | 
 | ||||||
|  | **`note:REGEX`** | ||||||
|  | : match transaction [notes](/manual.html#description-payee-and-note) | ||||||
|  | (part of description right of `|`, or whole description when there's no `|`) | ||||||
|  | 
 | ||||||
|  | **`payee:REGEX`** | ||||||
|  | : match transaction [payee/payer names](/manual.html#description-payee-and-note) | ||||||
|  | (part of description left of `|`, or whole description when there's no `|`) | ||||||
|  | 
 | ||||||
| **`real:, real:0`** | **`real:, real:0`** | ||||||
| : match real or virtual postings respectively | : match real or virtual postings respectively | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user