;update manuals
This commit is contained in:
		
							parent
							
								
									541aa3ee5b
								
							
						
					
					
						commit
						3662977c84
					
				| @ -4,4 +4,4 @@ m4_dnl Program version. Updated by make setversion. | |||||||
| m4_define({{_version_}}, {{1.19.99}})m4_dnl | m4_define({{_version_}}, {{1.19.99}})m4_dnl | ||||||
| m4_dnl | m4_dnl | ||||||
| m4_dnl Date to show in man pages. Updated by make setdate. | m4_dnl Date to show in man pages. Updated by make setdate. | ||||||
| m4_define({{_monthyear_}}, {{October 2020}})m4_dnl | m4_define({{_monthyear_}}, {{November 2020}})m4_dnl | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| .\"t | .\"t | ||||||
| 
 | 
 | ||||||
| .TH "hledger_csv" "5" "October 2020" "hledger 1.19.99" "hledger User Manuals" | .TH "hledger_csv" "5" "November 2020" "hledger 1.19.99" "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -959,4 +959,4 @@ SEE ALSO | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger 1.19.99                  October 2020                   hledger_csv(5) | hledger 1.19.99                  November 2020                  hledger_csv(5) | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| .\"t | .\"t | ||||||
| 
 | 
 | ||||||
| .TH "hledger_journal" "5" "October 2020" "hledger 1.19.99" "hledger User Manuals" | .TH "hledger_journal" "5" "November 2020" "hledger 1.19.99" "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| @ -587,33 +587,52 @@ commodity       1 000 000.9455 | |||||||
| .PP | .PP | ||||||
| .SS Commodity display style | .SS Commodity display style | ||||||
| .PP | .PP | ||||||
| For each commodity, hledger chooses a consistent format to use when | For each commodity, hledger chooses a consistent style to use when | ||||||
| displaying amounts. | displaying amounts. | ||||||
| (Except price amounts, which are always displayed as written). | (Except price amounts, which are always displayed as written). | ||||||
| The display style is chosen as follows: | The display style is chosen as follows: | ||||||
| .IP \[bu] 2 | .IP \[bu] 2 | ||||||
| If there is a commodity directive (or default commodity directive) for | If there is a commodity directive (or default commodity directive) for | ||||||
| the commodity, that format is used (see examples above). | the commodity, its style is used (see examples above). | ||||||
| .IP \[bu] 2 | .IP \[bu] 2 | ||||||
| Otherwise the format of the first posting amount in that commodity seen | Otherwise the style is inferred from the amounts in that commodity seen | ||||||
| in the journal is used. | in the journal. | ||||||
| But the number of decimal places (\[dq]precision\[dq]) will be the |  | ||||||
| maximum from all posting amounts in that commodity. |  | ||||||
| .IP \[bu] 2 | .IP \[bu] 2 | ||||||
| Or if there are no such amounts in the journal, a default format is used | Or if there are no such amounts in the journal, a default style is used | ||||||
| (like \f[C]$1000.00\f[R]). | (like \f[C]$1000.00\f[R]). | ||||||
| .PP | .PP | ||||||
| Transaction prices don\[aq]t affect the amount display style directly, | A style is inferred from the journal amounts in a commodity as follows: | ||||||
| but occasionally they can do so indirectly (eg when an posting\[aq]s | .IP \[bu] 2 | ||||||
| amount is inferred using a transaction price). | Use the general style (decimal mark, symbol placement) of the first | ||||||
|  | amount | ||||||
|  | .IP \[bu] 2 | ||||||
|  | Use the first-seen digit group style (digit group mark, digit group | ||||||
|  | sizes), if any | ||||||
|  | .IP \[bu] 2 | ||||||
|  | Use the maximum number of decimal places of all. | ||||||
|  | .PP | ||||||
|  | Transaction price amounts don\[aq]t affect the commodity display style | ||||||
|  | directly, but occasionally they can do so indirectly (eg when a | ||||||
|  | posting\[aq]s amount is inferred using a transaction price). | ||||||
| If you find this causing problems, use a commodity directive to fix the | If you find this causing problems, use a commodity directive to fix the | ||||||
| display style. | display style. | ||||||
| .PP | .PP | ||||||
| In summary: amounts will be displayed much as they appear in your | In summary, each commodity\[aq]s amounts will be normalised to | ||||||
| journal, with the max observed number of decimal places. | .IP \[bu] 2 | ||||||
| If you want to see fewer decimal places in reports, use a commodity | the style declared by a \f[C]commodity\f[R] directive | ||||||
| directive to override that. | .IP \[bu] 2 | ||||||
|  | or, the style of the first posting amount in the journal, with the | ||||||
|  | first-seen digit group style and the maximum-seen number of decimal | ||||||
|  | places. | ||||||
| .PP | .PP | ||||||
|  | If reports are showing amounts in a way you don\[aq]t like (eg, with too | ||||||
|  | many decimal places), use a commodity directive to set your preferred | ||||||
|  | style. | ||||||
|  | .SS Rounding | ||||||
|  | .PP | ||||||
|  | Amounts are stored internally as decimal numbers with up to 255 decimal | ||||||
|  | places, and displayed with the number of decimal places specified by the | ||||||
|  | commodity display style. | ||||||
| Note, hledger uses banker\[aq]s rounding: it rounds to the nearest even | 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 | ||||||
|  | |||||||
| @ -488,6 +488,7 @@ EUR 1E3 | |||||||
| 
 | 
 | ||||||
| * Digit group marks:: | * Digit group marks:: | ||||||
| * Commodity display style:: | * Commodity display style:: | ||||||
|  | * 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 | ||||||
| @ -523,40 +524,62 @@ 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,  Prev: Digit group marks,  Up: Amounts | File: hledger_journal.info,  Node: Commodity display style,  Next: Rounding,  Prev: Digit group marks,  Up: Amounts | ||||||
| 
 | 
 | ||||||
| 1.8.2 Commodity display style | 1.8.2 Commodity display style | ||||||
| ----------------------------- | ----------------------------- | ||||||
| 
 | 
 | ||||||
| For each commodity, hledger chooses a consistent format to use when | For each commodity, hledger chooses a consistent style to use when | ||||||
| displaying amounts.  (Except price amounts, which are always displayed | displaying amounts.  (Except price amounts, which are always displayed | ||||||
| as written).  The display style is chosen as follows: | as written).  The display style is chosen as follows: | ||||||
| 
 | 
 | ||||||
|    * If there is a commodity directive (or default commodity directive) |    * If there is a commodity directive (or default commodity directive) | ||||||
|      for the commodity, that format is used (see examples above). |      for the commodity, its style is used (see examples above). | ||||||
| 
 | 
 | ||||||
|    * Otherwise the format of the first posting amount in that commodity |    * Otherwise the style is inferred from the amounts in that commodity | ||||||
|      seen in the journal is used.  But the number of decimal places |      seen in the journal. | ||||||
|      ("precision") will be the maximum from all posting amounts in that |  | ||||||
|      commodity. |  | ||||||
| 
 | 
 | ||||||
|    * Or if there are no such amounts in the journal, a default format is |    * Or if there are no such amounts in the journal, a default style is | ||||||
|      used (like '$1000.00'). |      used (like '$1000.00'). | ||||||
| 
 | 
 | ||||||
|    Transaction prices don't affect the amount display style directly, |    A style is inferred from the journal amounts in a commodity as | ||||||
| but occasionally they can do so indirectly (eg when an posting's amount | follows: | ||||||
| is inferred using a transaction price).  If you find this causing |  | ||||||
| problems, use a commodity directive to fix the display style. |  | ||||||
| 
 | 
 | ||||||
|    In summary: amounts will be displayed much as they appear in your |    * Use the general style (decimal mark, symbol placement) of the first | ||||||
| journal, with the max observed number of decimal places.  If you want to |      amount | ||||||
| see fewer decimal places in reports, use a commodity directive to |    * Use the first-seen digit group style (digit group mark, digit group | ||||||
| override that. |      sizes), if any | ||||||
|  |    * Use the maximum number of decimal places of all. | ||||||
| 
 | 
 | ||||||
|    Note, hledger uses banker's rounding: it rounds to the nearest even |    Transaction price amounts don't affect the commodity display style | ||||||
| number, eg 0.5 displayed with zero decimal places is "0").  (Guaranteed | directly, but occasionally they can do so indirectly (eg when a | ||||||
| since hledger 1.17.1; in older versions this could vary if hledger was | posting's amount is inferred using a transaction price).  If you find | ||||||
| built with Decimal < 0.5.1.) | this causing problems, use a commodity directive to fix the display | ||||||
|  | style. | ||||||
|  | 
 | ||||||
|  |    In summary, each commodity's amounts will be normalised to | ||||||
|  | 
 | ||||||
|  |    * the style declared by a 'commodity' directive | ||||||
|  |    * or, the style of the first posting amount in the journal, with the | ||||||
|  |      first-seen digit group style and the maximum-seen number of decimal | ||||||
|  |      places. | ||||||
|  | 
 | ||||||
|  |    If reports are showing amounts in a way you don't like (eg, with too | ||||||
|  | many decimal places), use a commodity directive to set your preferred | ||||||
|  | style. | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | File: hledger_journal.info,  Node: Rounding,  Prev: Commodity display style,  Up: Amounts | ||||||
|  | 
 | ||||||
|  | 1.8.3 Rounding | ||||||
|  | -------------- | ||||||
|  | 
 | ||||||
|  | Amounts are stored internally as decimal numbers with up to 255 decimal | ||||||
|  | places, and displayed with the number of decimal places specified by the | ||||||
|  | commodity display style.  Note, hledger uses banker's rounding: it | ||||||
|  | rounds to the nearest even number, eg 0.5 displayed with zero decimal | ||||||
|  | places is "0").  (Guaranteed since hledger 1.17.1; in older versions | ||||||
|  | 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: Transactions | File: hledger_journal.info,  Node: Transaction prices,  Next: Lot prices and lot dates,  Prev: Amounts,  Up: Transactions | ||||||
| @ -1889,96 +1912,98 @@ Node: Account names15177 | |||||||
| Ref: #account-names15318 | Ref: #account-names15318 | ||||||
| Node: Amounts15805 | Node: Amounts15805 | ||||||
| Ref: #amounts15944 | Ref: #amounts15944 | ||||||
| Node: Digit group marks17055 | Node: Digit group marks17068 | ||||||
| Ref: #digit-group-marks17206 | Ref: #digit-group-marks17219 | ||||||
| Node: Commodity display style18144 | Node: Commodity display style18157 | ||||||
| Ref: #commodity-display-style18307 | Ref: #commodity-display-style18337 | ||||||
| Node: Transaction prices19711 | Node: Rounding19880 | ||||||
| Ref: #transaction-prices19883 | Ref: #rounding20004 | ||||||
| Node: Lot prices and lot dates22314 | Node: Transaction prices20416 | ||||||
| Ref: #lot-prices-and-lot-dates22511 | Ref: #transaction-prices20588 | ||||||
| Node: Balance assertions22999 | Node: Lot prices and lot dates23019 | ||||||
| Ref: #balance-assertions23185 | Ref: #lot-prices-and-lot-dates23216 | ||||||
| Node: Assertions and ordering24218 | Node: Balance assertions23704 | ||||||
| Ref: #assertions-and-ordering24406 | Ref: #balance-assertions23890 | ||||||
| Node: Assertions and included files25106 | Node: Assertions and ordering24923 | ||||||
| Ref: #assertions-and-included-files25349 | Ref: #assertions-and-ordering25111 | ||||||
| Node: Assertions and multiple -f options25682 | Node: Assertions and included files25811 | ||||||
| Ref: #assertions-and-multiple--f-options25938 | Ref: #assertions-and-included-files26054 | ||||||
| Node: Assertions and commodities26070 | Node: Assertions and multiple -f options26387 | ||||||
| Ref: #assertions-and-commodities26302 | Ref: #assertions-and-multiple--f-options26643 | ||||||
| Node: Assertions and prices27459 | Node: Assertions and commodities26775 | ||||||
| Ref: #assertions-and-prices27673 | Ref: #assertions-and-commodities27007 | ||||||
| Node: Assertions and subaccounts28113 | Node: Assertions and prices28164 | ||||||
| Ref: #assertions-and-subaccounts28342 | Ref: #assertions-and-prices28378 | ||||||
| Node: Assertions and virtual postings28666 | Node: Assertions and subaccounts28818 | ||||||
| Ref: #assertions-and-virtual-postings28908 | Ref: #assertions-and-subaccounts29047 | ||||||
| Node: Assertions and precision29050 | Node: Assertions and virtual postings29371 | ||||||
| Ref: #assertions-and-precision29243 | Ref: #assertions-and-virtual-postings29613 | ||||||
| Node: Balance assignments29510 | Node: Assertions and precision29755 | ||||||
| Ref: #balance-assignments29684 | Ref: #assertions-and-precision29948 | ||||||
| Node: Balance assignments and prices30848 | Node: Balance assignments30215 | ||||||
| Ref: #balance-assignments-and-prices31020 | Ref: #balance-assignments30389 | ||||||
| Node: Directives31244 | Node: Balance assignments and prices31553 | ||||||
| Ref: #directives31403 | Ref: #balance-assignments-and-prices31725 | ||||||
| Node: Directives and multiple files36901 | Node: Directives31949 | ||||||
| Ref: #directives-and-multiple-files37084 | Ref: #directives32108 | ||||||
| Node: Comment blocks37748 | Node: Directives and multiple files37606 | ||||||
| Ref: #comment-blocks37931 | Ref: #directives-and-multiple-files37789 | ||||||
| Node: Including other files38107 | Node: Comment blocks38453 | ||||||
| Ref: #including-other-files38287 | Ref: #comment-blocks38636 | ||||||
| Node: Default year39211 | Node: Including other files38812 | ||||||
| Ref: #default-year39380 | Ref: #including-other-files38992 | ||||||
| Node: Declaring commodities39787 | Node: Default year39916 | ||||||
| Ref: #declaring-commodities39970 | Ref: #default-year40085 | ||||||
| Node: Default commodity41775 | Node: Declaring commodities40492 | ||||||
| Ref: #default-commodity41961 | Ref: #declaring-commodities40675 | ||||||
| Node: Declaring market prices42850 | Node: Default commodity42480 | ||||||
| Ref: #declaring-market-prices43045 | Ref: #default-commodity42666 | ||||||
| Node: Declaring accounts43902 | Node: Declaring market prices43555 | ||||||
| Ref: #declaring-accounts44088 | Ref: #declaring-market-prices43750 | ||||||
| Node: Account comments45013 | Node: Declaring accounts44607 | ||||||
| Ref: #account-comments45176 | Ref: #declaring-accounts44793 | ||||||
| Node: Account subdirectives45600 | Node: Account comments45718 | ||||||
| Ref: #account-subdirectives45795 | Ref: #account-comments45881 | ||||||
| Node: Account types46108 | Node: Account subdirectives46305 | ||||||
| Ref: #account-types46292 | Ref: #account-subdirectives46500 | ||||||
| Node: Account display order49338 | Node: Account types46813 | ||||||
| Ref: #account-display-order49508 | Ref: #account-types46997 | ||||||
| Node: Rewriting accounts50659 | Node: Account display order50043 | ||||||
| Ref: #rewriting-accounts50844 | Ref: #account-display-order50213 | ||||||
| Node: Basic aliases51601 | Node: Rewriting accounts51364 | ||||||
| Ref: #basic-aliases51747 | Ref: #rewriting-accounts51549 | ||||||
| Node: Regex aliases52451 | Node: Basic aliases52306 | ||||||
| Ref: #regex-aliases52623 | Ref: #basic-aliases52452 | ||||||
| Node: Combining aliases53342 | Node: Regex aliases53156 | ||||||
| Ref: #combining-aliases53535 | Ref: #regex-aliases53328 | ||||||
| Node: Aliases and multiple files54811 | Node: Combining aliases54047 | ||||||
| Ref: #aliases-and-multiple-files55020 | Ref: #combining-aliases54240 | ||||||
| Node: end aliases55599 | Node: Aliases and multiple files55516 | ||||||
| Ref: #end-aliases55756 | Ref: #aliases-and-multiple-files55725 | ||||||
| Node: Default parent account55857 | Node: end aliases56304 | ||||||
| Ref: #default-parent-account56025 | Ref: #end-aliases56461 | ||||||
| Node: Periodic transactions56909 | Node: Default parent account56562 | ||||||
| Ref: #periodic-transactions57084 | Ref: #default-parent-account56730 | ||||||
| Node: Periodic rule syntax58956 | Node: Periodic transactions57614 | ||||||
| Ref: #periodic-rule-syntax59162 | Ref: #periodic-transactions57789 | ||||||
| Node: Two spaces between period expression and description!59866 | Node: Periodic rule syntax59661 | ||||||
| Ref: #two-spaces-between-period-expression-and-description60185 | Ref: #periodic-rule-syntax59867 | ||||||
| Node: Forecasting with periodic transactions60869 | Node: Two spaces between period expression and description!60571 | ||||||
| Ref: #forecasting-with-periodic-transactions61174 | Ref: #two-spaces-between-period-expression-and-description60890 | ||||||
| Node: Budgeting with periodic transactions63229 | Node: Forecasting with periodic transactions61574 | ||||||
| Ref: #budgeting-with-periodic-transactions63468 | Ref: #forecasting-with-periodic-transactions61879 | ||||||
| Node: Auto postings63877 | Node: Budgeting with periodic transactions63934 | ||||||
| Ref: #auto-postings64017 | Ref: #budgeting-with-periodic-transactions64173 | ||||||
| Node: Auto postings and multiple files66196 | Node: Auto postings64582 | ||||||
| Ref: #auto-postings-and-multiple-files66400 | Ref: #auto-postings64722 | ||||||
| Node: Auto postings and dates66609 | Node: Auto postings and multiple files66901 | ||||||
| Ref: #auto-postings-and-dates66883 | Ref: #auto-postings-and-multiple-files67105 | ||||||
| Node: Auto postings and transaction balancing / inferred amounts / balance assertions67058 | Node: Auto postings and dates67314 | ||||||
| Ref: #auto-postings-and-transaction-balancing-inferred-amounts-balance-assertions67409 | Ref: #auto-postings-and-dates67588 | ||||||
| Node: Auto posting tags67751 | Node: Auto postings and transaction balancing / inferred amounts / balance assertions67763 | ||||||
| Ref: #auto-posting-tags67966 | Ref: #auto-postings-and-transaction-balancing-inferred-amounts-balance-assertions68114 | ||||||
|  | Node: Auto posting tags68456 | ||||||
|  | Ref: #auto-posting-tags68671 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
| 
 | 
 | ||||||
|  | |||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @ -1,5 +1,5 @@ | |||||||
| 
 | 
 | ||||||
| .TH "hledger_timeclock" "5" "October 2020" "hledger 1.19.99" "hledger User Manuals" | .TH "hledger_timeclock" "5" "November 2020" "hledger 1.19.99" "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -78,4 +78,4 @@ SEE ALSO | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger 1.19.99                  October 2020             hledger_timeclock(5) | hledger 1.19.99                  November 2020            hledger_timeclock(5) | ||||||
|  | |||||||
| @ -1,5 +1,5 @@ | |||||||
| 
 | 
 | ||||||
| .TH "hledger_timedot" "5" "October 2020" "hledger 1.19.99" "hledger User Manuals" | .TH "hledger_timedot" "5" "November 2020" "hledger 1.19.99" "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -161,4 +161,4 @@ SEE ALSO | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger 1.19.99                  October 2020               hledger_timedot(5) | hledger 1.19.99                  November 2020              hledger_timedot(5) | ||||||
|  | |||||||
| @ -4,4 +4,4 @@ m4_dnl Program version. Updated by make setversion. | |||||||
| m4_define({{_version_}}, {{1.19.99}})m4_dnl | m4_define({{_version_}}, {{1.19.99}})m4_dnl | ||||||
| m4_dnl | m4_dnl | ||||||
| m4_dnl Date to show in man pages. Updated by make setdate. | m4_dnl Date to show in man pages. Updated by make setdate. | ||||||
| m4_define({{_monthyear_}}, {{October 2020}})m4_dnl | m4_define({{_monthyear_}}, {{November 2020}})m4_dnl | ||||||
|  | |||||||
| @ -1,5 +1,5 @@ | |||||||
| 
 | 
 | ||||||
| .TH "hledger-ui" "1" "October 2020" "hledger-ui 1.19.99" "hledger User Manuals" | .TH "hledger-ui" "1" "November 2020" "hledger-ui 1.19.99" "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -456,4 +456,4 @@ SEE ALSO | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger-ui 1.19.99               October 2020                    hledger-ui(1) | hledger-ui 1.19.99               November 2020                   hledger-ui(1) | ||||||
|  | |||||||
| @ -4,4 +4,4 @@ m4_dnl Program version. Updated by make setversion. | |||||||
| m4_define({{_version_}}, {{1.19.99}})m4_dnl | m4_define({{_version_}}, {{1.19.99}})m4_dnl | ||||||
| m4_dnl | m4_dnl | ||||||
| m4_dnl Date to show in man pages. Updated by make setdate. | m4_dnl Date to show in man pages. Updated by make setdate. | ||||||
| m4_define({{_monthyear_}}, {{October 2020}})m4_dnl | m4_define({{_monthyear_}}, {{November 2020}})m4_dnl | ||||||
|  | |||||||
| @ -1,5 +1,5 @@ | |||||||
| 
 | 
 | ||||||
| .TH "hledger-web" "1" "October 2020" "hledger-web 1.19.99" "hledger User Manuals" | .TH "hledger-web" "1" "November 2020" "hledger-web 1.19.99" "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| @ -88,6 +88,10 @@ enable the view, add, and/or manage capabilities (default: view,add) | |||||||
| \f[B]\f[CB]--capabilities-header=HTTPHEADER\f[B]\f[R] | \f[B]\f[CB]--capabilities-header=HTTPHEADER\f[B]\f[R] | ||||||
| read capabilities to enable from a HTTP header, like | read capabilities to enable from a HTTP header, like | ||||||
| X-Sandstorm-Permissions (default: disabled) | X-Sandstorm-Permissions (default: disabled) | ||||||
|  | .TP | ||||||
|  | \f[B]\f[CB]--test\f[B]\f[R] | ||||||
|  | run hledger-web\[aq]s tests and exit. | ||||||
|  | hspec test runner args may follow a --, eg: hledger-web --test -- --help | ||||||
| .PP | .PP | ||||||
| hledger input options: | hledger input options: | ||||||
| .TP | .TP | ||||||
|  | |||||||
| @ -97,6 +97,10 @@ before options, as shown in the synopsis above. | |||||||
| 
 | 
 | ||||||
|      read capabilities to enable from a HTTP header, like |      read capabilities to enable from a HTTP header, like | ||||||
|      X-Sandstorm-Permissions (default: disabled) |      X-Sandstorm-Permissions (default: disabled) | ||||||
|  | '--test' | ||||||
|  | 
 | ||||||
|  |      run hledger-web's tests and exit.  hspec test runner args may | ||||||
|  |      follow a -, eg: hledger-web -test - -help | ||||||
| 
 | 
 | ||||||
|    hledger input options: |    hledger input options: | ||||||
| 
 | 
 | ||||||
| @ -583,20 +587,20 @@ Tag Table: | |||||||
| Node: Top72 | Node: Top72 | ||||||
| Node: OPTIONS1752 | Node: OPTIONS1752 | ||||||
| Ref: #options1857 | Ref: #options1857 | ||||||
| Node: PERMISSIONS8737 | Node: PERMISSIONS8861 | ||||||
| Ref: #permissions8876 | Ref: #permissions9000 | ||||||
| Node: EDITING UPLOADING DOWNLOADING10088 | Node: EDITING UPLOADING DOWNLOADING10212 | ||||||
| Ref: #editing-uploading-downloading10269 | Ref: #editing-uploading-downloading10393 | ||||||
| Node: RELOADING11103 | Node: RELOADING11227 | ||||||
| Ref: #reloading11237 | Ref: #reloading11361 | ||||||
| Node: JSON API11670 | Node: JSON API11794 | ||||||
| Ref: #json-api11784 | Ref: #json-api11908 | ||||||
| Node: ENVIRONMENT17274 | Node: ENVIRONMENT17398 | ||||||
| Ref: #environment17390 | Ref: #environment17514 | ||||||
| Node: FILES18123 | Node: FILES18247 | ||||||
| Ref: #files18223 | Ref: #files18347 | ||||||
| Node: BUGS18436 | Node: BUGS18560 | ||||||
| Ref: #bugs18514 | Ref: #bugs18638 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -80,6 +80,9 @@ OPTIONS | |||||||
|               read  capabilities  to  enable  from a HTTP header, like X-Sand- |               read  capabilities  to  enable  from a HTTP header, like X-Sand- | ||||||
|               storm-Permissions (default: disabled) |               storm-Permissions (default: disabled) | ||||||
| 
 | 
 | ||||||
|  |        --test run hledger-web's tests and exit.  hspec test  runner  args  may | ||||||
|  |               follow a --, eg: hledger-web --test -- --help | ||||||
|  | 
 | ||||||
|        hledger input options: |        hledger input options: | ||||||
| 
 | 
 | ||||||
|        -f FILE --file=FILE |        -f FILE --file=FILE | ||||||
| @ -87,7 +90,7 @@ OPTIONS | |||||||
|               $LEDGER_FILE or $HOME/.hledger.journal) |               $LEDGER_FILE or $HOME/.hledger.journal) | ||||||
| 
 | 
 | ||||||
|        --rules-file=RULESFILE |        --rules-file=RULESFILE | ||||||
|               Conversion   rules  file  to  use  when  reading  CSV  (default: |               Conversion  rules  file  to  use  when  reading  CSV   (default: | ||||||
|               FILE.rules) |               FILE.rules) | ||||||
| 
 | 
 | ||||||
|        --separator=CHAR |        --separator=CHAR | ||||||
| @ -129,7 +132,7 @@ OPTIONS | |||||||
|               multiperiod/multicolumn report by year |               multiperiod/multicolumn report by year | ||||||
| 
 | 
 | ||||||
|        -p --period=PERIODEXP |        -p --period=PERIODEXP | ||||||
|               set  start date, end date, and/or reporting interval all at once |               set start date, end date, and/or reporting interval all at  once | ||||||
|               using period expressions syntax |               using period expressions syntax | ||||||
| 
 | 
 | ||||||
|        --date2 |        --date2 | ||||||
| @ -152,21 +155,21 @@ OPTIONS | |||||||
|               hide/aggregate accounts or postings more than NUM levels deep |               hide/aggregate accounts or postings more than NUM levels deep | ||||||
| 
 | 
 | ||||||
|        -E --empty |        -E --empty | ||||||
|               show  items with zero amount, normally hidden (and vice-versa in |               show items with zero amount, normally hidden (and vice-versa  in | ||||||
|               hledger-ui/hledger-web) |               hledger-ui/hledger-web) | ||||||
| 
 | 
 | ||||||
|        -B --cost |        -B --cost | ||||||
|               convert amounts to their cost/selling amount at transaction time |               convert amounts to their cost/selling amount at transaction time | ||||||
| 
 | 
 | ||||||
|        -V --market |        -V --market | ||||||
|               convert amounts to their market value in default valuation  com- |               convert  amounts to their market value in default valuation com- | ||||||
|               modities |               modities | ||||||
| 
 | 
 | ||||||
|        -X --exchange=COMM |        -X --exchange=COMM | ||||||
|               convert amounts to their market value in commodity COMM |               convert amounts to their market value in commodity COMM | ||||||
| 
 | 
 | ||||||
|        --value |        --value | ||||||
|               convert  amounts  to  cost  or  market value, more flexibly than |               convert amounts to cost or  market  value,  more  flexibly  than | ||||||
|               -B/-V/-X |               -B/-V/-X | ||||||
| 
 | 
 | ||||||
|        --infer-value |        --infer-value | ||||||
| @ -175,15 +178,15 @@ OPTIONS | |||||||
|        --auto apply automated posting rules to modify transactions. |        --auto apply automated posting rules to modify transactions. | ||||||
| 
 | 
 | ||||||
|        --forecast |        --forecast | ||||||
|               generate future transactions from  periodic  transaction  rules, |               generate  future  transactions  from periodic transaction rules, | ||||||
|               for  the  next 6 months or till report end date.  In hledger-ui, |               for the next 6 months or till report end date.   In  hledger-ui, | ||||||
|               also make ordinary future transactions visible. |               also make ordinary future transactions visible. | ||||||
| 
 | 
 | ||||||
|        --color=WHEN (or --colour=WHEN) |        --color=WHEN (or --colour=WHEN) | ||||||
|               Should color-supporting commands use ANSI color  codes  in  text |               Should  color-supporting  commands  use ANSI color codes in text | ||||||
|               output.   'auto' (default): whenever stdout seems to be a color- |               output.  'auto' (default): whenever stdout seems to be a  color- | ||||||
|               supporting terminal.  'always' or 'yes': always, useful eg  when |               supporting  terminal.  'always' or 'yes': always, useful eg when | ||||||
|               piping  output  into  'less  -R'.   'never'  or  'no': never.  A |               piping output into  'less  -R'.   'never'  or  'no':  never.   A | ||||||
|               NO_COLOR environment variable overrides this. |               NO_COLOR environment variable overrides this. | ||||||
| 
 | 
 | ||||||
|        When a reporting option appears more than once in the command line, the |        When a reporting option appears more than once in the command line, the | ||||||
| @ -203,54 +206,54 @@ OPTIONS | |||||||
|               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.) | ||||||
| 
 | 
 | ||||||
|        By default, hledger-web starts the web app in "transient mode" and also |        By default, hledger-web starts the web app in "transient mode" and also | ||||||
|        opens it in your default web browser if possible.  In this mode the web |        opens it in your default web browser if possible.  In this mode the web | ||||||
|        app will keep running for as long as you have it open in a browser win- |        app will keep running for as long as you have it open in a browser win- | ||||||
|        dow, and will exit after two minutes of inactivity (no requests and  no |        dow,  and will exit after two minutes of inactivity (no requests and no | ||||||
|        browser  windows  viewing  it).  With --serve, it just runs the web app |        browser windows viewing it).  With --serve, it just runs  the  web  app | ||||||
|        without exiting, and logs requests to the console.   With  --serve-api, |        without  exiting,  and logs requests to the console.  With --serve-api, | ||||||
|        only  the  JSON  web  api  (see  below)  is served, with the usual HTML |        only the JSON web api (see  below)  is  served,  with  the  usual  HTML | ||||||
|        server-side web UI disabled. |        server-side web UI disabled. | ||||||
| 
 | 
 | ||||||
|        By default the server listens on IP address 127.0.0.1, accessible  only |        By  default the server listens on IP address 127.0.0.1, accessible only | ||||||
|        to  local  requests.   You  can  use  --host  to change this, eg --host |        to local requests.  You can  use  --host  to  change  this,  eg  --host | ||||||
|        0.0.0.0 to listen on all configured addresses. |        0.0.0.0 to listen on all configured addresses. | ||||||
| 
 | 
 | ||||||
|        Similarly, use --port to set a TCP port other than 5000, eg if you  are |        Similarly,  use --port to set a TCP port other than 5000, eg if you are | ||||||
|        running multiple hledger-web instances. |        running multiple hledger-web instances. | ||||||
| 
 | 
 | ||||||
|        Both of these options are ignored when --socket is used.  In this case, |        Both of these options are ignored when --socket is used.  In this case, | ||||||
|        it creates an AF_UNIX socket file at the supplied path  and  uses  that |        it  creates  an  AF_UNIX socket file at the supplied path and uses that | ||||||
|        for  communication.   This  is  an  alternative way of running multiple |        for communication.  This is an  alternative  way  of  running  multiple | ||||||
|        hledger-web instances behind a reverse proxy that  handles  authentica- |        hledger-web  instances  behind a reverse proxy that handles authentica- | ||||||
|        tion  for  different  users.   The path can be derived in a predictable |        tion for different users.  The path can be  derived  in  a  predictable | ||||||
|        way, eg by using the username within the path.  As an example, nginx as |        way, eg by using the username within the path.  As an example, nginx as | ||||||
|        reverse  proxy  can use the variable $remote_user to derive a path from |        reverse proxy can use the variable $remote_user to derive a  path  from | ||||||
|        the username used  in  a  HTTP  basic  authentication.   The  following |        the  username  used  in  a  HTTP  basic  authentication.  The following | ||||||
|        proxy_pass  directive  allows  access to all hledger-web instances that |        proxy_pass directive allows access to all  hledger-web  instances  that | ||||||
|        created a socket in /tmp/hledger/: |        created a socket in /tmp/hledger/: | ||||||
| 
 | 
 | ||||||
|                 proxy_pass http://unix:/tmp/hledger/${remote_user}.socket; |                 proxy_pass http://unix:/tmp/hledger/${remote_user}.socket; | ||||||
| 
 | 
 | ||||||
|        You can use --base-url to change the protocol, hostname, port and  path |        You  can use --base-url to change the protocol, hostname, port and path | ||||||
|        that appear in hyperlinks, useful eg for integrating hledger-web within |        that appear in hyperlinks, useful eg for integrating hledger-web within | ||||||
|        a larger website.  The default is http://HOST:PORT/ using the  server's |        a  larger website.  The default is http://HOST:PORT/ using the server's | ||||||
|        configured host address and TCP port (or http://HOST if PORT is 80). |        configured host address and TCP port (or http://HOST if PORT is 80). | ||||||
| 
 | 
 | ||||||
|        With  --file-url  you can set a different base url for static files, eg |        With --file-url you can set a different base url for static  files,  eg | ||||||
|        for better caching or cookie-less serving on high performance websites. |        for better caching or cookie-less serving on high performance websites. | ||||||
| 
 | 
 | ||||||
| PERMISSIONS | PERMISSIONS | ||||||
|        By default, hledger-web allows anyone who can  reach  it  to  view  the |        By  default,  hledger-web  allows  anyone  who can reach it to view the | ||||||
|        journal and to add new transactions, but not to change existing data. |        journal and to add new transactions, but not to change existing data. | ||||||
| 
 | 
 | ||||||
|        You can restrict who can reach it by |        You can restrict who can reach it by | ||||||
| 
 | 
 | ||||||
|        o setting  the IP address it listens on (see --host above).  By default |        o setting the IP address it listens on (see --host above).  By  default | ||||||
|          it listens on 127.0.0.1, accessible to all users  on  the  local  ma- |          it  listens  on  127.0.0.1,  accessible to all users on the local ma- | ||||||
|          chine. |          chine. | ||||||
| 
 | 
 | ||||||
|        o putting it behind an authenticating proxy, using eg apache or nginx |        o putting it behind an authenticating proxy, using eg apache or nginx | ||||||
| @ -260,44 +263,44 @@ PERMISSIONS | |||||||
|        You can restrict what the users who reach it can do, by |        You can restrict what the users who reach it can do, by | ||||||
| 
 | 
 | ||||||
|        o using the --capabilities=CAP[,CAP..] flag when you start it, enabling |        o using the --capabilities=CAP[,CAP..] flag when you start it, enabling | ||||||
|          one or more of the following  capabilities.   The  default  value  is |          one  or  more  of  the  following capabilities.  The default value is | ||||||
|          view,add: |          view,add: | ||||||
| 
 | 
 | ||||||
|          o view - allows viewing the journal file and all included files |          o view - allows viewing the journal file and all included files | ||||||
| 
 | 
 | ||||||
|          o add - allows adding new transactions to the main journal file |          o add - allows adding new transactions to the main journal file | ||||||
| 
 | 
 | ||||||
|          o manage  -  allows editing, uploading or downloading the main or in- |          o manage - allows editing, uploading or downloading the main  or  in- | ||||||
|            cluded files |            cluded files | ||||||
| 
 | 
 | ||||||
|        o using the --capabilities-header=HTTPHEADER flag  to  specify  a  HTTP |        o using  the  --capabilities-header=HTTPHEADER  flag  to specify a HTTP | ||||||
|          header  from  which it will read capabilities to enable.  hledger-web |          header from which it will read capabilities to  enable.   hledger-web | ||||||
|          on Sandstorm uses the  X-Sandstorm-Permissions  header  to  integrate |          on  Sandstorm  uses  the  X-Sandstorm-Permissions header to integrate | ||||||
|          with Sandstorm's permissions.  This is disabled by default. |          with Sandstorm's permissions.  This is disabled by default. | ||||||
| 
 | 
 | ||||||
| EDITING, UPLOADING, DOWNLOADING | EDITING, UPLOADING, DOWNLOADING | ||||||
|        If  you  enable the manage capability mentioned above, you'll see a new |        If you enable the manage capability mentioned above, you'll see  a  new | ||||||
|        "spanner" button to the right of the search form.  Clicking  this  will |        "spanner"  button  to the right of the search form.  Clicking this will | ||||||
|        let  you edit, upload, or download the journal file or any files it in- |        let you edit, upload, or download the journal file or any files it  in- | ||||||
|        cludes. |        cludes. | ||||||
| 
 | 
 | ||||||
|        Note, unlike any other hledger command, in this mode you (or any  visi- |        Note,  unlike any other hledger command, in this mode you (or any visi- | ||||||
|        tor) can alter or wipe the data files. |        tor) can alter or wipe the data files. | ||||||
| 
 | 
 | ||||||
|        Normally  whenever  a  file is changed in this way, hledger-web saves a |        Normally whenever a file is changed in this way,  hledger-web  saves  a | ||||||
|        numbered backup (assuming file permissions allow it, the  disk  is  not |        numbered  backup  (assuming  file permissions allow it, the disk is not | ||||||
|        full,  etc.)  hledger-web is not aware of version control systems, cur- |        full, etc.) hledger-web is not aware of version control  systems,  cur- | ||||||
|        rently; if you use one, you'll have to arrange to  commit  the  changes |        rently;  if  you  use one, you'll have to arrange to commit the changes | ||||||
|        yourself (eg with a cron job or a file watcher like entr). |        yourself (eg with a cron job or a file watcher like entr). | ||||||
| 
 | 
 | ||||||
|        Changes  which would leave the journal file(s) unparseable or non-valid |        Changes which would leave the journal file(s) unparseable or  non-valid | ||||||
|        (eg with failing balance assertions) are prevented.   (Probably.   This |        (eg  with  failing balance assertions) are prevented.  (Probably.  This | ||||||
|        needs re-testing.) |        needs re-testing.) | ||||||
| 
 | 
 | ||||||
| RELOADING | RELOADING | ||||||
|        hledger-web detects changes made to the files by other means (eg if you |        hledger-web detects changes made to the files by other means (eg if you | ||||||
|        edit it directly, outside of hledger-web), and it  will  show  the  new |        edit  it  directly,  outside  of hledger-web), and it will show the new | ||||||
|        data  when  you reload the page or navigate to a new page.  If a change |        data when you reload the page or navigate to a new page.  If  a  change | ||||||
|        makes a file unparseable, hledger-web will display an error message un- |        makes a file unparseable, hledger-web will display an error message un- | ||||||
|        til the file has been fixed. |        til the file has been fixed. | ||||||
| 
 | 
 | ||||||
| @ -305,8 +308,8 @@ RELOADING | |||||||
|        that both machine clocks are roughly in step.) |        that both machine clocks are roughly in step.) | ||||||
| 
 | 
 | ||||||
| JSON API | JSON API | ||||||
|        In addition to the web UI, hledger-web also serves a JSON API that  can |        In  addition to the web UI, hledger-web also serves a JSON API that can | ||||||
|        be  used to get data or add new transactions.  If you want the JSON API |        be used to get data or add new transactions.  If you want the JSON  API | ||||||
|        only, you can use the --serve-api flag.  Eg: |        only, you can use the --serve-api flag.  Eg: | ||||||
| 
 | 
 | ||||||
|               $ hledger-web -f examples/sample.journal --serve-api |               $ hledger-web -f examples/sample.journal --serve-api | ||||||
| @ -323,7 +326,7 @@ JSON API | |||||||
|               /accounttransactions/ACCOUNTNAME |               /accounttransactions/ACCOUNTNAME | ||||||
| 
 | 
 | ||||||
|        Eg, all account names in the journal (similar to the accounts command). |        Eg, all account names in the journal (similar to the accounts command). | ||||||
|        (hledger-web's  JSON  does  not include newlines, here we use python to |        (hledger-web's JSON does not include newlines, here we  use  python  to | ||||||
|        prettify it): |        prettify it): | ||||||
| 
 | 
 | ||||||
|               $ curl -s http://127.0.0.1:5000/accountnames | python -m json.tool |               $ curl -s http://127.0.0.1:5000/accountnames | python -m json.tool | ||||||
| @ -364,25 +367,25 @@ JSON API | |||||||
|                                       "aprice": null, |                                       "aprice": null, | ||||||
|               ... |               ... | ||||||
| 
 | 
 | ||||||
|        Most of the JSON corresponds to hledger's data types;  for  details  of |        Most  of  the  JSON corresponds to hledger's data types; for details of | ||||||
|        what  the fields mean, see the Hledger.Data.Json haddock docs and click |        what the fields mean, see the Hledger.Data.Json haddock docs and  click | ||||||
|        on the various data types, eg Transaction.  And for a higher level  un- |        on  the various data types, eg Transaction.  And for a higher level un- | ||||||
|        derstanding, see the journal manual. |        derstanding, see the journal manual. | ||||||
| 
 | 
 | ||||||
|        In some cases there is outer JSON corresponding to a "Report" type.  To |        In some cases there is outer JSON corresponding to a "Report" type.  To | ||||||
|        understand that, go to the Hledger.Web.Handler.MiscR haddock  and  look |        understand  that,  go to the Hledger.Web.Handler.MiscR haddock and look | ||||||
|        at  the  source for the appropriate handler to see what it returns.  Eg |        at the source for the appropriate handler to see what it  returns.   Eg | ||||||
|        for /accounttransactions it's getAccounttransactionsR, returning a "ac- |        for /accounttransactions it's getAccounttransactionsR, returning a "ac- | ||||||
|        countTransactionsReport  ...".   Looking up the haddock for that we can |        countTransactionsReport ...".  Looking up the haddock for that  we  can | ||||||
|        see that  /accounttransactions  returns  an  AccountTransactionsReport, |        see  that  /accounttransactions  returns  an AccountTransactionsReport, | ||||||
|        which  consists  of a report title and a list of AccountTransactionsRe- |        which consists of a report title and a list  of  AccountTransactionsRe- | ||||||
|        portItem (etc). |        portItem (etc). | ||||||
| 
 | 
 | ||||||
|        You can add a new transaction to the journal  with  a  PUT  request  to |        You  can  add  a  new  transaction to the journal with a PUT request to | ||||||
|        /add,  if  hledger-web  was started with the add capability (enabled by |        /add, if hledger-web was started with the add  capability  (enabled  by | ||||||
|        default).  The payload must be the full, exact JSON representation of a |        default).  The payload must be the full, exact JSON representation of a | ||||||
|        hledger  transaction  (partial data won't do).  You can get sample JSON |        hledger transaction (partial data won't do).  You can get  sample  JSON | ||||||
|        from hledger-web's /transactions or /accounttransactions,  or  you  can |        from  hledger-web's  /transactions  or /accounttransactions, or you can | ||||||
|        export it with hledger-lib, eg like so: |        export it with hledger-lib, eg like so: | ||||||
| 
 | 
 | ||||||
|               .../hledger$ stack ghci hledger-lib |               .../hledger$ stack ghci hledger-lib | ||||||
| @ -478,22 +481,22 @@ JSON API | |||||||
|                   "tstatus": "Unmarked" |                   "tstatus": "Unmarked" | ||||||
|               } |               } | ||||||
| 
 | 
 | ||||||
|        And here's how to test adding it with curl.  This should add a new  en- |        And  here's how to test adding it with curl.  This should add a new en- | ||||||
|        try to your journal: |        try to your journal: | ||||||
| 
 | 
 | ||||||
|               $ curl http://127.0.0.1:5000/add -X PUT -H 'Content-Type: application/json' --data-binary @txn.json |               $ curl http://127.0.0.1:5000/add -X PUT -H 'Content-Type: application/json' --data-binary @txn.json | ||||||
| 
 | 
 | ||||||
| ENVIRONMENT | ENVIRONMENT | ||||||
|        LEDGER_FILE The journal file path when not specified with -f.  Default: |        LEDGER_FILE The journal file path when not specified with -f.  Default: | ||||||
|        ~/.hledger.journal (on  windows,  perhaps  C:/Users/USER/.hledger.jour- |        ~/.hledger.journal  (on  windows,  perhaps C:/Users/USER/.hledger.jour- | ||||||
|        nal). |        nal). | ||||||
| 
 | 
 | ||||||
|        A  typical  value  is  ~/DIR/YYYY.journal,  where DIR is a version-con- |        A typical value is ~/DIR/YYYY.journal,  where  DIR  is  a  version-con- | ||||||
|        trolled finance directory and YYYY is the current year.  Or  ~/DIR/cur- |        trolled  finance directory and YYYY is the current year.  Or ~/DIR/cur- | ||||||
|        rent.journal, where current.journal is a symbolic link to YYYY.journal. |        rent.journal, where current.journal is a symbolic link to YYYY.journal. | ||||||
| 
 | 
 | ||||||
|        On Mac computers, you can set this and other environment variables in a |        On Mac computers, you can set this and other environment variables in a | ||||||
|        more thorough way that also affects applications started from  the  GUI |        more  thorough  way that also affects applications started from the GUI | ||||||
|        (say, an Emacs dock icon).  Eg on MacOS Catalina I have a ~/.MacOSX/en- |        (say, an Emacs dock icon).  Eg on MacOS Catalina I have a ~/.MacOSX/en- | ||||||
|        vironment.plist file containing |        vironment.plist file containing | ||||||
| 
 | 
 | ||||||
| @ -504,13 +507,13 @@ ENVIRONMENT | |||||||
|        To see the effect you may need to killall Dock, or reboot. |        To see the effect you may need to killall Dock, or reboot. | ||||||
| 
 | 
 | ||||||
| FILES | FILES | ||||||
|        Reads data from one or more files in hledger journal, timeclock,  time- |        Reads  data from one or more files in hledger journal, timeclock, time- | ||||||
|        dot,   or   CSV   format   specified   with  -f,  or  $LEDGER_FILE,  or |        dot,  or  CSV  format  specified   with   -f,   or   $LEDGER_FILE,   or | ||||||
|        $HOME/.hledger.journal          (on          windows,           perhaps |        $HOME/.hledger.journal           (on          windows,          perhaps | ||||||
|        C:/Users/USER/.hledger.journal). |        C:/Users/USER/.hledger.journal). | ||||||
| 
 | 
 | ||||||
| BUGS | BUGS | ||||||
|        The  need  to precede options with -- when invoked from hledger is awk- |        The need to precede options with -- when invoked from hledger  is  awk- | ||||||
|        ward. |        ward. | ||||||
| 
 | 
 | ||||||
|        -f- doesn't work (hledger-web can't read from stdin). |        -f- doesn't work (hledger-web can't read from stdin). | ||||||
| @ -524,7 +527,7 @@ BUGS | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| REPORTING BUGS | REPORTING BUGS | ||||||
|        Report bugs at http://bugs.hledger.org (or on the #hledger IRC  channel |        Report  bugs at http://bugs.hledger.org (or on the #hledger IRC channel | ||||||
|        or hledger mail list) |        or hledger mail list) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| @ -538,7 +541,7 @@ COPYRIGHT | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| SEE ALSO | SEE ALSO | ||||||
|        hledger(1),      hledger-ui(1),     hledger-web(1),     hledger-api(1), |        hledger(1),     hledger-ui(1),     hledger-web(1),      hledger-api(1), | ||||||
|        hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time- |        hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time- | ||||||
|        dot(5), ledger(1) |        dot(5), ledger(1) | ||||||
| 
 | 
 | ||||||
| @ -546,4 +549,4 @@ SEE ALSO | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger-web 1.19.99              October 2020                   hledger-web(1) | hledger-web 1.19.99              November 2020                  hledger-web(1) | ||||||
|  | |||||||
| @ -4,4 +4,4 @@ m4_dnl Program version. Updated by make setversion. | |||||||
| m4_define({{_version_}}, {{1.19.99}})m4_dnl | m4_define({{_version_}}, {{1.19.99}})m4_dnl | ||||||
| m4_dnl | m4_dnl | ||||||
| m4_dnl Date to show in man pages. Updated by make setdate. | m4_dnl Date to show in man pages. Updated by make setdate. | ||||||
| m4_define({{_monthyear_}}, {{October 2020}})m4_dnl | m4_define({{_monthyear_}}, {{November 2020}})m4_dnl | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| .\"t | .\"t | ||||||
| 
 | 
 | ||||||
| .TH "hledger" "1" "October 2020" "hledger 1.19.99" "hledger User Manuals" | .TH "hledger" "1" "November 2020" "hledger 1.19.99" "hledger User Manuals" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| @ -2115,7 +2115,7 @@ Related: #329, #1083. | |||||||
| .PP | .PP | ||||||
| .TS | .TS | ||||||
| tab(@); | tab(@); | ||||||
| lw(7.4n) lw(11.7n) lw(19.6n) lw(6.8n) lw(19.6n) lw(5.0n). | lw(10.6n) lw(13.2n) lw(13.4n) lw(11.0n) lw(13.4n) lw(8.2n). | ||||||
| T{ | T{ | ||||||
| Report type | Report type | ||||||
| T}@T{ | T}@T{ | ||||||
| @ -2152,7 +2152,7 @@ T}@T{ | |||||||
| value at DATE/today | value at DATE/today | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| balance assertions / assignments | balance assertions/assignments | ||||||
| T}@T{ | T}@T{ | ||||||
| unchanged | unchanged | ||||||
| T}@T{ | T}@T{ | ||||||
| @ -2180,7 +2180,7 @@ T}@T{ | |||||||
| T}@T{ | T}@T{ | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| starting balance (with -H) | starting balance (-H) | ||||||
| T}@T{ | T}@T{ | ||||||
| cost | cost | ||||||
| T}@T{ | T}@T{ | ||||||
| @ -2193,7 +2193,7 @@ T}@T{ | |||||||
| value at DATE/today | value at DATE/today | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| posting amounts (no report interval) | posting amounts | ||||||
| T}@T{ | T}@T{ | ||||||
| cost | cost | ||||||
| T}@T{ | T}@T{ | ||||||
| @ -2206,7 +2206,7 @@ T}@T{ | |||||||
| value at DATE/today | value at DATE/today | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| summary posting amounts (with report interval) | summary posting amounts with report interval | ||||||
| T}@T{ | T}@T{ | ||||||
| summarised cost | summarised cost | ||||||
| T}@T{ | T}@T{ | ||||||
| @ -2239,7 +2239,7 @@ T}@T{ | |||||||
| T}@T{ | T}@T{ | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| \f[B]balance (bs, bse, cf, is..)\f[R] | \f[B]balance (bs, bse, cf, is)\f[R] | ||||||
| T}@T{ | T}@T{ | ||||||
| T}@T{ | T}@T{ | ||||||
| T}@T{ | T}@T{ | ||||||
| @ -2247,7 +2247,7 @@ T}@T{ | |||||||
| T}@T{ | T}@T{ | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| balances (no report interval) | balance changes | ||||||
| T}@T{ | T}@T{ | ||||||
| sums of costs | sums of costs | ||||||
| T}@T{ | T}@T{ | ||||||
| @ -2260,40 +2260,48 @@ T}@T{ | |||||||
| value at DATE/today of sums of postings | value at DATE/today of sums of postings | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| balances changes (with report interval) | budget amounts (--budget) | ||||||
| T}@T{ | T}@T{ | ||||||
| sums of costs of postings in interval | like balance changes | ||||||
| T}@T{ | T}@T{ | ||||||
| value at period ends of sums of postings before period end minus value | like balance changes | ||||||
| at period starts of sums of all postings before period start |  | ||||||
| T}@T{ | T}@T{ | ||||||
| not supported | not supported | ||||||
| T}@T{ | T}@T{ | ||||||
| value at period ends of sums of postings before period end minus value | like balances | ||||||
| at period starts of sums of all postings before period start |  | ||||||
| T}@T{ | T}@T{ | ||||||
| value at DATE/today of sums of postings | like balance changes | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| end balances (with report interval and --cumulative or -H) | grand total | ||||||
| T}@T{ | T}@T{ | ||||||
| sums of costs of postings from report start (or before report start with | sum of displayed values | ||||||
| -H) and interval end |  | ||||||
| T}@T{ | T}@T{ | ||||||
| value at period ends of sums of all postings before period end (minus | sum of displayed values | ||||||
| value at report start of of sums of all postings before report start |  | ||||||
| with --cumulative) |  | ||||||
| T}@T{ | T}@T{ | ||||||
| not supported | not supported | ||||||
| T}@T{ | T}@T{ | ||||||
| value at period ends of sums of all postings before period end (minus | sum of displayed values | ||||||
| value at report start of of sums of all postings before report start |  | ||||||
| with --cumulative) |  | ||||||
| T}@T{ | T}@T{ | ||||||
| value at DATE/today of sums of postings | sum of displayed values | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| starting balances (with report interval and -H) | T}@T{ | ||||||
|  | T}@T{ | ||||||
|  | T}@T{ | ||||||
|  | T}@T{ | ||||||
|  | T}@T{ | ||||||
|  | T} | ||||||
|  | T{ | ||||||
|  | \f[B]balance (bs, bse, cf, is) with report interval\f[R] | ||||||
|  | T}@T{ | ||||||
|  | T}@T{ | ||||||
|  | T}@T{ | ||||||
|  | T}@T{ | ||||||
|  | T}@T{ | ||||||
|  | T} | ||||||
|  | T{ | ||||||
|  | starting balances (-H) | ||||||
| T}@T{ | T}@T{ | ||||||
| sums of costs of postings before report start | sums of costs of postings before report start | ||||||
| T}@T{ | T}@T{ | ||||||
| @ -2306,43 +2314,56 @@ T}@T{ | |||||||
| sums of postings before report start | sums of postings before report start | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| budget amounts with --budget | balance changes (bal, is, bs --change, cf --change) | ||||||
| T}@T{ | T}@T{ | ||||||
| like balances | sums of costs of postings in period | ||||||
| T}@T{ | T}@T{ | ||||||
| like balances | same as --value=end | ||||||
| T}@T{ | T}@T{ | ||||||
| not supported | not supported | ||||||
| T}@T{ | T}@T{ | ||||||
| like balances | balance change in each period, valued at period ends | ||||||
| T}@T{ | T}@T{ | ||||||
| like balances | value at DATE/today of sums of postings | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| grand total (no report interval) | end balances (bal -H, is --H, bs, cf) | ||||||
| T}@T{ | T}@T{ | ||||||
| sum of displayed values | sums of costs of postings from before report start to period end | ||||||
| T}@T{ | T}@T{ | ||||||
| sum of displayed values | same as --value=end | ||||||
| T}@T{ | T}@T{ | ||||||
| not supported | not supported | ||||||
| T}@T{ | T}@T{ | ||||||
| sum of displayed values | period end balances, valued at period ends | ||||||
| T}@T{ | T}@T{ | ||||||
| sum of displayed values | value at DATE/today of sums of postings | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| row totals/averages (with report interval) | budget amounts (--budget) | ||||||
| T}@T{ | T}@T{ | ||||||
| sums/averages of displayed values | like balance changes/end balances | ||||||
| T}@T{ | T}@T{ | ||||||
| sums/averages of displayed values | like balance changes/end balances | ||||||
| T}@T{ | T}@T{ | ||||||
| not supported | not supported | ||||||
| T}@T{ | T}@T{ | ||||||
| sums/averages of displayed values | like balances | ||||||
| T}@T{ | T}@T{ | ||||||
| sums/averages of displayed values | like balance changes/end balances | ||||||
|  | T} | ||||||
|  | T{ | ||||||
|  | row totals, row averages (-T, -A) | ||||||
|  | T}@T{ | ||||||
|  | sums, averages of displayed values | ||||||
|  | T}@T{ | ||||||
|  | sums, averages of displayed values | ||||||
|  | T}@T{ | ||||||
|  | not supported | ||||||
|  | T}@T{ | ||||||
|  | sums, averages of displayed values | ||||||
|  | T}@T{ | ||||||
|  | sums, averages of displayed values | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| column totals | column totals | ||||||
| @ -2358,17 +2379,17 @@ T}@T{ | |||||||
| sums of displayed values | sums of displayed values | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| grand total/average | grand total, grand average | ||||||
| T}@T{ | T}@T{ | ||||||
| sum/average of column totals | sum, average of column totals | ||||||
| T}@T{ | T}@T{ | ||||||
| sum/average of column totals | sum, average of column totals | ||||||
| T}@T{ | T}@T{ | ||||||
| not supported | not supported | ||||||
| T}@T{ | T}@T{ | ||||||
| sum/average of column totals | sum, average of column totals | ||||||
| T}@T{ | T}@T{ | ||||||
| sum/average of column totals | sum, average of column totals | ||||||
| T} | T} | ||||||
| T{ | T{ | ||||||
| T}@T{ | T}@T{ | ||||||
| @ -2379,6 +2400,9 @@ T}@T{ | |||||||
| T} | T} | ||||||
| .TE | .TE | ||||||
| .PP | .PP | ||||||
|  | \f[C]--cumulative\f[R] is omitted to save space, it works like | ||||||
|  | \f[C]-H\f[R] but with a zero starting balance. | ||||||
|  | .PP | ||||||
| \f[B]Glossary:\f[R] | \f[B]Glossary:\f[R] | ||||||
| .TP | .TP | ||||||
| \f[I]cost\f[R] | \f[I]cost\f[R] | ||||||
| @ -4451,6 +4475,9 @@ time-weighted rate of return (TWR) for your investments for the time | |||||||
| period requested. | period requested. | ||||||
| Both rates of return are annualized before display, regardless of the | Both rates of return are annualized before display, regardless of the | ||||||
| length of reporting interval. | length of reporting interval. | ||||||
|  | .PP | ||||||
|  | An example: | ||||||
|  | https://github.com/simonmichael/hledger/blob/master/examples/roi-unrealised.ledger | ||||||
| .SS stats | .SS stats | ||||||
| .PP | .PP | ||||||
| stats | stats | ||||||
|  | |||||||
| @ -1786,103 +1786,96 @@ sideways.)  It may be useful when troubleshooting.  If you find | |||||||
| problems, please report them, ideally with a reproducible example. | problems, please report them, ideally with a reproducible example. | ||||||
| Related: #329, #1083. | Related: #329, #1083. | ||||||
| 
 | 
 | ||||||
| Report   '-B',        '-V', '-X'           '--value=then''--value=end'  '--value=DATE', | Report      '-B',          '-V', '-X'     '--value=then''--value=end' '--value=DATE', | ||||||
| type     '--value=cost'                                                 '--value=now' | type        '--value=cost'                                            '--value=now' | ||||||
| ------------------------------------------------------------------------------ | -------------------------------------------------------------------------------- | ||||||
| *print* | *print* | ||||||
| posting  cost         value at report      value   value at report or   value | posting     cost           value at       value at     value at       value | ||||||
| amounts               end or today         at      journal end          at | amounts                    report end     posting      report or      at | ||||||
|                                            posting                      DATE/today |                            or today       date         journal end    DATE/today | ||||||
|                                            date | balance     unchanged      unchanged      unchanged    unchanged      unchanged | ||||||
| balance  unchanged    unchanged            unchangedunchanged           unchanged | assertions/assignments | ||||||
| assertions |  | ||||||
| / |  | ||||||
| assignments |  | ||||||
| *register* | *register* | ||||||
| starting cost         value at day         not     value at day         value | starting    cost           value at day   not          value at day   value | ||||||
| balance               before report or     supportedbefore report or    at | balance                    before         supported    before         at | ||||||
| (with                 journal start                journal start        DATE/today | (-H)                       report or                   report or      DATE/today | ||||||
| -H) |                            journal                     journal | ||||||
| posting  cost         value at report      value   value at report or   value |                            start                       start | ||||||
| amounts               end or today         at      journal end          at | posting     cost           value at       value at     value at       value | ||||||
| (no                                        posting                      DATE/today | amounts                    report end     posting      report or      at | ||||||
| report                                     date |                            or today       date         journal end    DATE/today | ||||||
| interval) | summary     summarised     value at       sum of       value at       value | ||||||
| summary  summarised   value at period      sum     value at period      value | posting     cost           period ends    postings     period ends    at | ||||||
| posting  cost         ends                 of      ends                 at | amounts                                   in                          DATE/today | ||||||
| amounts                                    postings                     DATE/today | with                                      interval, | ||||||
| (with                                      in | report                                    valued at | ||||||
| report                                     interval, | interval                                  interval | ||||||
| interval)                                  valued |                                           start | ||||||
|                                            at | running     sum/average    sum/average    sum/average  sum/average    sum/average | ||||||
|                                            interval | total/averageof displayed  of displayed   of           of displayed   of | ||||||
|                                            start |             values         values         displayed    values         displayed | ||||||
| running  sum/average  sum/average of       sum/averagesum/average of    sum/average |                                           values                      values | ||||||
| total/averageof       displayed values     of      displayed values     of |  | ||||||
|          displayed                         displayed                    displayed |  | ||||||
|          values                            values                       values |  | ||||||
| *balance | *balance | ||||||
| (bs, | (bs, bse, | ||||||
| bse, | cf, is)* | ||||||
| cf, | balance     sums of        value at       not          value at       value | ||||||
| is..)* | changes     costs          report end     supported    report or      at | ||||||
| balances sums of      value at report      not     value at report or   value |                            or today of                 journal end    DATE/today | ||||||
| (no      costs        end or today of      supportedjournal end of      at |                            sums of                     of sums of     of sums | ||||||
| report                sums of postings             sums of postings     DATE/today |                            postings                    postings       of | ||||||
| interval)                                                               of |                                                                       postings | ||||||
|                                                                         sums | budget      like balance   like balance   not          like           like | ||||||
|                                                                         of | amounts     changes        changes        supported    balances       balance | ||||||
|                                                                         postings | (-budget)                                                             changes | ||||||
| balances sums of      value at period      not     value at period      value | grand       sum of         sum of         not          sum of         sum of | ||||||
| changes  costs of     ends of sums of      supportedends of sums of     at | total       displayed      displayed      supported    displayed      displayed | ||||||
| (with    postings     postings before              postings before      DATE/today |             values         values                      values         values | ||||||
| report   in           period end minus             period end minus     of | *balance | ||||||
| interval)interval     value at period              value at period      sums | (bs, bse, | ||||||
|                       starts of sums of            starts of sums of    of | cf, is) | ||||||
|                       all postings                 all postings         postings |  | ||||||
|                       before period                before period |  | ||||||
|                       start                        start |  | ||||||
| end      sums of      value at period      not     value at period      value |  | ||||||
| balances costs of     ends of sums of      supportedends of sums of     at |  | ||||||
| (with    postings     all postings                 all postings         DATE/today |  | ||||||
| report   from         before period end            before period end    of |  | ||||||
| interval report       (minus value at              (minus value at      sums |  | ||||||
| and      start (or    report start of of           report start of of   of |  | ||||||
| -cumulativebefore     sums of all                  sums of all          postings |  | ||||||
| or -H)   report       postings before              postings before |  | ||||||
|          start with   report start with            report start with |  | ||||||
|          -H) and      -cumulative)                 -cumulative) |  | ||||||
|          interval |  | ||||||
|          end |  | ||||||
| starting sums of      value at report      not     value at report      sums |  | ||||||
| balances costs of     start of sums of     supportedstart of sums of    of |  | ||||||
| (with    postings     all postings                 all postings         postings |  | ||||||
| report   before       before report                before report        before |  | ||||||
| interval report       start                        start                report |  | ||||||
| and      start                                                          start |  | ||||||
| -H) |  | ||||||
| budget   like         like balances        not     like balances        like |  | ||||||
| amounts  balances                          supported                    balances |  | ||||||
| with | with | ||||||
| -budget | report | ||||||
| grand    sum of       sum of displayed     not     sum of displayed     sum | interval* | ||||||
| total    displayed    values               supportedvalues              of | starting    sums of        value at       not          value at       sums of | ||||||
| (no      values                                                         displayed | balances    costs of       report start   supported    report start   postings | ||||||
| report                                                                  values | (-H)        postings       of sums of                  of sums of     before | ||||||
| interval) |             before         all postings                all postings   report | ||||||
| row      sums/averagessums/averages of     not     sums/averages of     sums/averages |             report start   before                      before         start | ||||||
| totals/averagesof     displayed values     supporteddisplayed values    of |                            report start                report start | ||||||
| (with    displayed                                                      displayed | balance     sums of        same as        not          balance        value | ||||||
| report   values                                                         values | changes     costs of       -value=end     supported    change in      at | ||||||
| interval) | (bal, is,   postings in                                each period,   DATE/today | ||||||
| column   sums of      sums of displayed    not     sums of displayed    sums | bs          period                                     valued at      of sums | ||||||
| totals   displayed    values               supportedvalues              of | -change,                                               period ends    of | ||||||
|          values                                                         displayed | cf                                                                    postings | ||||||
|                                                                         values | -change) | ||||||
| grand    sum/average  sum/average of       not     sum/average of       sum/average | end         sums of        same as        not          period end     value | ||||||
| total/averageof columncolumn totals        supportedcolumn totals       of | balances    costs of       -value=end     supported    balances,      at | ||||||
|          totals                                                         column | (bal -H,    postings                                   valued at      DATE/today | ||||||
|                                                                         totals | is -H,      from before                                period ends    of sums | ||||||
|  | bs, cf)     report start                                              of | ||||||
|  |             to period                                                 postings | ||||||
|  |             end | ||||||
|  | budget      like balance   like balance   not          like           like | ||||||
|  | amounts     changes/end    changes/end    supported    balances       balance | ||||||
|  | (-budget)   balances       balances                                   changes/end | ||||||
|  |                                                                       balances | ||||||
|  | row         sums,          sums,          not          sums,          sums, | ||||||
|  | totals,     averages of    averages of    supported    averages of    averages | ||||||
|  | row         displayed      displayed                   displayed      of | ||||||
|  | averages    values         values                      values         displayed | ||||||
|  | (-T, -A)                                                              values | ||||||
|  | column      sums of        sums of        not          sums of        sums of | ||||||
|  | totals      displayed      displayed      supported    displayed      displayed | ||||||
|  |             values         values                      values         values | ||||||
|  | grand       sum, average   sum, average   not          sum, average   sum, | ||||||
|  | total,      of column      of column      supported    of column      average | ||||||
|  | grand       totals         totals                      totals         of | ||||||
|  | average                                                               column | ||||||
|  |                                                                       totals | ||||||
|  | 
 | ||||||
|  |    '--cumulative' is omitted to save space, it works like '-H' but with | ||||||
|  | a zero starting balance. | ||||||
| 
 | 
 | ||||||
|    *Glossary:* |    *Glossary:* | ||||||
| 
 | 
 | ||||||
| @ -3810,6 +3803,9 @@ time-weighted rate of return (TWR) for your investments for the time | |||||||
| period requested.  Both rates of return are annualized before display, | period requested.  Both rates of return are annualized before display, | ||||||
| regardless of the length of reporting interval. | regardless of the length of reporting interval. | ||||||
| 
 | 
 | ||||||
|  |    An example: | ||||||
|  | https://github.com/simonmichael/hledger/blob/master/examples/roi-unrealised.ledger | ||||||
|  | 
 | ||||||
|  |  | ||||||
| File: hledger.info,  Node: stats,  Next: tags,  Prev: roi,  Up: COMMANDS | File: hledger.info,  Node: stats,  Next: tags,  Prev: roi,  Up: COMMANDS | ||||||
| 
 | 
 | ||||||
| @ -4198,126 +4194,126 @@ Node: More valuation examples57470 | |||||||
| Ref: #more-valuation-examples57679 | Ref: #more-valuation-examples57679 | ||||||
| Node: Effect of valuation on reports59684 | Node: Effect of valuation on reports59684 | ||||||
| Ref: #effect-of-valuation-on-reports59872 | Ref: #effect-of-valuation-on-reports59872 | ||||||
| Node: COMMANDS67137 | Node: COMMANDS66891 | ||||||
| Ref: #commands67245 | Ref: #commands66999 | ||||||
| Node: accounts68353 | Node: accounts68107 | ||||||
| Ref: #accounts68451 | Ref: #accounts68205 | ||||||
| Node: activity69150 | Node: activity68904 | ||||||
| Ref: #activity69260 | Ref: #activity69014 | ||||||
| Node: add69643 | Node: add69397 | ||||||
| Ref: #add69744 | Ref: #add69498 | ||||||
| Node: aregister72537 | Node: aregister72291 | ||||||
| Ref: #aregister72649 | Ref: #aregister72403 | ||||||
| Node: aregister and custom posting dates74022 | Node: aregister and custom posting dates73776 | ||||||
| Ref: #aregister-and-custom-posting-dates74195 | Ref: #aregister-and-custom-posting-dates73949 | ||||||
| Ref: #output-format-174788 | Ref: #output-format-174542 | ||||||
| Node: balance75193 | Node: balance74947 | ||||||
| Ref: #balance75310 | Ref: #balance75064 | ||||||
| Node: Classic balance report76790 | Node: Classic balance report76544 | ||||||
| Ref: #classic-balance-report76963 | Ref: #classic-balance-report76717 | ||||||
| Node: Customising the classic balance report78287 | Node: Customising the classic balance report78041 | ||||||
| Ref: #customising-the-classic-balance-report78515 | Ref: #customising-the-classic-balance-report78269 | ||||||
| Node: Colour support80591 | Node: Colour support80345 | ||||||
| Ref: #colour-support80758 | Ref: #colour-support80512 | ||||||
| Node: Flat mode80854 | Node: Flat mode80608 | ||||||
| Ref: #flat-mode81002 | Ref: #flat-mode80756 | ||||||
| Node: Depth limited balance reports81415 | Node: Depth limited balance reports81169 | ||||||
| Ref: #depth-limited-balance-reports81600 | Ref: #depth-limited-balance-reports81354 | ||||||
| Node: Percentages82056 | Node: Percentages81810 | ||||||
| Ref: #percentages82213 | Ref: #percentages81967 | ||||||
| Node: Sorting by amount83350 | Node: Sorting by amount83104 | ||||||
| Ref: #sorting-by-amount83516 | Ref: #sorting-by-amount83270 | ||||||
| Node: Multicolumn balance report84010 | Node: Multicolumn balance report83764 | ||||||
| Ref: #multicolumn-balance-report84196 | Ref: #multicolumn-balance-report83950 | ||||||
| Node: Budget report89793 | Node: Budget report89547 | ||||||
| Ref: #budget-report89936 | Ref: #budget-report89690 | ||||||
| Node: Nested budgets95202 | Node: Nested budgets94956 | ||||||
| Ref: #nested-budgets95314 | Ref: #nested-budgets95068 | ||||||
| Ref: #output-format-298797 | Ref: #output-format-298551 | ||||||
| Node: balancesheet98994 | Node: balancesheet98748 | ||||||
| Ref: #balancesheet99130 | Ref: #balancesheet98884 | ||||||
| Node: balancesheetequity100642 | Node: balancesheetequity100396 | ||||||
| Ref: #balancesheetequity100791 | Ref: #balancesheetequity100545 | ||||||
| Node: cashflow101867 | Node: cashflow101621 | ||||||
| Ref: #cashflow101995 | Ref: #cashflow101749 | ||||||
| Node: check-dates103211 | Node: check-dates102965 | ||||||
| Ref: #check-dates103338 | Ref: #check-dates103092 | ||||||
| Node: check-dupes103617 | Node: check-dupes103371 | ||||||
| Ref: #check-dupes103743 | Ref: #check-dupes103497 | ||||||
| Node: close104036 | Node: close103790 | ||||||
| Ref: #close104144 | Ref: #close103898 | ||||||
| Node: close usage105666 | Node: close usage105420 | ||||||
| Ref: #close-usage105759 | Ref: #close-usage105513 | ||||||
| Node: codes108572 | Node: codes108326 | ||||||
| Ref: #codes108680 | Ref: #codes108434 | ||||||
| Node: commodities109392 | Node: commodities109146 | ||||||
| Ref: #commodities109519 | Ref: #commodities109273 | ||||||
| Node: descriptions109601 | Node: descriptions109355 | ||||||
| Ref: #descriptions109729 | Ref: #descriptions109483 | ||||||
| Node: diff110033 | Node: diff109787 | ||||||
| Ref: #diff110139 | Ref: #diff109893 | ||||||
| Node: files111186 | Node: files110940 | ||||||
| Ref: #files111286 | Ref: #files111040 | ||||||
| Node: help111433 | Node: help111187 | ||||||
| Ref: #help111533 | Ref: #help111287 | ||||||
| Node: import112614 | Node: import112368 | ||||||
| Ref: #import112728 | Ref: #import112482 | ||||||
| Node: Importing balance assignments113650 | Node: Importing balance assignments113404 | ||||||
| Ref: #importing-balance-assignments113831 | Ref: #importing-balance-assignments113585 | ||||||
| Node: Commodity display styles114480 | Node: Commodity display styles114234 | ||||||
| Ref: #commodity-display-styles114651 | Ref: #commodity-display-styles114405 | ||||||
| Node: incomestatement114780 | Node: incomestatement114534 | ||||||
| Ref: #incomestatement114913 | Ref: #incomestatement114667 | ||||||
| Node: notes116258 | Node: notes116012 | ||||||
| Ref: #notes116371 | Ref: #notes116125 | ||||||
| Node: payees116739 | Node: payees116493 | ||||||
| Ref: #payees116845 | Ref: #payees116599 | ||||||
| Node: prices117265 | Node: prices117019 | ||||||
| Ref: #prices117371 | Ref: #prices117125 | ||||||
| Node: print117712 | Node: print117466 | ||||||
| Ref: #print117822 | Ref: #print117576 | ||||||
| Node: print-unique122618 | Node: print-unique122372 | ||||||
| Ref: #print-unique122744 | Ref: #print-unique122498 | ||||||
| Node: register123029 | Node: register122783 | ||||||
| Ref: #register123156 | Ref: #register122910 | ||||||
| Node: Custom register output127605 | Node: Custom register output127359 | ||||||
| Ref: #custom-register-output127734 | Ref: #custom-register-output127488 | ||||||
| Node: register-match129071 | Node: register-match128825 | ||||||
| Ref: #register-match129205 | Ref: #register-match128959 | ||||||
| Node: rewrite129556 | Node: rewrite129310 | ||||||
| Ref: #rewrite129671 | Ref: #rewrite129425 | ||||||
| Node: Re-write rules in a file131526 | Node: Re-write rules in a file131280 | ||||||
| Ref: #re-write-rules-in-a-file131660 | Ref: #re-write-rules-in-a-file131414 | ||||||
| Node: Diff output format132870 | Node: Diff output format132624 | ||||||
| Ref: #diff-output-format133039 | Ref: #diff-output-format132793 | ||||||
| Node: rewrite vs print --auto134131 | Node: rewrite vs print --auto133885 | ||||||
| Ref: #rewrite-vs.-print---auto134310 | Ref: #rewrite-vs.-print---auto134064 | ||||||
| Node: roi134866 | Node: roi134620 | ||||||
| Ref: #roi134964 | Ref: #roi134718 | ||||||
| Node: stats135976 | Node: stats135829 | ||||||
| Ref: #stats136075 | Ref: #stats135928 | ||||||
| Node: tags136863 | Node: tags136716 | ||||||
| Ref: #tags136961 | Ref: #tags136814 | ||||||
| Node: test137480 | Node: test137333 | ||||||
| Ref: #test137588 | Ref: #test137441 | ||||||
| Node: Add-on commands138335 | Node: Add-on commands138188 | ||||||
| Ref: #add-on-commands138452 | Ref: #add-on-commands138305 | ||||||
| Node: ui139795 | Node: ui139648 | ||||||
| Ref: #ui139883 | Ref: #ui139736 | ||||||
| Node: web139937 | Node: web139790 | ||||||
| Ref: #web140040 | Ref: #web139893 | ||||||
| Node: iadd140156 | Node: iadd140009 | ||||||
| Ref: #iadd140267 | Ref: #iadd140120 | ||||||
| Node: interest140349 | Node: interest140202 | ||||||
| Ref: #interest140456 | Ref: #interest140309 | ||||||
| Node: ENVIRONMENT140696 | Node: ENVIRONMENT140549 | ||||||
| Ref: #environment140808 | Ref: #environment140661 | ||||||
| Node: FILES141793 | Node: FILES141646 | ||||||
| Ref: #files-1141896 | Ref: #files-1141749 | ||||||
| Node: LIMITATIONS142109 | Node: LIMITATIONS141962 | ||||||
| Ref: #limitations142228 | Ref: #limitations142081 | ||||||
| Node: TROUBLESHOOTING142970 | Node: TROUBLESHOOTING142823 | ||||||
| Ref: #troubleshooting143083 | Ref: #troubleshooting142936 | ||||||
|  |  | ||||||
| End Tag Table | End Tag Table | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1533,112 +1533,90 @@ OPTIONS | |||||||
|        problems, please report them, ideally with a reproducible example.  Re- |        problems, please report them, ideally with a reproducible example.  Re- | ||||||
|        lated: #329, #1083. |        lated: #329, #1083. | ||||||
| 
 | 
 | ||||||
|        Report     -B,            -V, -X                 --value=then   --value=end            --value=DATE, |        Report type   -B,             -V, -X           --value=then   --value=end     --value=DATE, | ||||||
|        type       --value=cost                                                                --value=now |                      --value=cost                                                    --value=now | ||||||
|        ----------------------------------------------------------------------------------------------------- |        -------------------------------------------------------------------------------------------- | ||||||
|        print |        print | ||||||
|        posting    cost           value  at report end   value     at   value  at  report or   value      at |        posting       cost            value at  re-    value     at   value  at re-   value      at | ||||||
|        amounts                   or today               posting date   journal end            DATE/today |        amounts                       port  end  or    posting date   port or jour-   DATE/today | ||||||
|        balance    unchanged      unchanged              unchanged      unchanged              unchanged |                                      today                           nal end | ||||||
|        asser- |        balance as-   unchanged       unchanged        unchanged      unchanged       unchanged | ||||||
|        tions / |        ser- | ||||||
|        assign- |        tions/as- | ||||||
|        ments |        signments | ||||||
| 
 | 
 | ||||||
|        regis- |        register | ||||||
|        ter |        starting      cost            value  at day    not     sup-   value  at day   value      at | ||||||
|        start-     cost           value at day  before   not     sup-   value  at day before   value      at |        balance                       before report    ported         before report   DATE/today | ||||||
|        ing                       report   or  journal   ported         report  or   journal   DATE/today |        (-H)                          or    journal                   or    journal | ||||||
|        balance                   start                                 start |                                      start                           start | ||||||
|        (with |        posting       cost            value at  re-    value     at   value  at re-   value      at | ||||||
|        -H) |        amounts                       port  end  or    posting date   port or jour-   DATE/today | ||||||
|  |                                      today                           nal end | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 |        summary       summarised      value  at pe-    sum of post-   value at  pe-   value      at | ||||||
|        posting    cost           value  at report end   value     at   value  at  report or   value      at |        posting       cost            riod ends        ings  in in-   riod ends       DATE/today | ||||||
|        amounts                   or today               posting date   journal end            DATE/today |        amounts                                        terval, val- | ||||||
|        (no re- |        with report                                    ued  at  in- | ||||||
|        port |        interval                                       terval start | ||||||
|        inter- |        running to-   sum/average     sum/average      sum/average    sum/average     sum/average | ||||||
|        val) |        tal/average   of  displayed   of  displayed    of displayed   of  displayed   of  displayed | ||||||
|        summary    summarised     value at period ends   sum of post-   value at period ends   value      at |                      values          values           values         values          values | ||||||
|        posting    cost                                  ings  in in-                          DATE/today |  | ||||||
|        amounts                                          terval, val- |  | ||||||
|        (with                                            ued  at  in- |  | ||||||
|        report                                           terval start |  | ||||||
|        inter- |  | ||||||
|        val) |  | ||||||
|        running    sum/average    sum/average of  dis-   sum/average    sum/average  of dis-   sum/average |  | ||||||
|        to-        of displayed   played values          of displayed   played values          of  displayed |  | ||||||
|        tal/av-    values                                values                                values |  | ||||||
|        erage |  | ||||||
| 
 | 
 | ||||||
|        balance |        balance | ||||||
|        (bs, |        (bs,   bse, | ||||||
|        bse, |        cf, is) | ||||||
|        cf, |        balance       sums of costs   value at  re-    not     sup-   value at  re-   value      at | ||||||
|        is..) |        changes                       port  end  or    ported         port or jour-   DATE/today of | ||||||
|        bal-       sums      of   value at report  end   not     sup-   value  at  report or   value      at |                                      today of sums                   nal  end   of   sums of post- | ||||||
|        ances      costs          or  today of sums of   ported         journal end of  sums   DATE/today of |                                      of postings                     sums of post-   ings | ||||||
|        (no re-                   postings                              of postings            sums of post- |                                                                      ings | ||||||
|        port                                                                                   ings |        budget        like  balance   like  balance    not     sup-   like balances   like  balance | ||||||
|        inter- |        amounts       changes         changes          ported                         changes | ||||||
|        val) |        (--budget) | ||||||
|        bal-       sums      of   value at period ends   not     sup-   value at period ends   value      at |        grand total   sum  of  dis-   sum  of  dis-    not     sup-   sum  of  dis-   sum  of  dis- | ||||||
|        ances      costs     of   of sums of  postings   ported         of  sums of postings   DATE/today of |                      played values   played values    ported         played values   played values | ||||||
|        changes    postings  in   before   period  end                  before  period   end   sums of post- | 
 | ||||||
|        (with      interval       minus value  at  pe-                  minus  value  at pe-   ings |        balance | ||||||
|        report                    riod  starts of sums                  riod starts of  sums |        (bs,   bse, | ||||||
|        inter-                    of all postings  be-                  of  all postings be- |        cf,     is) | ||||||
|        val)                      fore period start                     fore period start |        with report | ||||||
|        end        sums      of   value at period ends   not     sup-   value at period ends   value      at |        interval | ||||||
|        bal-       costs     of   of sums of all post-   ported         of sums of all post-   DATE/today of |        starting      sums of costs   value  at re-    not     sup-   value  at re-   sums of post- | ||||||
|        ances      postings       ings  before  period                  ings  before  period   sums of post- |        balances      of   postings   port start of    ported         port start of   ings   before | ||||||
|        (with      from  report   end  (minus value at                  end  (minus value at   ings |        (-H)          before report   sums  of  all                   sums  of  all   report start | ||||||
|        report     start    (or   report start  of  of                  report start  of  of |                      start           postings  be-                   postings  be- | ||||||
|        inter-     before   re-   sums of all postings                  sums of all postings |                                      fore   report                   fore   report | ||||||
|        val and    port   start   before report  start                  before report  start |                                      start                           start | ||||||
|        --cumu-    with -H) and   with --cumulative)                    with --cumulative) |        balance       sums of costs   same       as    not     sup-   balance         value      at | ||||||
|        lative     interval end |        changes       of   postings   --value=end      ported         change     in   DATE/today of | ||||||
|        or -H) |        (bal,   is,   in period                                       each  period,   sums of post- | ||||||
|        start-     sums      of   value   at    report   not     sup-   value   at    report   sums of post- |        bs                                                            valued at pe-   ings | ||||||
|        ing        costs     of   start of sums of all   ported         start of sums of all   ings   before |        --change,                                                     riod ends | ||||||
|        bal-       postings be-   postings before  re-                  postings before  re-   report start |        cf | ||||||
|        ances      fore  report   port start                            port start |        --change) | ||||||
|        (with      start |        end    bal-   sums of costs   same       as    not     sup-   period    end   value      at | ||||||
|        report |        ances  (bal   of   postings   --value=end      ported         balances,       DATE/today of | ||||||
|        inter- |        -H, is --H,   from   before                                   valued at pe-   sums of post- | ||||||
|        val and |        bs, cf)       report  start                                   riod ends       ings | ||||||
|        -H) |                      to period end | ||||||
|        budget     like    bal-   like balances          not     sup-   like balances          like balances |        budget        like  balance   like  balance    not     sup-   like balances   like  balance | ||||||
|        amounts    ances                                 ported |        amounts       changes/end     changes/end      ported                         changes/end | ||||||
|        with |        (--budget)    balances        balances                                        balances | ||||||
|        --bud- |        row totals,   sums,   aver-   sums,   aver-    not     sup-   sums,   aver-   sums,   aver- | ||||||
|        get |        row   aver-   ages  of dis-   ages  of dis-    ported         ages of  dis-   ages of  dis- | ||||||
|        grand      sum of  dis-   sum   of   displayed   not     sup-   sum   of   displayed   sum  of  dis- |        ages   (-T,   played values   played values                   played values   played values | ||||||
|        total      played  val-   values                 ported         values                 played values |        -A) | ||||||
|        (no re-    ues |        column  to-   sums of  dis-   sums  of dis-    not     sup-   sums  of dis-   sums of  dis- | ||||||
|        port |        tals          played values   played values    ported         played values   played values | ||||||
|        inter- |        grand   to-   sum,  average   sum,  average    not     sup-   sum,  average   sum,  average | ||||||
|        val) |        tal,  grand   of column to-   of column to-    ported         of column to-   of column to- | ||||||
|  |        average       tals            tals                            tals            tals | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 |        --cumulative is omitted to save space, it works like -H but with a zero | ||||||
|        row to-    sums/aver-     sums/averages     of   not     sup-   sums/averages     of   sums/averages |        starting balance. | ||||||
|        tals/av-   ages of dis-   displayed values       ported         displayed values       of  displayed |  | ||||||
|        erages     played  val-                                                                values |  | ||||||
|        (with      ues |  | ||||||
|        report |  | ||||||
|        inter- |  | ||||||
|        val) |  | ||||||
|        column     sums of dis-   sums   of  displayed   not     sup-   sums   of  displayed   sums of  dis- |  | ||||||
|        totals     played  val-   values                 ported         values                 played values |  | ||||||
|                   ues |  | ||||||
|        grand      sum/average    sum/average of  col-   not     sup-   sum/average of  col-   sum/average |  | ||||||
|        to-        of    column   umn totals             ported         umn totals             of column to- |  | ||||||
|        tal/av-    totals                                                                      tals |  | ||||||
|        erage |  | ||||||
| 
 |  | ||||||
| 
 | 
 | ||||||
|        Glossary: |        Glossary: | ||||||
| 
 | 
 | ||||||
| @ -3257,12 +3235,15 @@ COMMANDS | |||||||
|        period  requested.  Both rates of return are annualized before display, |        period  requested.  Both rates of return are annualized before display, | ||||||
|        regardless of the length of reporting interval. |        regardless of the length of reporting interval. | ||||||
| 
 | 
 | ||||||
|  |        An  example:  https://github.com/simonmichael/hledger/blob/master/exam- | ||||||
|  |        ples/roi-unrealised.ledger | ||||||
|  | 
 | ||||||
|    stats |    stats | ||||||
|        stats |        stats | ||||||
|        Show some journal statistics. |        Show some journal statistics. | ||||||
| 
 | 
 | ||||||
|        The stats command displays summary information for the  whole  journal, |        The  stats  command displays summary information for the whole journal, | ||||||
|        or  a matched part of it.  With a reporting interval, it shows a report |        or a matched part of it.  With a reporting interval, it shows a  report | ||||||
|        for each report period. |        for each report period. | ||||||
| 
 | 
 | ||||||
|        Example: |        Example: | ||||||
| @ -3280,35 +3261,35 @@ COMMANDS | |||||||
|               Commodities              : 1 ($) |               Commodities              : 1 ($) | ||||||
|               Market prices            : 12 ($) |               Market prices            : 12 ($) | ||||||
| 
 | 
 | ||||||
|        This command also supports output destination and output format  selec- |        This  command also supports output destination and output format selec- | ||||||
|        tion. |        tion. | ||||||
| 
 | 
 | ||||||
|    tags |    tags | ||||||
|        tags |        tags | ||||||
|        List  the  unique tag names used in the journal.  With a TAGREGEX argu- |        List the unique tag names used in the journal.  With a  TAGREGEX  argu- | ||||||
|        ment, only tag names matching the regular expression (case insensitive) |        ment, only tag names matching the regular expression (case insensitive) | ||||||
|        are  shown.  With QUERY arguments, only transactions matching the query |        are shown.  With QUERY arguments, only transactions matching the  query | ||||||
|        are considered. |        are considered. | ||||||
| 
 | 
 | ||||||
|        With the --values flag, the tags' unique values are listed instead. |        With the --values flag, the tags' unique values are listed instead. | ||||||
| 
 | 
 | ||||||
|        With --parsed flag, all tags or values are shown in the order they  are |        With  --parsed flag, all tags or values are shown in the order they are | ||||||
|        parsed from the input data, including duplicates. |        parsed from the input data, including duplicates. | ||||||
| 
 | 
 | ||||||
|        With  -E/--empty,  any blank/empty values will also be shown, otherwise |        With -E/--empty, any blank/empty values will also be  shown,  otherwise | ||||||
|        they are omitted. |        they are omitted. | ||||||
| 
 | 
 | ||||||
|    test |    test | ||||||
|        test |        test | ||||||
|        Run built-in unit tests. |        Run built-in unit tests. | ||||||
| 
 | 
 | ||||||
|        This command runs the unit tests built in to hledger  and  hledger-lib, |        This  command  runs the unit tests built in to hledger and hledger-lib, | ||||||
|        printing  the results on stdout.  If any test fails, the exit code will |        printing the results on stdout.  If any test fails, the exit code  will | ||||||
|        be non-zero. |        be non-zero. | ||||||
| 
 | 
 | ||||||
|        This is mainly used by hledger developers, but you can also use  it  to |        This  is  mainly used by hledger developers, but you can also use it to | ||||||
|        sanity-check  the  installed  hledger executable on your platform.  All |        sanity-check the installed hledger executable on  your  platform.   All | ||||||
|        tests are expected to pass - if you ever see a failure,  please  report |        tests  are  expected to pass - if you ever see a failure, please report | ||||||
|        as a bug! |        as a bug! | ||||||
| 
 | 
 | ||||||
|        This command also accepts tasty test runner options, written after a -- |        This command also accepts tasty test runner options, written after a -- | ||||||
| @ -3317,35 +3298,35 @@ COMMANDS | |||||||
| 
 | 
 | ||||||
|               $ hledger test -- -pData.Amount --color=never |               $ hledger test -- -pData.Amount --color=never | ||||||
| 
 | 
 | ||||||
|        For  help  on these, see https://github.com/feuerbach/tasty#options (-- |        For help on these, see  https://github.com/feuerbach/tasty#options  (-- | ||||||
|        --help currently doesn't show them). |        --help currently doesn't show them). | ||||||
| 
 | 
 | ||||||
|    Add-on commands |    Add-on commands | ||||||
|        hledger also searches for external add-on commands,  and  will  include |        hledger  also  searches  for external add-on commands, and will include | ||||||
|        these in the commands list.  These are programs or scripts in your PATH |        these in the commands list.  These are programs or scripts in your PATH | ||||||
|        whose name starts with hledger- and ends with a recognised file  exten- |        whose  name starts with hledger- and ends with a recognised file exten- | ||||||
|        sion (currently: no extension, bat,com,exe, hs,lhs,pl,py,rb,rkt,sh). |        sion (currently: no extension, bat,com,exe, hs,lhs,pl,py,rb,rkt,sh). | ||||||
| 
 | 
 | ||||||
|        Add-ons  can  be  invoked like any hledger command, but there are a few |        Add-ons can be invoked like any hledger command, but there  are  a  few | ||||||
|        things to be aware of.  Eg if the hledger-web add-on is installed, |        things to be aware of.  Eg if the hledger-web add-on is installed, | ||||||
| 
 | 
 | ||||||
|        o hledger -h web shows hledger's  help,  while  hledger  web  -h  shows |        o hledger  -h  web  shows  hledger's  help,  while hledger web -h shows | ||||||
|          hledger-web's help. |          hledger-web's help. | ||||||
| 
 | 
 | ||||||
|        o Flags  specific  to  the add-on must have a preceding -- to hide them |        o Flags specific to the add-on must have a preceding --  to  hide  them | ||||||
|          from hledger.  So hledger web --serve --port 9000 will  be  rejected; |          from  hledger.   So hledger web --serve --port 9000 will be rejected; | ||||||
|          you must use hledger web -- --serve --port 9000. |          you must use hledger web -- --serve --port 9000. | ||||||
| 
 | 
 | ||||||
|        o You can always run add-ons directly if preferred: hledger-web --serve |        o You can always run add-ons directly if preferred: hledger-web --serve | ||||||
|          --port 9000. |          --port 9000. | ||||||
| 
 | 
 | ||||||
|        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.   They  can  be  written in any language, but haskell |        with new ideas.  They can be  written  in  any  language,  but  haskell | ||||||
|        scripts have a big advantage:  they  can  use  the  same  hledger  (and |        scripts  have  a  big  advantage:  they  can  use the same hledger (and | ||||||
|        haskell)  library functions that built-in commands do, for command-line |        haskell) library functions that built-in commands do, for  command-line | ||||||
|        options, journal parsing, reporting, etc. |        options, journal parsing, reporting, etc. | ||||||
| 
 | 
 | ||||||
|        Two important add-ons are the hledger-ui and  hledger-web  user  inter- |        Two  important  add-ons  are the hledger-ui and hledger-web user inter- | ||||||
|        faces.  These are maintained and released along with hledger: |        faces.  These are maintained and released along with hledger: | ||||||
| 
 | 
 | ||||||
|    ui |    ui | ||||||
| @ -3364,20 +3345,20 @@ COMMANDS | |||||||
|        hledger-interest generates interest transactions for an account accord- |        hledger-interest generates interest transactions for an account accord- | ||||||
|        ing to various schemes. |        ing to various schemes. | ||||||
| 
 | 
 | ||||||
|        A  few  more experimental or old add-ons can be found in hledger's bin/ |        A few more experimental or old add-ons can be found in  hledger's  bin/ | ||||||
|        directory.  These are typically prototypes and not guaranteed to work. |        directory.  These are typically prototypes and not guaranteed to work. | ||||||
| 
 | 
 | ||||||
| ENVIRONMENT | ENVIRONMENT | ||||||
|        LEDGER_FILE The journal file path when not specified with -f.  Default: |        LEDGER_FILE The journal file path when not specified with -f.  Default: | ||||||
|        ~/.hledger.journal  (on  windows,  perhaps C:/Users/USER/.hledger.jour- |        ~/.hledger.journal (on  windows,  perhaps  C:/Users/USER/.hledger.jour- | ||||||
|        nal). |        nal). | ||||||
| 
 | 
 | ||||||
|        A typical value is ~/DIR/YYYY.journal,  where  DIR  is  a  version-con- |        A  typical  value  is  ~/DIR/YYYY.journal,  where DIR is a version-con- | ||||||
|        trolled  finance directory and YYYY is the current year.  Or ~/DIR/cur- |        trolled finance directory and YYYY is the current year.  Or  ~/DIR/cur- | ||||||
|        rent.journal, where current.journal is a symbolic link to YYYY.journal. |        rent.journal, where current.journal is a symbolic link to YYYY.journal. | ||||||
| 
 | 
 | ||||||
|        On Mac computers, you can set this and other environment variables in a |        On Mac computers, you can set this and other environment variables in a | ||||||
|        more  thorough  way that also affects applications started from the GUI |        more thorough way that also affects applications started from  the  GUI | ||||||
|        (say, an Emacs dock icon).  Eg on MacOS Catalina I have a ~/.MacOSX/en- |        (say, an Emacs dock icon).  Eg on MacOS Catalina I have a ~/.MacOSX/en- | ||||||
|        vironment.plist file containing |        vironment.plist file containing | ||||||
| 
 | 
 | ||||||
| @ -3387,21 +3368,21 @@ ENVIRONMENT | |||||||
| 
 | 
 | ||||||
|        To see the effect you may need to killall Dock, or reboot. |        To see the effect you may need to killall Dock, or reboot. | ||||||
| 
 | 
 | ||||||
|        COLUMNS  The  screen  width used by the register command.  Default: the |        COLUMNS The screen width used by the register  command.   Default:  the | ||||||
|        full terminal width. |        full terminal width. | ||||||
| 
 | 
 | ||||||
|        NO_COLOR If this variable exists with any value, hledger will  not  use |        NO_COLOR  If  this variable exists with any value, hledger will not use | ||||||
|        ANSI   color   codes   in   terminal   output.    This   overrides  the |        ANSI  color   codes   in   terminal   output.    This   overrides   the | ||||||
|        --color/--colour option. |        --color/--colour option. | ||||||
| 
 | 
 | ||||||
| FILES | FILES | ||||||
|        Reads data from one or more files in hledger journal, timeclock,  time- |        Reads  data from one or more files in hledger journal, timeclock, time- | ||||||
|        dot,   or   CSV   format   specified   with  -f,  or  $LEDGER_FILE,  or |        dot,  or  CSV  format  specified   with   -f,   or   $LEDGER_FILE,   or | ||||||
|        $HOME/.hledger.journal          (on          windows,           perhaps |        $HOME/.hledger.journal           (on          windows,          perhaps | ||||||
|        C:/Users/USER/.hledger.journal). |        C:/Users/USER/.hledger.journal). | ||||||
| 
 | 
 | ||||||
| LIMITATIONS | LIMITATIONS | ||||||
|        The  need  to  precede  addon command options with -- when invoked from |        The need to precede addon command options with  --  when  invoked  from | ||||||
|        hledger is awkward. |        hledger is awkward. | ||||||
| 
 | 
 | ||||||
|        When input data contains non-ascii characters, a suitable system locale |        When input data contains non-ascii characters, a suitable system locale | ||||||
| @ -3417,36 +3398,36 @@ LIMITATIONS | |||||||
|        In a Cygwin/MSYS/Mintty window, the tab key is not supported in hledger |        In a Cygwin/MSYS/Mintty window, the tab key is not supported in hledger | ||||||
|        add. |        add. | ||||||
| 
 | 
 | ||||||
|        Not  all of Ledger's journal file syntax is supported.  See file format |        Not all of Ledger's journal file syntax is supported.  See file  format | ||||||
|        differences. |        differences. | ||||||
| 
 | 
 | ||||||
|        On large data files, hledger  is  slower  and  uses  more  memory  than |        On  large  data  files,  hledger  is  slower  and uses more memory than | ||||||
|        Ledger. |        Ledger. | ||||||
| 
 | 
 | ||||||
| TROUBLESHOOTING | TROUBLESHOOTING | ||||||
|        Here  are some issues you might encounter when you run hledger (and re- |        Here are some issues you might encounter when you run hledger (and  re- | ||||||
|        member you can also seek help from the IRC channel, mail  list  or  bug |        member  you  can  also seek help from the IRC channel, mail list or bug | ||||||
|        tracker): |        tracker): | ||||||
| 
 | 
 | ||||||
|        Successfully installed, but "No command 'hledger' found" |        Successfully installed, but "No command 'hledger' found" | ||||||
|        stack and cabal install binaries into a special directory, which should |        stack and cabal install binaries into a special directory, which should | ||||||
|        be added to your PATH environment variable.  Eg on  unix-like  systems, |        be  added  to your PATH environment variable.  Eg on unix-like systems, | ||||||
|        that is ~/.local/bin and ~/.cabal/bin respectively. |        that is ~/.local/bin and ~/.cabal/bin respectively. | ||||||
| 
 | 
 | ||||||
|        I set a custom LEDGER_FILE, but hledger is still using the default file |        I set a custom LEDGER_FILE, but hledger is still using the default file | ||||||
|        LEDGER_FILE  should  be  a  real environment variable, not just a shell |        LEDGER_FILE should be a real environment variable,  not  just  a  shell | ||||||
|        variable.  The command env | grep LEDGER_FILE should show it.  You  may |        variable.   The command env | grep LEDGER_FILE should show it.  You may | ||||||
|        need to use export.  Here's an explanation. |        need to use export.  Here's an explanation. | ||||||
| 
 | 
 | ||||||
|        Getting  errors  like "Illegal byte sequence" or "Invalid or incomplete |        Getting errors like "Illegal byte sequence" or "Invalid  or  incomplete | ||||||
|        multibyte or wide character" or "commitAndReleaseBuffer: invalid  argu- |        multibyte  or wide character" or "commitAndReleaseBuffer: invalid argu- | ||||||
|        ment (invalid character)" |        ment (invalid character)" | ||||||
|        Programs compiled with GHC (hledger, haskell build tools, etc.) need to |        Programs compiled with GHC (hledger, haskell build tools, etc.) need to | ||||||
|        have a UTF-8-aware locale configured in the environment, otherwise they |        have a UTF-8-aware locale configured in the environment, otherwise they | ||||||
|        will  fail  with  these  kinds  of errors when they encounter non-ascii |        will fail with these kinds of  errors  when  they  encounter  non-ascii | ||||||
|        characters. |        characters. | ||||||
| 
 | 
 | ||||||
|        To fix it, set the LANG environment variable to some locale which  sup- |        To  fix it, set the LANG environment variable to some locale which sup- | ||||||
|        ports UTF-8.  The locale you choose must be installed on your system. |        ports UTF-8.  The locale you choose must be installed on your system. | ||||||
| 
 | 
 | ||||||
|        Here's an example of setting LANG temporarily, on Ubuntu GNU/Linux: |        Here's an example of setting LANG temporarily, on Ubuntu GNU/Linux: | ||||||
| @ -3461,8 +3442,8 @@ TROUBLESHOOTING | |||||||
|               POSIX |               POSIX | ||||||
|               $ LANG=en_US.utf8 hledger -f my.journal print   # ensure it is used for this command |               $ LANG=en_US.utf8 hledger -f my.journal print   # ensure it is used for this command | ||||||
| 
 | 
 | ||||||
|        If  available,  C.UTF-8 will also work.  If your preferred locale isn't |        If available, C.UTF-8 will also work.  If your preferred  locale  isn't | ||||||
|        listed by locale -a, you might need to install it.   Eg  on  Ubuntu/De- |        listed  by  locale  -a, you might need to install it.  Eg on Ubuntu/De- | ||||||
|        bian: |        bian: | ||||||
| 
 | 
 | ||||||
|               $ apt-get install language-pack-fr |               $ apt-get install language-pack-fr | ||||||
| @ -3482,8 +3463,8 @@ TROUBLESHOOTING | |||||||
|               $ echo "export LANG=en_US.utf8" >>~/.bash_profile |               $ echo "export LANG=en_US.utf8" >>~/.bash_profile | ||||||
|               $ bash --login |               $ bash --login | ||||||
| 
 | 
 | ||||||
|        Exact  spelling  and capitalisation may be important.  Note the differ- |        Exact spelling and capitalisation may be important.  Note  the  differ- | ||||||
|        ence on MacOS (UTF-8, not utf8).   Some  platforms  (eg  ubuntu)  allow |        ence  on  MacOS  (UTF-8,  not  utf8).  Some platforms (eg ubuntu) allow | ||||||
|        variant spellings, but others (eg macos) require it to be exact: |        variant spellings, but others (eg macos) require it to be exact: | ||||||
| 
 | 
 | ||||||
|               $ locale -a | grep -iE en_us.*utf |               $ locale -a | grep -iE en_us.*utf | ||||||
| @ -3493,7 +3474,7 @@ TROUBLESHOOTING | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| REPORTING BUGS | REPORTING BUGS | ||||||
|        Report  bugs at http://bugs.hledger.org (or on the #hledger IRC channel |        Report bugs at http://bugs.hledger.org (or on the #hledger IRC  channel | ||||||
|        or hledger mail list) |        or hledger mail list) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| @ -3507,7 +3488,7 @@ COPYRIGHT | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| SEE ALSO | SEE ALSO | ||||||
|        hledger(1),     hledger-ui(1),     hledger-web(1),      hledger-api(1), |        hledger(1),      hledger-ui(1),     hledger-web(1),     hledger-api(1), | ||||||
|        hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time- |        hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time- | ||||||
|        dot(5), ledger(1) |        dot(5), ledger(1) | ||||||
| 
 | 
 | ||||||
| @ -3515,4 +3496,4 @@ SEE ALSO | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| hledger 1.19.99                  October 2020                       hledger(1) | hledger 1.19.99                  November 2020                      hledger(1) | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user