doc: hledger: add more content from old manual
This commit is contained in:
		
							parent
							
								
									db96d54ec0
								
							
						
					
					
						commit
						b69b149d39
					
				| @ -13,6 +13,8 @@ hledger\-web \- web interface for the hledger accounting tool | |||||||
| .P | .P | ||||||
| .PD | .PD | ||||||
| \f[C]hledger\ web\ \-\-\ [OPTIONS]\f[] | \f[C]hledger\ web\ \-\-\ [OPTIONS]\f[] | ||||||
|  | .PP | ||||||
|  | .PP | ||||||
| .SH DESCRIPTION | .SH DESCRIPTION | ||||||
| .PP | .PP | ||||||
| hledger is a cross\-platform program for tracking money, time, or any | hledger is a cross\-platform program for tracking money, time, or any | ||||||
| @ -45,6 +47,15 @@ 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 | In this mode the web app will keep running for as long as you have it | ||||||
| open in a browser window, and will exit after two minutes of inactivity | open in a browser window, and will exit after two minutes of inactivity | ||||||
| (no requests and no browser windows viewing it). | (no requests and no browser windows viewing it). | ||||||
|  | .IP | ||||||
|  | .nf | ||||||
|  | \f[C] | ||||||
|  | $\ hledger\ web | ||||||
|  | Starting\ web\ app\ on\ port\ 5000\ with\ base\ url\ http://localhost:5000 | ||||||
|  | Starting\ web\ browser\ if\ possible | ||||||
|  | Web\ app\ will\ auto\-exit\ after\ a\ few\ minutes\ with\ no\ browsers\ (or\ press\ ctrl\-c) | ||||||
|  | \f[] | ||||||
|  | .fi | ||||||
| .PP | .PP | ||||||
| With \f[C]\-\-server\f[], it starts the web app in non\-transient mode | With \f[C]\-\-server\f[], it starts the web app in non\-transient mode | ||||||
| and logs requests to the console. | and logs requests to the console. | ||||||
|  | |||||||
| @ -15,6 +15,16 @@ hledger-web - web interface for the hledger accounting tool | |||||||
| `hledger-web [OPTIONS]`\ | `hledger-web [OPTIONS]`\ | ||||||
| `hledger web -- [OPTIONS]` | `hledger web -- [OPTIONS]` | ||||||
| 
 | 
 | ||||||
|  | <style> | ||||||
|  | .highslide img {max-width:250px; float:right; margin:0 0 1em 1em;} | ||||||
|  | .highslide-caption {color:white; background-color:black;} | ||||||
|  | </style> | ||||||
|  | <a href="images/hledger-web/normal/register.png" class="highslide" onclick="return hs.expand(this)"><img src="images/hledger-web/normal/register.png" title="Account register view with accounts sidebar" /></a> | ||||||
|  | <a href="images/hledger-web/normal/journal.png" class="highslide" onclick="return hs.expand(this)"><img src="images/hledger-web/normal/journal.png" title="Journal view" /></a> | ||||||
|  | 
 | ||||||
|  | <a href="images/hledger-web/normal/help.png" class="highslide" onclick="return hs.expand(this)"><img src="images/hledger-web/normal/help.png" title="Help dialog" /></a> | ||||||
|  | <a href="images/hledger-web/normal/add.png" class="highslide" onclick="return hs.expand(this)"><img src="images/hledger-web/normal/add.png" title="Add form" /></a> | ||||||
|  | 
 | ||||||
| # DESCRIPTION | # DESCRIPTION | ||||||
| 
 | 
 | ||||||
| hledger is a cross-platform program for tracking money, time, or any other commodity, | hledger is a cross-platform program for tracking money, time, or any other commodity, | ||||||
| @ -45,6 +55,13 @@ the web app will keep running for as long as you have it open in a | |||||||
| browser window, and will exit after two minutes of inactivity (no | browser window, and will exit after two minutes of inactivity (no | ||||||
| requests and no browser windows viewing it). | requests and no browser windows viewing it). | ||||||
| 
 | 
 | ||||||
|  | ```shell | ||||||
|  | $ hledger web | ||||||
|  | Starting web app on port 5000 with base url http://localhost:5000 | ||||||
|  | Starting web browser if possible | ||||||
|  | Web app will auto-exit after a few minutes with no browsers (or press ctrl-c) | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
| With `--server`, it starts the web app in non-transient mode and logs | With `--server`, it starts the web app in non-transient mode and logs | ||||||
| requests to the console.  Typically when running hledger web as part | requests to the console.  Typically when running hledger web as part | ||||||
| of a website you'll want to use `--base-url` to set the | of a website you'll want to use `--base-url` to set the | ||||||
| @ -65,6 +82,21 @@ the web app detects changes and will show the new data on the next request. | |||||||
| If a change makes the file unparseable, hledger-web will show an error | If a change makes the file unparseable, hledger-web will show an error | ||||||
| until the file has been fixed. | until the file has been fixed. | ||||||
| 
 | 
 | ||||||
|  | --- | ||||||
|  | # disabled | ||||||
|  | # edit form | ||||||
|  | # Note: unlike any other hledger command, `web` can alter existing journal | ||||||
|  | # data, via the edit form.  A numbered backup of the file is saved on | ||||||
|  | # each edit, normally (ie if file permissions allow, disk is not full, etc.) | ||||||
|  | # Also, there is no built-in access control. So unless you run it behind an | ||||||
|  | # authenticating proxy, any visitor to your server will be able to see and | ||||||
|  | # overwrite the journal file (and included files.) | ||||||
|  | # hledger-web disallows edits which would leave the journal file not in | ||||||
|  | # valid [journal format](#journal). If the file becomes unparseable | ||||||
|  | # by other means, hledger-web will show an error until the file has been | ||||||
|  | # fixed. | ||||||
|  | ... | ||||||
|  | 
 | ||||||
| # OPTIONS | # OPTIONS | ||||||
| 
 | 
 | ||||||
| Note: if invoking hledger-web as a hledger subcommand, write `--` before options as shown above. | Note: if invoking hledger-web as a hledger subcommand, write `--` before options as shown above. | ||||||
|  | |||||||
							
								
								
									
										342
									
								
								hledger/doc/commands-balance.m4.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										342
									
								
								hledger/doc/commands-balance.m4.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,342 @@ | |||||||
|  | ## balance | ||||||
|  | Show accounts and their balances. Alias: bal. | ||||||
|  | 
 | ||||||
|  | `--tree` | ||||||
|  | : show short account names, as a tree | ||||||
|  | 
 | ||||||
|  | `--flat` | ||||||
|  | : show full account names, as a list (default) | ||||||
|  | 
 | ||||||
|  | `--drop=N` | ||||||
|  | : in flat mode: omit N leading account name parts | ||||||
|  | 
 | ||||||
|  | `--format=LINEFORMAT` | ||||||
|  | : in single-column balance reports: use this custom line format | ||||||
|  | 
 | ||||||
|  | `--no-elide` | ||||||
|  | : in tree mode: don't squash boring parent accounts | ||||||
|  | 
 | ||||||
|  | `-H --historical` | ||||||
|  | : in multicolumn mode: show historical ending balances | ||||||
|  | 
 | ||||||
|  | `--cumulative` | ||||||
|  | : in multicolumn mode: show accumulated ending balances | ||||||
|  | 
 | ||||||
|  | `-A --average` | ||||||
|  | : in multicolumn mode: show a row average column | ||||||
|  | 
 | ||||||
|  | `-T --row-total` | ||||||
|  | : in multicolumn mode: show a row total column | ||||||
|  | 
 | ||||||
|  | `-N --no-total` | ||||||
|  | : don't show the final total row | ||||||
|  | 
 | ||||||
|  | `-V --value` | ||||||
|  | : show amounts as their current market value in their default valuation commodity | ||||||
|  | 
 | ||||||
|  | `-o FILE[.FMT] --output-file=FILE[.FMT]` | ||||||
|  | : write output to FILE instead of stdout. A recognised FMT suffix influences the format. | ||||||
|  | 
 | ||||||
|  | `-O FMT --output-format=FMT     ` | ||||||
|  | : select the output format. Supported formats: | ||||||
|  | txt, csv. | ||||||
|  | 
 | ||||||
|  | The balance command displays accounts and balances. | ||||||
|  | It is hledger's most featureful and most useful command. | ||||||
|  | 
 | ||||||
|  | ``` {.shell .right} | ||||||
|  | $ hledger balance | ||||||
|  |                  $-1  assets | ||||||
|  |                   $1    bank:saving | ||||||
|  |                  $-2    cash | ||||||
|  |                   $2  expenses | ||||||
|  |                   $1    food | ||||||
|  |                   $1    supplies | ||||||
|  |                  $-2  income | ||||||
|  |                  $-1    gifts | ||||||
|  |                  $-1    salary | ||||||
|  |                   $1  liabilities:debts | ||||||
|  | -------------------- | ||||||
|  |                    0 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | More precisely, the balance command shows the *change* to each account's balance caused by all (matched) postings. | ||||||
|  | In the common case where you do not filter by date and your journal sets the correct opening balances, this is the same as the account's ending balance. | ||||||
|  | 
 | ||||||
|  | By default, accounts are displayed hierarchically, with subaccounts | ||||||
|  | indented below their parent. | ||||||
|  | "Boring" accounts, which contain a single interesting | ||||||
|  | subaccount and no balance of their own, are elided into the following | ||||||
|  | line for more compact output. (Use `--no-elide` to prevent this.) | ||||||
|  | 
 | ||||||
|  | Each account's balance is the "inclusive" balance - it includes the | ||||||
|  | balances of any subaccounts. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | Accounts which have zero balance (and no non-zero subaccounts) are | ||||||
|  | omitted. Use `-E/--empty` to show them. | ||||||
|  | 
 | ||||||
|  | ``` {.shell .right .clear} | ||||||
|  | $ hledger balance -p 2008/6 expenses --no-total | ||||||
|  |                   $2  expenses | ||||||
|  |                   $1    food | ||||||
|  |                   $1    supplies | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | A final total is displayed by default; use `-N/--no-total` to suppress it. | ||||||
|  | 
 | ||||||
|  | ### Flat mode | ||||||
|  | 
 | ||||||
|  | ``` {.shell .right} | ||||||
|  | $ hledger balance -p 2008/6 expenses -N --flat --drop 1 | ||||||
|  |                   $1  food | ||||||
|  |                   $1  supplies | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | To see a flat list of full account names instead of the default hierarchical display, use `--flat`. | ||||||
|  | In this mode, accounts (unless depth-clipped) show their "exclusive" balance, excluding any subaccount balances. | ||||||
|  | In this mode, you can also use `--drop N` to omit the first few account name components. | ||||||
|  | 
 | ||||||
|  | ### Depth limiting | ||||||
|  | 
 | ||||||
|  | ``` {.shell .right} | ||||||
|  | $ hledger balance -N --depth 1 | ||||||
|  |                  $-1  assets | ||||||
|  |                   $2  expenses | ||||||
|  |                  $-2  income | ||||||
|  |                   $1  liabilities | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | With `--depth N`, balance shows accounts only to the specified depth. | ||||||
|  | This is very useful to show a complex charts of accounts in less detail. | ||||||
|  | In flat mode, balances from accounts below the depth limit will be shown as part of a parent account at the depth limit. | ||||||
|  | 
 | ||||||
|  | <!-- $ for y in 2006 2007 2008 2009 2010; do echo; echo $y; hledger -f $y.journal balance ^expenses --depth 2; done --> | ||||||
|  | 
 | ||||||
|  | ### Multicolumn balance reports | ||||||
|  | 
 | ||||||
|  | With a [reporting interval](#reporting-interval), multiple balance | ||||||
|  | columns will be shown, one for each report period. | ||||||
|  | There are three types of multi-column balance report, showing different information: | ||||||
|  | 
 | ||||||
|  | ``` {.shell .right} | ||||||
|  | $ hledger balance --quarterly income expenses -E | ||||||
|  | Balance changes in 2008: | ||||||
|  | 
 | ||||||
|  |                    ||  2008q1  2008q2  2008q3  2008q4  | ||||||
|  | ===================++================================= | ||||||
|  |  expenses:food     ||       0      $1       0       0  | ||||||
|  |  expenses:supplies ||       0      $1       0       0  | ||||||
|  |  income:gifts      ||       0     $-1       0       0  | ||||||
|  |  income:salary     ||     $-1       0       0       0  | ||||||
|  | -------------------++--------------------------------- | ||||||
|  |                    ||     $-1      $1       0       0  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | 1. By default: each column shows the sum of postings in that period, | ||||||
|  | ie the account's change of balance in that period. This is useful eg | ||||||
|  | for a monthly income statement. | ||||||
|  | <!-- | ||||||
|  | multi-column income statement:  | ||||||
|  | 
 | ||||||
|  |    $ hledger balance ^income ^expense -p 'monthly this year' --depth 3 | ||||||
|  | 
 | ||||||
|  | or cashflow statement: | ||||||
|  | 
 | ||||||
|  |    $ hledger balance ^assets ^liabilities 'not:(receivable|payable)' -p 'weekly this month' | ||||||
|  | --> | ||||||
|  | 
 | ||||||
|  | <div style="clear:both;"></div> | ||||||
|  | ``` {.shell .right} | ||||||
|  | $ hledger balance --quarterly income expenses -E --cumulative | ||||||
|  | Ending balances (cumulative) in 2008: | ||||||
|  | 
 | ||||||
|  |                    ||  2008/03/31  2008/06/30  2008/09/30  2008/12/31  | ||||||
|  | ===================++================================================= | ||||||
|  |  expenses:food     ||           0          $1          $1          $1  | ||||||
|  |  expenses:supplies ||           0          $1          $1          $1  | ||||||
|  |  income:gifts      ||           0         $-1         $-1         $-1  | ||||||
|  |  income:salary     ||         $-1         $-1         $-1         $-1  | ||||||
|  | -------------------++------------------------------------------------- | ||||||
|  |                    ||         $-1           0           0           0  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | 2. With `--cumulative`: each column shows the ending balance for that | ||||||
|  | period, accumulating the changes across periods, starting from 0 at | ||||||
|  | the report start date. This mode is not often used. | ||||||
|  | 
 | ||||||
|  | <div style="clear:both;"></div> | ||||||
|  | ``` {.shell .right} | ||||||
|  | $ hledger balance ^assets ^liabilities -Q  | ||||||
|  | Balance changes in 2008: | ||||||
|  | 
 | ||||||
|  |                       ||  2008q1  2008q2  2008q3  2008q4  | ||||||
|  | ======================++================================= | ||||||
|  |  assets:bank:checking ||      $1       0       0     $-1  | ||||||
|  |  assets:bank:saving   ||       0      $1       0       0  | ||||||
|  |  assets:cash          ||       0     $-2       0       0  | ||||||
|  |  liabilities:debts    ||       0       0       0      $1  | ||||||
|  | ----------------------++--------------------------------- | ||||||
|  |                       ||      $1     $-1       0       0  | ||||||
|  | 
 | ||||||
|  | $ hledger balance ^assets ^liabilities --quarterly --historical --begin 2008/4/1 | ||||||
|  | Ending balances (historical) in 2008/04/01-2008/12/31: | ||||||
|  | 
 | ||||||
|  |                       ||  2008/06/30  2008/09/30  2008/12/31  | ||||||
|  | ======================++===================================== | ||||||
|  |  assets:bank:checking ||          $1          $1           0  | ||||||
|  |  assets:bank:saving   ||          $1          $1          $1  | ||||||
|  |  assets:cash          ||         $-2         $-2         $-2  | ||||||
|  |  liabilities:debts    ||           0           0          $1  | ||||||
|  | ----------------------++------------------------------------- | ||||||
|  |                       ||           0           0           0  | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | 3. With `--historical/-H`: each column shows the actual historical | ||||||
|  | ending balance for that period, accumulating the changes across | ||||||
|  | periods, starting from the actual balance at the report start date. | ||||||
|  | This is useful eg for a multi-period balance sheet, and when | ||||||
|  | you are showing only the data after a certain start date. | ||||||
|  | 
 | ||||||
|  | <div style="clear:both;"></div> | ||||||
|  | ``` {.shell .right} | ||||||
|  | $ hledger balance -Q income expenses --tree -E -TA | ||||||
|  | Balance changes in 2008: | ||||||
|  | 
 | ||||||
|  |             ||  2008q1  2008q2  2008q3  2008q4    Total  Average  | ||||||
|  | ============++=================================================== | ||||||
|  |  expenses   ||       0      $2       0       0       $2       $1  | ||||||
|  |    food     ||       0      $1       0       0       $1        0  | ||||||
|  |    supplies ||       0      $1       0       0       $1        0  | ||||||
|  |  income     ||     $-1     $-1       0       0      $-2      $-1  | ||||||
|  |    gifts    ||       0     $-1       0       0      $-1        0  | ||||||
|  |    salary   ||     $-1       0       0       0      $-1        0  | ||||||
|  | ------------++--------------------------------------------------- | ||||||
|  |             ||     $-1      $1       0       0        0        0  | ||||||
|  | 
 | ||||||
|  | # Average is rounded to the dollar here since all journal amounts are | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Multi-column balance reports display accounts in flat mode by default; | ||||||
|  | to see the hierarchy, use `--tree`. | ||||||
|  | 
 | ||||||
|  | Note that with a reporting interval, the report start/end dates will | ||||||
|  | be "enlarged" if necessary so that they encompass the displayed report | ||||||
|  | periods. This is so that the first and last periods will be "full" and | ||||||
|  | comparable to the others. | ||||||
|  | 
 | ||||||
|  | The `-E/--empty` flag does two things here: first, the report will | ||||||
|  | show all columns within the specified report period (without -E, | ||||||
|  | leading and trailing columns with all zeroes are not shown). Second, | ||||||
|  | all accounts which existed at the report start date will be | ||||||
|  | considered, not just the ones with activity during the report period | ||||||
|  | (use -E to include low-activity accounts which would otherwise would | ||||||
|  | be omitted). | ||||||
|  | 
 | ||||||
|  | The `-T/--row-total` flag adds an additional column showing the total | ||||||
|  | for each row.  The `-A/--average` flag adds a column showing the | ||||||
|  | average value in each row. Note in `--H/--historical` mode only the | ||||||
|  | average is useful, and in `--cumulative` mode neither is useful. | ||||||
|  | 
 | ||||||
|  | ### Market value | ||||||
|  | 
 | ||||||
|  | The `-V/--value` flag converts all the reported amounts to their | ||||||
|  | "current market value" using their default market price. That is the | ||||||
|  | latest [market price](#market-prices) (P directive) found in the | ||||||
|  | journal (or an included file), for the amount's commodity, dated on or | ||||||
|  | before the report end date. | ||||||
|  |      | ||||||
|  | Unlike Ledger, hledger's -V only uses the market prices recorded with | ||||||
|  | P directives, ignoring transaction prices recorded as part of posting | ||||||
|  | amounts (which -B/--cost uses). Using -B and -V together is allowed. | ||||||
|  | 
 | ||||||
|  | <!-- | ||||||
|  | ``` {.shell .right} | ||||||
|  | $ hledger balance -V ... | ||||||
|  | ``` | ||||||
|  | --> | ||||||
|  | 
 | ||||||
|  | ### Custom balance output | ||||||
|  | 
 | ||||||
|  | ``` {.shell .right} | ||||||
|  | $ hledger balance --format "%20(account) %12(total)" | ||||||
|  |               assets          $-1 | ||||||
|  |          bank:saving           $1 | ||||||
|  |                 cash          $-2 | ||||||
|  |             expenses           $2 | ||||||
|  |                 food           $1 | ||||||
|  |             supplies           $1 | ||||||
|  |               income          $-2 | ||||||
|  |                gifts          $-1 | ||||||
|  |               salary          $-1 | ||||||
|  |    liabilities:debts           $1 | ||||||
|  | --------------------------------- | ||||||
|  |                                 0 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | In simple (non-multi-column) balance reports, you can customise the | ||||||
|  | output with `--format FMT`. FMT (plus a newline) will be displayed for | ||||||
|  | each account/balance pair. It is a format string with data fields | ||||||
|  | interpolated by | ||||||
|  | 
 | ||||||
|  | `%[MIN][.MAX](FIELDNAME)` | ||||||
|  | 
 | ||||||
|  | where MIN means pad with spaces to at least this width, and MAX means | ||||||
|  | truncate at this width. The field name must be enclosed in | ||||||
|  | parentheses. Three fields are available: | ||||||
|  | 
 | ||||||
|  | - `depth_spacer` - a number of spaces equal to the account's depth, or if MIN is specified, MIN * depth spaces. | ||||||
|  | - `account`      - the account's name | ||||||
|  | - `total`        - the account's balance/posted total, right justified | ||||||
|  | 
 | ||||||
|  | When the total has multiple commodities, by default each commodity is | ||||||
|  | displayed on a separate line, and the report item will be bottom | ||||||
|  | aligned.  You can change how such multi-line values are rendered by | ||||||
|  | beginning the format with a special prefix: | ||||||
|  | 
 | ||||||
|  | - `%_` - render on multiple lines, bottom-aligned (the default) | ||||||
|  | - `%^` - render on multiple lines, top-aligned | ||||||
|  | - `%,` - render on one line, with multi-line values comma-separated | ||||||
|  | 
 | ||||||
|  | There are some quirks, and experimentation may be needed to get pleasing output. | ||||||
|  | In one-line mode, `%(depth_spacer)` has no effect, instead `%(account)` has indentation built in. | ||||||
|  | <!-- XXX retest: | ||||||
|  | Consistent column widths are not well enforced, causing ragged edges unless you set suitable widths. | ||||||
|  | Beware of specifying a maximum width; it will clip account names and amounts that are too wide, with no visible indication. | ||||||
|  | --> | ||||||
|  | 
 | ||||||
|  | Examples: | ||||||
|  | 
 | ||||||
|  | - `%(total)`         - the account's total | ||||||
|  | - `%-20.20(account)` - the account's name, left justified, padded to 20 characters and clipped at 20 characters | ||||||
|  | - `%20(total)  %2(depth_spacer)%-(account)` - default format for the single-column balance report | ||||||
|  | - `%,%-50(account)  %25(total)` - account name padded to 50 characters, total padded to 20 characters, with multiple commodities rendered on one line | ||||||
|  | 
 | ||||||
|  | ### Output destination | ||||||
|  | 
 | ||||||
|  | ```{.shell .bold .right} | ||||||
|  | $ hledger balance -o -     # write to stdout (the default) | ||||||
|  | $ hledger balance -o FILE  # write to FILE | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | The balance, print, register and stats commands can write their output to a | ||||||
|  | destination other than the console. This is controlled by the | ||||||
|  | `-o/--output-file` option. | ||||||
|  | 
 | ||||||
|  | ### CSV output | ||||||
|  | 
 | ||||||
|  | ```{.shell .bold .right} | ||||||
|  | $ hledger balance -O csv       # write CSV to stdout | ||||||
|  | $ hledger balance -o FILE.csv  # write CSV to FILE.csv | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | The balance, print and register commands can write their output as | ||||||
|  | CSV. This is useful for exporting data to other applications, eg to | ||||||
|  | make charts in a spreadsheet. This is controlled by the | ||||||
|  | `-O/--output-format` option, or by specifying a `.csv` file extension | ||||||
|  | with `-o/--output-file`. | ||||||
|  | 
 | ||||||
| @ -1,71 +1,23 @@ | |||||||
| # COMMANDS | # COMMANDS | ||||||
| 
 | 
 | ||||||
| hledger provides a number of subcommands; `hledger` with no arguments shows a list. | hledger provides a number of subcommands; `hledger` with no arguments | ||||||
|  | shows a list. | ||||||
| 
 | 
 | ||||||
| Select a subcommand by writing its name as first argument (eg `hledger incomestatement`). You can also write any unambiguous prefix of a command name (`hledger inc`), or one of the standard short aliases displayed in the command list (`hledger is`). | If you install additional `hledger-*` packages, or if you put programs | ||||||
|  | or scripts named `hledger-NAME` in your PATH, these will also be | ||||||
|  | listed as subcommands. | ||||||
| 
 | 
 | ||||||
| If you install additional `hledger-*` packages, | Run a subcommand by writing its name as first argument (eg `hledger | ||||||
| or if you put programs or scripts named `hledger-NAME` in your PATH, these will also be listed as hledger subcommands. | incomestatement`). You can also write any unambiguous prefix of a | ||||||
|  | command name (`hledger inc`), or one of the standard short aliases | ||||||
|  | displayed in the command list (`hledger is`). | ||||||
| 
 | 
 | ||||||
| Here is a summary (see http://hledger.org/manual#commands for the full command help): | --- | ||||||
|  | # for each command: name, synopsis, description, examples. | ||||||
|  | ... | ||||||
| 
 | 
 | ||||||
| ## Data entry | ## accounts | ||||||
| 
 | Show account names. | ||||||
| ### add |  | ||||||
| prompt for transactions and add them to the journal. |  | ||||||
| 
 |  | ||||||
| This is the only hledger command that writes to the journal file. |  | ||||||
| It appends only, existing transactions are not changed. |  | ||||||
| 
 |  | ||||||
| `--no-new-accounts` |  | ||||||
| : don't allow creating new accounts; helps prevent typos when entering account names |  | ||||||
| 
 |  | ||||||
| ## Reporting |  | ||||||
| 
 |  | ||||||
| ### accounts |  | ||||||
| 
 |  | ||||||
| ``` {.shell .right} |  | ||||||
| $ hledger accounts --tree |  | ||||||
| assets |  | ||||||
|   bank |  | ||||||
|     checking |  | ||||||
|     saving |  | ||||||
|   cash |  | ||||||
| expenses |  | ||||||
|   food |  | ||||||
|   supplies |  | ||||||
| income |  | ||||||
|   gifts |  | ||||||
|   salary |  | ||||||
| liabilities |  | ||||||
|   debts |  | ||||||
| ``` |  | ||||||
| 
 |  | ||||||
| ``` {.shell .right} |  | ||||||
| $ hledger accounts --drop 1 |  | ||||||
| bank:checking |  | ||||||
| bank:saving |  | ||||||
| cash |  | ||||||
| food |  | ||||||
| supplies |  | ||||||
| gifts |  | ||||||
| salary |  | ||||||
| debts |  | ||||||
| ``` |  | ||||||
| 
 |  | ||||||
| ``` {.shell .right} |  | ||||||
| $ hledger accounts |  | ||||||
| assets:bank:checking |  | ||||||
| assets:bank:saving |  | ||||||
| assets:cash |  | ||||||
| expenses:food |  | ||||||
| expenses:supplies |  | ||||||
| income:gifts |  | ||||||
| income:salary |  | ||||||
| liabilities:debts |  | ||||||
| ``` |  | ||||||
| 
 |  | ||||||
| show account names |  | ||||||
| 
 | 
 | ||||||
| `--tree` | `--tree` | ||||||
| : show short account names, as a tree | : show short account names, as a tree | ||||||
| @ -80,20 +32,140 @@ This command lists all account names that are in use (ie, all the | |||||||
| accounts which have at least one transaction posting to them).  With | accounts which have at least one transaction posting to them).  With | ||||||
| query arguments, only matched account names are shown. | query arguments, only matched account names are shown. | ||||||
| 
 | 
 | ||||||
| It shows a flat list by default. In this mode you can add `--drop N` | It shows a flat list by default. With `--tree`, it uses indentation to | ||||||
| to omit the first few account name components. | show the account hierarchy. | ||||||
| 
 | 
 | ||||||
| With `--tree`, it shows the account hierarchy. | In flat mode you can add `--drop N` to omit the first few account name | ||||||
|  | components. | ||||||
| 
 | 
 | ||||||
| ### activity | Examples: | ||||||
| show an ascii barchart of posting counts per interval |  | ||||||
| (default: daily) |  | ||||||
| 
 | 
 | ||||||
| ### balance, bal | _col3_({{ | ||||||
| show accounts and balances | _shell_({{ | ||||||
|  | $ hledger accounts --tree | ||||||
|  | assets | ||||||
|  |   bank | ||||||
|  |     checking | ||||||
|  |     saving | ||||||
|  |   cash | ||||||
|  | expenses | ||||||
|  |   food | ||||||
|  |   supplies | ||||||
|  | income | ||||||
|  |   gifts | ||||||
|  |   salary | ||||||
|  | liabilities | ||||||
|  |   debts | ||||||
|  | }}) | ||||||
|  | }},{{ | ||||||
|  | _shell_({{ | ||||||
|  | $ hledger accounts --drop 1 | ||||||
|  | bank:checking | ||||||
|  | bank:saving | ||||||
|  | cash | ||||||
|  | food | ||||||
|  | supplies | ||||||
|  | gifts | ||||||
|  | salary | ||||||
|  | debts | ||||||
|  | }}) | ||||||
|  | }},{{ | ||||||
|  | _shell_({{ | ||||||
|  | $ hledger accounts | ||||||
|  | assets:bank:checking | ||||||
|  | assets:bank:saving | ||||||
|  | assets:cash | ||||||
|  | expenses:food | ||||||
|  | expenses:supplies | ||||||
|  | income:gifts | ||||||
|  | income:salary | ||||||
|  | liabilities:debts | ||||||
|  | }}) | ||||||
|  | }}) | ||||||
| 
 | 
 | ||||||
| `--tree` | ## activity | ||||||
| : show short account names, as a tree | Show an ascii barchart of posting counts per interval. | ||||||
|  | 
 | ||||||
|  | The activity command displays an ascii histogram showing | ||||||
|  | transaction counts by day, week, month or other reporting interval | ||||||
|  | (by day is the default). With query arguments, it counts only matched transactions. | ||||||
|  | 
 | ||||||
|  | _col3_({{ | ||||||
|  | _shell_({{ | ||||||
|  | $ hledger activity --quarterly | ||||||
|  | 2008-01-01 ** | ||||||
|  | 2008-04-01 ******* | ||||||
|  | 2008-07-01  | ||||||
|  | 2008-10-01 ** | ||||||
|  | }}) | ||||||
|  | }}) | ||||||
|  | 
 | ||||||
|  | ## add | ||||||
|  | Prompt for transactions and add them to the journal. | ||||||
|  | 
 | ||||||
|  | `--no-new-accounts` | ||||||
|  | : don't allow creating new accounts; helps prevent typos when entering account names | ||||||
|  | 
 | ||||||
|  | Many hledger users edit their journals directly with a text editor, or generate them from CSV. | ||||||
|  | For more interactive data entry, there is the `add` command,  | ||||||
|  | which prompts interactively on the console for new transactions, and appends | ||||||
|  | them to the journal file (existing transactions are not changed). | ||||||
|  | This is the only hledger command that writes to the journal file. | ||||||
|  | 
 | ||||||
|  | To use it, just run `hledger add` and follow the prompts. | ||||||
|  | You can add as many transactions as you like; when you are finished, | ||||||
|  | enter `.` or press control-d or control-c to exit. | ||||||
|  | 
 | ||||||
|  | Features: | ||||||
|  | 
 | ||||||
|  | - add tries to provide useful defaults, using the most similar recent | ||||||
|  |   transaction (by description) as a template. | ||||||
|  | - You can also set the initial defaults with command line arguments. | ||||||
|  | - [Readline-style edit keys](http://tiswww.case.edu/php/chet/readline/rluserman.html#SEC3) | ||||||
|  |   can be used during data entry. | ||||||
|  | - The tab key will auto-complete whenever possible - accounts, | ||||||
|  |   descriptions, dates (`yesterday`, `today`, `tomorrow`). If the input | ||||||
|  |   area is empty, it will insert the default value. | ||||||
|  | - If the journal defines a [default commodity](#default-commodity), | ||||||
|  |   it will be added to any bare numbers entered. | ||||||
|  | - A parenthesised transaction [code](#entries) may be entered following a date. | ||||||
|  | - [Comments](#comments) and tags may be entered following a description or amount. | ||||||
|  | - If you make a mistake, enter `<` at any prompt to restart the transaction. | ||||||
|  | - Input prompts are displayed in a different colour when the terminal supports it. | ||||||
|  | 
 | ||||||
|  | Example (see the [tutorial](step-by-step.html#record-a-transaction-with-hledger-add) for a detailed explanation): | ||||||
|  | 
 | ||||||
|  | _shell_({{ | ||||||
|  | $ hledger add | ||||||
|  | Adding transactions to journal file /src/hledger/data/sample.journal | ||||||
|  | Any command line arguments will be used as defaults. | ||||||
|  | Use tab key to complete, readline keys to edit, enter to accept defaults. | ||||||
|  | An optional (CODE) may follow transaction dates. | ||||||
|  | An optional ; COMMENT may follow descriptions or amounts. | ||||||
|  | If you make a mistake, enter < at any prompt to restart the transaction. | ||||||
|  | To end a transaction, enter . when prompted. | ||||||
|  | To quit, enter . at a date prompt or press control-d or control-c. | ||||||
|  | Date [2015/05/22]:  | ||||||
|  | Description: supermarket | ||||||
|  | Account 1: expenses:food | ||||||
|  | Amount  1: $10 | ||||||
|  | Account 2: assets:checking | ||||||
|  | Amount  2 [$-10.0]:  | ||||||
|  | Account 3 (or . or enter to finish this transaction): . | ||||||
|  | 2015/05/22 supermarket | ||||||
|  |     expenses:food             $10 | ||||||
|  |     assets:checking        $-10.0 | ||||||
|  | 
 | ||||||
|  | Save this transaction to the journal ? [y]:  | ||||||
|  | Saved. | ||||||
|  | Starting the next transaction (. or ctrl-D/ctrl-C to quit) | ||||||
|  | Date [2015/05/22]: <CTRL-D> $ | ||||||
|  | }}) | ||||||
|  | 
 | ||||||
|  | _include_({{commands-balance.m4.md}}) | ||||||
|  | 
 | ||||||
|  | ## balancesheet | ||||||
|  | Show a balance sheet. Alias: bs. | ||||||
| 
 | 
 | ||||||
| `--flat` | `--flat` | ||||||
| : show full account names, as a list (default) | : show full account names, as a list (default) | ||||||
| @ -101,39 +173,36 @@ show accounts and balances | |||||||
| `--drop=N` | `--drop=N` | ||||||
| : in flat mode: omit N leading account name parts | : in flat mode: omit N leading account name parts | ||||||
| 
 | 
 | ||||||
| `--format=LINEFORMAT` | This command displays a simple | ||||||
| : in single-column balance reports: use this custom line format | [balance sheet](http://en.wikipedia.org/wiki/Balance_sheet). It currently | ||||||
|  | assumes that you have top-level accounts named `asset` and `liability` | ||||||
|  | (plural forms also allowed.) | ||||||
| 
 | 
 | ||||||
| `--no-elide` | _col3_({{ | ||||||
| : in tree mode: don't squash boring parent accounts | _shell_({{ | ||||||
|  | $ hledger balancesheet | ||||||
|  | Balance Sheet | ||||||
| 
 | 
 | ||||||
| `-H --historical` | Assets: | ||||||
| : in multicolumn mode: show historical ending balances |                  $-1  assets | ||||||
|  |                   $1    bank:saving | ||||||
|  |                  $-2    cash | ||||||
|  | -------------------- | ||||||
|  |                  $-1 | ||||||
| 
 | 
 | ||||||
| `--cumulative` | Liabilities: | ||||||
| : in multicolumn mode: show accumulated ending balances |                   $1  liabilities:debts | ||||||
|  | -------------------- | ||||||
|  |                   $1 | ||||||
| 
 | 
 | ||||||
| `-A --average` | Total: | ||||||
| : in multicolumn mode: show a row average column | -------------------- | ||||||
|  |                    0 | ||||||
|  | }}) | ||||||
|  | }}) | ||||||
| 
 | 
 | ||||||
| `-T --row-total` | ## cashflow | ||||||
| : in multicolumn mode: show a row total column | Show a cashflow statement. Alias: cf. | ||||||
| 
 |  | ||||||
| `-N --no-total` |  | ||||||
| : don't show the final total row |  | ||||||
| 
 |  | ||||||
| `-V --value` |  | ||||||
| : show amounts as their current market value in their default valuation commodity |  | ||||||
| 
 |  | ||||||
| `-o FILE[.FMT] --output-file=FILE[.FMT]` |  | ||||||
| : write output to FILE instead of stdout. A recognised FMT suffix influences the format. |  | ||||||
| 
 |  | ||||||
| `-O FMT --output-format=FMT     ` |  | ||||||
| : select the output format. Supported formats: |  | ||||||
| txt, csv. |  | ||||||
| 
 |  | ||||||
| ### balancesheet, bs |  | ||||||
| show a balance sheet |  | ||||||
| 
 | 
 | ||||||
| `--flat` | `--flat` | ||||||
| : show full account names, as a list (default) | : show full account names, as a list (default) | ||||||
| @ -141,8 +210,33 @@ show a balance sheet | |||||||
| `--drop=N` | `--drop=N` | ||||||
| : in flat mode: omit N leading account name parts | : in flat mode: omit N leading account name parts | ||||||
| 
 | 
 | ||||||
| ### cashflow, cf | This command displays a simple | ||||||
| show a cashflow statement | [cashflow statement](http://en.wikipedia.org/wiki/Cash_flow_statement) | ||||||
|  | It shows the change in all "cash" (ie, liquid assets) accounts for the | ||||||
|  | period. It currently assumes that cash accounts are under a top-level | ||||||
|  | account named `asset` and do not contain `receivable` or `A/R` (plural | ||||||
|  | forms also allowed.) | ||||||
|  | 
 | ||||||
|  | _col3_({{ | ||||||
|  | _shell_({{ | ||||||
|  | $ hledger cashflow | ||||||
|  | Cashflow Statement | ||||||
|  | 
 | ||||||
|  | Cash flows: | ||||||
|  |                  $-1  assets | ||||||
|  |                   $1    bank:saving | ||||||
|  |                  $-2    cash | ||||||
|  | -------------------- | ||||||
|  |                  $-1 | ||||||
|  | 
 | ||||||
|  | Total: | ||||||
|  | -------------------- | ||||||
|  |                  $-1 | ||||||
|  | }}) | ||||||
|  | }}) | ||||||
|  | 
 | ||||||
|  | ## incomestatement | ||||||
|  | Show an income statement. Alias: is. | ||||||
| 
 | 
 | ||||||
| `--flat` | `--flat` | ||||||
| : show full account names, as a list (default) | : show full account names, as a list (default) | ||||||
| @ -150,17 +244,38 @@ show a cashflow statement | |||||||
| `--drop=N` | `--drop=N` | ||||||
| : in flat mode: omit N leading account name parts | : in flat mode: omit N leading account name parts | ||||||
| 
 | 
 | ||||||
| ### incomestatement, is | This command displays a simple | ||||||
| show an income statement | [income statement](http://en.wikipedia.org/wiki/Income_statement).  It | ||||||
|  | currently assumes that you have top-level accounts named `income` (or | ||||||
|  | `revenue`) and `expense` (plural forms also allowed.) | ||||||
| 
 | 
 | ||||||
| `--flat` | _col3_({{ | ||||||
| : show full account names, as a list (default) | _shell_({{ | ||||||
|  | $ hledger incomestatement | ||||||
|  | Income Statement | ||||||
| 
 | 
 | ||||||
| `--drop=N` | Revenues: | ||||||
| : in flat mode: omit N leading account name parts |                  $-2  income | ||||||
|  |                  $-1    gifts | ||||||
|  |                  $-1    salary | ||||||
|  | -------------------- | ||||||
|  |                  $-2 | ||||||
| 
 | 
 | ||||||
| ### print | Expenses: | ||||||
| show transactions from the journal |                   $2  expenses | ||||||
|  |                   $1    food | ||||||
|  |                   $1    supplies | ||||||
|  | -------------------- | ||||||
|  |                   $2 | ||||||
|  | 
 | ||||||
|  | Total: | ||||||
|  | -------------------- | ||||||
|  |                    0 | ||||||
|  | }}) | ||||||
|  | }}) | ||||||
|  | 
 | ||||||
|  | ## print | ||||||
|  | Show transactions from the journal. | ||||||
| 
 | 
 | ||||||
| `-m STR --match=STR             ` | `-m STR --match=STR             ` | ||||||
| : show the transaction whose description is most similar to STR, and is most recent | : show the transaction whose description is most similar to STR, and is most recent | ||||||
| @ -172,8 +287,48 @@ show transactions from the journal | |||||||
| : select the output format. Supported formats: | : select the output format. Supported formats: | ||||||
| txt, csv. | txt, csv. | ||||||
| 
 | 
 | ||||||
| ### register, reg | The print command displays full transactions from the journal file, | ||||||
| show postings and running total | tidily formatted and showing all amounts explicitly. The output of | ||||||
|  | print is always a valid hledger journal, but it does always not | ||||||
|  | preserve all original content exactly (eg directives). | ||||||
|  | 
 | ||||||
|  | hledger's print command also shows all unit prices in effect, or (with | ||||||
|  | -B/--cost) shows cost amounts. | ||||||
|  | 
 | ||||||
|  | The print command also supports  | ||||||
|  | [output destination](#output-destination) | ||||||
|  | and | ||||||
|  | [CSV output](#csv-output). | ||||||
|  | 
 | ||||||
|  | _col3_({{ | ||||||
|  | _shell_({{ | ||||||
|  | $ hledger print | ||||||
|  | 2008/01/01 income | ||||||
|  |     assets:bank:checking            $1 | ||||||
|  |     income:salary                  $-1 | ||||||
|  | 
 | ||||||
|  | 2008/06/01 gift | ||||||
|  |     assets:bank:checking            $1 | ||||||
|  |     income:gifts                   $-1 | ||||||
|  | 
 | ||||||
|  | 2008/06/02 save | ||||||
|  |     assets:bank:saving              $1 | ||||||
|  |     assets:bank:checking           $-1 | ||||||
|  | 
 | ||||||
|  | 2008/06/03 * eat & shop | ||||||
|  |     expenses:food                $1 | ||||||
|  |     expenses:supplies            $1 | ||||||
|  |     assets:cash                 $-2 | ||||||
|  | 
 | ||||||
|  | 2008/12/31 * pay off | ||||||
|  |     liabilities:debts               $1 | ||||||
|  |     assets:bank:checking           $-1 | ||||||
|  | 
 | ||||||
|  | }}) | ||||||
|  | }}) | ||||||
|  | 
 | ||||||
|  | ## register | ||||||
|  | Show postings and their running total. Alias: reg. | ||||||
| 
 | 
 | ||||||
| `-H --historical` | `-H --historical` | ||||||
| : include prior postings in the running total | : include prior postings in the running total | ||||||
| @ -194,35 +349,499 @@ show postings and running total | |||||||
| : select the output format. Supported formats: | : select the output format. Supported formats: | ||||||
| txt, csv. | txt, csv. | ||||||
| 
 | 
 | ||||||
| ### stats | ```{.shell .right} | ||||||
| show some journal statistics | $ hledger register checking | ||||||
|  | 2008/01/01 income               assets:bank:checking            $1            $1 | ||||||
|  | 2008/06/01 gift                 assets:bank:checking            $1            $2 | ||||||
|  | 2008/06/02 save                 assets:bank:checking           $-1            $1 | ||||||
|  | 2008/12/31 pay off              assets:bank:checking           $-1             0 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | The register command displays postings, one per line, and their | ||||||
|  | running total.  This is typically used with a [query](#queries) | ||||||
|  | selecting a particular account, to see that account's activity. | ||||||
|  | 
 | ||||||
|  | ```{.shell .right .clear} | ||||||
|  | $ hledger register checking -b 2008/6 --historical | ||||||
|  | 2008/06/01 gift                 assets:bank:checking            $1            $2 | ||||||
|  | 2008/06/02 save                 assets:bank:checking           $-1            $1 | ||||||
|  | 2008/12/31 pay off              assets:bank:checking           $-1             0 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | The `--historical`/`-H` flag adds the balance from any prior postings | ||||||
|  | to the running total, to show the actual historical running balance. | ||||||
|  | This is useful when you want to see just the recent activity. | ||||||
|  | 
 | ||||||
|  | The `--depth` option limits the amount of sub-account detail displayed. | ||||||
|  | 
 | ||||||
|  | The `--average`/`-A` flag shows the running average posting amount | ||||||
|  | instead of the running total (so, the final number displayed is the | ||||||
|  | average for the whole report period). This flag implies `--empty` (see below). | ||||||
|  | It works best when showing just one account and one commodity. | ||||||
|  | 
 | ||||||
|  | The `--related`/`-r` flag shows the *other* postings in the transactions | ||||||
|  | of the postings which would normally be shown. | ||||||
|  | 
 | ||||||
|  | ```{.shell .right} | ||||||
|  | $ hledger register --monthly income | ||||||
|  | 2008/01                 income:salary                          $-1           $-1 | ||||||
|  | 2008/06                 income:gifts                           $-1           $-2 | ||||||
|  | ``` | ||||||
|  | ```{.shell .right} | ||||||
|  | $ hledger register --monthly income -E | ||||||
|  | 2008/01                 income:salary                          $-1           $-1 | ||||||
|  | 2008/02                                                          0           $-1 | ||||||
|  | 2008/03                                                          0           $-1 | ||||||
|  | 2008/04                                                          0           $-1 | ||||||
|  | 2008/05                                                          0           $-1 | ||||||
|  | 2008/06                 income:gifts                           $-1           $-2 | ||||||
|  | 2008/07                                                          0           $-2 | ||||||
|  | 2008/08                                                          0           $-2 | ||||||
|  | 2008/09                                                          0           $-2 | ||||||
|  | 2008/10                                                          0           $-2 | ||||||
|  | 2008/11                                                          0           $-2 | ||||||
|  | 2008/12                                                          0           $-2 | ||||||
|  | ``` | ||||||
|  | ```{.shell .right .clear} | ||||||
|  | $ hledger register --monthly assets --depth 1  # cashflow (changes to assets) by month | ||||||
|  | 2008/01                 assets                                  $1            $1 | ||||||
|  | 2008/06                 assets                                 $-1             0 | ||||||
|  | 2008/12                 assets                                 $-1           $-1 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | With a [reporting interval](#reporting-interval), register shows | ||||||
|  | summary postings, one per interval, aggregating the postings to each account. | ||||||
|  | 
 | ||||||
|  | Periods with no activity, and summary postings with a zero amount, are | ||||||
|  | not shown by default; use the `--empty`/`-E` flag to see them. | ||||||
|  | 
 | ||||||
|  | Often, you'll want to see just one line per interval. | ||||||
|  | The `--depth` option helps with this, causing subaccounts to be aggregated. | ||||||
|  | 
 | ||||||
|  | Note when using report intervals, if you specify start/end dates these | ||||||
|  | will be adjusted outward if necessary to contain a whole number of | ||||||
|  | intervals. This ensures that the first and last intervals are full | ||||||
|  | length and comparable to the others in the report. | ||||||
|  | 
 | ||||||
|  | ### Custom register output | ||||||
|  | 
 | ||||||
|  | register uses the full terminal width by default, except on windows. | ||||||
|  | You can override this by setting the `COLUMNS` environment variable (not a bash shell variable) | ||||||
|  | or by using the `--width`/`-w` option. | ||||||
|  | 
 | ||||||
|  | The description and account columns normally share the space equally | ||||||
|  | (about half of (width - 40) each). You can adjust this by adding a | ||||||
|  | description width as part of --width's argument, comma-separated: | ||||||
|  | `--width W,D` . Here's a diagram: | ||||||
|  | ``` | ||||||
|  | <--------------------------------- width (W) ----------------------------------> | ||||||
|  | date (10)  description (D)       account (W-41-D)     amount (12)   balance (12) | ||||||
|  | DDDDDDDDDD dddddddddddddddddddd  aaaaaaaaaaaaaaaaaaa  AAAAAAAAAAAA  AAAAAAAAAAAA | ||||||
|  | ``` | ||||||
|  | and some examples: | ||||||
|  | ```{.shell .bold} | ||||||
|  | $ hledger reg                 # use terminal width (or 80 on windows) | ||||||
|  | $ hledger reg -w 100          # use width 100 | ||||||
|  | $ COLUMNS=100 hledger reg     # set with one-time environment variable | ||||||
|  | $ export COLUMNS=100; hledger reg  # set till session end (or window resize) | ||||||
|  | $ hledger reg -w 100,40       # set overall width 100, description width 40 | ||||||
|  | $ hledger reg -w $COLUMNS,40  # use terminal width, and set description width | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | The register command also supports the | ||||||
|  | `-o/--output-file` and `-O/--output-format` options for controlling | ||||||
|  | [output destination](#output-destination) and [CSV output](#csv-output). | ||||||
|  | 
 | ||||||
|  | ## stats | ||||||
|  | Show some journal statistics. | ||||||
| 
 | 
 | ||||||
| `-o FILE[.FMT] --output-file=FILE[.FMT]` | `-o FILE[.FMT] --output-file=FILE[.FMT]` | ||||||
| : write output to FILE instead of stdout. A recognised FMT suffix influences the format. | : write output to FILE instead of stdout. A recognised FMT suffix influences the format. | ||||||
| 
 | 
 | ||||||
| ## Add-on commands | ```{.shell .right} | ||||||
|  | $ hledger stats | ||||||
|  | Main journal file        : /src/hledger/data/sample.journal | ||||||
|  | Included journal files   :  | ||||||
|  | Transactions span        : 2008-01-01 to 2009-01-01 (366 days) | ||||||
|  | Last transaction         : 2008-12-31 (2333 days ago) | ||||||
|  | Transactions             : 5 (0.0 per day) | ||||||
|  | Transactions last 30 days: 0 (0.0 per day) | ||||||
|  | Transactions last 7 days : 0 (0.0 per day) | ||||||
|  | Payees/descriptions      : 5 | ||||||
|  | Accounts                 : 8 (depth 3) | ||||||
|  | Commodities              : 1 ($) | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| Additional commands will be available when executables or scripts | The stats command displays summary information for the whole journal, or | ||||||
| named "`hledger-`CMD" are installed in the PATH. These are often | a matched part of it. With a [reporting interval](#reporting-interval), | ||||||
| provided by a package of the same name, or you can make your own custom scripts | it shows a report for each report period. | ||||||
| (haskell scripts can use hledger-lib allowing tight integration). |  | ||||||
| Some available add-ons are: |  | ||||||
| 
 | 
 | ||||||
| ### autosync | The stats command also supports `-o/--output-file` | ||||||
| download OFX bank data and/or convert OFX to hledger journal format | for controlling [output destination](#output-destination). | ||||||
| 
 | 
 | ||||||
| ### diff | ## test | ||||||
| show transactions present in one journal file but not another | Run built-in unit tests. | ||||||
| 
 | 
 | ||||||
| ### interest | ```{.shell .right} | ||||||
| generate interest transactions | $ hledger test | ||||||
|  | Cases: 74  Tried: 74  Errors: 0  Failures: 0 | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| ### irr | This command runs hledger's built-in unit tests and displays a quick report. | ||||||
| calculate internal rate of return | With a regular expression argument, it selects only tests with matching names. | ||||||
|  | It's mainly used in development, but it's also nice to be able to | ||||||
|  | check your hledger executable for smoke at any time. | ||||||
| 
 | 
 | ||||||
| ### ui | # ADD-ON COMMANDS | ||||||
| curses-style interface, see hledger-ui(1) |  | ||||||
| 
 | 
 | ||||||
| ### web | Add-on commands are executables in your PATH whose name starts with | ||||||
| web interface, see hledger-web(1) | `hledger-` and ends with any of these file extensions: | ||||||
|  | none, `.hs`,`.lhs`,`.pl`,`.py`,`.rb`,`.rkt`,`.sh`,`.bat`,`.com`,`.exe`. | ||||||
|  | Also, an add-on's name may not be the same as any built-in command or alias. | ||||||
|  | 
 | ||||||
|  | hledger will detect these and include them in the command list and let | ||||||
|  | you invoke them with `hledger ADDONCMD`. However there are some limitations: | ||||||
|  | 
 | ||||||
|  | - Options appearing before ADDONCMD will be visible only to hledger and will not be passed to the add-on. | ||||||
|  |   Eg: `hledger --help web` shows hledger's help, `hledger web --help` shows hledger-web's help. | ||||||
|  | - Options understood only by the add-on must go after a `--` argument to hide them from hledger, which would otherwise reject them. | ||||||
|  |   Eg: `hledger web -- --server`. | ||||||
|  | 
 | ||||||
|  | Sometimes it may be more convenient to just run the add-on directly, eg: `hledger-web --server`. | ||||||
|  | 
 | ||||||
|  | Add-ons which are written in haskell can take advantage of the hledger-lib library | ||||||
|  | for journal parsing, reporting, command-line options, etc. | ||||||
|  | 
 | ||||||
|  | Here are some hledger add-ons available from Hackage,  | ||||||
|  | the [extra](https://github.com/simonmichael/hledger/tree/master/extra) directory in the hledger source, | ||||||
|  | or elsewhere: | ||||||
|  | 
 | ||||||
|  | ## api | ||||||
|  | Web API server, see [hledger-api](hledger-api.html). | ||||||
|  | 
 | ||||||
|  | ## autosync | ||||||
|  | Download OFX bank data and/or convert OFX to hledger journal format. | ||||||
|  | 
 | ||||||
|  | ``` {.shell .right} | ||||||
|  | $ hledger autosync --help | ||||||
|  | usage: hledger-autosync [-h] [-m MAX] [-r] [-a ACCOUNT] [-l LEDGER] [-i INDENT] | ||||||
|  |                         [--initial] [--fid FID] [--assertions] [-d] [--hledger] | ||||||
|  |                         [--slow] [--which] | ||||||
|  |                         [PATH] | ||||||
|  | 
 | ||||||
|  | Synchronize ledger. | ||||||
|  | 
 | ||||||
|  | positional arguments: | ||||||
|  |   PATH                  do not sync; import from OFX file | ||||||
|  | 
 | ||||||
|  | optional arguments: | ||||||
|  |   -h, --help            show this help message and exit | ||||||
|  |   -m MAX, --max MAX     maximum number of days to process | ||||||
|  |   -r, --resync          do not stop until max days reached | ||||||
|  |   -a ACCOUNT, --account ACCOUNT | ||||||
|  |                         set account name for import | ||||||
|  |   -l LEDGER, --ledger LEDGER | ||||||
|  |                         specify ledger file to READ for syncing | ||||||
|  |   -i INDENT, --indent INDENT | ||||||
|  |                         number of spaces to use for indentation | ||||||
|  |   --initial             create initial balance entries | ||||||
|  |   --fid FID             pass in fid value for OFX files that do not supply it | ||||||
|  |   --assertions          create balance assertion entries | ||||||
|  |   -d, --debug           enable debug logging | ||||||
|  |   --hledger             force use of hledger (on by default if invoked as hledger- | ||||||
|  |                         autosync) | ||||||
|  |   --slow                use slow, but possibly more robust, method of calling ledger | ||||||
|  |                         (no subprocess) | ||||||
|  |   --which               display which version of ledger/hledger/ledger-python will | ||||||
|  |                         be used by ledger-autosync to check for previous | ||||||
|  |                         transactions | ||||||
|  | $ head acct1.ofx | ||||||
|  | OFXHEADER:100 | ||||||
|  | DATA:OFXSGML | ||||||
|  | VERSION:102 | ||||||
|  | SECURITY:NONE | ||||||
|  | ENCODING:USASCII | ||||||
|  | CHARSET:1252 | ||||||
|  | COMPRESSION:NONE | ||||||
|  | OLDFILEUID:NONE | ||||||
|  | NEWFILEUIDe:8509488b59d1bb45 | ||||||
|  | 
 | ||||||
|  | $ hledger autosync acct1.ofx | ||||||
|  | 2013/08/30 MONTHLY SERVICE FEE | ||||||
|  |     ; ofxid: 3000.4303001832.201308301 | ||||||
|  |     WF:4303001832                               -$6.00 | ||||||
|  |     [assets:business:bank:wf:bchecking:banking]  $6.00 | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | [ledger-autosync](https://bitbucket.org/egh/ledger-autosync/commits/all), | ||||||
|  | which includes a `hledger-autosync` alias, downloads transactions | ||||||
|  | from your bank(s) via OFX, and prints just the new ones as journal | ||||||
|  | entries which you can add to your journal. It can also operate on .OFX | ||||||
|  | files which you've downloaded manually. It can be a nice alternative | ||||||
|  | to hledger's built-in CSV reader, especially if your bank supports OFX | ||||||
|  | download. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ## diff | ||||||
|  | Show transactions present in one journal file but not another | ||||||
|  | 
 | ||||||
|  | ```{.shell .right} | ||||||
|  | $ hledger diff --help | ||||||
|  | Usage: hledger-diff account:name left.journal right.journal | ||||||
|  | $ cat a.journal | ||||||
|  | 1/1 | ||||||
|  |  (acct:one)  1 | ||||||
|  | 
 | ||||||
|  | $ cat b.journal | ||||||
|  | 1/1 | ||||||
|  |  (acct:one)  1 | ||||||
|  | 2/2 | ||||||
|  |  (acct:two)  2 | ||||||
|  | 
 | ||||||
|  | $ hledger diff acct:two a.journal b.journal | ||||||
|  | Unmatched transactions in the first journal: | ||||||
|  | 
 | ||||||
|  | Unmatched transactions in the second journal: | ||||||
|  | 
 | ||||||
|  | 2015/02/02 | ||||||
|  |     (acct:two)            $2 | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | [hledger-diff](http://hackage.haskell.org/package/hledger-diff) | ||||||
|  | compares two journal files. Given an account name, it prints out the | ||||||
|  | transactions affecting that account which are in one journal file but | ||||||
|  | not in the other.  This can be useful for reconciling existing | ||||||
|  | journals with bank statements. | ||||||
|  | 
 | ||||||
|  | ## equity | ||||||
|  | Print a journal entry that resets account balances to zero. | ||||||
|  | 
 | ||||||
|  | ```{.shell .right} | ||||||
|  | $ hledger balance --flat -E assets liabilities | ||||||
|  |                    0  assets:bank:checking | ||||||
|  |                   $1  assets:bank:saving | ||||||
|  |                  $-2  assets:cash | ||||||
|  |                   $1  liabilities:debts | ||||||
|  | -------------------- | ||||||
|  |                    0 | ||||||
|  | $ hledger equity assets liabilities | ||||||
|  | 2015/05/23 | ||||||
|  |     assets:bank:saving                $-1 | ||||||
|  |     assets:cash                        $2 | ||||||
|  |     liabilities:debts                 $-1 | ||||||
|  |     equity:closing balances             0 | ||||||
|  | 
 | ||||||
|  | 2015/05/23 | ||||||
|  |     assets:bank:saving                 $1 | ||||||
|  |     assets:cash                       $-2 | ||||||
|  |     liabilities:debts                  $1 | ||||||
|  |     equity:opening balances             0 | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | This prints a journal entry which zeroes out the specified accounts | ||||||
|  | (or all accounts) with a transfer to/from "equity:closing balances" | ||||||
|  | (like Ledger's equity command). Also, it prints an similar entry with | ||||||
|  | opposite sign for restoring the balances from "equity:opening | ||||||
|  | balances". | ||||||
|  | 
 | ||||||
|  | These can be useful for ending one journal file and starting a new | ||||||
|  | one, respectively. By zeroing your asset and liability accounts at the | ||||||
|  | end of a file and restoring them at the start of the next one, you | ||||||
|  | will see correct asset/liability balances whether you run hledger on | ||||||
|  | just one file, or on several files concatenated with [include](#include). | ||||||
|  | 
 | ||||||
|  | ## interest | ||||||
|  | Generate interest transactions. | ||||||
|  | 
 | ||||||
|  | ```{.shell .right} | ||||||
|  | $ hledger interest --help | ||||||
|  | Usage: hledger-interest [OPTION...] ACCOUNT | ||||||
|  |   -h          --help            print this message and exit | ||||||
|  |   -V          --version         show version number and exit | ||||||
|  |   -v          --verbose         echo input ledger to stdout (default) | ||||||
|  |   -q          --quiet           don't echo input ledger to stdout | ||||||
|  |               --today           compute interest up until today | ||||||
|  |   -f FILE     --file=FILE       input ledger file (pass '-' for stdin) | ||||||
|  |   -s ACCOUNT  --source=ACCOUNT  interest source account | ||||||
|  |   -t ACCOUNT  --target=ACCOUNT  interest target account | ||||||
|  |               --act             use 'act' day counting convention | ||||||
|  |               --30-360          use '30/360' day counting convention | ||||||
|  |               --30E-360         use '30E/360' day counting convention | ||||||
|  |               --30E-360isda     use '30E/360isda' day counting convention | ||||||
|  |               --constant=RATE   constant interest rate | ||||||
|  |               --annual=RATE     annual interest rate | ||||||
|  |               --bgb288          compute interest according to German BGB288 | ||||||
|  |               --ing-diba        compute interest according for Ing-Diba Tagesgeld account | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ```{.shell .right .clear} | ||||||
|  | $ cat interest.journal | ||||||
|  | 2008/09/26 Loan | ||||||
|  |      Assets:Bank          EUR 10000.00 | ||||||
|  |      Liabilities:Bank | ||||||
|  | 
 | ||||||
|  | 2008/11/27 Payment | ||||||
|  |      Assets:Bank          EUR -3771.12 | ||||||
|  |      Liabilities:Bank | ||||||
|  | 
 | ||||||
|  | 2009/05/03 Payment | ||||||
|  |      Assets:Bank          EUR -1200.00 | ||||||
|  |      Liabilities:Bank | ||||||
|  | 
 | ||||||
|  | 2010/12/10 Payment | ||||||
|  |      Assets:Bank          EUR -3700.00 | ||||||
|  |      Liabilities:Bank | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ```{.shell .right .clear} | ||||||
|  | $ hledger interest -- -f interest.journal --source=Expenses:Interest \ | ||||||
|  |     --target=Liabilities:Bank --30-360 --annual=0.05 Liabilities:Bank | ||||||
|  | 2008/09/26 Loan | ||||||
|  |     Assets:Bank       EUR 10000.00 | ||||||
|  |     Liabilities:Bank  EUR -10000.00 | ||||||
|  | 
 | ||||||
|  | 2008/11/27 0.05% interest for EUR -10000.00 over 61 days | ||||||
|  |     Liabilities:Bank     EUR -84.72 | ||||||
|  |     Expenses:Interest     EUR 84.72 | ||||||
|  | 
 | ||||||
|  | 2008/11/27 Payment | ||||||
|  |     Assets:Bank       EUR -3771.12 | ||||||
|  |     Liabilities:Bank   EUR 3771.12 | ||||||
|  | 
 | ||||||
|  | 2008/12/31 0.05% interest for EUR -6313.60 over 34 days | ||||||
|  |     Liabilities:Bank     EUR -29.81 | ||||||
|  |     Expenses:Interest     EUR 29.81 | ||||||
|  | 
 | ||||||
|  | 2009/05/03 0.05% interest for EUR -6343.42 over 123 days | ||||||
|  |     Liabilities:Bank    EUR -108.37 | ||||||
|  |     Expenses:Interest    EUR 108.37 | ||||||
|  | 
 | ||||||
|  | 2009/05/03 Payment | ||||||
|  |     Assets:Bank       EUR -1200.00 | ||||||
|  |     Liabilities:Bank   EUR 1200.00 | ||||||
|  | 
 | ||||||
|  | 2009/12/31 0.05% interest for EUR -5251.78 over 238 days | ||||||
|  |     Liabilities:Bank    EUR -173.60 | ||||||
|  |     Expenses:Interest    EUR 173.60 | ||||||
|  | 
 | ||||||
|  | 2010/12/10 0.05% interest for EUR -5425.38 over 340 days | ||||||
|  |     Liabilities:Bank    EUR -256.20 | ||||||
|  |     Expenses:Interest    EUR 256.20 | ||||||
|  | 
 | ||||||
|  | 2010/12/10 Payment | ||||||
|  |     Assets:Bank       EUR -3700.00 | ||||||
|  |     Liabilities:Bank   EUR 3700.00 | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | [hledger-interest](http://hackage.haskell.org/package/hledger-interest) | ||||||
|  | computes interests for a given account. Using command line flags, | ||||||
|  | the program can be configured to use various schemes for day-counting, | ||||||
|  | such as act/act, 30/360, 30E/360, and 30/360isda. Furthermore, it | ||||||
|  | supports a (small) number of interest schemes, i.e. annual interest | ||||||
|  | with a fixed rate and the scheme mandated by the German BGB288 | ||||||
|  | (Basiszins für Verbrauchergeschäfte). See the package page for more. | ||||||
|  | 
 | ||||||
|  | ## irr | ||||||
|  | Calculate internal rate of return. | ||||||
|  | 
 | ||||||
|  | ```{.shell .right} | ||||||
|  | $ hledger irr --help | ||||||
|  | Usage: hledger-irr [OPTION...] | ||||||
|  |   -h          --help                        print this message and exit | ||||||
|  |   -V          --version                     show version number and exit | ||||||
|  |   -c          --cashflow                    also show all revant transactions | ||||||
|  |   -f FILE     --file=FILE                   input ledger file (pass '-' for stdin) | ||||||
|  |   -i ACCOUNT  --investment-account=ACCOUNT  investment account | ||||||
|  |   -t ACCOUNT  --interest-account=ACCOUNT    interest/gain/fees/losses account | ||||||
|  |   -b DATE     --begin=DATE                  calculate interest from this date | ||||||
|  |   -e DATE     --end=DATE                    calculate interest until this date | ||||||
|  |   -D          --daily                       calculate interest for each day | ||||||
|  |   -W          --weekly                      calculate interest for each week | ||||||
|  |   -M          --monthly                     calculate interest for each month | ||||||
|  |   -Y          --yearly                      calculate interest for each year | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ```{.shell .right .clear} | ||||||
|  | $ cat irr.journal  | ||||||
|  | 2011-01-01 Some wild speculation – I wonder if it pays off | ||||||
|  |    Speculation   €100.00 | ||||||
|  |    Cash | ||||||
|  | 
 | ||||||
|  | 2011-02-01 More speculation (and adjustment of value) | ||||||
|  |    Cash         -€10.00 | ||||||
|  |    Rate Gain     -€1.00 | ||||||
|  |    Speculation | ||||||
|  | 
 | ||||||
|  | 2011-03-01 Lets pull out some money (and adjustment of value) | ||||||
|  |    Cash          €30.00 | ||||||
|  |    Rate Gain     -€3.00 | ||||||
|  |    Speculation | ||||||
|  | 
 | ||||||
|  | 2011-04-01 More speculation (and it lost some money!) | ||||||
|  |    Cash         -€50.00 | ||||||
|  |    Rate Gain     € 5.00 | ||||||
|  |    Speculation | ||||||
|  | 
 | ||||||
|  | 2011-05-01 Getting some money out (and adjustment of value) | ||||||
|  |    Speculation  -€44.00 | ||||||
|  |    Rate Gain    -€ 3.00 | ||||||
|  |    Cash | ||||||
|  | 
 | ||||||
|  | 2011-06-01 Emptying the account (after adjusting the value) | ||||||
|  |    Speculation   -€85.00 | ||||||
|  |    Cash           €90.00 | ||||||
|  |    Rate Gain     -€ 5.00 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ```{.shell .right .clear} | ||||||
|  | $ hledger-irr -f irr.journal -t "Rate Gain" -i Speculation  --monthly | ||||||
|  | 2011/01/01 - 2011/02/01: 12.49% | ||||||
|  | 2011/02/01 - 2011/03/01: 41.55% | ||||||
|  | 2011/03/01 - 2011/04/01: -51.44% | ||||||
|  | 2011/04/01 - 2011/05/01: 32.24% | ||||||
|  | 2011/05/01 - 2011/06/01: 95.92% | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | [hledger-irr](http://hackage.haskell.org/package/hledger-irr) | ||||||
|  | computes the internal rate of return, also known as the effective | ||||||
|  | interest rate, of a given investment. After specifying what account | ||||||
|  | holds the investment, and what account stores the gains (or losses, or | ||||||
|  | fees, or cost), it calculates the hypothetical annual rate of fixed | ||||||
|  | rate investment that would have provided the exact same cash flow. | ||||||
|  | See the package page for more. | ||||||
|  | 
 | ||||||
|  | ## print-unique | ||||||
|  | Print only only journal entries which have a unique description. | ||||||
|  | 
 | ||||||
|  | ```{.shell .right} | ||||||
|  | $ cat unique.journal | ||||||
|  | 1/1 test | ||||||
|  |  (acct:one)  1 | ||||||
|  | 2/2 test | ||||||
|  |  (acct:two)  2 | ||||||
|  | $ LEDGER_FILE=unique.journal hledger print-unique | ||||||
|  | (-f option not supported) | ||||||
|  | 2015/01/01 test | ||||||
|  |     (acct:one)             1 | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ## rewrite | ||||||
|  | Prints all journal entries, adding specified custom postings to matched entries. | ||||||
|  | 
 | ||||||
|  | ```{.shell .right .bold} | ||||||
|  | $ hledger rewrite -- [QUERY]        --add-posting "ACCT  AMTEXPR" ... | ||||||
|  | $ hledger rewrite -- ^income        --add-posting '(liabilities:tax)  *.33' | ||||||
|  | $ hledger rewrite -- expenses:gifts --add-posting '(budget:gifts)  *-1"' | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ## ui | ||||||
|  | Curses-style interface, see [hledger-ui](hledger-ui.html). | ||||||
|  | 
 | ||||||
|  | ## web | ||||||
|  | Web interface, see [hledger-web](hledger-web.html). | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -15,11 +15,11 @@ or standard input with `-f-`. | |||||||
| Transactions are dated movements of money between two (or more) named | Transactions are dated movements of money between two (or more) named | ||||||
| accounts, and are recorded with journal entries like this: | accounts, and are recorded with journal entries like this: | ||||||
| 
 | 
 | ||||||
| ```journal | _journal_({{ | ||||||
| 2015/10/16 bought food | 2015/10/16 bought food | ||||||
|  expenses:food          $10 |  expenses:food          $10 | ||||||
|  assets:cash |  assets:cash | ||||||
| ``` | }}) | ||||||
| 
 | 
 | ||||||
| For more about the format, see hledger_journal(5). | For more about the format, see hledger_journal(5). | ||||||
| 
 | 
 | ||||||
|  | |||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @ -27,10 +27,10 @@ http://hledger.org/manual. | |||||||
| </div> | </div> | ||||||
| 
 | 
 | ||||||
| _include_(description.m4.md) | _include_(description.m4.md) | ||||||
| _include_(options.m4.md) |  | ||||||
| _include_(commands.m4.md) |  | ||||||
| _include_(queries.m4.md) |  | ||||||
| _include_(examples.m4.md) | _include_(examples.m4.md) | ||||||
|  | _include_(options.m4.md) | ||||||
|  | _include_(queries.m4.md) | ||||||
|  | _include_(commands.m4.md) | ||||||
| 
 | 
 | ||||||
| <div class="man"> | <div class="man"> | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -10,10 +10,10 @@ COMMAND, not before it. | |||||||
| Also, when invoking external add-on commands, their options must be | Also, when invoking external add-on commands, their options must be | ||||||
| written after a double hyphen. (Or, you can invoke the external command | written after a double hyphen. (Or, you can invoke the external command | ||||||
| directly.) Eg: | directly.) Eg: | ||||||
| ```{.shell .bold} | _shellbold_({{ | ||||||
| $ hledger ui -- --register cash | $ hledger ui -- --register cash | ||||||
| $ hledger-ui --register cash | $ hledger-ui --register cash | ||||||
| ``` | }}) | ||||||
| 
 | 
 | ||||||
| Options and command arguments can be intermixed. Arguments are usually | Options and command arguments can be intermixed. Arguments are usually | ||||||
| interpreted as a search query which filters the data, see QUERIES. | interpreted as a search query which filters the data, see QUERIES. | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user