;update manuals
This commit is contained in:
		
							parent
							
								
									a024ac14a9
								
							
						
					
					
						commit
						324dfaee49
					
				| @ -1,12 +1,12 @@ | |||||||
| .\"t | .\"t | ||||||
| 
 | 
 | ||||||
| .TH "hledger_csv" "5" "December 2020" "hledger 1.20.99" "hledger User Manuals" | .TH "HLEDGER_CSV" "5" "December 2020" "hledger-lib-1.20.99 " "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| .SH NAME | .SH NAME | ||||||
| .PP | .PP | ||||||
| CSV - how hledger reads CSV data, and the CSV rules file format | How hledger reads CSV data, and the CSV rules file format. | ||||||
| .SH DESCRIPTION | .SH DESCRIPTION | ||||||
| .PP | .PP | ||||||
| hledger can read CSV files (Character Separated Value - usually comma, | hledger can read CSV files (Character Separated Value - usually comma, | ||||||
| @ -1295,6 +1295,6 @@ Copyright (C) 2007-2020 Simon Michael. | |||||||
| Released under GNU GPL v3 or later. | Released under GNU GPL v3 or later. | ||||||
| 
 | 
 | ||||||
| .SH SEE ALSO | .SH SEE ALSO | ||||||
| hledger(1), hledger\-ui(1), hledger\-web(1), | hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1) | ||||||
| hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), | 
 | ||||||
| ledger(1) | hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5) | ||||||
|  | |||||||
| @ -3,10 +3,10 @@ This is hledger_csv.info, produced by makeinfo version 6.7 from stdin. | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Top,  Next: EXAMPLES,  Up: (dir) | File: hledger_csv.info,  Node: Top,  Next: EXAMPLES,  Up: (dir) | ||||||
| 
 | 
 | ||||||
| hledger_csv(5) hledger 1.20.99 | hledger_csv(5) | ||||||
| ****************************** | ************** | ||||||
| 
 | 
 | ||||||
| CSV - how hledger reads CSV data, and the CSV rules file format | How hledger reads CSV data, and the CSV rules file format. | ||||||
| 
 | 
 | ||||||
|    hledger can read CSV files (Character Separated Value - usually |    hledger can read CSV files (Character Separated Value - usually | ||||||
| comma, semicolon, or tab) containing dated records as if they were | comma, semicolon, or tab) containing dated records as if they were | ||||||
| @ -60,37 +60,11 @@ below. | |||||||
| * Menu: | * Menu: | ||||||
| 
 | 
 | ||||||
| * EXAMPLES:: | * EXAMPLES:: | ||||||
| * Basic:: |  | ||||||
| * Bank of Ireland:: |  | ||||||
| * Amazon:: |  | ||||||
| * Paypal:: |  | ||||||
| * CSV RULES:: | * CSV RULES:: | ||||||
| * skip:: |  | ||||||
| * fields:: |  | ||||||
| * field assignment:: |  | ||||||
| * separator:: |  | ||||||
| * if block:: |  | ||||||
| * if table:: |  | ||||||
| * end:: |  | ||||||
| * date-format:: |  | ||||||
| * decimal-mark:: |  | ||||||
| * newest-first:: |  | ||||||
| * include:: |  | ||||||
| * balance-type:: |  | ||||||
| * TIPS:: | * TIPS:: | ||||||
| * Rapid feedback:: |  | ||||||
| * Valid CSV:: |  | ||||||
| * File Extension:: |  | ||||||
| * Reading multiple CSV files:: |  | ||||||
| * Valid transactions:: |  | ||||||
| * Deduplicating importing:: |  | ||||||
| * Setting amounts:: |  | ||||||
| * Setting currency/commodity:: |  | ||||||
| * Referencing other fields:: |  | ||||||
| * How CSV rules are evaluated:: |  | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: EXAMPLES,  Next: Basic,  Prev: Top,  Up: Top | File: hledger_csv.info,  Node: EXAMPLES,  Next: CSV RULES,  Prev: Top,  Up: Top | ||||||
| 
 | 
 | ||||||
| 1 EXAMPLES | 1 EXAMPLES | ||||||
| ********** | ********** | ||||||
| @ -99,11 +73,18 @@ Here are some sample hledger CSV rules files.  See also the full | |||||||
| collection at: | collection at: | ||||||
| https://github.com/simonmichael/hledger/tree/master/examples/csv | https://github.com/simonmichael/hledger/tree/master/examples/csv | ||||||
| 
 | 
 | ||||||
|  | * Menu: | ||||||
| File: hledger_csv.info,  Node: Basic,  Next: Bank of Ireland,  Prev: EXAMPLES,  Up: Top |  | ||||||
| 
 | 
 | ||||||
| 2 Basic | * Basic:: | ||||||
| ******* | * Bank of Ireland:: | ||||||
|  | * Amazon:: | ||||||
|  | * Paypal:: | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | File: hledger_csv.info,  Node: Basic,  Next: Bank of Ireland,  Up: EXAMPLES | ||||||
|  | 
 | ||||||
|  | 1.1 Basic | ||||||
|  | ========= | ||||||
| 
 | 
 | ||||||
| At minimum, the rules file must identify the date and amount fields, and | At minimum, the rules file must identify the date and amount fields, and | ||||||
| often it also specifies the date format and how many header lines there | often it also specifies the date format and how many header lines there | ||||||
| @ -125,10 +106,10 @@ $ hledger print -f basic.csv | |||||||
|    Default account names are chosen, since we didn't set them. |    Default account names are chosen, since we didn't set them. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Bank of Ireland,  Next: Amazon,  Prev: Basic,  Up: Top | File: hledger_csv.info,  Node: Bank of Ireland,  Next: Amazon,  Prev: Basic,  Up: EXAMPLES | ||||||
| 
 | 
 | ||||||
| 3 Bank of Ireland | 1.2 Bank of Ireland | ||||||
| ***************** | =================== | ||||||
| 
 | 
 | ||||||
| Here's a CSV with two amount fields (Debit and Credit), and a balance | Here's a CSV with two amount fields (Debit and Credit), and a balance | ||||||
| field, which we can use to add balance assertions, which is not | field, which we can use to add balance assertions, which is not | ||||||
| @ -178,10 +159,10 @@ reading directly from CSV, but they will be checked if these entries are | |||||||
| imported into a journal file. | imported into a journal file. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Amazon,  Next: Paypal,  Prev: Bank of Ireland,  Up: Top | File: hledger_csv.info,  Node: Amazon,  Next: Paypal,  Prev: Bank of Ireland,  Up: EXAMPLES | ||||||
| 
 | 
 | ||||||
| 4 Amazon | 1.3 Amazon | ||||||
| ******** | ========== | ||||||
| 
 | 
 | ||||||
| Here we convert amazon.com order history, and use an if block to | Here we convert amazon.com order history, and use an if block to | ||||||
| generate a third posting if there's a fee.  (In practice you'd probably | generate a third posting if there's a fee.  (In practice you'd probably | ||||||
| @ -236,10 +217,10 @@ $ hledger -f amazon-orders.csv print | |||||||
|     expenses:fees           $1.00 |     expenses:fees           $1.00 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Paypal,  Next: CSV RULES,  Prev: Amazon,  Up: Top | File: hledger_csv.info,  Node: Paypal,  Prev: Amazon,  Up: EXAMPLES | ||||||
| 
 | 
 | ||||||
| 5 Paypal | 1.4 Paypal | ||||||
| ******** | ========== | ||||||
| 
 | 
 | ||||||
| Here's a real-world rules file for (customised) Paypal CSV, with some | Here's a real-world rules file for (customised) Paypal CSV, with some | ||||||
| Paypal-specific rules, and a second rules file included: | Paypal-specific rules, and a second rules file included: | ||||||
| @ -390,19 +371,34 @@ $ hledger -f paypal-custom.csv  print | |||||||
|     expenses:banking:paypal                    $0.59  ; business: |     expenses:banking:paypal                    $0.59  ; business: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: CSV RULES,  Next: skip,  Prev: Paypal,  Up: Top | File: hledger_csv.info,  Node: CSV RULES,  Next: TIPS,  Prev: EXAMPLES,  Up: Top | ||||||
| 
 | 
 | ||||||
| 6 CSV RULES | 2 CSV RULES | ||||||
| *********** | *********** | ||||||
| 
 | 
 | ||||||
| The following kinds of rule can appear in the rules file, in any order. | The following kinds of rule can appear in the rules file, in any order. | ||||||
| Blank lines and lines beginning with '#' or ';' are ignored. | Blank lines and lines beginning with '#' or ';' are ignored. | ||||||
| 
 | 
 | ||||||
|  | * Menu: | ||||||
| File: hledger_csv.info,  Node: skip,  Next: fields,  Prev: CSV RULES,  Up: Top |  | ||||||
| 
 | 
 | ||||||
| 7 'skip' | * skip:: | ||||||
| ******** | * fields:: | ||||||
|  | * field assignment:: | ||||||
|  | * separator:: | ||||||
|  | * if block:: | ||||||
|  | * if table:: | ||||||
|  | * end:: | ||||||
|  | * date-format:: | ||||||
|  | * decimal-mark:: | ||||||
|  | * newest-first:: | ||||||
|  | * include:: | ||||||
|  | * balance-type:: | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | File: hledger_csv.info,  Node: skip,  Next: fields,  Up: CSV RULES | ||||||
|  | 
 | ||||||
|  | 2.1 'skip' | ||||||
|  | ========== | ||||||
| 
 | 
 | ||||||
| skip N | skip N | ||||||
| 
 | 
 | ||||||
| @ -415,10 +411,10 @@ whenever your CSV data contains header lines. | |||||||
| ignore certain CSV records (described below). | ignore certain CSV records (described below). | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: fields,  Next: field assignment,  Prev: skip,  Up: Top | File: hledger_csv.info,  Node: fields,  Next: field assignment,  Prev: skip,  Up: CSV RULES | ||||||
| 
 | 
 | ||||||
| 8 'fields' | 2.2 'fields' | ||||||
| ********** | ============ | ||||||
| 
 | 
 | ||||||
| fields FIELDNAME1, FIELDNAME2, ... | fields FIELDNAME1, FIELDNAME2, ... | ||||||
| 
 | 
 | ||||||
| @ -457,8 +453,8 @@ journal format. | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Transaction field names,  Next: Posting field names,  Up: fields | File: hledger_csv.info,  Node: Transaction field names,  Next: Posting field names,  Up: fields | ||||||
| 
 | 
 | ||||||
| 8.1 Transaction field names | 2.2.1 Transaction field names | ||||||
| =========================== | ----------------------------- | ||||||
| 
 | 
 | ||||||
| 'date', 'date2', 'status', 'code', 'description', 'comment' can be used | 'date', 'date2', 'status', 'code', 'description', 'comment' can be used | ||||||
| to form the transaction's first line. | to form the transaction's first line. | ||||||
| @ -466,8 +462,8 @@ to form the transaction's first line. | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Posting field names,  Prev: Transaction field names,  Up: fields | File: hledger_csv.info,  Node: Posting field names,  Prev: Transaction field names,  Up: fields | ||||||
| 
 | 
 | ||||||
| 8.2 Posting field names | 2.2.2 Posting field names | ||||||
| ======================= | ------------------------- | ||||||
| 
 | 
 | ||||||
| * Menu: | * Menu: | ||||||
| 
 | 
 | ||||||
| @ -480,8 +476,8 @@ File: hledger_csv.info,  Node: Posting field names,  Prev: Transaction field nam | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: account,  Next: amount,  Up: Posting field names | File: hledger_csv.info,  Node: account,  Next: amount,  Up: Posting field names | ||||||
| 
 | 
 | ||||||
| 8.2.1 account | 2.2.2.1 account | ||||||
| ------------- | ............... | ||||||
| 
 | 
 | ||||||
| 'accountN', where N is 1 to 99, causes a posting to be generated, with | 'accountN', where N is 1 to 99, causes a posting to be generated, with | ||||||
| that account name. | that account name. | ||||||
| @ -498,8 +494,8 @@ or "income:unknown"). | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: amount,  Next: currency,  Prev: account,  Up: Posting field names | File: hledger_csv.info,  Node: amount,  Next: currency,  Prev: account,  Up: Posting field names | ||||||
| 
 | 
 | ||||||
| 8.2.2 amount | 2.2.2.2 amount | ||||||
| ------------ | .............. | ||||||
| 
 | 
 | ||||||
| 'amountN' sets posting N's amount.  If the CSV uses separate fields for | 'amountN' sets posting N's amount.  If the CSV uses separate fields for | ||||||
| inflows and outflows, you can use 'amountN-in' and 'amountN-out' | inflows and outflows, you can use 'amountN-in' and 'amountN-out' | ||||||
| @ -525,8 +521,8 @@ avoiding conflicts. | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: currency,  Next: balance,  Prev: amount,  Up: Posting field names | File: hledger_csv.info,  Node: currency,  Next: balance,  Prev: amount,  Up: Posting field names | ||||||
| 
 | 
 | ||||||
| 8.2.3 currency | 2.2.2.3 currency | ||||||
| -------------- | ................ | ||||||
| 
 | 
 | ||||||
| If the CSV has the currency symbol in a separate field (ie, not part of | If the CSV has the currency symbol in a separate field (ie, not part of | ||||||
| the amount field), you can use 'currencyN' to prepend it to posting N's | the amount field), you can use 'currencyN' to prepend it to posting N's | ||||||
| @ -535,8 +531,8 @@ amount.  Or, 'currency' with no number affects all postings. | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: balance,  Next: comment,  Prev: currency,  Up: Posting field names | File: hledger_csv.info,  Node: balance,  Next: comment,  Prev: currency,  Up: Posting field names | ||||||
| 
 | 
 | ||||||
| 8.2.4 balance | 2.2.2.4 balance | ||||||
| ------------- | ............... | ||||||
| 
 | 
 | ||||||
| 'balanceN' sets a balance assertion amount (or if the posting amount is | 'balanceN' sets a balance assertion amount (or if the posting amount is | ||||||
| left empty, a balance assignment) on posting N. | left empty, a balance assignment) on posting N. | ||||||
| @ -550,8 +546,8 @@ is equivalent to 'balance1'. | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: comment,  Prev: balance,  Up: Posting field names | File: hledger_csv.info,  Node: comment,  Prev: balance,  Up: Posting field names | ||||||
| 
 | 
 | ||||||
| 8.2.5 comment | 2.2.2.5 comment | ||||||
| ------------- | ............... | ||||||
| 
 | 
 | ||||||
| Finally, 'commentN' sets a comment on the Nth posting.  Comments can | Finally, 'commentN' sets a comment on the Nth posting.  Comments can | ||||||
| also contain tags, as usual. | also contain tags, as usual. | ||||||
| @ -559,10 +555,10 @@ also contain tags, as usual. | |||||||
|    See TIPS below for more about setting amounts and currency. |    See TIPS below for more about setting amounts and currency. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: field assignment,  Next: separator,  Prev: fields,  Up: Top | File: hledger_csv.info,  Node: field assignment,  Next: separator,  Prev: fields,  Up: CSV RULES | ||||||
| 
 | 
 | ||||||
| 9 field assignment | 2.3 field assignment | ||||||
| ****************** | ==================== | ||||||
| 
 | 
 | ||||||
| HLEDGERFIELDNAME FIELDVALUE | HLEDGERFIELDNAME FIELDVALUE | ||||||
| 
 | 
 | ||||||
| @ -584,10 +580,10 @@ becomes '1' when interpolated) (#1051).  See TIPS below for more about | |||||||
| referencing other fields. | referencing other fields. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: separator,  Next: if block,  Prev: field assignment,  Up: Top | File: hledger_csv.info,  Node: separator,  Next: if block,  Prev: field assignment,  Up: CSV RULES | ||||||
| 
 | 
 | ||||||
| 10 'separator' | 2.4 'separator' | ||||||
| ************** | =============== | ||||||
| 
 | 
 | ||||||
| You can use the 'separator' rule to read other kinds of | You can use the 'separator' rule to read other kinds of | ||||||
| character-separated data.  The argument is any single separator | character-separated data.  The argument is any single separator | ||||||
| @ -609,10 +605,10 @@ separator TAB | |||||||
| inferred automatically, and you won't need this rule. | inferred automatically, and you won't need this rule. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: if block,  Next: if table,  Prev: separator,  Up: Top | File: hledger_csv.info,  Node: if block,  Next: if table,  Prev: separator,  Up: CSV RULES | ||||||
| 
 | 
 | ||||||
| 11 'if' block | 2.5 'if' block | ||||||
| ************* | ============== | ||||||
| 
 | 
 | ||||||
| if MATCHER | if MATCHER | ||||||
|  RULE |  RULE | ||||||
| @ -639,8 +635,8 @@ descriptions. | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Matching the whole record,  Next: Matching individual fields,  Up: if block | File: hledger_csv.info,  Node: Matching the whole record,  Next: Matching individual fields,  Up: if block | ||||||
| 
 | 
 | ||||||
| 11.1 Matching the whole record | 2.5.1 Matching the whole record | ||||||
| ============================== | ------------------------------- | ||||||
| 
 | 
 | ||||||
| Each MATCHER can be a record matcher, which looks like this: | Each MATCHER can be a record matcher, which looks like this: | ||||||
| 
 | 
 | ||||||
| @ -662,8 +658,8 @@ actually see '2020-01-01,Acme, Inc., 1,000'). | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Matching individual fields,  Next: Combining matchers,  Prev: Matching the whole record,  Up: if block | File: hledger_csv.info,  Node: Matching individual fields,  Next: Combining matchers,  Prev: Matching the whole record,  Up: if block | ||||||
| 
 | 
 | ||||||
| 11.2 Matching individual fields | 2.5.2 Matching individual fields | ||||||
| =============================== | -------------------------------- | ||||||
| 
 | 
 | ||||||
| Or, MATCHER can be a field matcher, like this: | Or, MATCHER can be a field matcher, like this: | ||||||
| 
 | 
 | ||||||
| @ -676,8 +672,8 @@ is a percent sign followed by the field's name or column number, like | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Combining matchers,  Next: Rules applied on successful match,  Prev: Matching individual fields,  Up: if block | File: hledger_csv.info,  Node: Combining matchers,  Next: Rules applied on successful match,  Prev: Matching individual fields,  Up: if block | ||||||
| 
 | 
 | ||||||
| 11.3 Combining matchers | 2.5.3 Combining matchers | ||||||
| ======================= | ------------------------ | ||||||
| 
 | 
 | ||||||
| A single matcher can be written on the same line as the "if"; or | A single matcher can be written on the same line as the "if"; or | ||||||
| multiple matchers can be written on the following lines, non-indented. | multiple matchers can be written on the following lines, non-indented. | ||||||
| @ -693,8 +689,8 @@ MATCHER | |||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Rules applied on successful match,  Prev: Combining matchers,  Up: if block | File: hledger_csv.info,  Node: Rules applied on successful match,  Prev: Combining matchers,  Up: if block | ||||||
| 
 | 
 | ||||||
| 11.4 Rules applied on successful match | 2.5.4 Rules applied on successful match | ||||||
| ====================================== | --------------------------------------- | ||||||
| 
 | 
 | ||||||
| After the patterns there should be one or more rules to apply, all | After the patterns there should be one or more rules to apply, all | ||||||
| indented by at least one space.  Three kinds of rule are allowed in | indented by at least one space.  Three kinds of rule are allowed in | ||||||
| @ -719,10 +715,10 @@ banking thru software | |||||||
|  comment  XXX deductible ? check it |  comment  XXX deductible ? check it | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: if table,  Next: end,  Prev: if block,  Up: Top | File: hledger_csv.info,  Node: if table,  Next: end,  Prev: if block,  Up: CSV RULES | ||||||
| 
 | 
 | ||||||
| 12 'if' table | 2.6 'if' table | ||||||
| ************* | ============== | ||||||
| 
 | 
 | ||||||
| if,CSVFIELDNAME1,CSVFIELDNAME2,...,CSVFIELDNAMEn | if,CSVFIELDNAME1,CSVFIELDNAME2,...,CSVFIELDNAMEn | ||||||
| MATCHER1,VALUE11,VALUE12,...,VALUE1n | MATCHER1,VALUE11,VALUE12,...,VALUE1n | ||||||
| @ -780,10 +776,10 @@ atm transaction fee,expenses:business:banking,deductible? check it | |||||||
| 2020/01/12.*Plumbing LLC,expenses:house:upkeep,emergency plumbing call-out | 2020/01/12.*Plumbing LLC,expenses:house:upkeep,emergency plumbing call-out | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: end,  Next: date-format,  Prev: if table,  Up: Top | File: hledger_csv.info,  Node: end,  Next: date-format,  Prev: if table,  Up: CSV RULES | ||||||
| 
 | 
 | ||||||
| 13 'end' | 2.7 'end' | ||||||
| ******** | ========= | ||||||
| 
 | 
 | ||||||
| This rule can be used inside if blocks (only), to make hledger stop | This rule can be used inside if blocks (only), to make hledger stop | ||||||
| reading this CSV file and move on to the next input file, or to command | reading this CSV file and move on to the next input file, or to command | ||||||
| @ -794,10 +790,10 @@ if ,,,, | |||||||
|  end |  end | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: date-format,  Next: decimal-mark,  Prev: end,  Up: Top | File: hledger_csv.info,  Node: date-format,  Next: decimal-mark,  Prev: end,  Up: CSV RULES | ||||||
| 
 | 
 | ||||||
| 14 'date-format' | 2.8 'date-format' | ||||||
| **************** | ================= | ||||||
| 
 | 
 | ||||||
| date-format DATEFMT | date-format DATEFMT | ||||||
| 
 | 
 | ||||||
| @ -825,10 +821,10 @@ date-format %-m/%-d/%Y %l:%M %p some other junk | |||||||
| https://hackage.haskell.org/package/time/docs/Data-Time-Format.html#v:formatTime | https://hackage.haskell.org/package/time/docs/Data-Time-Format.html#v:formatTime | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: decimal-mark,  Next: newest-first,  Prev: date-format,  Up: Top | File: hledger_csv.info,  Node: decimal-mark,  Next: newest-first,  Prev: date-format,  Up: CSV RULES | ||||||
| 
 | 
 | ||||||
| 15 'decimal-mark' | 2.9 'decimal-mark' | ||||||
| ***************** | ================== | ||||||
| 
 | 
 | ||||||
| decimal-mark . | decimal-mark . | ||||||
| 
 | 
 | ||||||
| @ -843,10 +839,10 @@ should declare the decimal mark explicitly with this rule, to avoid | |||||||
| misparsed numbers. | misparsed numbers. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: newest-first,  Next: include,  Prev: decimal-mark,  Up: Top | File: hledger_csv.info,  Node: newest-first,  Next: include,  Prev: decimal-mark,  Up: CSV RULES | ||||||
| 
 | 
 | ||||||
| 16 'newest-first' | 2.10 'newest-first' | ||||||
| ***************** | =================== | ||||||
| 
 | 
 | ||||||
| hledger always sorts the generated transactions by date.  Transactions | hledger always sorts the generated transactions by date.  Transactions | ||||||
| on the same date should appear in the same order as their CSV records, | on the same date should appear in the same order as their CSV records, | ||||||
| @ -865,10 +861,10 @@ oldest first or newest first.  But if all of the following are true: | |||||||
| newest-first | newest-first | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: include,  Next: balance-type,  Prev: newest-first,  Up: Top | File: hledger_csv.info,  Node: include,  Next: balance-type,  Prev: newest-first,  Up: CSV RULES | ||||||
| 
 | 
 | ||||||
| 17 'include' | 2.11 'include' | ||||||
| ************ | ============== | ||||||
| 
 | 
 | ||||||
| include RULESFILE | include RULESFILE | ||||||
| 
 | 
 | ||||||
| @ -879,19 +875,19 @@ several rules files, eg: | |||||||
| 
 | 
 | ||||||
| # someaccount.csv.rules | # someaccount.csv.rules | ||||||
| 
 | 
 | ||||||
| # someaccount-specific rules | ## someaccount-specific rules | ||||||
| fields   date,description,amount | fields   date,description,amount | ||||||
| account1 assets:someaccount | account1 assets:someaccount | ||||||
| account2 expenses:misc | account2 expenses:misc | ||||||
| 
 | 
 | ||||||
| # common rules | ## common rules | ||||||
| include categorisation.rules | include categorisation.rules | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: balance-type,  Next: TIPS,  Prev: include,  Up: Top | File: hledger_csv.info,  Node: balance-type,  Prev: include,  Up: CSV RULES | ||||||
| 
 | 
 | ||||||
| 18 'balance-type' | 2.12 'balance-type' | ||||||
| ***************** | =================== | ||||||
| 
 | 
 | ||||||
| Balance assertions generated by assigning to balanceN are of the simple | Balance assertions generated by assigning to balanceN are of the simple | ||||||
| '=' type by default, which is a single-commodity, subaccount-excluding | '=' type by default, which is a single-commodity, subaccount-excluding | ||||||
| @ -911,16 +907,29 @@ balance-type ==* | |||||||
| ==*  multi commodity,  include subaccounts | ==*  multi commodity,  include subaccounts | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: TIPS,  Next: Rapid feedback,  Prev: balance-type,  Up: Top | File: hledger_csv.info,  Node: TIPS,  Prev: CSV RULES,  Up: Top | ||||||
| 
 | 
 | ||||||
| 19 TIPS | 3 TIPS | ||||||
| ******* | ****** | ||||||
|  | 
 | ||||||
|  | * Menu: | ||||||
|  | 
 | ||||||
|  | * Rapid feedback:: | ||||||
|  | * Valid CSV:: | ||||||
|  | * File Extension:: | ||||||
|  | * Reading multiple CSV files:: | ||||||
|  | * Valid transactions:: | ||||||
|  | * Deduplicating importing:: | ||||||
|  | * Setting amounts:: | ||||||
|  | * Setting currency/commodity:: | ||||||
|  | * Referencing other fields:: | ||||||
|  | * How CSV rules are evaluated:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Rapid feedback,  Next: Valid CSV,  Prev: TIPS,  Up: Top | File: hledger_csv.info,  Node: Rapid feedback,  Next: Valid CSV,  Up: TIPS | ||||||
| 
 | 
 | ||||||
| 20 Rapid feedback | 3.1 Rapid feedback | ||||||
| ***************** | ================== | ||||||
| 
 | 
 | ||||||
| It's a good idea to get rapid feedback while creating/troubleshooting | It's a good idea to get rapid feedback while creating/troubleshooting | ||||||
| CSV rules.  Here's a good way, using entr from | CSV rules.  Here's a good way, using entr from | ||||||
| @ -934,10 +943,10 @@ a separator each time the command re-runs, making it easier to read the | |||||||
| output. | output. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Valid CSV,  Next: File Extension,  Prev: Rapid feedback,  Up: Top | File: hledger_csv.info,  Node: Valid CSV,  Next: File Extension,  Prev: Rapid feedback,  Up: TIPS | ||||||
| 
 | 
 | ||||||
| 21 Valid CSV | 3.2 Valid CSV | ||||||
| ************ | ============= | ||||||
| 
 | 
 | ||||||
| hledger accepts CSV conforming to RFC 4180.  When CSV values are | hledger accepts CSV conforming to RFC 4180.  When CSV values are | ||||||
| enclosed in quotes, note: | enclosed in quotes, note: | ||||||
| @ -946,10 +955,10 @@ enclosed in quotes, note: | |||||||
|    * spaces outside the quotes are not allowed |    * spaces outside the quotes are not allowed | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: File Extension,  Next: Reading multiple CSV files,  Prev: Valid CSV,  Up: Top | File: hledger_csv.info,  Node: File Extension,  Next: Reading multiple CSV files,  Prev: Valid CSV,  Up: TIPS | ||||||
| 
 | 
 | ||||||
| 22 File Extension | 3.3 File Extension | ||||||
| ***************** | ================== | ||||||
| 
 | 
 | ||||||
| To help hledger identify the format and show the right error messages, | To help hledger identify the format and show the right error messages, | ||||||
| CSV/SSV/TSV files should normally be named with a '.csv', '.ssv' or | CSV/SSV/TSV files should normally be named with a '.csv', '.ssv' or | ||||||
| @ -966,10 +975,10 @@ $ cat foo | hledger -f ssv:- foo | |||||||
| See also: Input files in the hledger manual. | See also: Input files in the hledger manual. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Reading multiple CSV files,  Next: Valid transactions,  Prev: File Extension,  Up: Top | File: hledger_csv.info,  Node: Reading multiple CSV files,  Next: Valid transactions,  Prev: File Extension,  Up: TIPS | ||||||
| 
 | 
 | ||||||
| 23 Reading multiple CSV files | 3.4 Reading multiple CSV files | ||||||
| ***************************** | ============================== | ||||||
| 
 | 
 | ||||||
| If you use multiple '-f' options to read multiple CSV files at once, | If you use multiple '-f' options to read multiple CSV files at once, | ||||||
| hledger will look for a correspondingly-named rules file for each CSV | hledger will look for a correspondingly-named rules file for each CSV | ||||||
| @ -977,10 +986,10 @@ file.  But if you use the '--rules-file' option, that rules file will be | |||||||
| used for all the CSV files. | used for all the CSV files. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Valid transactions,  Next: Deduplicating importing,  Prev: Reading multiple CSV files,  Up: Top | File: hledger_csv.info,  Node: Valid transactions,  Next: Deduplicating importing,  Prev: Reading multiple CSV files,  Up: TIPS | ||||||
| 
 | 
 | ||||||
| 24 Valid transactions | 3.5 Valid transactions | ||||||
| ********************* | ====================== | ||||||
| 
 | 
 | ||||||
| After reading a CSV file, hledger post-processes and validates the | After reading a CSV file, hledger post-processes and validates the | ||||||
| generated journal entries as it would for a journal file - balancing | generated journal entries as it would for a journal file - balancing | ||||||
| @ -996,10 +1005,10 @@ assertions generated from CSV right away, pipe into another hledger: | |||||||
| $ hledger -f file.csv print | hledger -f- print | $ hledger -f file.csv print | hledger -f- print | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Deduplicating importing,  Next: Setting amounts,  Prev: Valid transactions,  Up: Top | File: hledger_csv.info,  Node: Deduplicating importing,  Next: Setting amounts,  Prev: Valid transactions,  Up: TIPS | ||||||
| 
 | 
 | ||||||
| 25 Deduplicating, importing | 3.6 Deduplicating, importing | ||||||
| *************************** | ============================ | ||||||
| 
 | 
 | ||||||
| When you download a CSV file periodically, eg to get your latest bank | When you download a CSV file periodically, eg to get your latest bank | ||||||
| transactions, the new file may overlap with the old one, containing some | transactions, the new file may overlap with the old one, containing some | ||||||
| @ -1026,10 +1035,10 @@ CSV data.  See: | |||||||
|    * https://plaintextaccounting.org -> data import/conversion |    * https://plaintextaccounting.org -> data import/conversion | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Setting amounts,  Next: Setting currency/commodity,  Prev: Deduplicating importing,  Up: Top | File: hledger_csv.info,  Node: Setting amounts,  Next: Setting currency/commodity,  Prev: Deduplicating importing,  Up: TIPS | ||||||
| 
 | 
 | ||||||
| 26 Setting amounts | 3.7 Setting amounts | ||||||
| ****************** | =================== | ||||||
| 
 | 
 | ||||||
| A posting amount can be set in one of these ways: | A posting amount can be set in one of these ways: | ||||||
| 
 | 
 | ||||||
| @ -1055,10 +1064,10 @@ A posting amount can be set in one of these ways: | |||||||
|    * If an amount value begins with a plus sign, that will be removed |    * If an amount value begins with a plus sign, that will be removed | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Setting currency/commodity,  Next: Referencing other fields,  Prev: Setting amounts,  Up: Top | File: hledger_csv.info,  Node: Setting currency/commodity,  Next: Referencing other fields,  Prev: Setting amounts,  Up: TIPS | ||||||
| 
 | 
 | ||||||
| 27 Setting currency/commodity | 3.8 Setting currency/commodity | ||||||
| ***************************** | ============================== | ||||||
| 
 | 
 | ||||||
| If the currency/commodity symbol is included in the CSV's amount | If the currency/commodity symbol is included in the CSV's amount | ||||||
| field(s): | field(s): | ||||||
| @ -1103,10 +1112,10 @@ amount %amt %cur | |||||||
| that would trigger the prepending effect, which we don't want here. | that would trigger the prepending effect, which we don't want here. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: Referencing other fields,  Next: How CSV rules are evaluated,  Prev: Setting currency/commodity,  Up: Top | File: hledger_csv.info,  Node: Referencing other fields,  Next: How CSV rules are evaluated,  Prev: Setting currency/commodity,  Up: TIPS | ||||||
| 
 | 
 | ||||||
| 28 Referencing other fields | 3.9 Referencing other fields | ||||||
| *************************** | ============================ | ||||||
| 
 | 
 | ||||||
| In field assignments, you can interpolate only CSV fields, not hledger | In field assignments, you can interpolate only CSV fields, not hledger | ||||||
| fields.  In the example below, there's both a CSV field and a hledger | fields.  In the example below, there's both a CSV field and a hledger | ||||||
| @ -1140,10 +1149,10 @@ if something | |||||||
|  comment C |  comment C | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_csv.info,  Node: How CSV rules are evaluated,  Prev: Referencing other fields,  Up: Top | File: hledger_csv.info,  Node: How CSV rules are evaluated,  Prev: Referencing other fields,  Up: TIPS | ||||||
| 
 | 
 | ||||||
| 29 How CSV rules are evaluated | 3.10 How CSV rules are evaluated | ||||||
| ****************************** | ================================ | ||||||
| 
 | 
 | ||||||
| Here's how to think of CSV rules being evaluated (if you really need | Here's how to think of CSV rules being evaluated (if you really need | ||||||
| to).  First, | to).  First, | ||||||
| @ -1183,90 +1192,85 @@ command the user specified. | |||||||
|  |  | ||||||
| Tag Table: | Tag Table: | ||||||
| Node: Top72 | Node: Top72 | ||||||
| Node: EXAMPLES3259 | Node: EXAMPLES2756 | ||||||
| Ref: #examples3361 | Ref: #examples2862 | ||||||
| Node: Basic3507 | Node: Basic3070 | ||||||
| Ref: #basic3615 | Ref: #basic3170 | ||||||
| Node: Bank of Ireland4157 | Node: Bank of Ireland3712 | ||||||
| Ref: #bank-of-ireland4283 | Ref: #bank-of-ireland3847 | ||||||
| Node: Amazon5745 | Node: Amazon5309 | ||||||
| Ref: #amazon5854 | Ref: #amazon5427 | ||||||
| Node: Paypal7573 | Node: Paypal7146 | ||||||
| Ref: #paypal7676 | Ref: #paypal7240 | ||||||
| Node: CSV RULES15320 | Node: CSV RULES14884 | ||||||
| Ref: #csv-rules15427 | Ref: #csv-rules14993 | ||||||
| Node: skip15561 | Node: skip15305 | ||||||
| Ref: #skip15662 | Ref: #skip15398 | ||||||
| Node: fields16037 | Node: fields15773 | ||||||
| Ref: #fields16149 | Ref: #fields15895 | ||||||
| Node: Transaction field names17314 | Node: Transaction field names17060 | ||||||
| Ref: #transaction-field-names17470 | Ref: #transaction-field-names17220 | ||||||
| Node: Posting field names17581 | Node: Posting field names17331 | ||||||
| Ref: #posting-field-names17729 | Ref: #posting-field-names17483 | ||||||
| Node: account17799 | Node: account17553 | ||||||
| Ref: #account17911 | Ref: #account17669 | ||||||
| Node: amount18448 | Node: amount18206 | ||||||
| Ref: #amount18575 | Ref: #amount18337 | ||||||
| Node: currency19682 | Node: currency19444 | ||||||
| Ref: #currency19813 | Ref: #currency19579 | ||||||
| Node: balance20019 | Node: balance19785 | ||||||
| Ref: #balance20149 | Ref: #balance19919 | ||||||
| Node: comment20466 | Node: comment20236 | ||||||
| Ref: #comment20579 | Ref: #comment20353 | ||||||
| Node: field assignment20742 | Node: field assignment20516 | ||||||
| Ref: #field-assignment20875 | Ref: #field-assignment20659 | ||||||
| Node: separator21693 | Node: separator21477 | ||||||
| Ref: #separator21820 | Ref: #separator21612 | ||||||
| Node: if block22360 | Node: if block22152 | ||||||
| Ref: #if-block22477 | Ref: #if-block22277 | ||||||
| Node: Matching the whole record22878 | Node: Matching the whole record22678 | ||||||
| Ref: #matching-the-whole-record23051 | Ref: #matching-the-whole-record22853 | ||||||
| Node: Matching individual fields23855 | Node: Matching individual fields23657 | ||||||
| Ref: #matching-individual-fields24057 | Ref: #matching-individual-fields23861 | ||||||
| Node: Combining matchers24281 | Node: Combining matchers24085 | ||||||
| Ref: #combining-matchers24475 | Ref: #combining-matchers24281 | ||||||
| Node: Rules applied on successful match24788 | Node: Rules applied on successful match24594 | ||||||
| Ref: #rules-applied-on-successful-match24977 | Ref: #rules-applied-on-successful-match24785 | ||||||
| Node: if table25631 | Node: if table25439 | ||||||
| Ref: #if-table25742 | Ref: #if-table25558 | ||||||
| Node: end27480 | Node: end27296 | ||||||
| Ref: #end27584 | Ref: #end27408 | ||||||
| Node: date-format27808 | Node: date-format27632 | ||||||
| Ref: #date-format27932 | Ref: #date-format27764 | ||||||
| Node: decimal-mark28681 | Node: decimal-mark28513 | ||||||
| Ref: #decimal-mark28816 | Ref: #decimal-mark28656 | ||||||
| Node: newest-first29155 | Node: newest-first28995 | ||||||
| Ref: #newest-first29286 | Ref: #newest-first29136 | ||||||
| Node: include29969 | Node: include29819 | ||||||
| Ref: #include30090 | Ref: #include29950 | ||||||
| Node: balance-type30532 | Node: balance-type30394 | ||||||
| Ref: #balance-type30655 | Ref: #balance-type30514 | ||||||
| Node: TIPS31355 | Node: TIPS31214 | ||||||
| Ref: #tips31465 | Ref: #tips31296 | ||||||
| Node: Rapid feedback31465 | Node: Rapid feedback31552 | ||||||
| Ref: #rapid-feedback31592 | Ref: #rapid-feedback31669 | ||||||
| Node: Valid CSV32052 | Node: Valid CSV32129 | ||||||
| Ref: #valid-csv32179 | Ref: #valid-csv32259 | ||||||
| Node: File Extension32371 | Node: File Extension32451 | ||||||
| Ref: #file-extension32520 | Ref: #file-extension32603 | ||||||
| Node: Reading multiple CSV files32949 | Node: Reading multiple CSV files33032 | ||||||
| Ref: #reading-multiple-csv-files33131 | Ref: #reading-multiple-csv-files33217 | ||||||
| Node: Valid transactions33372 | Node: Valid transactions33458 | ||||||
| Ref: #valid-transactions33547 | Ref: #valid-transactions33636 | ||||||
| Node: Deduplicating importing34175 | Node: Deduplicating importing34264 | ||||||
| Ref: #deduplicating-importing34351 | Ref: #deduplicating-importing34443 | ||||||
| Node: Setting amounts35384 | Node: Setting amounts35476 | ||||||
| Ref: #setting-amounts35550 | Ref: #setting-amounts35645 | ||||||
| Node: Setting currency/commodity36537 | Node: Setting currency/commodity36632 | ||||||
| Ref: #setting-currencycommodity36726 | Ref: #setting-currencycommodity36824 | ||||||
| Node: Referencing other fields37900 | Node: Referencing other fields37998 | ||||||
| Ref: #referencing-other-fields38097 | Ref: #referencing-other-fields38198 | ||||||
| Node: How CSV rules are evaluated38994 | Node: How CSV rules are evaluated39095 | ||||||
| Ref: #how-csv-rules-are-evaluated39162 | Ref: #how-csv-rules-are-evaluated39268 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
| 
 |  | ||||||
|  |  | ||||||
| Local Variables: |  | ||||||
| coding: utf-8 |  | ||||||
| End: |  | ||||||
|  | |||||||
| @ -1,10 +1,10 @@ | |||||||
| 
 | 
 | ||||||
| hledger_csv(5)               hledger User Manuals               hledger_csv(5) | HLEDGER_CSV(5)               hledger User Manuals               HLEDGER_CSV(5) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| NAME | NAME | ||||||
|        CSV - how hledger reads CSV data, and the CSV rules file format |        How hledger reads CSV data, and the CSV rules file format. | ||||||
| 
 | 
 | ||||||
| DESCRIPTION | DESCRIPTION | ||||||
|        hledger  can read CSV files (Character Separated Value - usually comma, |        hledger  can read CSV files (Character Separated Value - usually comma, | ||||||
| @ -951,9 +951,11 @@ COPYRIGHT | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| SEE ALSO | SEE ALSO | ||||||
|        hledger(1),     hledger-ui(1),     hledger-web(1),      hledger_csv(5), |        hledger(1), hledger-ui(1), hledger-web(1), ledger(1) | ||||||
|        hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1) | 
 | ||||||
|  |        hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time- | ||||||
|  |        dot(5) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger 1.20.99                  December 2020                  hledger_csv(5) | hledger-lib-1.20.99              December 2020                  HLEDGER_CSV(5) | ||||||
|  | |||||||
| @ -1,13 +1,12 @@ | |||||||
| .\"t | .\"t | ||||||
| 
 | 
 | ||||||
| .TH "hledger_journal" "5" "December 2020" "hledger 1.20.99" "hledger User Manuals" | .TH "HLEDGER_JOURNAL" "5" "December 2020" "hledger-lib-1.20.99 " "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| .SH NAME | .SH NAME | ||||||
| .PP | .PP | ||||||
| Journal - hledger\[aq]s default file format, representing a General | hledger\[aq]s default file format, representing a General Journal. | ||||||
| Journal |  | ||||||
| .SH DESCRIPTION | .SH DESCRIPTION | ||||||
| .PP | .PP | ||||||
| hledger\[aq]s usual data source is a plain text file containing journal | hledger\[aq]s usual data source is a plain text file containing journal | ||||||
| @ -34,7 +33,6 @@ Editor addons such as ledger-mode or hledger-mode for Emacs, vim-ledger | |||||||
| for Vim, and hledger-vscode for Visual Studio Code, make this easier, | for Vim, and hledger-vscode for Visual Studio Code, make this easier, | ||||||
| adding colour, formatting, tab completion, and useful commands. | adding colour, formatting, tab completion, and useful commands. | ||||||
| See Editor configuration at hledger.org for the full list. | See Editor configuration at hledger.org for the full list. | ||||||
| .SH FILE FORMAT |  | ||||||
| .PP | .PP | ||||||
| Here\[aq]s a description of each part of the file format (and | Here\[aq]s a description of each part of the file format (and | ||||||
| hledger\[aq]s data model). | hledger\[aq]s data model). | ||||||
| @ -42,7 +40,7 @@ These are mostly in the order you\[aq]ll use them, but in some cases | |||||||
| related concepts have been grouped together for easy reference, or | related concepts have been grouped together for easy reference, or | ||||||
| linked before they are introduced, so feel free to skip over anything | linked before they are introduced, so feel free to skip over anything | ||||||
| that looks unnecessary right now. | that looks unnecessary right now. | ||||||
| .SS Transactions | .SH TRANSACTIONS | ||||||
| .PP | .PP | ||||||
| Transactions are the main unit of information in a journal file. | Transactions are the main unit of information in a journal file. | ||||||
| They represent events, typically a movement of some quantity of | They represent events, typically a movement of some quantity of | ||||||
| @ -75,7 +73,7 @@ Here\[aq]s a simple journal file containing one transaction: | |||||||
|   income:salary         $-1 |   income:salary         $-1 | ||||||
| \f[R] | \f[R] | ||||||
| .fi | .fi | ||||||
| .SS Dates | .SH DATES | ||||||
| .SS Simple dates | .SS Simple dates | ||||||
| .PP | .PP | ||||||
| Dates in the journal file use \f[I]simple dates\f[R] format: | Dates in the journal file use \f[I]simple dates\f[R] format: | ||||||
| @ -181,7 +179,7 @@ hledger will attempt to parse any square-bracketed sequence of the | |||||||
| \f[C]0123456789/-.=\f[R] characters in this way. | \f[C]0123456789/-.=\f[R] characters in this way. | ||||||
| With this syntax, DATE infers its year from the transaction and DATE2 | With this syntax, DATE infers its year from the transaction and DATE2 | ||||||
| infers its year from DATE. | infers its year from DATE. | ||||||
| .SS Status | .SH STATUS | ||||||
| .PP | .PP | ||||||
| Transactions, or individual postings within a transaction, can have a | Transactions, or individual postings within a transaction, can have a | ||||||
| status mark, which is a single character before the transaction | status mark, which is a single character before the transaction | ||||||
| @ -268,7 +266,7 @@ With this scheme, you would use \f[C]-PC\f[R] to see the current balance | |||||||
| at your bank, \f[C]-U\f[R] to see things which will probably hit your | at your bank, \f[C]-U\f[R] 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 | .SH DESCRIPTION | ||||||
| .PP | .PP | ||||||
| A transaction\[aq]s description is the rest of the line following the | A transaction\[aq]s description is the rest of the line following the | ||||||
| date and status mark (or until a comment begins). | date and status mark (or until a comment begins). | ||||||
| @ -283,7 +281,7 @@ payee/payer name on the left (up to the first \f[C]|\f[R]) and an | |||||||
| additional note field on the right (after the first \f[C]|\f[R]). | additional note field on the right (after the first \f[C]|\f[R]). | ||||||
| This may be worthwhile if you need to do more precise querying and | This may be worthwhile if you need to do more precise querying and | ||||||
| pivoting by payee or by note. | pivoting by payee or by note. | ||||||
| .SS Comments | .SH COMMENTS | ||||||
| .PP | .PP | ||||||
| Lines in the journal beginning with a semicolon (\f[C];\f[R]) or hash | Lines in the journal beginning with a semicolon (\f[C];\f[R]) or hash | ||||||
| (\f[C]#\f[R]) or star (\f[C]*\f[R]) are comments, and will be ignored. | (\f[C]#\f[R]) or star (\f[C]*\f[R]) are comments, and will be ignored. | ||||||
| @ -324,7 +322,7 @@ end comment | |||||||
| .PP | .PP | ||||||
| You can also comment larger regions of a file using \f[C]comment\f[R] | You can also comment larger regions of a file using \f[C]comment\f[R] | ||||||
| and \f[C]end comment\f[R] directives. | and \f[C]end comment\f[R] directives. | ||||||
| .SS Tags | .SH TAGS | ||||||
| .PP | .PP | ||||||
| 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 | ||||||
| transactions, which you can then search or pivot on. | transactions, which you can then search or pivot on. | ||||||
| @ -383,7 +381,7 @@ plus \f[C]posting-tag\f[R]): | |||||||
| .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 Postings | .SH POSTINGS | ||||||
| .PP | .PP | ||||||
| A posting is an addition of some amount to, or removal of some amount | A posting is an addition of some amount to, or removal of some amount | ||||||
| from, an account. | from, an account. | ||||||
| @ -454,7 +452,7 @@ Ordinary non-parenthesised, non-bracketed postings are called \f[I]real | |||||||
| postings\f[R]. | postings\f[R]. | ||||||
| You can exclude virtual postings from reports with the | You can exclude virtual postings from reports with the | ||||||
| \f[C]-R/--real\f[R] flag or \f[C]real:1\f[R] query. | \f[C]-R/--real\f[R] flag or \f[C]real:1\f[R] query. | ||||||
| .SS Account names | .SH 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, | ||||||
| from which hledger derives a hierarchical chart of accounts. | from which hledger derives a hierarchical chart of accounts. | ||||||
| @ -468,7 +466,7 @@ Because of this, they must always be followed by \f[B]two or more | |||||||
| spaces\f[R] (or newline). | spaces\f[R] (or newline). | ||||||
| .PP | .PP | ||||||
| Account names can be aliased. | Account names can be aliased. | ||||||
| .SS Amounts | .SH AMOUNTS | ||||||
| .PP | .PP | ||||||
| After the account name, there is usually an amount. | After the account name, there is usually an amount. | ||||||
| (Important: between account name and amount, there must be \f[B]two or | (Important: between account name and amount, there must be \f[B]two or | ||||||
| @ -637,7 +635,7 @@ Note, hledger uses banker\[aq]s rounding: it rounds to the nearest even | |||||||
| number, eg 0.5 displayed with zero decimal places is \[dq]0\[dq]). | number, eg 0.5 displayed with zero decimal places is \[dq]0\[dq]). | ||||||
| (Guaranteed since hledger 1.17.1; in older versions this could vary if | (Guaranteed since hledger 1.17.1; in older versions this could vary if | ||||||
| hledger was built with Decimal < 0.5.1.) | hledger was built with Decimal < 0.5.1.) | ||||||
| .SS Transaction prices | .SH TRANSACTION PRICES | ||||||
| .PP | .PP | ||||||
| Within a transaction, you can note an amount\[aq]s price in another | Within a transaction, you can note an amount\[aq]s price in another | ||||||
| commodity. | commodity. | ||||||
| @ -734,7 +732,7 @@ $ hledger bal -N --flat -B | |||||||
|                 \[Eu]100  assets:euros |                 \[Eu]100  assets:euros | ||||||
| \f[R] | \f[R] | ||||||
| .fi | .fi | ||||||
| .SS Lot prices and lot dates | .SH LOT PRICES, LOT DATES | ||||||
| .PP | .PP | ||||||
| Ledger allows another kind of price, lot price (four variants: | Ledger allows another kind of price, lot price (four variants: | ||||||
| \f[C]{UNITPRICE}\f[R], \f[C]{{TOTALPRICE}}\f[R], | \f[C]{UNITPRICE}\f[R], \f[C]{{TOTALPRICE}}\f[R], | ||||||
| @ -745,7 +743,7 @@ hledger will parse these, for compatibility with Ledger journals, but | |||||||
| currently ignores them. | currently ignores them. | ||||||
| A transaction price, lot price and/or lot date may appear in any order, | A transaction price, lot price and/or lot date may appear in any order, | ||||||
| after the posting amount and before the balance assertion if any. | after the posting amount and before the balance assertion if any. | ||||||
| .SS Balance assertions | .SH BALANCE ASSERTIONS | ||||||
| .PP | .PP | ||||||
| hledger supports Ledger-style balance assertions in journal files. | hledger supports Ledger-style balance assertions in journal files. | ||||||
| These look like, for example, \f[C]= EXPECTEDBALANCE\f[R] following a | These look like, for example, \f[C]= EXPECTEDBALANCE\f[R] following a | ||||||
| @ -901,7 +899,7 @@ always what is shown by reports. | |||||||
| Eg a commodity directive may limit the display precision, but this will | Eg a commodity directive may limit the display precision, but this will | ||||||
| not affect balance assertions. | not affect balance assertions. | ||||||
| Balance assertion failure messages show exact amounts. | Balance assertion failure messages show exact amounts. | ||||||
| .SS Balance assignments | .SH BALANCE ASSIGNMENTS | ||||||
| .PP | .PP | ||||||
| Ledger-style balance assignments are also supported. | Ledger-style balance assignments are also supported. | ||||||
| These are like balance assertions, but with no posting amount on the | These are like balance assertions, but with no posting amount on the | ||||||
| @ -958,7 +956,7 @@ $ hledger print --explicit | |||||||
|     (a)         $1 \[at] \[Eu]2 = $1 \[at] \[Eu]2 |     (a)         $1 \[at] \[Eu]2 = $1 \[at] \[Eu]2 | ||||||
| \f[R] | \f[R] | ||||||
| .fi | .fi | ||||||
| .SS Directives | .SH DIRECTIVES | ||||||
| .PP | .PP | ||||||
| A directive is a line in the journal beginning with a special keyword, | A directive is a line in the journal beginning with a special keyword, | ||||||
| that influences how the journal is processed. | that influences how the journal is processed. | ||||||
| @ -1850,7 +1848,7 @@ It does not affect account names being entered via hledger add or | |||||||
| hledger-web. | hledger-web. | ||||||
| If account aliases are present, they are applied after the default | If account aliases are present, they are applied after the default | ||||||
| parent account. | parent account. | ||||||
| .SS Periodic transactions | .SH PERIODIC TRANSACTIONS | ||||||
| .PP | .PP | ||||||
| Periodic transaction rules describe transactions that recur. | Periodic transaction rules describe transactions that recur. | ||||||
| They allow hledger to generate temporary future transactions to help | They allow hledger to generate temporary future transactions to help | ||||||
| @ -2004,7 +2002,7 @@ Goals and actual performance can then be compared in budget reports. | |||||||
| .PP | .PP | ||||||
| See also: Budgeting and Forecasting. | See also: Budgeting and Forecasting. | ||||||
| .PP | .PP | ||||||
| .SS Auto postings | .SH AUTO POSTINGS | ||||||
| .PP | .PP | ||||||
| \[dq]Automated postings\[dq] or \[dq]auto postings\[dq] are extra | \[dq]Automated postings\[dq] or \[dq]auto postings\[dq] are extra | ||||||
| postings which get added automatically to transactions which match | postings which get added automatically to transactions which match | ||||||
| @ -2150,6 +2148,6 @@ Copyright (C) 2007-2020 Simon Michael. | |||||||
| Released under GNU GPL v3 or later. | Released under GNU GPL v3 or later. | ||||||
| 
 | 
 | ||||||
| .SH SEE ALSO | .SH SEE ALSO | ||||||
| hledger(1), hledger\-ui(1), hledger\-web(1), | hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1) | ||||||
| hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), | 
 | ||||||
| ledger(1) | hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5) | ||||||
|  | |||||||
| @ -2,12 +2,12 @@ This is hledger_journal.info, produced by makeinfo version 6.7 from | |||||||
| stdin. | stdin. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Top,  Next: Transactions,  Up: (dir) | File: hledger_journal.info,  Node: Top,  Next: TRANSACTIONS,  Up: (dir) | ||||||
| 
 | 
 | ||||||
| hledger_journal(5) hledger 1.20.99 | hledger_journal(5) | ||||||
| ********************************** | ****************** | ||||||
| 
 | 
 | ||||||
| Journal - hledger's default file format, representing a General Journal | hledger's default file format, representing a General Journal. | ||||||
| 
 | 
 | ||||||
|    hledger's usual data source is a plain text file containing journal |    hledger's usual data source is a plain text file containing journal | ||||||
| entries in hledger journal format.  This file represents a standard | entries in hledger journal format.  This file represents a standard | ||||||
| @ -40,27 +40,27 @@ that looks unnecessary right now. | |||||||
| 
 | 
 | ||||||
| * Menu: | * Menu: | ||||||
| 
 | 
 | ||||||
| * Transactions:: | * TRANSACTIONS:: | ||||||
| * Dates:: | * DATES:: | ||||||
| * Status:: | * STATUS:: | ||||||
| * Description:: | * DESCRIPTION:: | ||||||
| * Comments:: | * COMMENTS:: | ||||||
| * Tags:: | * TAGS:: | ||||||
| * Postings:: | * POSTINGS:: | ||||||
| * Account names:: | * ACCOUNT NAMES:: | ||||||
| * Amounts:: | * AMOUNTS:: | ||||||
| * Transaction prices:: | * TRANSACTION PRICES:: | ||||||
| * Lot prices and lot dates:: | * LOT PRICES LOT DATES:: | ||||||
| * Balance assertions:: | * BALANCE ASSERTIONS:: | ||||||
| * Balance assignments:: | * BALANCE ASSIGNMENTS:: | ||||||
| * Directives:: | * DIRECTIVES:: | ||||||
| * Periodic transactions:: | * PERIODIC TRANSACTIONS:: | ||||||
| * Auto postings:: | * AUTO POSTINGS:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Transactions,  Next: Dates,  Prev: Top,  Up: Top | File: hledger_journal.info,  Node: TRANSACTIONS,  Next: DATES,  Prev: Top,  Up: Top | ||||||
| 
 | 
 | ||||||
| 1 Transactions | 1 TRANSACTIONS | ||||||
| ************** | ************** | ||||||
| 
 | 
 | ||||||
| Transactions are the main unit of information in a journal file.  They | Transactions are the main unit of information in a journal file.  They | ||||||
| @ -87,9 +87,9 @@ optional fields, separated by spaces: | |||||||
|   income:salary         $-1 |   income:salary         $-1 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Dates,  Next: Status,  Prev: Transactions,  Up: Top | File: hledger_journal.info,  Node: DATES,  Next: STATUS,  Prev: TRANSACTIONS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 2 Dates | 2 DATES | ||||||
| ******* | ******* | ||||||
| 
 | 
 | ||||||
| * Menu: | * Menu: | ||||||
| @ -99,7 +99,7 @@ File: hledger_journal.info,  Node: Dates,  Next: Status,  Prev: Transactions,  U | |||||||
| * Posting dates:: | * Posting dates:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Simple dates,  Next: Secondary dates,  Up: Dates | File: hledger_journal.info,  Node: Simple dates,  Next: Secondary dates,  Up: DATES | ||||||
| 
 | 
 | ||||||
| 2.1 Simple dates | 2.1 Simple dates | ||||||
| ================ | ================ | ||||||
| @ -115,7 +115,7 @@ or the current date when the command is run.  Some examples: | |||||||
| dates documented in the hledger manual.) | dates documented in the hledger manual.) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Secondary dates,  Next: Posting dates,  Prev: Simple dates,  Up: Dates | File: hledger_journal.info,  Node: Secondary dates,  Next: Posting dates,  Prev: Simple dates,  Up: DATES | ||||||
| 
 | 
 | ||||||
| 2.2 Secondary dates | 2.2 Secondary dates | ||||||
| =================== | =================== | ||||||
| @ -151,7 +151,7 @@ $ hledger register checking --date2 | |||||||
| 2010-02-19 movie ticket         assets:checking                $-10         $-10 | 2010-02-19 movie ticket         assets:checking                $-10         $-10 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Posting dates,  Prev: Secondary dates,  Up: Dates | File: hledger_journal.info,  Node: Posting dates,  Prev: Secondary dates,  Up: DATES | ||||||
| 
 | 
 | ||||||
| 2.3 Posting dates | 2.3 Posting dates | ||||||
| ================= | ================= | ||||||
| @ -186,9 +186,9 @@ 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.info,  Node: Status,  Next: Description,  Prev: Dates,  Up: Top | File: hledger_journal.info,  Node: STATUS,  Next: DESCRIPTION,  Prev: DATES,  Up: Top | ||||||
| 
 | 
 | ||||||
| 3 Status | 3 STATUS | ||||||
| ******** | ******** | ||||||
| 
 | 
 | ||||||
| Transactions, or individual postings within a transaction, can have a | Transactions, or individual postings within a transaction, can have a | ||||||
| @ -236,9 +236,9 @@ your bank, '-U' to see things which will probably hit your bank soon | |||||||
| your finances. | your finances. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Description,  Next: Comments,  Prev: Status,  Up: Top | File: hledger_journal.info,  Node: DESCRIPTION,  Next: COMMENTS,  Prev: STATUS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 4 Description | 4 DESCRIPTION | ||||||
| ************* | ************* | ||||||
| 
 | 
 | ||||||
| A transaction's description is the rest of the line following the date | A transaction's description is the rest of the line following the date | ||||||
| @ -252,7 +252,7 @@ comments. | |||||||
| * Payee and note:: | * Payee and note:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Payee and note,  Up: Description | File: hledger_journal.info,  Node: Payee and note,  Up: DESCRIPTION | ||||||
| 
 | 
 | ||||||
| 4.1 Payee and note | 4.1 Payee and note | ||||||
| ================== | ================== | ||||||
| @ -264,9 +264,9 @@ the left (up to the first '|') and an additional note field on the right | |||||||
| precise querying and pivoting by payee or by note. | precise querying and pivoting by payee or by note. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Comments,  Next: Tags,  Prev: Description,  Up: Top | File: hledger_journal.info,  Node: COMMENTS,  Next: TAGS,  Prev: DESCRIPTION,  Up: Top | ||||||
| 
 | 
 | ||||||
| 5 Comments | 5 COMMENTS | ||||||
| ********** | ********** | ||||||
| 
 | 
 | ||||||
| Lines in the journal beginning with a semicolon (';') or hash ('#') or | Lines in the journal beginning with a semicolon (';') or hash ('#') or | ||||||
| @ -304,9 +304,9 @@ end comment | |||||||
| 'end comment' directives. | 'end comment' directives. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Tags,  Next: Postings,  Prev: Comments,  Up: Top | File: hledger_journal.info,  Node: TAGS,  Next: POSTINGS,  Prev: COMMENTS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 6 Tags | 6 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 | ||||||
| @ -347,9 +347,9 @@ example, the following transaction has three tags ('A', 'TAG2', | |||||||
| are simple strings. | are simple strings. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Postings,  Next: Account names,  Prev: Tags,  Up: Top | File: hledger_journal.info,  Node: POSTINGS,  Next: ACCOUNT NAMES,  Prev: TAGS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 7 Postings | 7 POSTINGS | ||||||
| ********** | ********** | ||||||
| 
 | 
 | ||||||
| A posting is an addition of some amount to, or removal of some amount | A posting is an addition of some amount to, or removal of some amount | ||||||
| @ -379,7 +379,7 @@ the amount, the amount will be considered part of the account name. | |||||||
| * Virtual postings:: | * Virtual postings:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Virtual postings,  Up: Postings | File: hledger_journal.info,  Node: Virtual postings,  Up: POSTINGS | ||||||
| 
 | 
 | ||||||
| 7.1 Virtual postings | 7.1 Virtual postings | ||||||
| ==================== | ==================== | ||||||
| @ -414,9 +414,9 @@ postings_.  You can exclude virtual postings from reports with the | |||||||
| '-R/--real' flag or 'real:1' query. | '-R/--real' flag or 'real:1' query. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Account names,  Next: Amounts,  Prev: Postings,  Up: Top | File: hledger_journal.info,  Node: ACCOUNT NAMES,  Next: AMOUNTS,  Prev: POSTINGS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 8 Account names | 8 ACCOUNT NAMES | ||||||
| *************** | *************** | ||||||
| 
 | 
 | ||||||
| Account names typically have several parts separated by a full colon, | Account names typically have several parts separated by a full colon, | ||||||
| @ -432,9 +432,9 @@ more spaces* (or newline). | |||||||
|    Account names can be aliased. |    Account names can be aliased. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Amounts,  Next: Transaction prices,  Prev: Account names,  Up: Top | File: hledger_journal.info,  Node: AMOUNTS,  Next: TRANSACTION PRICES,  Prev: ACCOUNT NAMES,  Up: Top | ||||||
| 
 | 
 | ||||||
| 9 Amounts | 9 AMOUNTS | ||||||
| ********* | ********* | ||||||
| 
 | 
 | ||||||
| After the account name, there is usually an amount.  (Important: between | After the account name, there is usually an amount.  (Important: between | ||||||
| @ -488,7 +488,7 @@ EUR 1E3 | |||||||
| * Rounding:: | * Rounding:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Digit group marks,  Next: Commodity display style,  Up: Amounts | File: hledger_journal.info,  Node: Digit group marks,  Next: Commodity display style,  Up: AMOUNTS | ||||||
| 
 | 
 | ||||||
| 9.1 Digit group marks | 9.1 Digit group marks | ||||||
| ===================== | ===================== | ||||||
| @ -521,7 +521,7 @@ commodity INR 9,99,99,999.00 | |||||||
| commodity       1 000 000.9455 | commodity       1 000 000.9455 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Commodity display style,  Next: Rounding,  Prev: Digit group marks,  Up: Amounts | File: hledger_journal.info,  Node: Commodity display style,  Next: Rounding,  Prev: Digit group marks,  Up: AMOUNTS | ||||||
| 
 | 
 | ||||||
| 9.2 Commodity display style | 9.2 Commodity display style | ||||||
| =========================== | =========================== | ||||||
| @ -566,7 +566,7 @@ many decimal places), use a commodity directive to set your preferred | |||||||
| style. | style. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Rounding,  Prev: Commodity display style,  Up: Amounts | File: hledger_journal.info,  Node: Rounding,  Prev: Commodity display style,  Up: AMOUNTS | ||||||
| 
 | 
 | ||||||
| 9.3 Rounding | 9.3 Rounding | ||||||
| ============ | ============ | ||||||
| @ -579,9 +579,9 @@ places is "0").  (Guaranteed since hledger 1.17.1; in older versions | |||||||
| this could vary if hledger was built with Decimal < 0.5.1.) | this could vary if hledger was built with Decimal < 0.5.1.) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Transaction prices,  Next: Lot prices and lot dates,  Prev: Amounts,  Up: Top | File: hledger_journal.info,  Node: TRANSACTION PRICES,  Next: LOT PRICES LOT DATES,  Prev: AMOUNTS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 10 Transaction prices | 10 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 | ||||||
| @ -646,10 +646,10 @@ $ hledger bal -N --flat -B | |||||||
|                 €100  assets:euros |                 €100  assets:euros | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Lot prices and lot dates,  Next: Balance assertions,  Prev: Transaction prices,  Up: Top | File: hledger_journal.info,  Node: LOT PRICES LOT DATES,  Next: BALANCE ASSERTIONS,  Prev: TRANSACTION PRICES,  Up: Top | ||||||
| 
 | 
 | ||||||
| 11 Lot prices and lot dates | 11 LOT PRICES, LOT DATES | ||||||
| *************************** | ************************ | ||||||
| 
 | 
 | ||||||
| Ledger allows another kind of price, lot price (four variants: | Ledger allows another kind of price, lot price (four variants: | ||||||
| '{UNITPRICE}', '{{TOTALPRICE}}', '{=FIXEDUNITPRICE}', | '{UNITPRICE}', '{{TOTALPRICE}}', '{=FIXEDUNITPRICE}', | ||||||
| @ -661,9 +661,9 @@ may appear in any order, after the posting amount and before the balance | |||||||
| assertion if any. | assertion if any. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Balance assertions,  Next: Balance assignments,  Prev: Lot prices and lot dates,  Up: Top | File: hledger_journal.info,  Node: BALANCE ASSERTIONS,  Next: BALANCE ASSIGNMENTS,  Prev: LOT PRICES LOT DATES,  Up: Top | ||||||
| 
 | 
 | ||||||
| 12 Balance assertions | 12 BALANCE ASSERTIONS | ||||||
| ********************* | ********************* | ||||||
| 
 | 
 | ||||||
| hledger supports Ledger-style balance assertions in journal files. | hledger supports Ledger-style balance assertions in journal files. | ||||||
| @ -699,7 +699,7 @@ does not disable balance assignments, below). | |||||||
| * Assertions and precision:: | * Assertions and precision:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Assertions and ordering,  Next: Assertions and included files,  Up: Balance assertions | File: hledger_journal.info,  Node: Assertions and ordering,  Next: Assertions and included files,  Up: BALANCE ASSERTIONS | ||||||
| 
 | 
 | ||||||
| 12.1 Assertions and ordering | 12.1 Assertions and ordering | ||||||
| ============================ | ============================ | ||||||
| @ -718,7 +718,7 @@ control over the order of postings and assertions within a day, so you | |||||||
| can assert intra-day balances. | can assert intra-day balances. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Assertions and included files,  Next: Assertions and multiple -f options,  Prev: Assertions and ordering,  Up: Balance assertions | File: hledger_journal.info,  Node: Assertions and included files,  Next: Assertions and multiple -f options,  Prev: Assertions and ordering,  Up: BALANCE ASSERTIONS | ||||||
| 
 | 
 | ||||||
| 12.2 Assertions and included files | 12.2 Assertions and included files | ||||||
| ================================== | ================================== | ||||||
| @ -730,7 +730,7 @@ and you also want to assert the account's balance on the same day, | |||||||
| you'll have to put the assertion in the right file. | you'll have to put the assertion in the right file. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Assertions and multiple -f options,  Next: Assertions and commodities,  Prev: Assertions and included files,  Up: Balance assertions | File: hledger_journal.info,  Node: Assertions and multiple -f options,  Next: Assertions and commodities,  Prev: Assertions and included files,  Up: BALANCE ASSERTIONS | ||||||
| 
 | 
 | ||||||
| 12.3 Assertions and multiple -f options | 12.3 Assertions and multiple -f options | ||||||
| ======================================= | ======================================= | ||||||
| @ -739,7 +739,7 @@ Balance assertions don't work well across files specified with multiple | |||||||
| -f options.  Use include or concatenate the files instead. | -f options.  Use include or concatenate the files instead. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Assertions and commodities,  Next: Assertions and prices,  Prev: Assertions and multiple -f options,  Up: Balance assertions | File: hledger_journal.info,  Node: Assertions and commodities,  Next: Assertions and prices,  Prev: Assertions and multiple -f options,  Up: BALANCE ASSERTIONS | ||||||
| 
 | 
 | ||||||
| 12.4 Assertions and commodities | 12.4 Assertions and commodities | ||||||
| =============================== | =============================== | ||||||
| @ -787,7 +787,7 @@ commodity into its own subaccount: | |||||||
|   a:euro   0 ==  1€ |   a:euro   0 ==  1€ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Assertions and prices,  Next: Assertions and subaccounts,  Prev: Assertions and commodities,  Up: Balance assertions | File: hledger_journal.info,  Node: Assertions and prices,  Next: Assertions and subaccounts,  Prev: Assertions and commodities,  Up: BALANCE ASSERTIONS | ||||||
| 
 | 
 | ||||||
| 12.5 Assertions and prices | 12.5 Assertions and prices | ||||||
| ========================== | ========================== | ||||||
| @ -805,7 +805,7 @@ to generate balance assertions with prices), and because balance | |||||||
| _assignments_ do use them (see below). | _assignments_ do use them (see below). | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Assertions and subaccounts,  Next: Assertions and virtual postings,  Prev: Assertions and prices,  Up: Balance assertions | File: hledger_journal.info,  Node: Assertions and subaccounts,  Next: Assertions and virtual postings,  Prev: Assertions and prices,  Up: BALANCE ASSERTIONS | ||||||
| 
 | 
 | ||||||
| 12.6 Assertions and subaccounts | 12.6 Assertions and subaccounts | ||||||
| =============================== | =============================== | ||||||
| @ -822,7 +822,7 @@ eg: | |||||||
|   checking         1  ==* 11 |   checking         1  ==* 11 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Assertions and virtual postings,  Next: Assertions and precision,  Prev: Assertions and subaccounts,  Up: Balance assertions | File: hledger_journal.info,  Node: Assertions and virtual postings,  Next: Assertions and precision,  Prev: Assertions and subaccounts,  Up: BALANCE ASSERTIONS | ||||||
| 
 | 
 | ||||||
| 12.7 Assertions and virtual postings | 12.7 Assertions and virtual postings | ||||||
| ==================================== | ==================================== | ||||||
| @ -832,7 +832,7 @@ virtual.  They are not affected by the '--real/-R' flag or 'real:' | |||||||
| query. | query. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Assertions and precision,  Prev: Assertions and virtual postings,  Up: Balance assertions | File: hledger_journal.info,  Node: Assertions and precision,  Prev: Assertions and virtual postings,  Up: BALANCE ASSERTIONS | ||||||
| 
 | 
 | ||||||
| 12.8 Assertions and precision | 12.8 Assertions and precision | ||||||
| ============================= | ============================= | ||||||
| @ -843,9 +843,9 @@ display precision, but this will not affect balance assertions.  Balance | |||||||
| assertion failure messages show exact amounts. | assertion failure messages show exact amounts. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Balance assignments,  Next: Directives,  Prev: Balance assertions,  Up: Top | File: hledger_journal.info,  Node: BALANCE ASSIGNMENTS,  Next: DIRECTIVES,  Prev: BALANCE ASSERTIONS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 13 Balance assignments | 13 BALANCE ASSIGNMENTS | ||||||
| ********************** | ********************** | ||||||
| 
 | 
 | ||||||
| Ledger-style balance assignments are also supported.  These are like | Ledger-style balance assignments are also supported.  These are like | ||||||
| @ -880,7 +880,7 @@ hledger or do the calculations yourself, instead of just reading it. | |||||||
| * Balance assignments and prices:: | * Balance assignments and prices:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Balance assignments and prices,  Up: Balance assignments | File: hledger_journal.info,  Node: Balance assignments and prices,  Up: BALANCE ASSIGNMENTS | ||||||
| 
 | 
 | ||||||
| 13.1 Balance assignments and prices | 13.1 Balance assignments and prices | ||||||
| =================================== | =================================== | ||||||
| @ -896,9 +896,9 @@ $ hledger print --explicit | |||||||
|     (a)         $1 @ €2 = $1 @ €2 |     (a)         $1 @ €2 = $1 @ €2 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Directives,  Next: Periodic transactions,  Prev: Balance assignments,  Up: Top | File: hledger_journal.info,  Node: DIRECTIVES,  Next: PERIODIC TRANSACTIONS,  Prev: BALANCE ASSIGNMENTS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 14 Directives | 14 DIRECTIVES | ||||||
| ************* | ************* | ||||||
| 
 | 
 | ||||||
| A directive is a line in the journal beginning with a special keyword, | A directive is a line in the journal beginning with a special keyword, | ||||||
| @ -997,7 +997,7 @@ they affect, and whether they are focussed on input (parsing) or output | |||||||
| * Default parent account:: | * Default parent account:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Directives and multiple files,  Next: Comment blocks,  Up: Directives | File: hledger_journal.info,  Node: Directives and multiple files,  Next: Comment blocks,  Up: DIRECTIVES | ||||||
| 
 | 
 | ||||||
| 14.1 Directives and multiple files | 14.1 Directives and multiple files | ||||||
| ================================== | ================================== | ||||||
| @ -1017,7 +1017,7 @@ files. | |||||||
| directives do not affect parent or sibling files (see below). | directives do not affect parent or sibling files (see below). | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Comment blocks,  Next: Including other files,  Prev: Directives and multiple files,  Up: Directives | File: hledger_journal.info,  Node: Comment blocks,  Next: Including other files,  Prev: Directives and multiple files,  Up: DIRECTIVES | ||||||
| 
 | 
 | ||||||
| 14.2 Comment blocks | 14.2 Comment blocks | ||||||
| =================== | =================== | ||||||
| @ -1027,7 +1027,7 @@ and a line containing just 'end comment' (or the end of the current | |||||||
| file) ends it.  See also comments. | file) ends it.  See also comments. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Including other files,  Next: Default year,  Prev: Comment blocks,  Up: Directives | File: hledger_journal.info,  Node: Including other files,  Next: Default year,  Prev: Comment blocks,  Up: DIRECTIVES | ||||||
| 
 | 
 | ||||||
| 14.3 Including other files | 14.3 Including other files | ||||||
| ========================== | ========================== | ||||||
| @ -1058,7 +1058,7 @@ overriding the file extension (as described in hledger.1 -> Input | |||||||
| files): 'include timedot:~/notes/2020*.md'. | files): 'include timedot:~/notes/2020*.md'. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Default year,  Next: Declaring commodities,  Prev: Including other files,  Up: Directives | File: hledger_journal.info,  Node: Default year,  Next: Declaring commodities,  Prev: Including other files,  Up: DIRECTIVES | ||||||
| 
 | 
 | ||||||
| 14.4 Default year | 14.4 Default year | ||||||
| ================= | ================= | ||||||
| @ -1084,7 +1084,7 @@ Y2010  ; change default year to 2010 | |||||||
|   assets |   assets | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Declaring commodities,  Next: Default commodity,  Prev: Default year,  Up: Directives | File: hledger_journal.info,  Node: Declaring commodities,  Next: Default commodity,  Prev: Default year,  Up: DIRECTIVES | ||||||
| 
 | 
 | ||||||
| 14.5 Declaring commodities | 14.5 Declaring commodities | ||||||
| ========================== | ========================== | ||||||
| @ -1152,7 +1152,7 @@ by a 'commodity' directive.  This works similarly to account error | |||||||
| checking, see the notes there for more details. | checking, see the notes there for more details. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Default commodity,  Next: Declaring market prices,  Prev: Declaring commodities,  Up: Directives | File: hledger_journal.info,  Node: Default commodity,  Next: Declaring market prices,  Prev: Declaring commodities,  Up: DIRECTIVES | ||||||
| 
 | 
 | ||||||
| 14.6 Default commodity | 14.6 Default commodity | ||||||
| ====================== | ====================== | ||||||
| @ -1179,7 +1179,7 @@ D $1,000.00 | |||||||
|   b |   b | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Declaring market prices,  Next: Declaring accounts,  Prev: Default commodity,  Up: Directives | File: hledger_journal.info,  Node: Declaring market prices,  Next: Declaring accounts,  Prev: Default commodity,  Up: DIRECTIVES | ||||||
| 
 | 
 | ||||||
| 14.7 Declaring market prices | 14.7 Declaring market prices | ||||||
| ============================ | ============================ | ||||||
| @ -1209,7 +1209,7 @@ P 2010/1/1 € $1.40 | |||||||
| amount values in another commodity.  See Valuation. | amount values in another commodity.  See Valuation. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Declaring accounts,  Next: Rewriting accounts,  Prev: Declaring market prices,  Up: Directives | File: hledger_journal.info,  Node: Declaring accounts,  Next: Rewriting accounts,  Prev: Declaring market prices,  Up: DIRECTIVES | ||||||
| 
 | 
 | ||||||
| 14.8 Declaring accounts | 14.8 Declaring accounts | ||||||
| ======================= | ======================= | ||||||
| @ -1471,7 +1471,7 @@ means: | |||||||
|      between 'a:b' and 'a:c'). |      between 'a:b' and 'a:c'). | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Rewriting accounts,  Next: Default parent account,  Prev: Declaring accounts,  Up: Directives | File: hledger_journal.info,  Node: Rewriting accounts,  Next: Default parent account,  Prev: Declaring accounts,  Up: DIRECTIVES | ||||||
| 
 | 
 | ||||||
| 14.9 Rewriting accounts | 14.9 Rewriting accounts | ||||||
| ======================= | ======================= | ||||||
| @ -1629,7 +1629,7 @@ aliases' directive: | |||||||
| end aliases | end aliases | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Default parent account,  Prev: Rewriting accounts,  Up: Directives | File: hledger_journal.info,  Node: Default parent account,  Prev: Rewriting accounts,  Up: DIRECTIVES | ||||||
| 
 | 
 | ||||||
| 14.10 Default parent account | 14.10 Default parent account | ||||||
| ============================ | ============================ | ||||||
| @ -1670,9 +1670,9 @@ If account aliases are present, they are applied after the default | |||||||
| parent account. | parent account. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Periodic transactions,  Next: Auto postings,  Prev: Directives,  Up: Top | File: hledger_journal.info,  Node: PERIODIC TRANSACTIONS,  Next: AUTO POSTINGS,  Prev: DIRECTIVES,  Up: Top | ||||||
| 
 | 
 | ||||||
| 15 Periodic transactions | 15 PERIODIC TRANSACTIONS | ||||||
| ************************ | ************************ | ||||||
| 
 | 
 | ||||||
| Periodic transaction rules describe transactions that recur.  They allow | Periodic transaction rules describe transactions that recur.  They allow | ||||||
| @ -1717,7 +1717,7 @@ to define budget goals, shown in budget reports. | |||||||
| * Budgeting with periodic transactions:: | * Budgeting with periodic transactions:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Periodic rule syntax,  Next: Two spaces between period expression and description!,  Up: Periodic transactions | File: hledger_journal.info,  Node: Periodic rule syntax,  Next: Two spaces between period expression and description!,  Up: PERIODIC TRANSACTIONS | ||||||
| 
 | 
 | ||||||
| 15.1 Periodic rule syntax | 15.1 Periodic rule syntax | ||||||
| ========================= | ========================= | ||||||
| @ -1740,7 +1740,7 @@ date, unless a Y default year directive is in effect, in which case they | |||||||
| will be relative to Y/1/1. | will be relative to Y/1/1. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Two spaces between period expression and description!,  Next: Forecasting with periodic transactions,  Prev: Periodic rule syntax,  Up: Periodic transactions | File: hledger_journal.info,  Node: Two spaces between period expression and description!,  Next: Forecasting with periodic transactions,  Prev: Periodic rule syntax,  Up: PERIODIC TRANSACTIONS | ||||||
| 
 | 
 | ||||||
| 15.2 Two spaces between period expression and description! | 15.2 Two spaces between period expression and description! | ||||||
| ========================================================== | ========================================================== | ||||||
| @ -1765,7 +1765,7 @@ accidentally alter their meaning, as in this example: | |||||||
|      expression. |      expression. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Forecasting with periodic transactions,  Next: Budgeting with periodic transactions,  Prev: Two spaces between period expression and description!,  Up: Periodic transactions | File: hledger_journal.info,  Node: Forecasting with periodic transactions,  Next: Budgeting with periodic transactions,  Prev: Two spaces between period expression and description!,  Up: PERIODIC TRANSACTIONS | ||||||
| 
 | 
 | ||||||
| 15.3 Forecasting with periodic transactions | 15.3 Forecasting with periodic transactions | ||||||
| =========================================== | =========================================== | ||||||
| @ -1811,7 +1811,7 @@ examples: '--forecast=202001-202004', '--forecast=jan-', | |||||||
| '--forecast=2020'. | '--forecast=2020'. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Budgeting with periodic transactions,  Prev: Forecasting with periodic transactions,  Up: Periodic transactions | File: hledger_journal.info,  Node: Budgeting with periodic transactions,  Prev: Forecasting with periodic transactions,  Up: PERIODIC TRANSACTIONS | ||||||
| 
 | 
 | ||||||
| 15.4 Budgeting with periodic transactions | 15.4 Budgeting with periodic transactions | ||||||
| ========================================= | ========================================= | ||||||
| @ -1826,9 +1826,9 @@ compared in budget reports. | |||||||
|    See also: Budgeting and Forecasting. |    See also: Budgeting and Forecasting. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Auto postings,  Prev: Periodic transactions,  Up: Top | File: hledger_journal.info,  Node: AUTO POSTINGS,  Prev: PERIODIC TRANSACTIONS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 16 Auto postings | 16 AUTO POSTINGS | ||||||
| **************** | **************** | ||||||
| 
 | 
 | ||||||
| "Automated postings" or "auto postings" are extra postings which get | "Automated postings" or "auto postings" are extra postings which get | ||||||
| @ -1904,7 +1904,7 @@ $ hledger print --auto | |||||||
| * Auto posting tags:: | * Auto posting tags:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Auto postings and multiple files,  Next: Auto postings and dates,  Up: Auto postings | File: hledger_journal.info,  Node: Auto postings and multiple files,  Next: Auto postings and dates,  Up: AUTO POSTINGS | ||||||
| 
 | 
 | ||||||
| 16.1 Auto postings and multiple files | 16.1 Auto postings and multiple files | ||||||
| ===================================== | ===================================== | ||||||
| @ -1914,7 +1914,7 @@ in any parent file or child file.  Note, currently it will not affect | |||||||
| sibling files (when multiple '-f'/'--file' are used - see #1212). | sibling files (when multiple '-f'/'--file' are used - see #1212). | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Auto postings and dates,  Next: Auto postings and transaction balancing / inferred amounts / balance assertions,  Prev: Auto postings and multiple files,  Up: Auto postings | File: hledger_journal.info,  Node: Auto postings and dates,  Next: Auto postings and transaction balancing / inferred amounts / balance assertions,  Prev: Auto postings and multiple files,  Up: AUTO POSTINGS | ||||||
| 
 | 
 | ||||||
| 16.2 Auto postings and dates | 16.2 Auto postings and dates | ||||||
| ============================ | ============================ | ||||||
| @ -1924,7 +1924,7 @@ precedence) a posting date in the auto posting rule itself, will also be | |||||||
| used in the generated posting. | used in the generated posting. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Auto postings and transaction balancing / inferred amounts / balance assertions,  Next: Auto posting tags,  Prev: Auto postings and dates,  Up: Auto postings | File: hledger_journal.info,  Node: Auto postings and transaction balancing / inferred amounts / balance assertions,  Next: Auto posting tags,  Prev: Auto postings and dates,  Up: AUTO POSTINGS | ||||||
| 
 | 
 | ||||||
| 16.3 Auto postings and transaction balancing / inferred amounts / | 16.3 Auto postings and transaction balancing / inferred amounts / | ||||||
| ================================================================= | ================================================================= | ||||||
| @ -1940,7 +1940,7 @@ after auto postings are added.  This changed in hledger 1.12+; see #893 | |||||||
| for background. | for background. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger_journal.info,  Node: Auto posting tags,  Prev: Auto postings and transaction balancing / inferred amounts / balance assertions,  Up: Auto postings | File: hledger_journal.info,  Node: Auto posting tags,  Prev: Auto postings and transaction balancing / inferred amounts / balance assertions,  Up: AUTO POSTINGS | ||||||
| 
 | 
 | ||||||
| 16.4 Auto posting tags | 16.4 Auto posting tags | ||||||
| ====================== | ====================== | ||||||
| @ -1964,142 +1964,137 @@ will have these tags added: | |||||||
|  |  | ||||||
| Tag Table: | Tag Table: | ||||||
| Node: Top76 | Node: Top76 | ||||||
| Node: Transactions2156 | Node: TRANSACTIONS2111 | ||||||
| Ref: #transactions2274 | Ref: #transactions2229 | ||||||
| Node: Dates3288 | Node: DATES3243 | ||||||
| Ref: #dates3395 | Ref: #dates3350 | ||||||
| Node: Simple dates3460 | Node: Simple dates3415 | ||||||
| Ref: #simple-dates3582 | Ref: #simple-dates3537 | ||||||
| Node: Secondary dates4091 | Node: Secondary dates4046 | ||||||
| Ref: #secondary-dates4241 | Ref: #secondary-dates4196 | ||||||
| Node: Posting dates5577 | Node: Posting dates5532 | ||||||
| Ref: #posting-dates5702 | Ref: #posting-dates5657 | ||||||
| Node: Status7074 | Node: STATUS7029 | ||||||
| Ref: #status7182 | Ref: #status7137 | ||||||
| Node: Description8890 | Node: DESCRIPTION8845 | ||||||
| Ref: #description9011 | Ref: #description8966 | ||||||
| Node: Payee and note9331 | Node: Payee and note9286 | ||||||
| Ref: #payee-and-note9441 | Ref: #payee-and-note9396 | ||||||
| Node: Comments9776 | Node: COMMENTS9731 | ||||||
| Ref: #comments9889 | Ref: #comments9844 | ||||||
| Node: Tags11083 | Node: TAGS11038 | ||||||
| Ref: #tags11185 | Ref: #tags11140 | ||||||
| Node: Postings12578 | Node: POSTINGS12533 | ||||||
| Ref: #postings12693 | Ref: #postings12648 | ||||||
| Node: Virtual postings13719 | Node: Virtual postings13674 | ||||||
| Ref: #virtual-postings13832 | Ref: #virtual-postings13787 | ||||||
| Node: Account names15137 | Node: ACCOUNT NAMES15092 | ||||||
| Ref: #account-names15265 | Ref: #account-names15220 | ||||||
| Node: Amounts15752 | Node: AMOUNTS15707 | ||||||
| Ref: #amounts15878 | Ref: #amounts15833 | ||||||
| Node: Digit group marks17002 | Node: Digit group marks16957 | ||||||
| Ref: #digit-group-marks17149 | Ref: #digit-group-marks17104 | ||||||
| Node: Commodity display style18087 | Node: Commodity display style18042 | ||||||
| Ref: #commodity-display-style18263 | Ref: #commodity-display-style18218 | ||||||
| Node: Rounding19806 | Node: Rounding19761 | ||||||
| Ref: #rounding19926 | Ref: #rounding19881 | ||||||
| Node: Transaction prices20338 | Node: TRANSACTION PRICES20293 | ||||||
| Ref: #transaction-prices20499 | Ref: #transaction-prices20450 | ||||||
| Node: Lot prices and lot dates22930 | Node: LOT PRICES LOT DATES22881 | ||||||
| Ref: #lot-prices-and-lot-dates23114 | Ref: #lot-prices-lot-dates23055 | ||||||
| Node: Balance assertions23602 | Node: BALANCE ASSERTIONS23543 | ||||||
| Ref: #balance-assertions23775 | Ref: #balance-assertions23712 | ||||||
| Node: Assertions and ordering24808 | Node: Assertions and ordering24745 | ||||||
| Ref: #assertions-and-ordering24992 | Ref: #assertions-and-ordering24929 | ||||||
| Node: Assertions and included files25692 | Node: Assertions and included files25629 | ||||||
| Ref: #assertions-and-included-files25931 | Ref: #assertions-and-included-files25868 | ||||||
| Node: Assertions and multiple -f options26264 | Node: Assertions and multiple -f options26201 | ||||||
| Ref: #assertions-and-multiple--f-options26516 | Ref: #assertions-and-multiple--f-options26453 | ||||||
| Node: Assertions and commodities26648 | Node: Assertions and commodities26585 | ||||||
| Ref: #assertions-and-commodities26876 | Ref: #assertions-and-commodities26813 | ||||||
| Node: Assertions and prices28033 | Node: Assertions and prices27970 | ||||||
| Ref: #assertions-and-prices28243 | Ref: #assertions-and-prices28180 | ||||||
| Node: Assertions and subaccounts28683 | Node: Assertions and subaccounts28620 | ||||||
| Ref: #assertions-and-subaccounts28908 | Ref: #assertions-and-subaccounts28845 | ||||||
| Node: Assertions and virtual postings29232 | Node: Assertions and virtual postings29169 | ||||||
| Ref: #assertions-and-virtual-postings29470 | Ref: #assertions-and-virtual-postings29407 | ||||||
| Node: Assertions and precision29612 | Node: Assertions and precision29549 | ||||||
| Ref: #assertions-and-precision29801 | Ref: #assertions-and-precision29738 | ||||||
| Node: Balance assignments30068 | Node: BALANCE ASSIGNMENTS30005 | ||||||
| Ref: #balance-assignments30229 | Ref: #balance-assignments30166 | ||||||
| Node: Balance assignments and prices31393 | Node: Balance assignments and prices31330 | ||||||
| Ref: #balance-assignments-and-prices31561 | Ref: #balance-assignments-and-prices31498 | ||||||
| Node: Directives31785 | Node: DIRECTIVES31722 | ||||||
| Ref: #directives31931 | Ref: #directives31868 | ||||||
| Node: Directives and multiple files37429 | Node: Directives and multiple files37366 | ||||||
| Ref: #directives-and-multiple-files37608 | Ref: #directives-and-multiple-files37545 | ||||||
| Node: Comment blocks38272 | Node: Comment blocks38209 | ||||||
| Ref: #comment-blocks38451 | Ref: #comment-blocks38388 | ||||||
| Node: Including other files38627 | Node: Including other files38564 | ||||||
| Ref: #including-other-files38803 | Ref: #including-other-files38740 | ||||||
| Node: Default year39727 | Node: Default year39664 | ||||||
| Ref: #default-year39892 | Ref: #default-year39829 | ||||||
| Node: Declaring commodities40299 | Node: Declaring commodities40236 | ||||||
| Ref: #declaring-commodities40478 | Ref: #declaring-commodities40415 | ||||||
| Node: Commodity error checking42322 | Node: Commodity error checking42259 | ||||||
| Ref: #commodity-error-checking42478 | Ref: #commodity-error-checking42415 | ||||||
| Node: Default commodity42735 | Node: Default commodity42672 | ||||||
| Ref: #default-commodity42917 | Ref: #default-commodity42854 | ||||||
| Node: Declaring market prices43806 | Node: Declaring market prices43743 | ||||||
| Ref: #declaring-market-prices43997 | Ref: #declaring-market-prices43934 | ||||||
| Node: Declaring accounts44854 | Node: Declaring accounts44791 | ||||||
| Ref: #declaring-accounts45036 | Ref: #declaring-accounts44973 | ||||||
| Node: Account error checking46238 | Node: Account error checking46175 | ||||||
| Ref: #account-error-checking46410 | Ref: #account-error-checking46347 | ||||||
| Node: Account comments47589 | Node: Account comments47526 | ||||||
| Ref: #account-comments47779 | Ref: #account-comments47716 | ||||||
| Node: Account subdirectives48203 | Node: Account subdirectives48140 | ||||||
| Ref: #account-subdirectives48394 | Ref: #account-subdirectives48331 | ||||||
| Node: Account types48707 | Node: Account types48644 | ||||||
| Ref: #account-types48887 | Ref: #account-types48824 | ||||||
| Node: Declaring account types49623 | Node: Declaring account types49560 | ||||||
| Ref: #declaring-account-types49808 | Ref: #declaring-account-types49745 | ||||||
| Node: Auto-detected account types50458 | Node: Auto-detected account types50395 | ||||||
| Ref: #auto-detected-account-types50705 | Ref: #auto-detected-account-types50642 | ||||||
| Node: Interference from auto-detected account types51602 | Node: Interference from auto-detected account types51539 | ||||||
| Ref: #interference-from-auto-detected-account-types51885 | Ref: #interference-from-auto-detected-account-types51822 | ||||||
| Node: Old account type syntax52368 | Node: Old account type syntax52305 | ||||||
| Ref: #old-account-type-syntax52571 | Ref: #old-account-type-syntax52508 | ||||||
| Node: Account display order52871 | Node: Account display order52808 | ||||||
| Ref: #account-display-order53037 | Ref: #account-display-order52974 | ||||||
| Node: Rewriting accounts54188 | Node: Rewriting accounts54125 | ||||||
| Ref: #rewriting-accounts54369 | Ref: #rewriting-accounts54306 | ||||||
| Node: Basic aliases55126 | Node: Basic aliases55063 | ||||||
| Ref: #basic-aliases55268 | Ref: #basic-aliases55205 | ||||||
| Node: Regex aliases55972 | Node: Regex aliases55909 | ||||||
| Ref: #regex-aliases56140 | Ref: #regex-aliases56077 | ||||||
| Node: Combining aliases56859 | Node: Combining aliases56796 | ||||||
| Ref: #combining-aliases57048 | Ref: #combining-aliases56985 | ||||||
| Node: Aliases and multiple files58324 | Node: Aliases and multiple files58261 | ||||||
| Ref: #aliases-and-multiple-files58529 | Ref: #aliases-and-multiple-files58466 | ||||||
| Node: end aliases59108 | Node: end aliases59045 | ||||||
| Ref: #end-aliases59261 | Ref: #end-aliases59198 | ||||||
| Node: Default parent account59362 | Node: Default parent account59299 | ||||||
| Ref: #default-parent-account59526 | Ref: #default-parent-account59463 | ||||||
| Node: Periodic transactions60410 | Node: PERIODIC TRANSACTIONS60347 | ||||||
| Ref: #periodic-transactions60572 | Ref: #periodic-transactions60509 | ||||||
| Node: Periodic rule syntax62489 | Node: Periodic rule syntax62426 | ||||||
| Ref: #periodic-rule-syntax62691 | Ref: #periodic-rule-syntax62628 | ||||||
| Node: Two spaces between period expression and description!63395 | Node: Two spaces between period expression and description!63332 | ||||||
| Ref: #two-spaces-between-period-expression-and-description63710 | Ref: #two-spaces-between-period-expression-and-description63647 | ||||||
| Node: Forecasting with periodic transactions64394 | Node: Forecasting with periodic transactions64331 | ||||||
| Ref: #forecasting-with-periodic-transactions64695 | Ref: #forecasting-with-periodic-transactions64632 | ||||||
| Node: Budgeting with periodic transactions66750 | Node: Budgeting with periodic transactions66687 | ||||||
| Ref: #budgeting-with-periodic-transactions66985 | Ref: #budgeting-with-periodic-transactions66922 | ||||||
| Node: Auto postings67394 | Node: AUTO POSTINGS67331 | ||||||
| Ref: #auto-postings67521 | Ref: #auto-postings67458 | ||||||
| Node: Auto postings and multiple files69700 | Node: Auto postings and multiple files69637 | ||||||
| Ref: #auto-postings-and-multiple-files69900 | Ref: #auto-postings-and-multiple-files69837 | ||||||
| Node: Auto postings and dates70109 | Node: Auto postings and dates70046 | ||||||
| Ref: #auto-postings-and-dates70379 | Ref: #auto-postings-and-dates70316 | ||||||
| Node: Auto postings and transaction balancing / inferred amounts / balance assertions70554 | Node: Auto postings and transaction balancing / inferred amounts / balance assertions70491 | ||||||
| Ref: #auto-postings-and-transaction-balancing-inferred-amounts-balance-assertions70901 | Ref: #auto-postings-and-transaction-balancing-inferred-amounts-balance-assertions70838 | ||||||
| Node: Auto posting tags71243 | Node: Auto posting tags71180 | ||||||
| Ref: #auto-posting-tags71454 | Ref: #auto-posting-tags71391 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
| 
 |  | ||||||
|  |  | ||||||
| Local Variables: |  | ||||||
| coding: utf-8 |  | ||||||
| End: |  | ||||||
|  | |||||||
| @ -1,10 +1,10 @@ | |||||||
| 
 | 
 | ||||||
| hledger_journal(5)           hledger User Manuals           hledger_journal(5) | HLEDGER_JOURNAL(5)           hledger User Manuals           HLEDGER_JOURNAL(5) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| NAME | NAME | ||||||
|        Journal - hledger's default file format, representing a General Journal |        hledger's default file format, representing a General Journal. | ||||||
| 
 | 
 | ||||||
| DESCRIPTION | DESCRIPTION | ||||||
|        hledger's usual data source is a plain text file containing journal en- |        hledger's usual data source is a plain text file containing journal en- | ||||||
| @ -31,14 +31,13 @@ DESCRIPTION | |||||||
|        formatting, tab completion, and useful commands.  See Editor configura- |        formatting, tab completion, and useful commands.  See Editor configura- | ||||||
|        tion at hledger.org for the full list. |        tion at hledger.org for the full list. | ||||||
| 
 | 
 | ||||||
| FILE FORMAT |  | ||||||
|        Here's  a  description  of  each part of the file format (and hledger's |        Here's  a  description  of  each part of the file format (and hledger's | ||||||
|        data model).  These are mostly in the order you'll  use  them,  but  in |        data model).  These are mostly in the order you'll  use  them,  but  in | ||||||
|        some  cases related concepts have been grouped together for easy refer- |        some  cases related concepts have been grouped together for easy refer- | ||||||
|        ence, or linked before they are introduced, so feel free to  skip  over |        ence, or linked before they are introduced, so feel free to  skip  over | ||||||
|        anything that looks unnecessary right now. |        anything that looks unnecessary right now. | ||||||
| 
 | 
 | ||||||
|    Transactions | TRANSACTIONS | ||||||
|        Transactions  are the main unit of information in a journal file.  They |        Transactions  are the main unit of information in a journal file.  They | ||||||
|        represent events, typically a movement of some quantity of  commodities |        represent events, typically a movement of some quantity of  commodities | ||||||
|        between two or more named accounts. |        between two or more named accounts. | ||||||
| @ -66,7 +65,7 @@ FILE FORMAT | |||||||
|                 assets:bank:checking   $1 |                 assets:bank:checking   $1 | ||||||
|                 income:salary         $-1 |                 income:salary         $-1 | ||||||
| 
 | 
 | ||||||
|    Dates | DATES | ||||||
|    Simple dates |    Simple dates | ||||||
|        Dates in the journal  file  use  simple  dates  format:  YYYY-MM-DD  or |        Dates in the journal  file  use  simple  dates  format:  YYYY-MM-DD  or | ||||||
|        YYYY/MM/DD or YYYY.MM.DD, with leading zeros optional.  The year may be |        YYYY/MM/DD or YYYY.MM.DD, with leading zeros optional.  The year may be | ||||||
| @ -139,7 +138,7 @@ FILE FORMAT | |||||||
|        With this syntax, DATE infers its year from the transaction  and  DATE2 |        With this syntax, DATE infers its year from the transaction  and  DATE2 | ||||||
|        infers its year from DATE. |        infers its year from DATE. | ||||||
| 
 | 
 | ||||||
|    Status | STATUS | ||||||
|        Transactions,  or  individual postings within a transaction, can have a |        Transactions,  or  individual postings within a transaction, can have a | ||||||
|        status mark, which is a single character  before  the  transaction  de- |        status mark, which is a single character  before  the  transaction  de- | ||||||
|        scription  or posting account name, separated from it by a space, indi- |        scription  or posting account name, separated from it by a space, indi- | ||||||
| @ -183,7 +182,7 @@ FILE FORMAT | |||||||
|        cashed  checks),  and no flags to see the most up-to-date state of your |        cashed  checks),  and no flags to see the most up-to-date state of your | ||||||
|        finances. |        finances. | ||||||
| 
 | 
 | ||||||
|    Description | DESCRIPTION | ||||||
|        A transaction's description is the rest of the line following the  date |        A transaction's description is the rest of the line following the  date | ||||||
|        and  status  mark  (or  until  a comment begins).  Sometimes called the |        and  status  mark  (or  until  a comment begins).  Sometimes called the | ||||||
|        "narration" in traditional bookkeeping, it can be used for whatever you |        "narration" in traditional bookkeeping, it can be used for whatever you | ||||||
| @ -197,7 +196,7 @@ FILE FORMAT | |||||||
|        ter  the  first |).  This may be worthwhile if you need to do more pre- |        ter  the  first |).  This may be worthwhile if you need to do more pre- | ||||||
|        cise querying and pivoting by payee or by note. |        cise querying and pivoting by payee or by note. | ||||||
| 
 | 
 | ||||||
|    Comments | COMMENTS | ||||||
|        Lines in the journal beginning with a semicolon (;) or hash (#) or star |        Lines in the journal beginning with a semicolon (;) or hash (#) or star | ||||||
|        (*)  are  comments, and will be ignored.  (Star comments cause org-mode |        (*)  are  comments, and will be ignored.  (Star comments cause org-mode | ||||||
|        nodes to be ignored, allowing emacs users to fold  and  navigate  their |        nodes to be ignored, allowing emacs users to fold  and  navigate  their | ||||||
| @ -232,7 +231,7 @@ FILE FORMAT | |||||||
|        You  can  also  comment  larger regions of a file using comment and end |        You  can  also  comment  larger regions of a file using comment and end | ||||||
|        comment directives. |        comment directives. | ||||||
| 
 | 
 | ||||||
|    Tags | 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 | ||||||
|        transactions, which you can then search or pivot on. |        transactions, which you can then search or pivot on. | ||||||
| 
 | 
 | ||||||
| @ -272,7 +271,7 @@ 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. | ||||||
| 
 | 
 | ||||||
|    Postings | POSTINGS | ||||||
|        A  posting  is an addition of some amount to, or removal of some amount |        A  posting  is an addition of some amount to, or removal of some amount | ||||||
|        from, an account.  Each posting line begins with at least one space  or |        from, an account.  Each posting line begins with at least one space  or | ||||||
|        tab (2 or 4 spaces is common), followed by: |        tab (2 or 4 spaces is common), followed by: | ||||||
| @ -326,7 +325,7 @@ FILE FORMAT | |||||||
|        postings.  You can exclude  virtual  postings  from  reports  with  the |        postings.  You can exclude  virtual  postings  from  reports  with  the | ||||||
|        -R/--real flag or real:1 query. |        -R/--real flag or real:1 query. | ||||||
| 
 | 
 | ||||||
|    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 | ||||||
|        be  anything you like, but in finance there are traditionally five top- |        be  anything you like, but in finance there are traditionally five top- | ||||||
| @ -338,7 +337,7 @@ FILE FORMAT | |||||||
| 
 | 
 | ||||||
|        Account names can be aliased. |        Account names can be aliased. | ||||||
| 
 | 
 | ||||||
|    Amounts | AMOUNTS | ||||||
|        After the account name, there is usually an  amount.   (Important:  be- |        After the account name, there is usually an  amount.   (Important:  be- | ||||||
|        tween account name and amount, there must be two or more spaces.) |        tween account name and amount, there must be two or more spaces.) | ||||||
| 
 | 
 | ||||||
| @ -460,7 +459,7 @@ FILE FORMAT | |||||||
|        places  is  "0").   (Guaranteed since hledger 1.17.1; in older versions |        places  is  "0").   (Guaranteed since hledger 1.17.1; in older versions | ||||||
|        this could vary if hledger was built with Decimal < 0.5.1.) |        this could vary if hledger was built with Decimal < 0.5.1.) | ||||||
| 
 | 
 | ||||||
|    Transaction prices | TRANSACTION PRICES | ||||||
|        Within a transaction, you can note an amount's price in another commod- |        Within a transaction, you can note an amount's price in another commod- | ||||||
|        ity.   This can be used to document the cost (in a purchase) or selling |        ity.   This can be used to document the cost (in a purchase) or selling | ||||||
|        price (in a sale).  For  example,  transaction  prices  are  useful  to |        price (in a sale).  For  example,  transaction  prices  are  useful  to | ||||||
| @ -521,7 +520,7 @@ FILE FORMAT | |||||||
|                              EUR-100  assets:dollars  # <- the dollars' selling price |                              EUR-100  assets:dollars  # <- the dollars' selling price | ||||||
|                               EUR100  assets:euros |                               EUR100  assets:euros | ||||||
| 
 | 
 | ||||||
|    Lot prices and lot dates | LOT PRICES, LOT DATES | ||||||
|        Ledger  allows  another kind of price, lot price (four variants: {UNIT- |        Ledger  allows  another kind of price, lot price (four variants: {UNIT- | ||||||
|        PRICE},   {{TOTALPRICE}},   {=FIXEDUNITPRICE},   {{=FIXEDTOTALPRICE}}), |        PRICE},   {{TOTALPRICE}},   {=FIXEDUNITPRICE},   {{=FIXEDTOTALPRICE}}), | ||||||
|        and/or a lot date ([DATE]) to be specified.  These are normally used to |        and/or a lot date ([DATE]) to be specified.  These are normally used to | ||||||
| @ -530,7 +529,7 @@ FILE FORMAT | |||||||
|        transaction price, lot price and/or lot date may appear in  any  order, |        transaction price, lot price and/or lot date may appear in  any  order, | ||||||
|        after the posting amount and before the balance assertion if any. |        after the posting amount and before the balance assertion if any. | ||||||
| 
 | 
 | ||||||
|    Balance assertions | BALANCE ASSERTIONS | ||||||
|        hledger  supports  Ledger-style  balance  assertions  in journal files. |        hledger  supports  Ledger-style  balance  assertions  in journal files. | ||||||
|        These look like, for example, = EXPECTEDBALANCE following  a  posting's |        These look like, for example, = EXPECTEDBALANCE following  a  posting's | ||||||
|        amount.   Eg  here  we assert the expected dollar balance in accounts a |        amount.   Eg  here  we assert the expected dollar balance in accounts a | ||||||
| @ -653,7 +652,7 @@ FILE FORMAT | |||||||
|        limit the display precision, but this will not  affect  balance  asser- |        limit the display precision, but this will not  affect  balance  asser- | ||||||
|        tions.  Balance assertion failure messages show exact amounts. |        tions.  Balance assertion failure messages show exact amounts. | ||||||
| 
 | 
 | ||||||
|    Balance assignments | 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 | ||||||
|        equals  sign;  instead  it is calculated automatically so as to satisfy |        equals  sign;  instead  it is calculated automatically so as to satisfy | ||||||
| @ -692,7 +691,7 @@ FILE FORMAT | |||||||
|               2019-01-01 |               2019-01-01 | ||||||
|                   (a)         $1 @ EUR2 = $1 @ EUR2 |                   (a)         $1 @ EUR2 = $1 @ EUR2 | ||||||
| 
 | 
 | ||||||
|    Directives | DIRECTIVES | ||||||
|        A  directive is a line in the journal beginning with a special keyword, |        A  directive is a line in the journal beginning with a special keyword, | ||||||
|        that influences how the journal is processed.  hledger's directives are |        that influences how the journal is processed.  hledger's directives are | ||||||
|        based on a subset of Ledger's, but there are many differences (and also |        based on a subset of Ledger's, but there are many differences (and also | ||||||
| @ -729,8 +728,6 @@ FILE FORMAT | |||||||
|                                                                        play style: amounts |                                                                        play style: amounts | ||||||
|                                                                        of  that  commodity |                                                                        of  that  commodity | ||||||
|                                                                        in reports |                                                                        in reports | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
|        D                                declare a  commodity  to  be   default  commodity: |        D                                declare a  commodity  to  be   default  commodity: | ||||||
|                                         used    for    commodityless   following   commod- |                                         used    for    commodityless   following   commod- | ||||||
|                                         amounts, and its number  no-   ityless entries un- |                                         amounts, and its number  no-   ityless entries un- | ||||||
| @ -743,6 +740,8 @@ FILE FORMAT | |||||||
|                                                                        play style: amounts |                                                                        play style: amounts | ||||||
|                                                                        of  that  commodity |                                                                        of  that  commodity | ||||||
|                                                                        in reports |                                                                        in reports | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|        include                          include   entries/directives   what  the  included |        include                          include   entries/directives   what  the  included | ||||||
|                                         from another file              directives affect |                                         from another file              directives affect | ||||||
|        P                                declare a market price for a   amounts   of   that |        P                                declare a market price for a   amounts   of   that | ||||||
| @ -1075,7 +1074,6 @@ FILE FORMAT | |||||||
|        ^(debts?|lia-                Liability |        ^(debts?|lia-                Liability | ||||||
|        bilit(y|ies))(:|$) |        bilit(y|ies))(:|$) | ||||||
|        ^equity(:|$)                 Equity |        ^equity(:|$)                 Equity | ||||||
| 
 |  | ||||||
|        ^(income|revenue)s?(:|$)     Revenue |        ^(income|revenue)s?(:|$)     Revenue | ||||||
|        ^expenses?(:|$)              Expense |        ^expenses?(:|$)              Expense | ||||||
| 
 | 
 | ||||||
| @ -1312,7 +1310,7 @@ FILE FORMAT | |||||||
|        account aliases are present, they are applied after the default  parent |        account aliases are present, they are applied after the default  parent | ||||||
|        account. |        account. | ||||||
| 
 | 
 | ||||||
|    Periodic transactions | PERIODIC TRANSACTIONS | ||||||
|        Periodic  transaction rules describe transactions that recur.  They al- |        Periodic  transaction rules describe transactions that recur.  They al- | ||||||
|        low hledger to generate temporary  future  transactions  to  help  with |        low hledger to generate temporary  future  transactions  to  help  with | ||||||
|        forecasting,  so  you  don't have to write out each one in the journal, |        forecasting,  so  you  don't have to write out each one in the journal, | ||||||
| @ -1443,7 +1441,7 @@ FILE FORMAT | |||||||
| 
 | 
 | ||||||
|        See also: Budgeting and Forecasting. |        See also: Budgeting and Forecasting. | ||||||
| 
 | 
 | ||||||
|    Auto postings | AUTO POSTINGS | ||||||
|        "Automated postings" or "auto postings" are extra  postings  which  get |        "Automated postings" or "auto postings" are extra  postings  which  get | ||||||
|        added  automatically  to  transactions which match certain queries, de- |        added  automatically  to  transactions which match certain queries, de- | ||||||
|        fined by "auto posting rules", when you use the --auto flag. |        fined by "auto posting rules", when you use the --auto flag. | ||||||
| @ -1570,9 +1568,11 @@ COPYRIGHT | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| SEE ALSO | SEE ALSO | ||||||
|        hledger(1),      hledger-ui(1),     hledger-web(1),     hledger_csv(5), |        hledger(1), hledger-ui(1), hledger-web(1), ledger(1) | ||||||
|        hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1) | 
 | ||||||
|  |        hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time- | ||||||
|  |        dot(5) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger 1.20.99                  December 2020              hledger_journal(5) | hledger-lib-1.20.99              December 2020              HLEDGER_JOURNAL(5) | ||||||
|  | |||||||
| @ -1,11 +1,11 @@ | |||||||
| 
 | 
 | ||||||
| .TH "hledger_timeclock" "5" "December 2020" "hledger 1.20.99" "hledger User Manuals" | .TH "HLEDGER_TIMECLOCK" "5" "December 2020" "hledger-lib-1.20.99 " "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| .SH NAME | .SH NAME | ||||||
| .PP | .PP | ||||||
| Timeclock - the time logging format of timeclock.el, as read by hledger | The time logging format of timeclock.el, as read by hledger. | ||||||
| .SH DESCRIPTION | .SH DESCRIPTION | ||||||
| .PP | .PP | ||||||
| hledger can read timeclock files. | hledger can read timeclock files. | ||||||
| @ -85,6 +85,6 @@ Copyright (C) 2007-2020 Simon Michael. | |||||||
| Released under GNU GPL v3 or later. | Released under GNU GPL v3 or later. | ||||||
| 
 | 
 | ||||||
| .SH SEE ALSO | .SH SEE ALSO | ||||||
| hledger(1), hledger\-ui(1), hledger\-web(1), | hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1) | ||||||
| hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), | 
 | ||||||
| ledger(1) | hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5) | ||||||
|  | |||||||
| @ -4,10 +4,10 @@ stdin. | |||||||
|  |  | ||||||
| File: hledger_timeclock.info,  Node: Top,  Up: (dir) | File: hledger_timeclock.info,  Node: Top,  Up: (dir) | ||||||
| 
 | 
 | ||||||
| hledger_timeclock(5) hledger 1.20.99 | hledger_timeclock(5) | ||||||
| ************************************ | ******************** | ||||||
| 
 | 
 | ||||||
| Timeclock - the time logging format of timeclock.el, as read by hledger | The time logging format of timeclock.el, as read by hledger. | ||||||
| 
 | 
 | ||||||
|    hledger can read timeclock files.  As with Ledger, these are (a |    hledger can read timeclock files.  As with Ledger, these are (a | ||||||
| subset of) timeclock.el's format, containing clock-in and clock-out | subset of) timeclock.el's format, containing clock-in and clock-out | ||||||
| @ -61,8 +61,3 @@ Tag Table: | |||||||
| Node: Top78 | Node: Top78 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
| 
 |  | ||||||
|  |  | ||||||
| Local Variables: |  | ||||||
| coding: utf-8 |  | ||||||
| End: |  | ||||||
|  | |||||||
| @ -1,10 +1,10 @@ | |||||||
| 
 | 
 | ||||||
| hledger_timeclock(5)         hledger User Manuals         hledger_timeclock(5) | HLEDGER_TIMECLOCK(5)         hledger User Manuals         HLEDGER_TIMECLOCK(5) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| NAME | NAME | ||||||
|        Timeclock - the time logging format of timeclock.el, as read by hledger |        The time logging format of timeclock.el, as read by hledger. | ||||||
| 
 | 
 | ||||||
| DESCRIPTION | DESCRIPTION | ||||||
|        hledger  can read timeclock files.  As with Ledger, these are (a subset |        hledger  can read timeclock files.  As with Ledger, these are (a subset | ||||||
| @ -70,9 +70,11 @@ COPYRIGHT | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| SEE ALSO | SEE ALSO | ||||||
|        hledger(1),      hledger-ui(1),     hledger-web(1),     hledger_csv(5), |        hledger(1), hledger-ui(1), hledger-web(1), ledger(1) | ||||||
|        hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1) | 
 | ||||||
|  |        hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time- | ||||||
|  |        dot(5) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger 1.20.99                  December 2020            hledger_timeclock(5) | hledger-lib-1.20.99              December 2020            HLEDGER_TIMECLOCK(5) | ||||||
|  | |||||||
| @ -1,11 +1,11 @@ | |||||||
| 
 | 
 | ||||||
| .TH "hledger_timedot" "5" "December 2020" "hledger 1.20.99" "hledger User Manuals" | .TH "HLEDGER_TIMEDOT" "5" "December 2020" "hledger-lib-1.20.99 " "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| .SH NAME | .SH NAME | ||||||
| .PP | .PP | ||||||
| Timedot - hledger\[aq]s human-friendly time logging format | hledger\[aq]s human-friendly time logging format. | ||||||
| .SH DESCRIPTION | .SH DESCRIPTION | ||||||
| .PP | .PP | ||||||
| Timedot is a plain text format for logging dated, categorised quantities | Timedot is a plain text format for logging dated, categorised quantities | ||||||
| @ -194,6 +194,6 @@ Copyright (C) 2007-2020 Simon Michael. | |||||||
| Released under GNU GPL v3 or later. | Released under GNU GPL v3 or later. | ||||||
| 
 | 
 | ||||||
| .SH SEE ALSO | .SH SEE ALSO | ||||||
| hledger(1), hledger\-ui(1), hledger\-web(1), | hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1) | ||||||
| hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), | 
 | ||||||
| ledger(1) | hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5) | ||||||
|  | |||||||
| @ -4,10 +4,10 @@ stdin. | |||||||
|  |  | ||||||
| File: hledger_timedot.info,  Node: Top,  Up: (dir) | File: hledger_timedot.info,  Node: Top,  Up: (dir) | ||||||
| 
 | 
 | ||||||
| hledger_timedot(5) hledger 1.20.99 | hledger_timedot(5) | ||||||
| ********************************** | ****************** | ||||||
| 
 | 
 | ||||||
| Timedot - hledger's human-friendly time logging format | hledger's human-friendly time logging format. | ||||||
| 
 | 
 | ||||||
|    Timedot is a plain text format for logging dated, categorised |    Timedot is a plain text format for logging dated, categorised | ||||||
| quantities (of time, usually), supported by hledger.  It is convenient | quantities (of time, usually), supported by hledger.  It is convenient | ||||||
| @ -143,8 +143,3 @@ Tag Table: | |||||||
| Node: Top76 | Node: Top76 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
| 
 |  | ||||||
|  |  | ||||||
| Local Variables: |  | ||||||
| coding: utf-8 |  | ||||||
| End: |  | ||||||
|  | |||||||
| @ -1,10 +1,10 @@ | |||||||
| 
 | 
 | ||||||
| hledger_timedot(5)           hledger User Manuals           hledger_timedot(5) | HLEDGER_TIMEDOT(5)           hledger User Manuals           HLEDGER_TIMEDOT(5) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| NAME | NAME | ||||||
|        Timedot - hledger's human-friendly time logging format |        hledger's human-friendly time logging format. | ||||||
| 
 | 
 | ||||||
| DESCRIPTION | DESCRIPTION | ||||||
|        Timedot  is  a plain text format for logging dated, categorised quanti- |        Timedot  is  a plain text format for logging dated, categorised quanti- | ||||||
| @ -153,9 +153,11 @@ COPYRIGHT | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| SEE ALSO | SEE ALSO | ||||||
|        hledger(1),     hledger-ui(1),     hledger-web(1),      hledger_csv(5), |        hledger(1), hledger-ui(1), hledger-web(1), ledger(1) | ||||||
|        hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1) | 
 | ||||||
|  |        hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time- | ||||||
|  |        dot(5) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger 1.20.99                  December 2020              hledger_timedot(5) | hledger-lib-1.20.99              December 2020              HLEDGER_TIMEDOT(5) | ||||||
|  | |||||||
| @ -1,11 +1,11 @@ | |||||||
| 
 | 
 | ||||||
| .TH "hledger-ui" "1" "December 2020" "hledger-ui 1.20.99" "hledger User Manuals" | .TH "HLEDGER-UI" "1" "December 2020" "hledger-ui-1.20.99 " "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| .SH NAME | .SH NAME | ||||||
| .PP | .PP | ||||||
| hledger-ui - terminal interface for the hledger accounting tool | A terminal interface (TUI) for the hledger accounting tool. | ||||||
| .SH SYNOPSIS | .SH SYNOPSIS | ||||||
| .PP | .PP | ||||||
| \f[C]hledger-ui [OPTIONS] [QUERYARGS]\f[R] | \f[C]hledger-ui [OPTIONS] [QUERYARGS]\f[R] | ||||||
| @ -189,18 +189,18 @@ show version | |||||||
| \f[B]\f[CB]--debug[=N]\f[B]\f[R] | \f[B]\f[CB]--debug[=N]\f[B]\f[R] | ||||||
| show debug output (levels 1-9, default: 1) | show debug output (levels 1-9, default: 1) | ||||||
| .PP | .PP | ||||||
| a \[at]file argument will be expanded to the contents of file, which | A \[at]FILE argument will be expanded to the contents of FILE, which | ||||||
| should contain one command line option/argument per line. | should contain one command line option/argument per line. | ||||||
| (to prevent this, insert a \f[C]--\f[R] argument before.) | (To prevent this, insert a \f[C]--\f[R] argument before.) | ||||||
| .SH keys | .SH KEYS | ||||||
| .PP | .PP | ||||||
| \f[C]?\f[R] shows a help dialog listing all keys. | \f[C]?\f[R] shows a help dialog listing all keys. | ||||||
| (some of these also appear in the quick help at the bottom of each | (Some of these also appear in the quick help at the bottom of each | ||||||
| screen.) press \f[C]?\f[R] again (or \f[C]escape\f[R], or | screen.) Press \f[C]?\f[R] again (or \f[C]ESCAPE\f[R], or | ||||||
| \f[C]left\f[R], or \f[C]q\f[R]) to close it. | \f[C]LEFT\f[R], or \f[C]q\f[R]) to close it. | ||||||
| the following keys work on most screens: | The following keys work on most screens: | ||||||
| .PP | .PP | ||||||
| the cursor keys navigate: \f[C]right\f[R] (or \f[C]enter\f[R]) goes | The cursor keys navigate: \f[C]right\f[R] (or \f[C]enter\f[R]) goes | ||||||
| deeper, \f[C]left\f[R] returns to the previous screen, | deeper, \f[C]left\f[R] returns to the previous screen, | ||||||
| \f[C]up\f[R]/\f[C]down\f[R]/\f[C]page up\f[R]/\f[C]page down\f[R]/\f[C]home\f[R]/\f[C]end\f[R] | \f[C]up\f[R]/\f[C]down\f[R]/\f[C]page up\f[R]/\f[C]page down\f[R]/\f[C]home\f[R]/\f[C]end\f[R] | ||||||
| move up and down through lists. | move up and down through lists. | ||||||
| @ -212,104 +212,103 @@ A tip: movement speed is limited by your keyboard repeat rate, to move | |||||||
| faster you may want to adjust it. | faster you may want to adjust it. | ||||||
| (If you\[aq]re on a mac, the karabiner app is one way to do that.) | (If you\[aq]re on a mac, the karabiner app is one way to do that.) | ||||||
| .PP | .PP | ||||||
| with shift pressed, the cursor keys adjust the report period, limiting | With shift pressed, the cursor keys adjust the report period, limiting | ||||||
| the transactions to be shown (by default, all are shown). | the transactions to be shown (by default, all are shown). | ||||||
| \f[C]shift-down/up\f[R] steps downward and upward through these standard | \f[C]shift-down/up\f[R] steps downward and upward through these standard | ||||||
| report period durations: year, quarter, month, week, day. | report period durations: year, quarter, month, week, day. | ||||||
| then, \f[C]shift-left/right\f[R] moves to the previous/next period. | Then, \f[C]shift-left/right\f[R] moves to the previous/next period. | ||||||
| \f[C]T\f[R] sets the report period to today. | \f[C]T\f[R] sets the report period to today. | ||||||
| with the \f[C]--watch\f[R] option, when viewing a \[dq]current\[dq] | With the \f[C]--watch\f[R] option, when viewing a \[dq]current\[dq] | ||||||
| period (the current day, week, month, quarter, or year), the period will | period (the current day, week, month, quarter, or year), the period will | ||||||
| move automatically to track the current date. | move automatically to track the current date. | ||||||
| to set a non-standard period, you can use \f[C]/\f[R] and a | To set a non-standard period, you can use \f[C]/\f[R] and a | ||||||
| \f[C]date:\f[R] query. | \f[C]date:\f[R] query. | ||||||
| .PP | .PP | ||||||
| \f[C]/\f[R] lets you set a general filter query limiting the data shown, | \f[C]/\f[R] lets you set a general filter query limiting the data shown, | ||||||
| using the same query terms as in hledger and hledger-web. | using the same query terms as in hledger and hledger-web. | ||||||
| while editing the query, you can use ctrl-a/e/d/k, bs, cursor keys; | While editing the query, you can use CTRL-a/e/d/k, BS, cursor keys; | ||||||
| press \f[C]enter\f[R] to set it, or \f[C]escape\f[R]to cancel. | press \f[C]ENTER\f[R] to set it, or \f[C]ESCAPE\f[R]to cancel. | ||||||
| there are also keys for quickly adjusting some common filters like | There are also keys for quickly adjusting some common filters like | ||||||
| account depth and transaction status (see below). | account depth and transaction status (see below). | ||||||
| \f[C]backspace\f[R] or \f[C]delete\f[R] removes all filters, showing all | \f[C]BACKSPACE\f[R] or \f[C]DELETE\f[R] removes all filters, showing all | ||||||
| transactions. | transactions. | ||||||
| .PP | .PP | ||||||
| as mentioned above, by default hledger-ui hides future transactions - | As mentioned above, by default hledger-ui hides future transactions - | ||||||
| both ordinary transactions recorded in the journal, and periodic | both ordinary transactions recorded in the journal, and periodic | ||||||
| transactions generated by rule. | transactions generated by rule. | ||||||
| \f[C]f\f[R] toggles forecast mode, in which future/forecasted | \f[C]F\f[R] toggles forecast mode, in which future/forecasted | ||||||
| transactions are shown. | transactions are shown. | ||||||
| \f[I](experimental)\f[R] |  | ||||||
| .PP | .PP | ||||||
| \f[C]escape\f[R] resets the UI state and jumps back to the top screen, | \f[C]ESCAPE\f[R] resets the UI state and jumps back to the top screen, | ||||||
| restoring the app\[aq]s initial state at startup. | restoring the app\[aq]s initial state at startup. | ||||||
| Or, it cancels minibuffer data entry or the help dialog. | Or, it cancels minibuffer data entry or the help dialog. | ||||||
| .PP | .PP | ||||||
| \f[C]ctrl-l\f[R] redraws the screen and centers the selection if | \f[C]CTRL-l\f[R] redraws the screen and centers the selection if | ||||||
| possible (selections near the top won\[aq]t be centered, since we | possible (selections near the top won\[aq]t be centered, since we | ||||||
| don\[aq]t scroll above the top). | don\[aq]t scroll above the top). | ||||||
| .PP | .PP | ||||||
| \f[C]g\f[R] reloads from the data file(s) and updates the current screen | \f[C]g\f[R] reloads from the data file(s) and updates the current screen | ||||||
| and any previous screens. | and any previous screens. | ||||||
| (with large files, this could cause a noticeable pause.) | (With large files, this could cause a noticeable pause.) | ||||||
| .PP | .PP | ||||||
| \f[C]i\f[R] toggles balance assertion checking. | \f[C]I\f[R] toggles balance assertion checking. | ||||||
| disabling balance assertions temporarily can be useful for | Disabling balance assertions temporarily can be useful for | ||||||
| troubleshooting. | troubleshooting. | ||||||
| .PP | .PP | ||||||
| \f[C]a\f[R] runs command-line hledger\[aq]s add command, and reloads the | \f[C]a\f[R] runs command-line hledger\[aq]s add command, and reloads the | ||||||
| updated file. | updated file. | ||||||
| this allows some basic data entry. | This allows some basic data entry. | ||||||
| .PP | .PP | ||||||
| \f[C]a\f[R] is like \f[C]a\f[R], but runs the hledger-iadd tool, which | \f[C]A\f[R] is like \f[C]a\f[R], but runs the hledger-iadd tool, which | ||||||
| provides a terminal interface. | provides a terminal interface. | ||||||
| this key will be available if \f[C]hledger-iadd\f[R] is installed in | This key will be available if \f[C]hledger-iadd\f[R] is installed in | ||||||
| $path. | $path. | ||||||
| .PP | .PP | ||||||
| \f[C]e\f[R] runs $hledger_ui_editor, or $editor, or a default | \f[C]E\f[R] runs $HLEDGER_UI_EDITOR, or $EDITOR, or a default | ||||||
| (\f[C]emacsclient -a \[dq]\[dq] -nw\f[R]) on the journal file. | (\f[C]emacsclient -a \[dq]\[dq] -nw\f[R]) on the journal file. | ||||||
| with some editors (emacs, vi), the cursor will be positioned at the | With some editors (emacs, vi), the cursor will be positioned at the | ||||||
| current transaction when invoked from the register and transaction | current transaction when invoked from the register and transaction | ||||||
| screens, and at the error location (if possible) when invoked from the | screens, and at the error location (if possible) when invoked from the | ||||||
| error screen. | error screen. | ||||||
| .PP | .PP | ||||||
| \f[C]b\f[R] toggles cost mode, showing amounts in their transaction | \f[C]B\f[R] toggles cost mode, showing amounts in their transaction | ||||||
| price\[aq]s commodity (like toggling the \f[C]-b/--cost\f[R] flag). | price\[aq]s commodity (like toggling the \f[C]-B/--cost\f[R] flag). | ||||||
| .PP | .PP | ||||||
| \f[C]v\f[R] toggles value mode, showing amounts\[aq] current market | \f[C]V\f[R] toggles value mode, showing amounts\[aq] current market | ||||||
| value in their default valuation commodity (like toggling the | value in their default valuation commodity (like toggling the | ||||||
| \f[C]-v/--market\f[R] flag). | \f[C]-V/--market\f[R] flag). | ||||||
| note, \[dq]current market value\[dq] means the value on the report end | Note, \[dq]current market value\[dq] means the value on the report end | ||||||
| date if specified, otherwise today. | date if specified, otherwise today. | ||||||
| to see the value on another date, you can temporarily set that as the | To see the value on another date, you can temporarily set that as the | ||||||
| report end date. | report end date. | ||||||
| eg: to see a transaction as it was valued on july 30, go to the accounts | Eg: to see a transaction as it was valued on july 30, go to the accounts | ||||||
| or register screen, press \f[C]/\f[R], and add \f[C]date:-7/30\f[R] to | or register screen, press \f[C]/\f[R], and add \f[C]date:-7/30\f[R] to | ||||||
| the query. | the query. | ||||||
| .PP | .PP | ||||||
| at most one of cost or value mode can be active at once. | At most one of cost or value mode can be active at once. | ||||||
| .PP | .PP | ||||||
| there\[aq]s not yet any visual reminder when cost or value mode is | There\[aq]s not yet any visual reminder when cost or value mode is | ||||||
| active; for now pressing \f[C]b\f[R] \f[C]b\f[R] \f[C]v\f[R] should | active; for now pressing \f[C]b\f[R] \f[C]b\f[R] \f[C]v\f[R] should | ||||||
| reliably reset to normal mode. | reliably reset to normal mode. | ||||||
| .PP | .PP | ||||||
| with --watch active, if you save an edit to the journal file while | With \f[C]--watch\f[R] active, if you save an edit to the journal file | ||||||
| viewing the transaction screen in cost or value mode, the | while viewing the transaction screen in cost or value mode, the | ||||||
| \f[C]b\f[R]/\f[C]v\f[R] keys will stop working. | \f[C]B\f[R]/\f[C]V\f[R] keys will stop working. | ||||||
| to work around, press g to force a manual reload, or exit the | To work around, press \f[C]g\f[R] to force a manual reload, or exit the | ||||||
| transaction screen. | transaction screen. | ||||||
| .PP | .PP | ||||||
| \f[C]q\f[R] quits the application. | \f[C]q\f[R] quits the application. | ||||||
| .PP | .PP | ||||||
| additional screen-specific keys are described below. | Additional screen-specific keys are described below. | ||||||
| .SH screens | .SH SCREENS | ||||||
| .SS accounts screen | .SS Accounts screen | ||||||
| .PP | .PP | ||||||
| this is normally the first screen displayed. | This is normally the first screen displayed. | ||||||
| it lists accounts and their balances, like hledger\[aq]s balance | It lists accounts and their balances, like hledger\[aq]s balance | ||||||
| command. | command. | ||||||
| by default, it shows all accounts and their latest ending balances | By default, it shows all accounts and their latest ending balances | ||||||
| (including the balances of subaccounts). | (including the balances of subaccounts). | ||||||
| if you specify a query on the command line, it shows just the matched | If you specify a query on the command line, it shows just the matched | ||||||
| accounts and the balances from matched transactions. | accounts and the balances from matched transactions. | ||||||
| .PP | .PP | ||||||
| Account names are shown as a flat list by default; press \f[C]t\f[R] to | Account names are shown as a flat list by default; press \f[C]t\f[R] to | ||||||
| @ -505,6 +504,6 @@ Copyright (C) 2007-2020 Simon Michael. | |||||||
| Released under GNU GPL v3 or later. | Released under GNU GPL v3 or later. | ||||||
| 
 | 
 | ||||||
| .SH SEE ALSO | .SH SEE ALSO | ||||||
| hledger(1), hledger\-ui(1), hledger\-web(1), | hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1) | ||||||
| hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), | 
 | ||||||
| ledger(1) | hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5) | ||||||
|  | |||||||
| @ -3,10 +3,10 @@ This is hledger-ui.info, produced by makeinfo version 6.7 from stdin. | |||||||
|  |  | ||||||
| File: hledger-ui.info,  Node: Top,  Next: OPTIONS,  Up: (dir) | File: hledger-ui.info,  Node: Top,  Next: OPTIONS,  Up: (dir) | ||||||
| 
 | 
 | ||||||
| hledger-ui(1) hledger-ui 1.20.99 | hledger-ui(1) | ||||||
| ******************************** | ************* | ||||||
| 
 | 
 | ||||||
| hledger-ui - terminal interface for the hledger accounting tool | A terminal interface (TUI) for the hledger accounting tool. | ||||||
| 
 | 
 | ||||||
|    'hledger-ui [OPTIONS] [QUERYARGS]' |    'hledger-ui [OPTIONS] [QUERYARGS]' | ||||||
| 'hledger ui -- [OPTIONS] [QUERYARGS]' | 'hledger ui -- [OPTIONS] [QUERYARGS]' | ||||||
| @ -36,18 +36,14 @@ enable "forecast mode". | |||||||
| * Menu: | * Menu: | ||||||
| 
 | 
 | ||||||
| * OPTIONS:: | * OPTIONS:: | ||||||
| * keys:: | * KEYS:: | ||||||
| * screens:: | * SCREENS:: | ||||||
| * accounts screen:: |  | ||||||
| * Register screen:: |  | ||||||
| * Transaction screen:: |  | ||||||
| * Error screen:: |  | ||||||
| * ENVIRONMENT:: | * ENVIRONMENT:: | ||||||
| * FILES:: | * FILES:: | ||||||
| * BUGS:: | * BUGS:: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger-ui.info,  Node: OPTIONS,  Next: keys,  Prev: Top,  Up: Top | File: hledger-ui.info,  Node: OPTIONS,  Next: KEYS,  Prev: Top,  Up: Top | ||||||
| 
 | 
 | ||||||
| 1 OPTIONS | 1 OPTIONS | ||||||
| ********* | ********* | ||||||
| @ -208,22 +204,22 @@ the last one takes precedence. | |||||||
| 
 | 
 | ||||||
|      show debug output (levels 1-9, default: 1) |      show debug output (levels 1-9, default: 1) | ||||||
| 
 | 
 | ||||||
|    a @file argument will be expanded to the contents of file, which |    A @FILE argument will be expanded to the contents of FILE, which | ||||||
| should contain one command line option/argument per line.  (to prevent | should contain one command line option/argument per line.  (To prevent | ||||||
| this, insert a '--' argument before.) | this, insert a '--' argument before.) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger-ui.info,  Node: keys,  Next: screens,  Prev: OPTIONS,  Up: Top | File: hledger-ui.info,  Node: KEYS,  Next: SCREENS,  Prev: OPTIONS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 2 keys | 2 KEYS | ||||||
| ****** | ****** | ||||||
| 
 | 
 | ||||||
| '?' shows a help dialog listing all keys.  (some of these also appear in | '?' shows a help dialog listing all keys.  (Some of these also appear in | ||||||
| the quick help at the bottom of each screen.)  press '?' again (or | the quick help at the bottom of each screen.)  Press '?' again (or | ||||||
| 'escape', or 'left', or 'q') to close it.  the following keys work on | 'ESCAPE', or 'LEFT', or 'q') to close it.  The following keys work on | ||||||
| most screens: | most screens: | ||||||
| 
 | 
 | ||||||
|    the cursor keys navigate: 'right' (or 'enter') goes deeper, 'left' |    The cursor keys navigate: 'right' (or 'enter') goes deeper, 'left' | ||||||
| returns to the previous screen, 'up'/'down'/'page up'/'page | returns to the previous screen, 'up'/'down'/'page up'/'page | ||||||
| down'/'home'/'end' move up and down through lists.  Emacs-style | down'/'home'/'end' move up and down through lists.  Emacs-style | ||||||
| ('ctrl-p'/'ctrl-n'/'ctrl-f'/'ctrl-b') movement keys are also supported | ('ctrl-p'/'ctrl-n'/'ctrl-f'/'ctrl-b') movement keys are also supported | ||||||
| @ -232,99 +228,106 @@ speed is limited by your keyboard repeat rate, to move faster you may | |||||||
| want to adjust it.  (If you're on a mac, the karabiner app is one way to | want to adjust it.  (If you're on a mac, the karabiner app is one way to | ||||||
| do that.) | do that.) | ||||||
| 
 | 
 | ||||||
|    with shift pressed, the cursor keys adjust the report period, |    With shift pressed, the cursor keys adjust the report period, | ||||||
| limiting the transactions to be shown (by default, all are shown). | limiting the transactions to be shown (by default, all are shown). | ||||||
| 'shift-down/up' steps downward and upward through these standard report | 'shift-down/up' steps downward and upward through these standard report | ||||||
| period durations: year, quarter, month, week, day.  then, | period durations: year, quarter, month, week, day.  Then, | ||||||
| 'shift-left/right' moves to the previous/next period.  'T' sets the | 'shift-left/right' moves to the previous/next period.  'T' sets the | ||||||
| report period to today.  with the '--watch' option, when viewing a | report period to today.  With the '--watch' option, when viewing a | ||||||
| "current" period (the current day, week, month, quarter, or year), the | "current" period (the current day, week, month, quarter, or year), the | ||||||
| period will move automatically to track the current date.  to set a | period will move automatically to track the current date.  To set a | ||||||
| non-standard period, you can use '/' and a 'date:' query. | non-standard period, you can use '/' and a 'date:' query. | ||||||
| 
 | 
 | ||||||
|    '/' lets you set a general filter query limiting the data shown, |    '/' lets you set a general filter query limiting the data shown, | ||||||
| using the same query terms as in hledger and hledger-web.  while editing | using the same query terms as in hledger and hledger-web.  While editing | ||||||
| the query, you can use ctrl-a/e/d/k, bs, cursor keys; press 'enter' to | the query, you can use CTRL-a/e/d/k, BS, cursor keys; press 'ENTER' to | ||||||
| set it, or 'escape'to cancel.  there are also keys for quickly adjusting | set it, or 'ESCAPE'to cancel.  There are also keys for quickly adjusting | ||||||
| some common filters like account depth and transaction status (see | some common filters like account depth and transaction status (see | ||||||
| below).  'backspace' or 'delete' removes all filters, showing all | below).  'BACKSPACE' or 'DELETE' removes all filters, showing all | ||||||
| transactions. | transactions. | ||||||
| 
 | 
 | ||||||
|    as mentioned above, by default hledger-ui hides future transactions - |    As mentioned above, by default hledger-ui hides future transactions - | ||||||
| both ordinary transactions recorded in the journal, and periodic | both ordinary transactions recorded in the journal, and periodic | ||||||
| transactions generated by rule.  'f' toggles forecast mode, in which | transactions generated by rule.  'F' toggles forecast mode, in which | ||||||
| future/forecasted transactions are shown.  _(experimental)_ | future/forecasted transactions are shown. | ||||||
| 
 | 
 | ||||||
|    'escape' resets the UI state and jumps back to the top screen, |    'ESCAPE' resets the UI state and jumps back to the top screen, | ||||||
| restoring the app's initial state at startup.  Or, it cancels minibuffer | restoring the app's initial state at startup.  Or, it cancels minibuffer | ||||||
| data entry or the help dialog. | data entry or the help dialog. | ||||||
| 
 | 
 | ||||||
|    'ctrl-l' redraws the screen and centers the selection if possible |    'CTRL-l' redraws the screen and centers the selection if possible | ||||||
| (selections near the top won't be centered, since we don't scroll above | (selections near the top won't be centered, since we don't scroll above | ||||||
| the top). | the top). | ||||||
| 
 | 
 | ||||||
|    'g' reloads from the data file(s) and updates the current screen and |    'g' reloads from the data file(s) and updates the current screen and | ||||||
| any previous screens.  (with large files, this could cause a noticeable | any previous screens.  (With large files, this could cause a noticeable | ||||||
| pause.) | pause.) | ||||||
| 
 | 
 | ||||||
|    'i' toggles balance assertion checking.  disabling balance assertions |    'I' toggles balance assertion checking.  Disabling balance assertions | ||||||
| temporarily can be useful for troubleshooting. | temporarily can be useful for troubleshooting. | ||||||
| 
 | 
 | ||||||
|    'a' runs command-line hledger's add command, and reloads the updated |    'a' runs command-line hledger's add command, and reloads the updated | ||||||
| file.  this allows some basic data entry. | file.  This allows some basic data entry. | ||||||
| 
 | 
 | ||||||
|    'a' is like 'a', but runs the hledger-iadd tool, which provides a |    'A' is like 'a', but runs the hledger-iadd tool, which provides a | ||||||
| terminal interface.  this key will be available if 'hledger-iadd' is | terminal interface.  This key will be available if 'hledger-iadd' is | ||||||
| installed in $path. | installed in $path. | ||||||
| 
 | 
 | ||||||
|    'e' runs $hledger_ui_editor, or $editor, or a default ('emacsclient |    'E' runs $HLEDGER_UI_EDITOR, or $EDITOR, or a default ('emacsclient | ||||||
| -a "" -nw') on the journal file.  with some editors (emacs, vi), the | -a "" -nw') on the journal file.  With some editors (emacs, vi), the | ||||||
| cursor will be positioned at the current transaction when invoked from | cursor will be positioned at the current transaction when invoked from | ||||||
| the register and transaction screens, and at the error location (if | the register and transaction screens, and at the error location (if | ||||||
| possible) when invoked from the error screen. | possible) when invoked from the error screen. | ||||||
| 
 | 
 | ||||||
|    'b' toggles cost mode, showing amounts in their transaction price's |    'B' toggles cost mode, showing amounts in their transaction price's | ||||||
| commodity (like toggling the '-b/--cost' flag). | commodity (like toggling the '-B/--cost' flag). | ||||||
| 
 | 
 | ||||||
|    'v' toggles value mode, showing amounts' current market value in |    'V' toggles value mode, showing amounts' current market value in | ||||||
| their default valuation commodity (like toggling the '-v/--market' | their default valuation commodity (like toggling the '-V/--market' | ||||||
| flag).  note, "current market value" means the value on the report end | flag).  Note, "current market value" means the value on the report end | ||||||
| date if specified, otherwise today.  to see the value on another date, | date if specified, otherwise today.  To see the value on another date, | ||||||
| you can temporarily set that as the report end date.  eg: to see a | you can temporarily set that as the report end date.  Eg: to see a | ||||||
| transaction as it was valued on july 30, go to the accounts or register | transaction as it was valued on july 30, go to the accounts or register | ||||||
| screen, press '/', and add 'date:-7/30' to the query. | screen, press '/', and add 'date:-7/30' to the query. | ||||||
| 
 | 
 | ||||||
|    at most one of cost or value mode can be active at once. |    At most one of cost or value mode can be active at once. | ||||||
| 
 | 
 | ||||||
|    there's not yet any visual reminder when cost or value mode is |    There's not yet any visual reminder when cost or value mode is | ||||||
| active; for now pressing 'b' 'b' 'v' should reliably reset to normal | active; for now pressing 'b' 'b' 'v' should reliably reset to normal | ||||||
| mode. | mode. | ||||||
| 
 | 
 | ||||||
|    with -watch active, if you save an edit to the journal file while |    With '--watch' active, if you save an edit to the journal file while | ||||||
| viewing the transaction screen in cost or value mode, the 'b'/'v' keys | viewing the transaction screen in cost or value mode, the 'B'/'V' keys | ||||||
| will stop working.  to work around, press g to force a manual reload, or | will stop working.  To work around, press 'g' to force a manual reload, | ||||||
| exit the transaction screen. | or exit the transaction screen. | ||||||
| 
 | 
 | ||||||
|    'q' quits the application. |    'q' quits the application. | ||||||
| 
 | 
 | ||||||
|    additional screen-specific keys are described below. |    Additional screen-specific keys are described below. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger-ui.info,  Node: screens,  Next: accounts screen,  Prev: keys,  Up: Top | File: hledger-ui.info,  Node: SCREENS,  Next: ENVIRONMENT,  Prev: KEYS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 3 screens | 3 SCREENS | ||||||
| ********* | ********* | ||||||
| 
 | 
 | ||||||
|  | * Menu: | ||||||
|  | 
 | ||||||
|  | * Accounts screen:: | ||||||
|  | * Register screen:: | ||||||
|  | * Transaction screen:: | ||||||
|  | * Error screen:: | ||||||
|  | 
 | ||||||
|  |  | ||||||
| File: hledger-ui.info,  Node: accounts screen,  Next: Register screen,  Prev: screens,  Up: Top | File: hledger-ui.info,  Node: Accounts screen,  Next: Register screen,  Up: SCREENS | ||||||
| 
 | 
 | ||||||
| 4 accounts screen | 3.1 Accounts screen | ||||||
| ***************** | =================== | ||||||
| 
 | 
 | ||||||
| this is normally the first screen displayed.  it lists accounts and | This is normally the first screen displayed.  It lists accounts and | ||||||
| their balances, like hledger's balance command.  by default, it shows | their balances, like hledger's balance command.  By default, it shows | ||||||
| all accounts and their latest ending balances (including the balances of | all accounts and their latest ending balances (including the balances of | ||||||
| subaccounts).  if you specify a query on the command line, it shows just | subaccounts).  If you specify a query on the command line, it shows just | ||||||
| the matched accounts and the balances from matched transactions. | the matched accounts and the balances from matched transactions. | ||||||
| 
 | 
 | ||||||
|    Account names are shown as a flat list by default; press 't' to |    Account names are shown as a flat list by default; press 't' to | ||||||
| @ -365,10 +368,10 @@ command-line hledger). | |||||||
|    Press 'right' or 'enter' to view an account's transactions register. |    Press 'right' or 'enter' to view an account's transactions register. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger-ui.info,  Node: Register screen,  Next: Transaction screen,  Prev: accounts screen,  Up: Top | File: hledger-ui.info,  Node: Register screen,  Next: Transaction screen,  Prev: Accounts screen,  Up: SCREENS | ||||||
| 
 | 
 | ||||||
| 5 Register screen | 3.2 Register screen | ||||||
| ***************** | =================== | ||||||
| 
 | 
 | ||||||
| This screen shows the transactions affecting a particular account, like | This screen shows the transactions affecting a particular account, like | ||||||
| a check register.  Each line represents one transaction and shows: | a check register.  Each line represents one transaction and shows: | ||||||
| @ -412,10 +415,10 @@ command-line hledger). | |||||||
| detail. | detail. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger-ui.info,  Node: Transaction screen,  Next: Error screen,  Prev: Register screen,  Up: Top | File: hledger-ui.info,  Node: Transaction screen,  Next: Error screen,  Prev: Register screen,  Up: SCREENS | ||||||
| 
 | 
 | ||||||
| 6 Transaction screen | 3.3 Transaction screen | ||||||
| ******************** | ====================== | ||||||
| 
 | 
 | ||||||
| This screen shows a single transaction, as a general journal entry, | This screen shows a single transaction, as a general journal entry, | ||||||
| similar to hledger's print command and journal format | similar to hledger's print command and journal format | ||||||
| @ -436,10 +439,10 @@ unfiltered journal, which is a more stable id (at least until the next | |||||||
| reload). | reload). | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger-ui.info,  Node: Error screen,  Next: ENVIRONMENT,  Prev: Transaction screen,  Up: Top | File: hledger-ui.info,  Node: Error screen,  Prev: Transaction screen,  Up: SCREENS | ||||||
| 
 | 
 | ||||||
| 7 Error screen | 3.4 Error screen | ||||||
| ************** | ================ | ||||||
| 
 | 
 | ||||||
| This screen will appear if there is a problem, such as a parse error, | This screen will appear if there is a problem, such as a parse error, | ||||||
| when you press g to reload.  Once you have fixed the problem, press g | when you press g to reload.  Once you have fixed the problem, press g | ||||||
| @ -447,9 +450,9 @@ again to reload and resume normal operation.  (Or, you can press escape | |||||||
| to cancel the reload attempt.) | to cancel the reload attempt.) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| File: hledger-ui.info,  Node: ENVIRONMENT,  Next: FILES,  Prev: Error screen,  Up: Top | File: hledger-ui.info,  Node: ENVIRONMENT,  Next: FILES,  Prev: SCREENS,  Up: Top | ||||||
| 
 | 
 | ||||||
| 8 ENVIRONMENT | 4 ENVIRONMENT | ||||||
| ************* | ************* | ||||||
| 
 | 
 | ||||||
| *COLUMNS* The screen width to use.  Default: the full terminal width. | *COLUMNS* The screen width to use.  Default: the full terminal width. | ||||||
| @ -477,7 +480,7 @@ a more thorough way that also affects applications started from the GUI | |||||||
|  |  | ||||||
| File: hledger-ui.info,  Node: FILES,  Next: BUGS,  Prev: ENVIRONMENT,  Up: Top | File: hledger-ui.info,  Node: FILES,  Next: BUGS,  Prev: ENVIRONMENT,  Up: Top | ||||||
| 
 | 
 | ||||||
| 9 FILES | 5 FILES | ||||||
| ******* | ******* | ||||||
| 
 | 
 | ||||||
| Reads data from one or more files in hledger journal, timeclock, | Reads data from one or more files in hledger journal, timeclock, | ||||||
| @ -488,8 +491,8 @@ timedot, or CSV format specified with '-f', or '$LEDGER_FILE', or | |||||||
|  |  | ||||||
| File: hledger-ui.info,  Node: BUGS,  Prev: FILES,  Up: Top | File: hledger-ui.info,  Node: BUGS,  Prev: FILES,  Up: Top | ||||||
| 
 | 
 | ||||||
| 10 BUGS | 6 BUGS | ||||||
| ******* | ****** | ||||||
| 
 | 
 | ||||||
| The need to precede options with '--' when invoked from hledger is | The need to precede options with '--' when invoked from hledger is | ||||||
| awkward. | awkward. | ||||||
| @ -516,30 +519,25 @@ program is restarted. | |||||||
|  |  | ||||||
| Tag Table: | Tag Table: | ||||||
| Node: Top71 | Node: Top71 | ||||||
| Node: OPTIONS1556 | Node: OPTIONS1434 | ||||||
| Ref: #options1653 | Ref: #options1531 | ||||||
| Node: keys5720 | Node: KEYS5598 | ||||||
| Ref: #keys5815 | Ref: #keys5693 | ||||||
| Node: screens10147 | Node: SCREENS10012 | ||||||
| Ref: #screens10256 | Ref: #screens10117 | ||||||
| Node: accounts screen10256 | Node: Accounts screen10207 | ||||||
| Ref: #accounts-screen10392 | Ref: #accounts-screen10335 | ||||||
| Node: Register screen12607 | Node: Register screen12550 | ||||||
| Ref: #register-screen12754 | Ref: #register-screen12705 | ||||||
| Node: Transaction screen14751 | Node: Transaction screen14702 | ||||||
| Ref: #transaction-screen14901 | Ref: #transaction-screen14860 | ||||||
| Node: Error screen15771 | Node: Error screen15730 | ||||||
| Ref: #error-screen15905 | Ref: #error-screen15852 | ||||||
| Node: ENVIRONMENT16149 | Node: ENVIRONMENT16096 | ||||||
| Ref: #environment16268 | Ref: #environment16210 | ||||||
| Node: FILES17075 | Node: FILES17017 | ||||||
| Ref: #files17174 | Ref: #files17116 | ||||||
| Node: BUGS17387 | Node: BUGS17329 | ||||||
| Ref: #bugs17466 | Ref: #bugs17406 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
| 
 |  | ||||||
|  |  | ||||||
| Local Variables: |  | ||||||
| coding: utf-8 |  | ||||||
| End: |  | ||||||
|  | |||||||
| @ -1,10 +1,10 @@ | |||||||
| 
 | 
 | ||||||
| hledger-ui(1)                hledger User Manuals                hledger-ui(1) | HLEDGER-UI(1)                hledger User Manuals                HLEDGER-UI(1) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| NAME | NAME | ||||||
|        hledger-ui - terminal interface for the hledger accounting tool |        A terminal interface (TUI) for the hledger accounting tool. | ||||||
| 
 | 
 | ||||||
| SYNOPSIS | SYNOPSIS | ||||||
|        hledger-ui [OPTIONS] [QUERYARGS] |        hledger-ui [OPTIONS] [QUERYARGS] | ||||||
| @ -185,16 +185,16 @@ OPTIONS | |||||||
|        --debug[=N] |        --debug[=N] | ||||||
|               show debug output (levels 1-9, default: 1) |               show debug output (levels 1-9, default: 1) | ||||||
| 
 | 
 | ||||||
|        a @file argument will be expanded to the contents of file, which should |        A @FILE argument will be expanded to the contents of FILE, which should | ||||||
|        contain  one  command line option/argument per line.  (to prevent this, |        contain  one  command line option/argument per line.  (To prevent this, | ||||||
|        insert a -- argument before.) |        insert a -- argument before.) | ||||||
| 
 | 
 | ||||||
| keys | KEYS | ||||||
|        ? shows a help dialog listing all keys.  (some of these also appear  in |        ? shows a help dialog listing all keys.  (Some of these also appear  in | ||||||
|        the quick help at the bottom of each screen.) press ? again (or escape, |        the quick help at the bottom of each screen.) Press ? again (or ESCAPE, | ||||||
|        or left, or q) to close it.  the following keys work on most screens: |        or LEFT, or q) to close it.  The following keys work on most screens: | ||||||
| 
 | 
 | ||||||
|        the cursor keys navigate: right (or enter) goes deeper, left returns to |        The cursor keys navigate: right (or enter) goes deeper, left returns to | ||||||
|        the  previous  screen,  up/down/page  up/page down/home/end move up and |        the  previous  screen,  up/down/page  up/page down/home/end move up and | ||||||
|        down through lists.  Emacs-style (ctrl-p/ctrl-n/ctrl-f/ctrl-b) movement |        down through lists.  Emacs-style (ctrl-p/ctrl-n/ctrl-f/ctrl-b) movement | ||||||
|        keys  are  also  supported  (but not vi-style keys, since hledger-1.19, |        keys  are  also  supported  (but not vi-style keys, since hledger-1.19, | ||||||
| @ -202,87 +202,87 @@ keys | |||||||
|        rate,  to  move faster you may want to adjust it.  (If you're on a mac, |        rate,  to  move faster you may want to adjust it.  (If you're on a mac, | ||||||
|        the karabiner app is one way to do that.) |        the karabiner app is one way to do that.) | ||||||
| 
 | 
 | ||||||
|        with shift pressed, the cursor keys adjust the report period,  limiting |        With shift pressed, the cursor keys adjust the report period,  limiting | ||||||
|        the  transactions  to  be  shown  (by  default, all are shown).  shift- |        the  transactions  to  be  shown  (by  default, all are shown).  shift- | ||||||
|        down/up steps downward and upward through these standard report  period |        down/up steps downward and upward through these standard report  period | ||||||
|        durations:  year,  quarter,  month,  week, day.  then, shift-left/right |        durations:  year,  quarter,  month,  week, day.  Then, shift-left/right | ||||||
|        moves to the previous/next period.  T sets the report period to  today. |        moves to the previous/next period.  T sets the report period to  today. | ||||||
|        with  the  --watch option, when viewing a "current" period (the current |        With  the  --watch option, when viewing a "current" period (the current | ||||||
|        day, week, month, quarter, or year), the period will move automatically |        day, week, month, quarter, or year), the period will move automatically | ||||||
|        to track the current date.  to set a non-standard period, you can use / |        to track the current date.  To set a non-standard period, you can use / | ||||||
|        and a date: query. |        and a date: query. | ||||||
| 
 | 
 | ||||||
|        / lets you set a general filter query limiting the  data  shown,  using |        / lets you set a general filter query limiting the  data  shown,  using | ||||||
|        the  same query terms as in hledger and hledger-web.  while editing the |        the  same query terms as in hledger and hledger-web.  While editing the | ||||||
|        query, you can use ctrl-a/e/d/k, bs, cursor keys; press  enter  to  set |        query, you can use CTRL-a/e/d/k, BS, cursor keys; press  ENTER  to  set | ||||||
|        it, or escapeto cancel.  there are also keys for quickly adjusting some |        it, or ESCAPEto cancel.  There are also keys for quickly adjusting some | ||||||
|        common filters like account depth and transaction status  (see  below). |        common filters like account depth and transaction status  (see  below). | ||||||
|        backspace or delete removes all filters, showing all transactions. |        BACKSPACE or DELETE removes all filters, showing all transactions. | ||||||
| 
 | 
 | ||||||
|        as  mentioned  above, by default hledger-ui hides future transactions - |        As  mentioned  above, by default hledger-ui hides future transactions - | ||||||
|        both ordinary transactions recorded in the journal, and periodic trans- |        both ordinary transactions recorded in the journal, and periodic trans- | ||||||
|        actions  generated  by  rule.   f  toggles  forecast mode, in which fu- |        actions  generated  by  rule.   F  toggles  forecast mode, in which fu- | ||||||
|        ture/forecasted transactions are shown.  (experimental) |        ture/forecasted transactions are shown. | ||||||
| 
 | 
 | ||||||
|        escape resets the UI state and jumps back to the top screen,  restoring |        ESCAPE resets the UI state and jumps back to the top screen,  restoring | ||||||
|        the app's initial state at startup.  Or, it cancels minibuffer data en- |        the app's initial state at startup.  Or, it cancels minibuffer data en- | ||||||
|        try or the help dialog. |        try or the help dialog. | ||||||
| 
 | 
 | ||||||
|        ctrl-l redraws the screen and centers the selection if possible (selec- |        CTRL-l redraws the screen and centers the selection if possible (selec- | ||||||
|        tions  near  the top won't be centered, since we don't scroll above the |        tions  near  the top won't be centered, since we don't scroll above the | ||||||
|        top). |        top). | ||||||
| 
 | 
 | ||||||
|        g reloads from the data file(s) and updates the current screen and  any |        g reloads from the data file(s) and updates the current screen and  any | ||||||
|        previous  screens.   (with  large  files, this could cause a noticeable |        previous  screens.   (With  large  files, this could cause a noticeable | ||||||
|        pause.) |        pause.) | ||||||
| 
 | 
 | ||||||
|        i toggles balance assertion  checking.   disabling  balance  assertions |        I toggles balance assertion  checking.   Disabling  balance  assertions | ||||||
|        temporarily can be useful for troubleshooting. |        temporarily can be useful for troubleshooting. | ||||||
| 
 | 
 | ||||||
|        a  runs  command-line  hledger's  add  command, and reloads the updated |        a  runs  command-line  hledger's  add  command, and reloads the updated | ||||||
|        file.  this allows some basic data entry. |        file.  This allows some basic data entry. | ||||||
| 
 | 
 | ||||||
|        a is like a, but runs the hledger-iadd tool, which provides a  terminal |        A is like a, but runs the hledger-iadd tool, which provides a  terminal | ||||||
|        interface.   this key will be available if hledger-iadd is installed in |        interface.   This key will be available if hledger-iadd is installed in | ||||||
|        $path. |        $path. | ||||||
| 
 | 
 | ||||||
|        e runs $hledger_ui_editor, or $editor, or a default (emacsclient -a  "" |        E runs $HLEDGER_UI_EDITOR, or $EDITOR, or a default (emacsclient -a  "" | ||||||
|        -nw)  on  the  journal file.  with some editors (emacs, vi), the cursor |        -nw)  on  the  journal file.  With some editors (emacs, vi), the cursor | ||||||
|        will be positioned at the current transaction  when  invoked  from  the |        will be positioned at the current transaction  when  invoked  from  the | ||||||
|        register  and transaction screens, and at the error location (if possi- |        register  and transaction screens, and at the error location (if possi- | ||||||
|        ble) when invoked from the error screen. |        ble) when invoked from the error screen. | ||||||
| 
 | 
 | ||||||
|        b toggles cost mode, showing amounts in their transaction price's  com- |        B toggles cost mode, showing amounts in their transaction price's  com- | ||||||
|        modity (like toggling the -b/--cost flag). |        modity (like toggling the -B/--cost flag). | ||||||
| 
 | 
 | ||||||
|        v  toggles  value  mode, showing amounts' current market value in their |        V  toggles  value  mode, showing amounts' current market value in their | ||||||
|        default valuation  commodity  (like  toggling  the  -v/--market  flag). |        default valuation  commodity  (like  toggling  the  -V/--market  flag). | ||||||
|        note,  "current market value" means the value on the report end date if |        Note,  "current market value" means the value on the report end date if | ||||||
|        specified, otherwise today.  to see the value on another date, you  can |        specified, otherwise today.  To see the value on another date, you  can | ||||||
|        temporarily  set that as the report end date.  eg: to see a transaction |        temporarily  set that as the report end date.  Eg: to see a transaction | ||||||
|        as it was valued on july 30, go to the  accounts  or  register  screen, |        as it was valued on july 30, go to the  accounts  or  register  screen, | ||||||
|        press /, and add date:-7/30 to the query. |        press /, and add date:-7/30 to the query. | ||||||
| 
 | 
 | ||||||
|        at most one of cost or value mode can be active at once. |        At most one of cost or value mode can be active at once. | ||||||
| 
 | 
 | ||||||
|        there's  not yet any visual reminder when cost or value mode is active; |        There's  not yet any visual reminder when cost or value mode is active; | ||||||
|        for now pressing b b v should reliably reset to normal mode. |        for now pressing b b v should reliably reset to normal mode. | ||||||
| 
 | 
 | ||||||
|        with --watch active, if you save an edit  to  the  journal  file  while |        With --watch active, if you save an edit  to  the  journal  file  while | ||||||
|        viewing the transaction screen in cost or value mode, the b/v keys will |        viewing the transaction screen in cost or value mode, the B/V keys will | ||||||
|        stop working.  to work around, press g to force  a  manual  reload,  or |        stop working.  To work around, press g to force  a  manual  reload,  or | ||||||
|        exit the transaction screen. |        exit the transaction screen. | ||||||
| 
 | 
 | ||||||
|        q quits the application. |        q quits the application. | ||||||
| 
 | 
 | ||||||
|        additional screen-specific keys are described below. |        Additional screen-specific keys are described below. | ||||||
| 
 | 
 | ||||||
| screens | SCREENS | ||||||
|    accounts screen |    Accounts screen | ||||||
|        this  is  normally  the  first screen displayed.  it lists accounts and |        This  is  normally  the  first screen displayed.  It lists accounts and | ||||||
|        their balances, like hledger's balance command.  by default,  it  shows |        their balances, like hledger's balance command.  By default,  it  shows | ||||||
|        all  accounts  and their latest ending balances (including the balances |        all  accounts  and their latest ending balances (including the balances | ||||||
|        of subaccounts).  if you specify a query on the command line, it  shows |        of subaccounts).  If you specify a query on the command line, it  shows | ||||||
|        just the matched accounts and the balances from matched transactions. |        just the matched accounts and the balances from matched transactions. | ||||||
| 
 | 
 | ||||||
|        Account  names  are  shown as a flat list by default; press t to toggle |        Account  names  are  shown as a flat list by default; press t to toggle | ||||||
| @ -452,9 +452,11 @@ COPYRIGHT | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| SEE ALSO | SEE ALSO | ||||||
|        hledger(1),     hledger-ui(1),     hledger-web(1),      hledger_csv(5), |        hledger(1), hledger-ui(1), hledger-web(1), ledger(1) | ||||||
|        hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1) | 
 | ||||||
|  |        hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time- | ||||||
|  |        dot(5) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger-ui 1.20.99               December 2020                   hledger-ui(1) | hledger-ui-1.20.99               December 2020                   HLEDGER-UI(1) | ||||||
|  | |||||||
| @ -1,11 +1,11 @@ | |||||||
| 
 | 
 | ||||||
| .TH "hledger-web" "1" "December 2020" "hledger-web 1.20.99" "hledger User Manuals" | .TH "HLEDGER-WEB" "1" "December 2020" "hledger-web-1.20.99 " "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| .SH NAME | .SH NAME | ||||||
| .PP | .PP | ||||||
| hledger-web - web interface for the hledger accounting tool | A web interface (WUI) for the hledger accounting tool. | ||||||
| .SH SYNOPSIS | .SH SYNOPSIS | ||||||
| .PP | .PP | ||||||
| \f[C]hledger-web [OPTIONS]\f[R] | \f[C]hledger-web [OPTIONS]\f[R] | ||||||
| @ -610,6 +610,6 @@ Copyright (C) 2007-2020 Simon Michael. | |||||||
| Released under GNU GPL v3 or later. | Released under GNU GPL v3 or later. | ||||||
| 
 | 
 | ||||||
| .SH SEE ALSO | .SH SEE ALSO | ||||||
| hledger(1), hledger\-ui(1), hledger\-web(1), | hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1) | ||||||
| hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), | 
 | ||||||
| ledger(1) | hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5) | ||||||
|  | |||||||
| @ -3,10 +3,10 @@ This is hledger-web.info, produced by makeinfo version 6.7 from stdin. | |||||||
|  |  | ||||||
| File: hledger-web.info,  Node: Top,  Next: OPTIONS,  Up: (dir) | File: hledger-web.info,  Node: Top,  Next: OPTIONS,  Up: (dir) | ||||||
| 
 | 
 | ||||||
| hledger-web(1) hledger-web 1.20.99 | hledger-web(1) | ||||||
| ********************************** | ************** | ||||||
| 
 | 
 | ||||||
| hledger-web - web interface for the hledger accounting tool | A web interface (WUI) for the hledger accounting tool. | ||||||
| 
 | 
 | ||||||
|    'hledger-web [OPTIONS]' |    'hledger-web [OPTIONS]' | ||||||
| 'hledger web -- [OPTIONS]' | 'hledger web -- [OPTIONS]' | ||||||
| @ -589,26 +589,21 @@ awkward. | |||||||
|  |  | ||||||
| Tag Table: | Tag Table: | ||||||
| Node: Top72 | Node: Top72 | ||||||
| Node: OPTIONS1752 | Node: OPTIONS1707 | ||||||
| Ref: #options1857 | Ref: #options1812 | ||||||
| Node: PERMISSIONS8956 | Node: PERMISSIONS8911 | ||||||
| Ref: #permissions9095 | Ref: #permissions9050 | ||||||
| Node: EDITING UPLOADING DOWNLOADING10307 | Node: EDITING UPLOADING DOWNLOADING10262 | ||||||
| Ref: #editing-uploading-downloading10488 | Ref: #editing-uploading-downloading10443 | ||||||
| Node: RELOADING11322 | Node: RELOADING11277 | ||||||
| Ref: #reloading11456 | Ref: #reloading11411 | ||||||
| Node: JSON API11889 | Node: JSON API11844 | ||||||
| Ref: #json-api12003 | Ref: #json-api11958 | ||||||
| Node: ENVIRONMENT17493 | Node: ENVIRONMENT17448 | ||||||
| Ref: #environment17609 | Ref: #environment17564 | ||||||
| Node: FILES18342 | Node: FILES18297 | ||||||
| Ref: #files18442 | Ref: #files18397 | ||||||
| Node: BUGS18655 | Node: BUGS18610 | ||||||
| Ref: #bugs18733 | Ref: #bugs18688 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
| 
 |  | ||||||
|  |  | ||||||
| Local Variables: |  | ||||||
| coding: utf-8 |  | ||||||
| End: |  | ||||||
|  | |||||||
| @ -1,10 +1,10 @@ | |||||||
| 
 | 
 | ||||||
| hledger-web(1)               hledger User Manuals               hledger-web(1) | HLEDGER-WEB(1)               hledger User Manuals               HLEDGER-WEB(1) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| NAME | NAME | ||||||
|        hledger-web - web interface for the hledger accounting tool |        A web interface (WUI) for the hledger accounting tool. | ||||||
| 
 | 
 | ||||||
| SYNOPSIS | SYNOPSIS | ||||||
|        hledger-web [OPTIONS] |        hledger-web [OPTIONS] | ||||||
| @ -545,9 +545,11 @@ COPYRIGHT | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| SEE ALSO | SEE ALSO | ||||||
|        hledger(1),      hledger-ui(1),     hledger-web(1),     hledger_csv(5), |        hledger(1), hledger-ui(1), hledger-web(1), ledger(1) | ||||||
|        hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1) | 
 | ||||||
|  |        hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time- | ||||||
|  |        dot(5) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger-web 1.20.99              December 2020                  hledger-web(1) | hledger-web-1.20.99              December 2020                  HLEDGER-WEB(1) | ||||||
|  | |||||||
| @ -1,23 +1,20 @@ | |||||||
| .\"t | .\"t | ||||||
| 
 | 
 | ||||||
| .TH "hledger" "1" "December 2020" "hledger 1.20.99" "hledger User Manuals" | .TH "HLEDGER" "1" "December 2020" "hledger-1.20.99 " "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| .SH NAME | .SH NAME | ||||||
| .PP | .PP | ||||||
| hledger - a command-line accounting tool | A command-line accounting tool for both power users and folks new to | ||||||
|  | accounting. | ||||||
| .SH SYNOPSIS | .SH SYNOPSIS | ||||||
| .PP | .PP | ||||||
| \f[C]hledger [-f FILE] COMMAND [OPTIONS] [ARGS]\f[R] |  | ||||||
| .PD 0 |  | ||||||
| .P |  | ||||||
| .PD |  | ||||||
| \f[C]hledger [-f FILE] ADDONCMD -- [OPTIONS] [ARGS]\f[R] |  | ||||||
| .PD 0 |  | ||||||
| .P |  | ||||||
| .PD |  | ||||||
| \f[C]hledger\f[R] | \f[C]hledger\f[R] | ||||||
|  | .PP | ||||||
|  | \f[C]hledger [-f FILE] COMMAND [OPTIONS] [ARGS]\f[R] | ||||||
|  | .PP | ||||||
|  | \f[C]hledger [-f FILE] ADDONCMD -- [OPTIONS] [ARGS]\f[R] | ||||||
| .SH DESCRIPTION | .SH DESCRIPTION | ||||||
| .PP | .PP | ||||||
| hledger is a reliable, cross-platform set of programs for tracking | hledger is a reliable, cross-platform set of programs for tracking | ||||||
| @ -1328,10 +1325,11 @@ T} | |||||||
| .TE | .TE | ||||||
| .SS Report start & end date | .SS Report start & end date | ||||||
| .PP | .PP | ||||||
| Most hledger reports show the full span of time represented by the | By default, most hledger reports will show the full span of time | ||||||
| journal data, by default. | represented by the journal data. | ||||||
| So, the effective report start and end dates will be the earliest and | The report start date will be the earliest transaction or posting date, | ||||||
| latest transaction or posting dates found in the journal. | and the report end date will be the latest transaction, posting, or | ||||||
|  | market price date. | ||||||
| .PP | .PP | ||||||
| Often you will want to see a shorter time span, such as the current | Often you will want to see a shorter time span, such as the current | ||||||
| month. | month. | ||||||
| @ -1789,7 +1787,7 @@ prices will be used. | |||||||
| .PP | .PP | ||||||
| For single period reports, if an explicit report end date is specified, | For single period reports, if an explicit report end date is specified, | ||||||
| that will be used as the valuation date; otherwise the valuation date is | that will be used as the valuation date; otherwise the valuation date is | ||||||
| \[dq]today\[dq]. | the journal\[aq]s end date. | ||||||
| .PP | .PP | ||||||
| For multiperiod reports, each column/period is valued on the last day of | For multiperiod reports, each column/period is valued on the last day of | ||||||
| the period, by default. | the period, by default. | ||||||
| @ -2466,22 +2464,85 @@ a flag (-D/-W/-M/-Q/-Y) or period expression that activates the | |||||||
| report\[aq]s multi-period mode (whether showing one or many subperiods). | report\[aq]s multi-period mode (whether showing one or many subperiods). | ||||||
| .SH COMMANDS | .SH COMMANDS | ||||||
| .PP | .PP | ||||||
| hledger provides a number of subcommands; \f[C]hledger\f[R] with no | hledger provides a number of commands for producing reports and managing | ||||||
| arguments shows a list. | your data. | ||||||
|  | Run \f[C]hledger\f[R] with no arguments to list the commands available. | ||||||
| .PP | .PP | ||||||
| If you install additional \f[C]hledger-*\f[R] packages, or if you put | To run a command, write its name (or its abbreviation shown in the | ||||||
| programs or scripts named \f[C]hledger-NAME\f[R] in your PATH, these | commands list, or any unambiguous prefix of the name) as hledger\[aq]s | ||||||
| will also be listed as subcommands. | first argument. | ||||||
|  | Eg: \f[C]hledger balance\f[R] or \f[C]hledger bal\f[R]. | ||||||
| .PP | .PP | ||||||
| Run a subcommand by writing its name as first argument (eg | Here are the built-in commands: | ||||||
| \f[C]hledger incomestatement\f[R]). |  | ||||||
| You can also write one of the standard short aliases displayed in |  | ||||||
| parentheses in the command list (\f[C]hledger b\f[R]), or any any |  | ||||||
| unambiguous prefix of a command name (\f[C]hledger inc\f[R]). |  | ||||||
| .PP | .PP | ||||||
| Here are all the builtin commands in alphabetical order. | \f[B]Data entry (these modify the journal file):\f[R] | ||||||
| See also \f[C]hledger\f[R] for a more organised command list, and | .IP \[bu] 2 | ||||||
| \f[C]hledger CMD -h\f[R] for detailed command help. | add - add transactions using guided prompts | ||||||
|  | .IP \[bu] 2 | ||||||
|  | import - add any new transactions from other files (eg csv) | ||||||
|  | .PP | ||||||
|  | \f[B]Data management\f[R]: | ||||||
|  | .IP \[bu] 2 | ||||||
|  | check - check for various kinds of issue in the data | ||||||
|  | .IP \[bu] 2 | ||||||
|  | close (equity) - generate balance-resetting transactions | ||||||
|  | .IP \[bu] 2 | ||||||
|  | diff - compare account transactions in two journal files | ||||||
|  | .IP \[bu] 2 | ||||||
|  | rewrite - generate extra postings, similar to print --auto | ||||||
|  | .PP | ||||||
|  | \f[B]Financial statements:\f[R] | ||||||
|  | .IP \[bu] 2 | ||||||
|  | aregister (areg) - show transactions in a particular account | ||||||
|  | .IP \[bu] 2 | ||||||
|  | balancesheet (bs) - show assets, liabilities and net worth | ||||||
|  | .IP \[bu] 2 | ||||||
|  | balancesheetequity (bse) - show assets, liabilities and equity | ||||||
|  | .IP \[bu] 2 | ||||||
|  | cashflow (cf) - show changes in liquid assets | ||||||
|  | .IP \[bu] 2 | ||||||
|  | incomestatement (is) - show revenues and expenses | ||||||
|  | .IP \[bu] 2 | ||||||
|  | roi - show return on investments | ||||||
|  | .PP | ||||||
|  | \f[B]Miscellaneous reports:\f[R] | ||||||
|  | .IP \[bu] 2 | ||||||
|  | accounts (a) - show account names | ||||||
|  | .IP \[bu] 2 | ||||||
|  | activity - show postings-per-interval bar charts | ||||||
|  | .IP \[bu] 2 | ||||||
|  | balance (b, bal) - show balance changes/end balances/budgets in accounts | ||||||
|  | .IP \[bu] 2 | ||||||
|  | codes - show transaction codes | ||||||
|  | .IP \[bu] 2 | ||||||
|  | commodities - show commodity/currency symbols | ||||||
|  | .IP \[bu] 2 | ||||||
|  | descriptions - show unique transaction descriptions | ||||||
|  | .IP \[bu] 2 | ||||||
|  | files - show input file paths | ||||||
|  | .IP \[bu] 2 | ||||||
|  | notes - show unique note segments of transaction descriptions | ||||||
|  | .IP \[bu] 2 | ||||||
|  | payees - show unique payee segments of transaction descriptions | ||||||
|  | .IP \[bu] 2 | ||||||
|  | prices - show market price records | ||||||
|  | .IP \[bu] 2 | ||||||
|  | print (p, txns) - show transactions (journal entries) | ||||||
|  | .IP \[bu] 2 | ||||||
|  | print-unique - show only transactions with unique descriptions | ||||||
|  | .IP \[bu] 2 | ||||||
|  | register (r, reg) - show postings in one or more accounts & running | ||||||
|  | total | ||||||
|  | .IP \[bu] 2 | ||||||
|  | register-match - show a recent posting that best matches a description | ||||||
|  | .IP \[bu] 2 | ||||||
|  | stats - show journal statistics | ||||||
|  | .IP \[bu] 2 | ||||||
|  | tags - show tag names | ||||||
|  | .IP \[bu] 2 | ||||||
|  | test - run self tests | ||||||
|  | .PP | ||||||
|  | Next, the detailed command docs, in alphabetical order. | ||||||
| .SS accounts | .SS accounts | ||||||
| .PP | .PP | ||||||
| accounts, a | accounts, a | ||||||
| @ -2664,6 +2725,10 @@ shown. | |||||||
| .PP | .PP | ||||||
| Transactions making a net change of zero are not shown by default; add | Transactions making a net change of zero are not shown by default; add | ||||||
| the \f[C]-E/--empty\f[R] flag to show them. | the \f[C]-E/--empty\f[R] flag to show them. | ||||||
|  | .PP | ||||||
|  | This command also supports the output destination and output format | ||||||
|  | options The output formats supported are \f[C]txt\f[R], \f[C]csv\f[R], | ||||||
|  | and \f[C]json\f[R]. | ||||||
| .SS aregister and custom posting dates | .SS aregister and custom posting dates | ||||||
| .PP | .PP | ||||||
| Transactions whose date is outside the report period can still be shown, | Transactions whose date is outside the report period can still be shown, | ||||||
| @ -2677,11 +2742,6 @@ To filter strictly by transaction date instead, add the | |||||||
| \f[C]--txn-dates\f[R] flag. | \f[C]--txn-dates\f[R] flag. | ||||||
| If you use this flag and some of your postings have custom dates, | If you use this flag and some of your postings have custom dates, | ||||||
| it\[aq]s probably best to assume the running balance is wrong. | it\[aq]s probably best to assume the running balance is wrong. | ||||||
| .SS Output format |  | ||||||
| .PP |  | ||||||
| This command also supports the output destination and output format |  | ||||||
| options The output formats supported are \f[C]txt\f[R], \f[C]csv\f[R], |  | ||||||
| and \f[C]json\f[R]. |  | ||||||
| .PP | .PP | ||||||
| Examples: | Examples: | ||||||
| .PP | .PP | ||||||
| @ -2734,6 +2794,10 @@ Then the balance command will show real-world account balances. | |||||||
| In some cases the -H/--historical flag is used to ensure this (more | In some cases the -H/--historical flag is used to ensure this (more | ||||||
| below). | below). | ||||||
| .PP | .PP | ||||||
|  | This command also supports the output destination and output format | ||||||
|  | options The output formats supported are (in most modes): \f[C]txt\f[R], | ||||||
|  | \f[C]csv\f[R], \f[C]html\f[R], and \f[C]json\f[R]. | ||||||
|  | .PP | ||||||
| The balance command can produce several styles of report: | The balance command can produce several styles of report: | ||||||
| .SS Classic balance report | .SS Classic balance report | ||||||
| .PP | .PP | ||||||
| @ -3378,11 +3442,6 @@ Budget performance in 2019/01: | |||||||
|                                         ||        0 [                 0]  |                                         ||        0 [                 0]  | ||||||
| \f[R] | \f[R] | ||||||
| .fi | .fi | ||||||
| .SS Output format |  | ||||||
| .PP |  | ||||||
| This command also supports the output destination and output format |  | ||||||
| options The output formats supported are (in most modes): \f[C]txt\f[R], |  | ||||||
| \f[C]csv\f[R], \f[C]html\f[R], and \f[C]json\f[R]. |  | ||||||
| .SS balancesheet | .SS balancesheet | ||||||
| .PP | .PP | ||||||
| balancesheet, bs | balancesheet, bs | ||||||
| @ -4047,371 +4106,6 @@ Petrol | |||||||
| Snacks | Snacks | ||||||
| \f[R] | \f[R] | ||||||
| .fi | .fi | ||||||
| .SS payees |  | ||||||
| .PP |  | ||||||
| payees |  | ||||||
| .PD 0 |  | ||||||
| .P |  | ||||||
| .PD |  | ||||||
| List the unique payee/payer names that appear in transactions. |  | ||||||
| .PP |  | ||||||
| This command lists the unique payee/payer names that appear in |  | ||||||
| transactions, in alphabetic order. |  | ||||||
| You can add a query to select a subset of transactions. |  | ||||||
| The payee/payer is the part of the transaction description before a | |  | ||||||
| character (or if there is no |, the whole description). |  | ||||||
| .PP |  | ||||||
| Example: |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ hledger payees |  | ||||||
| Store Name |  | ||||||
| Gas Station |  | ||||||
| Person A |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .SS prices |  | ||||||
| .PP |  | ||||||
| prices |  | ||||||
| .PD 0 |  | ||||||
| .P |  | ||||||
| .PD |  | ||||||
| Print market price directives from the journal. |  | ||||||
| With --costs, also print synthetic market prices based on transaction |  | ||||||
| prices. |  | ||||||
| With --inverted-costs, also print inverse prices based on transaction |  | ||||||
| prices. |  | ||||||
| Prices (and postings providing prices) can be filtered by a query. |  | ||||||
| Price amounts are always displayed with their full precision. |  | ||||||
| .SS print |  | ||||||
| .PP |  | ||||||
| print, txns, p |  | ||||||
| .PD 0 |  | ||||||
| .P |  | ||||||
| .PD |  | ||||||
| Show transaction journal entries, sorted by date. |  | ||||||
| .PP |  | ||||||
| The print command displays full journal entries (transactions) from the |  | ||||||
| journal file in date order, tidily formatted. |  | ||||||
| With --date2, transactions are sorted by secondary date instead. |  | ||||||
| .PP |  | ||||||
| print\[aq]s output is always a valid hledger journal. |  | ||||||
| .PD 0 |  | ||||||
| .P |  | ||||||
| .PD |  | ||||||
| It preserves all transaction information, but it does not preserve |  | ||||||
| directives or inter-transaction comments |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ hledger print |  | ||||||
| 2008/01/01 income |  | ||||||
|     assets:bank:checking            $1 |  | ||||||
|     income:salary                  $-1 |  | ||||||
| 
 |  | ||||||
| 2008/06/01 gift |  | ||||||
|     assets:bank:checking            $1 |  | ||||||
|     income:gifts                   $-1 |  | ||||||
| 
 |  | ||||||
| 2008/06/02 save |  | ||||||
|     assets:bank:saving              $1 |  | ||||||
|     assets:bank:checking           $-1 |  | ||||||
| 
 |  | ||||||
| 2008/06/03 * eat & shop |  | ||||||
|     expenses:food                $1 |  | ||||||
|     expenses:supplies            $1 |  | ||||||
|     assets:cash                 $-2 |  | ||||||
| 
 |  | ||||||
| 2008/12/31 * pay off |  | ||||||
|     liabilities:debts               $1 |  | ||||||
|     assets:bank:checking           $-1 |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .PP |  | ||||||
| Normally, the journal entry\[aq]s explicit or implicit amount style is |  | ||||||
| preserved. |  | ||||||
| For example, when an amount is omitted in the journal, it will not |  | ||||||
| appear in the output. |  | ||||||
| Similarly, when a transaction price is implied but not written, it will |  | ||||||
| not appear in the output. |  | ||||||
| You can use the \f[C]-x\f[R]/\f[C]--explicit\f[R] flag to make all |  | ||||||
| amounts and transaction prices explicit, which can be useful for |  | ||||||
| troubleshooting or for making your journal more readable and robust |  | ||||||
| against data entry errors. |  | ||||||
| \f[C]-x\f[R] is also implied by using any of |  | ||||||
| \f[C]-B\f[R],\f[C]-V\f[R],\f[C]-X\f[R],\f[C]--value\f[R]. |  | ||||||
| .PP |  | ||||||
| Note, \f[C]-x\f[R]/\f[C]--explicit\f[R] will cause postings with a |  | ||||||
| multi-commodity amount (these can arise when a multi-commodity |  | ||||||
| transaction has an implicit amount) to be split into multiple |  | ||||||
| single-commodity postings, keeping the output parseable. |  | ||||||
| .PP |  | ||||||
| With \f[C]-B\f[R]/\f[C]--cost\f[R], amounts with transaction prices are |  | ||||||
| converted to cost using that price. |  | ||||||
| This can be used for troubleshooting. |  | ||||||
| .PP |  | ||||||
| With \f[C]-m\f[R]/\f[C]--match\f[R] and a STR argument, print will show |  | ||||||
| at most one transaction: the one one whose description is most similar |  | ||||||
| to STR, and is most recent. |  | ||||||
| STR should contain at least two characters. |  | ||||||
| If there is no similar-enough match, no transaction will be shown. |  | ||||||
| .PP |  | ||||||
| With \f[C]--new\f[R], for each FILE being read, hledger reads (and |  | ||||||
| writes) a special state file (\f[C].latest.FILE\f[R] in the same |  | ||||||
| directory), containing the latest transaction date(s) that were seen |  | ||||||
| last time FILE was read. |  | ||||||
| When this file is found, only transactions with newer dates (and new |  | ||||||
| transactions on the latest date) are printed. |  | ||||||
| This is useful for ignoring already-seen entries in import data, such as |  | ||||||
| downloaded CSV files. |  | ||||||
| Eg: |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ hledger -f bank1.csv print --new |  | ||||||
| (shows transactions added since last print --new on this file) |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .PP |  | ||||||
| This assumes that transactions added to FILE always have same or |  | ||||||
| increasing dates, and that transactions on the same day do not get |  | ||||||
| reordered. |  | ||||||
| See also the import command. |  | ||||||
| .PP |  | ||||||
| This command also supports the output destination and output format |  | ||||||
| options The output formats supported are \f[C]txt\f[R], \f[C]csv\f[R], |  | ||||||
| and (experimental) \f[C]json\f[R] and \f[C]sql\f[R]. |  | ||||||
| .PP |  | ||||||
| Here\[aq]s an example of print\[aq]s CSV output: |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ hledger print -Ocsv |  | ||||||
| \[dq]txnidx\[dq],\[dq]date\[dq],\[dq]date2\[dq],\[dq]status\[dq],\[dq]code\[dq],\[dq]description\[dq],\[dq]comment\[dq],\[dq]account\[dq],\[dq]amount\[dq],\[dq]commodity\[dq],\[dq]credit\[dq],\[dq]debit\[dq],\[dq]posting-status\[dq],\[dq]posting-comment\[dq] |  | ||||||
| \[dq]1\[dq],\[dq]2008/01/01\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]income\[dq],\[dq]\[dq],\[dq]assets:bank:checking\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq] |  | ||||||
| \[dq]1\[dq],\[dq]2008/01/01\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]income\[dq],\[dq]\[dq],\[dq]income:salary\[dq],\[dq]-1\[dq],\[dq]$\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq] |  | ||||||
| \[dq]2\[dq],\[dq]2008/06/01\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]gift\[dq],\[dq]\[dq],\[dq]assets:bank:checking\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq] |  | ||||||
| \[dq]2\[dq],\[dq]2008/06/01\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]gift\[dq],\[dq]\[dq],\[dq]income:gifts\[dq],\[dq]-1\[dq],\[dq]$\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq] |  | ||||||
| \[dq]3\[dq],\[dq]2008/06/02\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]save\[dq],\[dq]\[dq],\[dq]assets:bank:saving\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq] |  | ||||||
| \[dq]3\[dq],\[dq]2008/06/02\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]save\[dq],\[dq]\[dq],\[dq]assets:bank:checking\[dq],\[dq]-1\[dq],\[dq]$\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq] |  | ||||||
| \[dq]4\[dq],\[dq]2008/06/03\[dq],\[dq]\[dq],\[dq]*\[dq],\[dq]\[dq],\[dq]eat & shop\[dq],\[dq]\[dq],\[dq]expenses:food\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq] |  | ||||||
| \[dq]4\[dq],\[dq]2008/06/03\[dq],\[dq]\[dq],\[dq]*\[dq],\[dq]\[dq],\[dq]eat & shop\[dq],\[dq]\[dq],\[dq]expenses:supplies\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq] |  | ||||||
| \[dq]4\[dq],\[dq]2008/06/03\[dq],\[dq]\[dq],\[dq]*\[dq],\[dq]\[dq],\[dq]eat & shop\[dq],\[dq]\[dq],\[dq]assets:cash\[dq],\[dq]-2\[dq],\[dq]$\[dq],\[dq]2\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq] |  | ||||||
| \[dq]5\[dq],\[dq]2008/12/31\[dq],\[dq]\[dq],\[dq]*\[dq],\[dq]\[dq],\[dq]pay off\[dq],\[dq]\[dq],\[dq]liabilities:debts\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq] |  | ||||||
| \[dq]5\[dq],\[dq]2008/12/31\[dq],\[dq]\[dq],\[dq]*\[dq],\[dq]\[dq],\[dq]pay off\[dq],\[dq]\[dq],\[dq]assets:bank:checking\[dq],\[dq]-1\[dq],\[dq]$\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq] |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .IP \[bu] 2 |  | ||||||
| There is one CSV record per posting, with the parent transaction\[aq]s |  | ||||||
| fields repeated. |  | ||||||
| .IP \[bu] 2 |  | ||||||
| The \[dq]txnidx\[dq] (transaction index) field shows which postings |  | ||||||
| belong to the same transaction. |  | ||||||
| (This number might change if transactions are reordered within the file, |  | ||||||
| files are parsed/included in a different order, etc.) |  | ||||||
| .IP \[bu] 2 |  | ||||||
| The amount is separated into \[dq]commodity\[dq] (the symbol) and |  | ||||||
| \[dq]amount\[dq] (numeric quantity) fields. |  | ||||||
| .IP \[bu] 2 |  | ||||||
| The numeric amount is repeated in either the \[dq]credit\[dq] or |  | ||||||
| \[dq]debit\[dq] column, for convenience. |  | ||||||
| (Those names are not accurate in the accounting sense; it just puts |  | ||||||
| negative amounts under credit and zero or greater amounts under debit.) |  | ||||||
| .SS print-unique |  | ||||||
| .PP |  | ||||||
| print-unique |  | ||||||
| .PD 0 |  | ||||||
| .P |  | ||||||
| .PD |  | ||||||
| Print transactions which do not reuse an already-seen description. |  | ||||||
| .PP |  | ||||||
| Example: |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ cat unique.journal |  | ||||||
| 1/1 test |  | ||||||
|  (acct:one)  1 |  | ||||||
| 2/2 test |  | ||||||
|  (acct:two)  2 |  | ||||||
| $ LEDGER_FILE=unique.journal hledger print-unique |  | ||||||
| (-f option not supported) |  | ||||||
| 2015/01/01 test |  | ||||||
|     (acct:one)             1 |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .SS register |  | ||||||
| .PP |  | ||||||
| register, reg, r |  | ||||||
| .PD 0 |  | ||||||
| .P |  | ||||||
| .PD |  | ||||||
| Show postings and their running total. |  | ||||||
| .PP |  | ||||||
| The register command displays matched postings, across all accounts, in |  | ||||||
| date order, with their running total or running historical balance. |  | ||||||
| (See also the \f[C]aregister\f[R] command, which shows matched |  | ||||||
| transactions in a specific account.) |  | ||||||
| .PP |  | ||||||
| register normally shows line per posting, but note that multi-commodity |  | ||||||
| amounts will occupy multiple lines (one line per commodity). |  | ||||||
| .PP |  | ||||||
| It is typically used with a query selecting a particular account, to see |  | ||||||
| that account\[aq]s activity: |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ hledger register checking |  | ||||||
| 2008/01/01 income               assets:bank:checking            $1           $1 |  | ||||||
| 2008/06/01 gift                 assets:bank:checking            $1           $2 |  | ||||||
| 2008/06/02 save                 assets:bank:checking           $-1           $1 |  | ||||||
| 2008/12/31 pay off              assets:bank:checking           $-1            0 |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .PP |  | ||||||
| With --date2, it shows and sorts by secondary date instead. |  | ||||||
| .PP |  | ||||||
| The \f[C]--historical\f[R]/\f[C]-H\f[R] flag adds the balance from any |  | ||||||
| undisplayed prior postings to the running total. |  | ||||||
| This is useful when you want to see only recent activity, with a |  | ||||||
| historically accurate running balance: |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ hledger register checking -b 2008/6 --historical |  | ||||||
| 2008/06/01 gift                 assets:bank:checking            $1           $2 |  | ||||||
| 2008/06/02 save                 assets:bank:checking           $-1           $1 |  | ||||||
| 2008/12/31 pay off              assets:bank:checking           $-1            0 |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .PP |  | ||||||
| The \f[C]--depth\f[R] option limits the amount of sub-account detail |  | ||||||
| displayed. |  | ||||||
| .PP |  | ||||||
| The \f[C]--average\f[R]/\f[C]-A\f[R] flag shows the running average |  | ||||||
| posting amount instead of the running total (so, the final number |  | ||||||
| displayed is the average for the whole report period). |  | ||||||
| This flag implies \f[C]--empty\f[R] (see below). |  | ||||||
| It is affected by \f[C]--historical\f[R]. |  | ||||||
| It works best when showing just one account and one commodity. |  | ||||||
| .PP |  | ||||||
| The \f[C]--related\f[R]/\f[C]-r\f[R] flag shows the \f[I]other\f[R] |  | ||||||
| postings in the transactions of the postings which would normally be |  | ||||||
| shown. |  | ||||||
| .PP |  | ||||||
| The \f[C]--invert\f[R] flag negates all amounts. |  | ||||||
| For example, it can be used on an income account where amounts are |  | ||||||
| normally displayed as negative numbers. |  | ||||||
| It\[aq]s also useful to show postings on the checking account together |  | ||||||
| with the related account: |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ hledger register --related --invert assets:checking |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .PP |  | ||||||
| With a reporting interval, register shows summary postings, one per |  | ||||||
| interval, aggregating the postings to each account: |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ hledger register --monthly income |  | ||||||
| 2008/01                 income:salary                          $-1          $-1 |  | ||||||
| 2008/06                 income:gifts                           $-1          $-2 |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .PP |  | ||||||
| Periods with no activity, and summary postings with a zero amount, are |  | ||||||
| not shown by default; use the \f[C]--empty\f[R]/\f[C]-E\f[R] flag to see |  | ||||||
| them: |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ hledger register --monthly income -E |  | ||||||
| 2008/01                 income:salary                          $-1          $-1 |  | ||||||
| 2008/02                                                          0          $-1 |  | ||||||
| 2008/03                                                          0          $-1 |  | ||||||
| 2008/04                                                          0          $-1 |  | ||||||
| 2008/05                                                          0          $-1 |  | ||||||
| 2008/06                 income:gifts                           $-1          $-2 |  | ||||||
| 2008/07                                                          0          $-2 |  | ||||||
| 2008/08                                                          0          $-2 |  | ||||||
| 2008/09                                                          0          $-2 |  | ||||||
| 2008/10                                                          0          $-2 |  | ||||||
| 2008/11                                                          0          $-2 |  | ||||||
| 2008/12                                                          0          $-2 |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .PP |  | ||||||
| Often, you\[aq]ll want to see just one line per interval. |  | ||||||
| The \f[C]--depth\f[R] option helps with this, causing subaccounts to be |  | ||||||
| aggregated: |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ hledger register --monthly assets --depth 1h |  | ||||||
| 2008/01                 assets                                  $1           $1 |  | ||||||
| 2008/06                 assets                                 $-1            0 |  | ||||||
| 2008/12                 assets                                 $-1          $-1 |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .PP |  | ||||||
| Note when using report intervals, if you specify start/end dates these |  | ||||||
| will be adjusted outward if necessary to contain a whole number of |  | ||||||
| intervals. |  | ||||||
| This ensures that the first and last intervals are full length and |  | ||||||
| comparable to the others in the report. |  | ||||||
| .SS Custom register output |  | ||||||
| .PP |  | ||||||
| register uses the full terminal width by default, except on windows. |  | ||||||
| You can override this by setting the \f[C]COLUMNS\f[R] environment |  | ||||||
| variable (not a bash shell variable) or by using the |  | ||||||
| \f[C]--width\f[R]/\f[C]-w\f[R] option. |  | ||||||
| .PP |  | ||||||
| The description and account columns normally share the space equally |  | ||||||
| (about half of (width - 40) each). |  | ||||||
| You can adjust this by adding a description width as part of |  | ||||||
| --width\[aq]s argument, comma-separated: \f[C]--width W,D\f[R] . |  | ||||||
| Here\[aq]s a diagram (won\[aq]t display correctly in --help): |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| <--------------------------------- width (W) ----------------------------------> |  | ||||||
| date (10)  description (D)       account (W-41-D)     amount (12)   balance (12) |  | ||||||
| DDDDDDDDDD dddddddddddddddddddd  aaaaaaaaaaaaaaaaaaa  AAAAAAAAAAAA  AAAAAAAAAAAA |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .PP |  | ||||||
| and some examples: |  | ||||||
| .IP |  | ||||||
| .nf |  | ||||||
| \f[C] |  | ||||||
| $ hledger reg                     # use terminal width (or 80 on windows) |  | ||||||
| $ hledger reg -w 100              # use width 100 |  | ||||||
| $ COLUMNS=100 hledger reg         # set with one-time environment variable |  | ||||||
| $ export COLUMNS=100; hledger reg # set till session end (or window resize) |  | ||||||
| $ hledger reg -w 100,40           # set overall width 100, description width 40 |  | ||||||
| $ hledger reg -w $COLUMNS,40      # use terminal width, & description width 40 |  | ||||||
| \f[R] |  | ||||||
| .fi |  | ||||||
| .PP |  | ||||||
| This command also supports the output destination and output format |  | ||||||
| options The output formats supported are \f[C]txt\f[R], \f[C]csv\f[R], |  | ||||||
| and (experimental) \f[C]json\f[R]. |  | ||||||
| .SS register-match |  | ||||||
| .PP |  | ||||||
| register-match |  | ||||||
| .PD 0 |  | ||||||
| .P |  | ||||||
| .PD |  | ||||||
| Print the one posting whose transaction description is closest to DESC, |  | ||||||
| in the style of the register command. |  | ||||||
| If there are multiple equally good matches, it shows the most recent. |  | ||||||
| Query options (options, not arguments) can be used to restrict the |  | ||||||
| search space. |  | ||||||
| Helps ledger-autosync detect already-seen transactions when importing. |  | ||||||
| .SS rewrite | .SS rewrite | ||||||
| .PP | .PP | ||||||
| rewrite | rewrite | ||||||
| @ -4979,62 +4673,82 @@ For help on these, see https://github.com/feuerbach/tasty#options | |||||||
| (\f[C]-- --help\f[R] currently doesn\[aq]t show them). | (\f[C]-- --help\f[R] currently doesn\[aq]t show them). | ||||||
| .SS Add-on commands | .SS Add-on commands | ||||||
| .PP | .PP | ||||||
| hledger also searches for external add-on commands, and will include | Any programs or scripts in your PATH named named | ||||||
| these in the commands list. | \f[C]hledger-SOMETHING\f[R] will also appear in the commands list (with | ||||||
| These are programs or scripts in your PATH whose name starts with | a \f[C]+\f[R] mark). | ||||||
| \f[C]hledger-\f[R] and ends with a recognised file extension (currently: | These are called add-on commands. | ||||||
| no extension, \f[C]bat\f[R],\f[C]com\f[R],\f[C]exe\f[R], |  | ||||||
| \f[C]hs\f[R],\f[C]lhs\f[R],\f[C]pl\f[R],\f[C]py\f[R],\f[C]rb\f[R],\f[C]rkt\f[R],\f[C]sh\f[R]). |  | ||||||
| .PP | .PP | ||||||
| Add-ons can be invoked like any hledger command, but there are a few | These offical add-ons are maintained and released along with hledger: | ||||||
| things to be aware of. |  | ||||||
| Eg if the \f[C]hledger-web\f[R] add-on is installed, |  | ||||||
| .IP \[bu] 2 | .IP \[bu] 2 | ||||||
| \f[C]hledger -h web\f[R] shows hledger\[aq]s help, while | ui an efficient terminal interface for hledger (TUI) | ||||||
|  | .IP \[bu] 2 | ||||||
|  | web a simple web interface for hledger (WUI) | ||||||
|  | .PP | ||||||
|  | These add-ons are maintained separately: | ||||||
|  | .IP \[bu] 2 | ||||||
|  | iadd a more interactive alternative for the add command | ||||||
|  | .IP \[bu] 2 | ||||||
|  | interest generates interest transactions according to various schemes | ||||||
|  | .IP \[bu] 2 | ||||||
|  | stockquotes downloads market prices for your commodities from | ||||||
|  | AlphaVantage \f[I](experimental)\f[R] | ||||||
|  | .PP | ||||||
|  | Additional experimental add-ons, which may not be in a working state, | ||||||
|  | can be found in the bin/ directory in the hledger repo. | ||||||
|  | .SS Add-on command flags | ||||||
|  | .PP | ||||||
|  | In a hledger command line, add-on command flags must have a double dash | ||||||
|  | (\f[C]--\f[R]) preceding them. | ||||||
|  | Eg you must write: | ||||||
|  | .IP | ||||||
|  | .nf | ||||||
|  | \f[C] | ||||||
|  | $ hledger web -- --serve | ||||||
|  | \f[R] | ||||||
|  | .fi | ||||||
|  | .PP | ||||||
|  | and not: | ||||||
|  | .IP | ||||||
|  | .nf | ||||||
|  | \f[C] | ||||||
|  | $ hledger web --serve | ||||||
|  | \f[R] | ||||||
|  | .fi | ||||||
|  | .PP | ||||||
|  | (because the \f[C]--serve\f[R] flag belongs to \f[C]hledger-web\f[R], | ||||||
|  | not \f[C]hledger\f[R]). | ||||||
|  | .PP | ||||||
|  | The \f[C]-h/--help\f[R] and \f[C]--version\f[R] flags work without | ||||||
|  | \f[C]--\f[R], with their position deciding which program they refer to. | ||||||
|  | Eg \f[C]hledger -h web\f[R] shows hledger\[aq]s help, | ||||||
| \f[C]hledger web -h\f[R] shows hledger-web\[aq]s help. | \f[C]hledger web -h\f[R] shows hledger-web\[aq]s help. | ||||||
|  | .PP | ||||||
|  | If you have any trouble with this, remember you can always run the | ||||||
|  | add-on program directly, eg: | ||||||
|  | .IP | ||||||
|  | .nf | ||||||
|  | \f[C] | ||||||
|  | $ hledger-web --serve | ||||||
|  | \f[R] | ||||||
|  | .fi | ||||||
|  | .SS Making add-on commands | ||||||
|  | .PP | ||||||
|  | Add-on commands are programs or scripts in your PATH | ||||||
| .IP \[bu] 2 | .IP \[bu] 2 | ||||||
| Flags specific to the add-on must have a preceding \f[C]--\f[R] to hide | whose name starts with \f[C]hledger-\f[R] | ||||||
| them from hledger. |  | ||||||
| So \f[C]hledger web --serve --port 9000\f[R] will be rejected; you must |  | ||||||
| use \f[C]hledger web -- --serve --port 9000\f[R]. |  | ||||||
| .IP \[bu] 2 | .IP \[bu] 2 | ||||||
| You can always run add-ons directly if preferred: | whose name ends with a recognised file extension: | ||||||
| \f[C]hledger-web --serve --port 9000\f[R]. | \f[C].bat\f[R],\f[C].com\f[R],\f[C].exe\f[R], | ||||||
|  | \f[C].hs\f[R],\f[C].lhs\f[R],\f[C].pl\f[R],\f[C].py\f[R],\f[C].rb\f[R],\f[C].rkt\f[R],\f[C].sh\f[R] | ||||||
|  | or none | ||||||
|  | .IP \[bu] 2 | ||||||
|  | and (on unix, mac) which are executable by the current user. | ||||||
| .PP | .PP | ||||||
| Add-ons are a relatively easy way to add local features or experiment | Add-ons are a relatively easy way to add local features or experiment | ||||||
| with new ideas. | with new ideas. | ||||||
| They can be written in any language, but haskell scripts have a big | They can be written in any language, but haskell scripts have a big | ||||||
| advantage: they can use the same hledger (and haskell) library functions | advantage: they can use the same hledger library functions that built-in | ||||||
| that built-in commands do, for command-line options, journal parsing, | commands use for command-line options, parsing and reporting. | ||||||
| reporting, etc. |  | ||||||
| .PP |  | ||||||
| Two important add-ons are the hledger-ui and hledger-web user |  | ||||||
| interfaces. |  | ||||||
| These are maintained and released along with hledger: |  | ||||||
| .SS ui |  | ||||||
| .PP |  | ||||||
| hledger-ui provides an efficient terminal interface. |  | ||||||
| .SS web |  | ||||||
| .PP |  | ||||||
| hledger-web provides a simple web interface. |  | ||||||
| .PP |  | ||||||
| Third party add-ons, maintained separately from hledger, include: |  | ||||||
| .SS iadd |  | ||||||
| .PP |  | ||||||
| hledger-iadd is a more interactive, terminal UI replacement for the add |  | ||||||
| command. |  | ||||||
| .SS interest |  | ||||||
| .PP |  | ||||||
| hledger-interest generates interest transactions for an account |  | ||||||
| according to various schemes. |  | ||||||
| .SS stockquotes |  | ||||||
| .PP |  | ||||||
| hledger-stockquotes downloads market prices for the commodities in your |  | ||||||
| journal from AlphaVantage. |  | ||||||
| .PP |  | ||||||
| A few more experimental or old add-ons can be found in hledger\[aq]s |  | ||||||
| bin/ directory. |  | ||||||
| These are typically prototypes and not guaranteed to work. |  | ||||||
| .SH ENVIRONMENT | .SH ENVIRONMENT | ||||||
| .PP | .PP | ||||||
| \f[B]LEDGER_FILE\f[R] The journal file path when not specified with | \f[B]LEDGER_FILE\f[R] The journal file path when not specified with | ||||||
| @ -5214,6 +4928,6 @@ Copyright (C) 2007-2020 Simon Michael. | |||||||
| Released under GNU GPL v3 or later. | Released under GNU GPL v3 or later. | ||||||
| 
 | 
 | ||||||
| .SH SEE ALSO | .SH SEE ALSO | ||||||
| hledger(1), hledger\-ui(1), hledger\-web(1), | hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1) | ||||||
| hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), | 
 | ||||||
| ledger(1) | hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5) | ||||||
|  | |||||||
							
								
								
									
										1590
									
								
								hledger/hledger.info
									
									
									
									
									
								
							
							
						
						
									
										1590
									
								
								hledger/hledger.info
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1122
									
								
								hledger/hledger.txt
									
									
									
									
									
								
							
							
						
						
									
										1122
									
								
								hledger/hledger.txt
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Loading…
	
		Reference in New Issue
	
	Block a user