;doc: update manuals
This commit is contained in:
		
							parent
							
								
									085b7d4b88
								
							
						
					
					
						commit
						4451d68a63
					
				| @ -302,12 +302,6 @@ There\[aq]s not yet any visual reminder when cost or value mode is | ||||
| active; for now pressing \f[C]b\f[R] \f[C]b\f[R] \f[C]v\f[R] should | ||||
| reliably reset to normal mode. | ||||
| .PP | ||||
| With \f[C]--watch\f[R] active, if you save an edit to the journal file | ||||
| while viewing the transaction screen in cost or value mode, the | ||||
| \f[C]B\f[R]/\f[C]V\f[R] keys will stop working. | ||||
| To work around, press \f[C]g\f[R] to force a manual reload, or exit the | ||||
| transaction screen. | ||||
| .PP | ||||
| \f[C]q\f[R] quits the application. | ||||
| .PP | ||||
| Additional screen-specific keys are described below. | ||||
| @ -439,6 +433,58 @@ when you press g to reload. | ||||
| Once you have fixed the problem, press g again to reload and resume | ||||
| normal operation. | ||||
| (Or, you can press escape to cancel the reload attempt.) | ||||
| .SH TIPS | ||||
| .SS Watch mode | ||||
| .PP | ||||
| One of hledger-ui\[aq]s best features is the auto-reloading | ||||
| \f[C]--watch\f[R] mode. | ||||
| With this flag, it will update the display automatically whenever | ||||
| changes are saved to the data files. | ||||
| .PP | ||||
| This is very useful when reconciling. | ||||
| A good workflow is to have your bank\[aq]s online register open in a | ||||
| browser window, for reference; the journal file open in an editor | ||||
| window; and hledger-ui in watch mode in a terminal window, eg: | ||||
| .IP | ||||
| .nf | ||||
| \f[C] | ||||
| $ hledger-ui --watch --register checking -C | ||||
| \f[R] | ||||
| .fi | ||||
| .PP | ||||
| As you mark things cleared in the editor, you can see the effect | ||||
| immediately without having to context switch. | ||||
| This leaves more mental bandwidth for your accounting. | ||||
| Of course you can still interact with hledger-ui when needed, eg to | ||||
| toggle cleared mode, or to explore the history. | ||||
| .SS Watch mode limitations | ||||
| .PP | ||||
| There are situations in which it won\[aq]t work, ie the display will not | ||||
| update when you save a change (because the underlying \f[C]inotify\f[R] | ||||
| library does not support it). | ||||
| Here are some that we know of: | ||||
| .IP \[bu] 2 | ||||
| Certain editors: saving with \f[C]gedit\f[R], and perhaps any Gnome | ||||
| application, won\[aq]t be detected (#1617). | ||||
| Jetbrains IDEs, such as IDEA, also may not work (#911). | ||||
| .IP \[bu] 2 | ||||
| Certain unusual filesystems might not be supported. | ||||
| (All the usual ones on unix, mac and windows are supported.) | ||||
| .PP | ||||
| In such cases, the workaround is to switch to the hledger-ui window and | ||||
| press \f[C]g\f[R] each time you want it to reload. | ||||
| (Actually, see #1617 for another workaround, and let us know if it works | ||||
| for you.) | ||||
| .PP | ||||
| If you leave \f[C]hledger-ui --watch\f[R] running for days, on certain | ||||
| platforms (?), perhaps with many transactions in your journal (?), | ||||
| perhaps with large numbers of other files present (?), you may see it | ||||
| gradually using more and more memory and CPU over time, as seen in | ||||
| \f[C]top\f[R] or Activity Monitor or Task Manager. | ||||
| .PP | ||||
| A workaround is to \f[C]q\f[R]uit and restart it, or to suspend it | ||||
| (\f[C]CTRL-z\f[R]) and restart it (\f[C]fg\f[R]) if your shell supports | ||||
| that. | ||||
| .SH ENVIRONMENT | ||||
| .PP | ||||
| \f[B]COLUMNS\f[R] The screen width to use. | ||||
|  | ||||
| @ -3,7 +3,7 @@ from stdin. | ||||
| 
 | ||||
| INFO-DIR-SECTION User Applications | ||||
| START-INFO-DIR-ENTRY | ||||
| * hledger-ui: (hledger-ui/hledger-ui).  Terminal UI for the hledger accounting tool. | ||||
| * hledger-ui: (hledger-ui).  Terminal UI for the hledger accounting tool. | ||||
| END-INFO-DIR-ENTRY | ||||
| 
 | ||||
|  | ||||
| @ -45,6 +45,7 @@ enable "forecast mode". | ||||
| * OPTIONS:: | ||||
| * KEYS:: | ||||
| * SCREENS:: | ||||
| * TIPS:: | ||||
| * ENVIRONMENT:: | ||||
| * FILES:: | ||||
| * BUGS:: | ||||
| @ -308,17 +309,12 @@ screen, press `/', and add `date:-7/30' to the query. | ||||
| active; for now pressing `b' `b' `v' should reliably reset to normal | ||||
| mode. | ||||
| 
 | ||||
|    With `--watch' active, if you save an edit to the journal file while | ||||
| viewing the transaction screen in cost or value mode, the `B'/`V' keys | ||||
| will stop working. To work around, press `g' to force a manual reload, | ||||
| or exit the transaction screen. | ||||
| 
 | ||||
|    `q' quits the application. | ||||
| 
 | ||||
|    Additional screen-specific keys are described below. | ||||
| 
 | ||||
|  | ||||
| File: hledger-ui.info,  Node: SCREENS,  Next: ENVIRONMENT,  Prev: KEYS,  Up: Top | ||||
| File: hledger-ui.info,  Node: SCREENS,  Next: TIPS,  Prev: KEYS,  Up: Top | ||||
| 
 | ||||
| 3 SCREENS | ||||
| ********* | ||||
| @ -463,9 +459,75 @@ again to reload and resume normal operation. (Or, you can press escape | ||||
| to cancel the reload attempt.) | ||||
| 
 | ||||
|  | ||||
| File: hledger-ui.info,  Node: ENVIRONMENT,  Next: FILES,  Prev: SCREENS,  Up: Top | ||||
| File: hledger-ui.info,  Node: TIPS,  Next: ENVIRONMENT,  Prev: SCREENS,  Up: Top | ||||
| 
 | ||||
| 4 ENVIRONMENT | ||||
| 4 TIPS | ||||
| ****** | ||||
| 
 | ||||
| * Menu: | ||||
| 
 | ||||
| * Watch mode:: | ||||
| * Watch mode limitations:: | ||||
| 
 | ||||
|  | ||||
| File: hledger-ui.info,  Node: Watch mode,  Next: Watch mode limitations,  Up: TIPS | ||||
| 
 | ||||
| 4.1 Watch mode | ||||
| ============== | ||||
| 
 | ||||
| One of hledger-ui's best features is the auto-reloading `--watch' mode. | ||||
| With this flag, it will update the display automatically whenever | ||||
| changes are saved to the data files. | ||||
| 
 | ||||
|    This is very useful when reconciling. A good workflow is to have your | ||||
| bank's online register open in a browser window, for reference; the | ||||
| journal file open in an editor window; and hledger-ui in watch mode in a | ||||
| terminal window, eg: | ||||
| 
 | ||||
| 
 | ||||
| $ hledger-ui --watch --register checking -C | ||||
| 
 | ||||
|    As you mark things cleared in the editor, you can see the effect | ||||
| immediately without having to context switch. This leaves more mental | ||||
| bandwidth for your accounting. Of course you can still interact with | ||||
| hledger-ui when needed, eg to toggle cleared mode, or to explore the | ||||
| history. | ||||
| 
 | ||||
|  | ||||
| File: hledger-ui.info,  Node: Watch mode limitations,  Prev: Watch mode,  Up: TIPS | ||||
| 
 | ||||
| 4.2 Watch mode limitations | ||||
| ========================== | ||||
| 
 | ||||
| There are situations in which it won't work, ie the display will not | ||||
| update when you save a change (because the underlying `inotify' library | ||||
| does not support it). Here are some that we know of: | ||||
| 
 | ||||
|    * Certain editors: saving with `gedit', and perhaps any Gnome | ||||
|      application, won't be detected (#1617). Jetbrains IDEs, such as | ||||
|      IDEA, also may not work (#911). | ||||
| 
 | ||||
|    * Certain unusual filesystems might not be supported. (All the usual | ||||
|      ones on unix, mac and windows are supported.) | ||||
| 
 | ||||
| 
 | ||||
|    In such cases, the workaround is to switch to the hledger-ui window | ||||
| and press `g' each time you want it to reload. (Actually, see #1617 for | ||||
| another workaround, and let us know if it works for you.) | ||||
| 
 | ||||
|    If you leave `hledger-ui --watch' running for days, on certain | ||||
| platforms (?), perhaps with many transactions in your journal (?), | ||||
| perhaps with large numbers of other files present (?), you may see it | ||||
| gradually using more and more memory and CPU over time, as seen in | ||||
| `top' or Activity Monitor or Task Manager. | ||||
| 
 | ||||
|    A workaround is to `q'uit and restart it, or to suspend it | ||||
| (`CTRL-z') and restart it (`fg') if your shell supports that. | ||||
| 
 | ||||
|  | ||||
| File: hledger-ui.info,  Node: ENVIRONMENT,  Next: FILES,  Prev: TIPS,  Up: Top | ||||
| 
 | ||||
| 5 ENVIRONMENT | ||||
| ************* | ||||
| 
 | ||||
| *COLUMNS* The screen width to use. Default: the full terminal width. | ||||
| @ -494,7 +556,7 @@ GUI (say, an Emacs dock icon). Eg on MacOS Catalina I have a | ||||
|  | ||||
| File: hledger-ui.info,  Node: FILES,  Next: BUGS,  Prev: ENVIRONMENT,  Up: Top | ||||
| 
 | ||||
| 5 FILES | ||||
| 6 FILES | ||||
| ******* | ||||
| 
 | ||||
| Reads data from one or more files in hledger journal, timeclock, | ||||
| @ -505,7 +567,7 @@ timedot, or CSV format specified with `-f', or `$LEDGER_FILE', or | ||||
|  | ||||
| File: hledger-ui.info,  Node: BUGS,  Prev: FILES,  Up: Top | ||||
| 
 | ||||
| 6 BUGS | ||||
| 7 BUGS | ||||
| ****** | ||||
| 
 | ||||
| The need to precede options with `--' when invoked from hledger is | ||||
| @ -533,26 +595,32 @@ program is restarted. | ||||
| 
 | ||||
|  | ||||
| Tag Table: | ||||
| Node: Top243 | ||||
| Node: OPTIONS1636 | ||||
| Ref: #options1733 | ||||
| Node: KEYS6128 | ||||
| Ref: #keys6223 | ||||
| Node: SCREENS10519 | ||||
| Ref: #screens10624 | ||||
| Node: Accounts screen10714 | ||||
| Ref: #accounts-screen10842 | ||||
| Node: Register screen13046 | ||||
| Ref: #register-screen13201 | ||||
| Node: Transaction screen15196 | ||||
| Ref: #transaction-screen15354 | ||||
| Node: Error screen16221 | ||||
| Ref: #error-screen16343 | ||||
| Node: ENVIRONMENT16585 | ||||
| Ref: #environment16699 | ||||
| Node: FILES17504 | ||||
| Ref: #files17603 | ||||
| Node: BUGS17816 | ||||
| Ref: #bugs17893 | ||||
| Node: Top232 | ||||
| Node: OPTIONS1634 | ||||
| Ref: #options1731 | ||||
| Node: KEYS6126 | ||||
| Ref: #keys6221 | ||||
| Node: SCREENS10270 | ||||
| Ref: #screens10368 | ||||
| Node: Accounts screen10458 | ||||
| Ref: #accounts-screen10586 | ||||
| Node: Register screen12790 | ||||
| Ref: #register-screen12945 | ||||
| Node: Transaction screen14940 | ||||
| Ref: #transaction-screen15098 | ||||
| Node: Error screen15965 | ||||
| Ref: #error-screen16087 | ||||
| Node: TIPS16329 | ||||
| Ref: #tips16428 | ||||
| Node: Watch mode16480 | ||||
| Ref: #watch-mode16597 | ||||
| Node: Watch mode limitations17341 | ||||
| Ref: #watch-mode-limitations17482 | ||||
| Node: ENVIRONMENT18615 | ||||
| Ref: #environment18726 | ||||
| Node: FILES19531 | ||||
| Ref: #files19630 | ||||
| Node: BUGS19843 | ||||
| Ref: #bugs19920 | ||||
|  | ||||
| End Tag Table | ||||
|  | ||||
| @ -276,11 +276,6 @@ KEYS | ||||
|        There's not yet any visual reminder when cost or value mode is  active; | ||||
|        for now pressing b b v should reliably reset to normal mode. | ||||
| 
 | ||||
|        With  --watch  active,  if  you  save an edit to the journal file while | ||||
|        viewing the transaction screen in cost or value mode, the B/V keys will | ||||
|        stop  working.   To  work  around, press g to force a manual reload, or | ||||
|        exit the transaction screen. | ||||
| 
 | ||||
|        q quits the application. | ||||
| 
 | ||||
|        Additional screen-specific keys are described below. | ||||
| @ -393,6 +388,50 @@ SCREENS | ||||
|        again to reload and resume normal operation.  (Or, you can press escape | ||||
|        to cancel the reload attempt.) | ||||
| 
 | ||||
| TIPS | ||||
|    Watch mode | ||||
|        One  of  hledger-ui's best features is the auto-reloading --watch mode. | ||||
|        With this flag, it  will  update  the  display  automatically  whenever | ||||
|        changes are saved to the data files. | ||||
| 
 | ||||
|        This  is very useful when reconciling.  A good workflow is to have your | ||||
|        bank's online register open in a browser  window,  for  reference;  the | ||||
|        journal  file open in an editor window; and hledger-ui in watch mode in | ||||
|        a terminal window, eg: | ||||
| 
 | ||||
|               $ hledger-ui --watch --register checking -C | ||||
| 
 | ||||
|        As you mark things cleared in the editor, you can see the effect  imme- | ||||
|        diately  without  having  to  context  switch.  This leaves more mental | ||||
|        bandwidth for your accounting.  Of course you can still  interact  with | ||||
|        hledger-ui  when  needed,  eg to toggle cleared mode, or to explore the | ||||
|        history. | ||||
| 
 | ||||
|    Watch mode limitations | ||||
|        There are situations in which it won't work, ie the  display  will  not | ||||
|        update  when  you save a change (because the underlying inotify library | ||||
|        does not support it).  Here are some that we know of: | ||||
| 
 | ||||
|        o Certain editors: saving with gedit, and perhaps  any  Gnome  applica- | ||||
|          tion,  won't be detected (#1617).  Jetbrains IDEs, such as IDEA, also | ||||
|          may not work (#911). | ||||
| 
 | ||||
|        o Certain unusual filesystems might not be supported.  (All  the  usual | ||||
|          ones on unix, mac and windows are supported.) | ||||
| 
 | ||||
|        In such cases, the workaround is to switch to the hledger-ui window and | ||||
|        press g each time you want it to  reload.   (Actually,  see  #1617  for | ||||
|        another workaround, and let us know if it works for you.) | ||||
| 
 | ||||
|        If  you leave hledger-ui --watch running for days, on certain platforms | ||||
|        (?), perhaps with many transactions in your journal (?),  perhaps  with | ||||
|        large  numbers  of  other  files  present (?), you may see it gradually | ||||
|        using more and more memory and CPU over time, as seen in top or  Activ- | ||||
|        ity Monitor or Task Manager. | ||||
| 
 | ||||
|        A  workaround  is to quit and restart it, or to suspend it (CTRL-z) and | ||||
|        restart it (fg) if your shell supports that. | ||||
| 
 | ||||
| ENVIRONMENT | ||||
|        COLUMNS The screen width to use.  Default: the full terminal width. | ||||
| 
 | ||||
|  | ||||
| @ -3,7 +3,7 @@ from stdin. | ||||
| 
 | ||||
| INFO-DIR-SECTION User Applications | ||||
| START-INFO-DIR-ENTRY | ||||
| * hledger-web: (hledger-web/hledger-web).  Web UI/API for the hledger accounting tool. | ||||
| * hledger-web: (hledger-web).  Web UI/API for the hledger accounting tool. | ||||
| END-INFO-DIR-ENTRY | ||||
| 
 | ||||
|  | ||||
| @ -612,22 +612,22 @@ awkward. | ||||
| 
 | ||||
|  | ||||
| Tag Table: | ||||
| Node: Top247 | ||||
| Node: OPTIONS1887 | ||||
| Ref: #options1992 | ||||
| Node: PERMISSIONS9405 | ||||
| Ref: #permissions9544 | ||||
| Node: EDITING UPLOADING DOWNLOADING10756 | ||||
| Ref: #editing-uploading-downloading10937 | ||||
| Node: RELOADING11768 | ||||
| Ref: #reloading11902 | ||||
| Node: JSON API12334 | ||||
| Ref: #json-api12448 | ||||
| Node: ENVIRONMENT17937 | ||||
| Ref: #environment18053 | ||||
| Node: FILES18785 | ||||
| Ref: #files18885 | ||||
| Node: BUGS19098 | ||||
| Ref: #bugs19176 | ||||
| Node: Top235 | ||||
| Node: OPTIONS1875 | ||||
| Ref: #options1980 | ||||
| Node: PERMISSIONS9393 | ||||
| Ref: #permissions9532 | ||||
| Node: EDITING UPLOADING DOWNLOADING10744 | ||||
| Ref: #editing-uploading-downloading10925 | ||||
| Node: RELOADING11756 | ||||
| Ref: #reloading11890 | ||||
| Node: JSON API12322 | ||||
| Ref: #json-api12436 | ||||
| Node: ENVIRONMENT17925 | ||||
| Ref: #environment18041 | ||||
| Node: FILES18773 | ||||
| Ref: #files18873 | ||||
| Node: BUGS19086 | ||||
| Ref: #bugs19164 | ||||
|  | ||||
| End Tag Table | ||||
|  | ||||
| @ -296,6 +296,11 @@ or: | ||||
| $ hledger register credit\[rs] card | ||||
| \f[R] | ||||
| .fi | ||||
| .PP | ||||
| Windows users should keep in mind that \f[C]cmd\f[R] treats single quote | ||||
| as a regular character, so you should be using double quotes | ||||
| exclusively. | ||||
| PowerShell treats both single and double quotes as quotes. | ||||
| .SS Double escaping (regular expression metacharacters) | ||||
| .PP | ||||
| Characters significant in regular expressions (described below) - such | ||||
| @ -657,6 +662,8 @@ Are all accounts posted to, declared with an \f[C]account\f[R] directive | ||||
| .IP \[bu] 2 | ||||
| Are all commodities declared with a \f[C]commodity\f[R] directive ? | ||||
| (Commodity error checking) | ||||
| .IP \[bu] 2 | ||||
| Are all commodity conversions declared explicitly ? | ||||
| .PP | ||||
| You can also use the check command to run these and some additional | ||||
| checks. | ||||
| @ -754,6 +761,7 @@ T}@T{ | ||||
| 9+ digits beginning with a valid YYYYMMDD gives an error | ||||
| T} | ||||
| .TE | ||||
| .PP | ||||
| .SS Report start & end date | ||||
| .PP | ||||
| By default, most hledger reports will show the full span of time | ||||
| @ -1140,18 +1148,171 @@ This flag has the same effect as a \f[C]depth:\f[R] query argument (so | ||||
| \f[C]-2\f[R], \f[C]--depth=2\f[R] or \f[C]depth:2\f[R] are equivalent). | ||||
| .SH QUERIES | ||||
| .PP | ||||
| One of hledger\[aq]s strengths is being able to quickly report on | ||||
| precise subsets of your data. | ||||
| Most commands accept an optional query expression, written as arguments | ||||
| after the command name, to filter the data by date, account name or | ||||
| other criteria. | ||||
| The syntax is similar to a web search: one or more space-separated | ||||
| search terms, quotes to enclose whitespace, prefixes to match specific | ||||
| fields, a not: prefix to negate the match. | ||||
| One of hledger\[aq]s strengths is being able to quickly report on a | ||||
| precise subset of your data. | ||||
| Most hledger commands accept optional query arguments to restrict their | ||||
| scope. | ||||
| The syntax is as follows: | ||||
| .IP \[bu] 2 | ||||
| Zero or more space-separated query terms. | ||||
| These are most often account name substrings: | ||||
| .RS 2 | ||||
| .PP | ||||
| We do not yet support arbitrary boolean combinations of search terms; | ||||
| instead most commands show transactions/postings/accounts which match | ||||
| (or negatively match): | ||||
| \f[C]utilities food:groceries\f[R] | ||||
| .RE | ||||
| .IP \[bu] 2 | ||||
| Terms with spaces or other special characters should be enclosed in | ||||
| quotes: | ||||
| .RS 2 | ||||
| .PP | ||||
| \f[C]\[dq]personal care\[dq]\f[R] | ||||
| .RE | ||||
| .IP \[bu] 2 | ||||
| Regular expressions are also supported: | ||||
| .RS 2 | ||||
| .PP | ||||
| \f[C]\[dq]\[ha]expenses\[rs]b\[dq] \[dq]accounts (payable|receivable)\[dq]\f[R] | ||||
| .RE | ||||
| .IP \[bu] 2 | ||||
| Add a query type prefix to match other parts of the data: | ||||
| .RS 2 | ||||
| .PP | ||||
| \f[C]date:202012- desc:amazon cur:USD amt:\[dq]>100\[dq] status:\f[R] | ||||
| .RE | ||||
| .IP \[bu] 2 | ||||
| Add a \f[C]not:\f[R] prefix to negate a term: | ||||
| .RS 2 | ||||
| .PP | ||||
| \f[C]not:cur:USD\f[R] | ||||
| .RE | ||||
| .SS Query types | ||||
| .PP | ||||
| Here are the types of query term available. | ||||
| Remember these can also be prefixed with \f[B]\f[CB]not:\f[B]\f[R] to | ||||
| convert them into a negative match. | ||||
| .PP | ||||
| \f[B]\f[CB]acct:REGEX\f[B], \f[CB]REGEX\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match account names containing this (case insensitive) regular | ||||
| expression. | ||||
| This is the default query type when there is no prefix, and regular | ||||
| expression syntax is typically not needed, so usually we just write an | ||||
| account name substring, like \f[C]expenses\f[R] or \f[C]food\f[R]. | ||||
| .PP | ||||
| \f[B]\f[CB]amt:N, amt:<N, amt:<=N, amt:>N, amt:>=N\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match postings with a single-commodity amount equal to, less than, or | ||||
| greater than N. | ||||
| (Postings with multi-commodity amounts are not tested and will always | ||||
| match.) The comparison has two modes: if N is preceded by a + or - sign | ||||
| (or is 0), the two signed numbers are compared. | ||||
| Otherwise, the absolute magnitudes are compared, ignoring sign. | ||||
| .PP | ||||
| \f[B]\f[CB]code:REGEX\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match by transaction code (eg check number). | ||||
| .PP | ||||
| \f[B]\f[CB]cur:REGEX\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match postings or transactions including any amounts whose | ||||
| currency/commodity symbol is fully matched by REGEX. | ||||
| (For a partial match, use \f[C].*REGEX.*\f[R]). | ||||
| Note, to match special characters which are regex-significant, you need | ||||
| to escape them with \f[C]\[rs]\f[R]. | ||||
| And for characters which are significant to your shell you may need one | ||||
| more level of escaping. | ||||
| So eg to match the dollar sign: | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| \f[C]hledger print cur:\[rs]\[rs]$\f[R]. | ||||
| .PP | ||||
| \f[B]\f[CB]desc:REGEX\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match transaction descriptions. | ||||
| .PP | ||||
| \f[B]\f[CB]date:PERIODEXPR\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match dates (or with the \f[C]--date2\f[R] flag, secondary dates) within | ||||
| the specified period. | ||||
| PERIODEXPR is a period expression with no report interval. | ||||
| Examples: | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| \f[C]date:2016\f[R], \f[C]date:thismonth\f[R], \f[C]date:2/1-2/15\f[R], | ||||
| \f[C]date:2021-07-27..nextquarter\f[R]. | ||||
| .PP | ||||
| \f[B]\f[CB]date2:PERIODEXPR\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match secondary dates within the specified period (independent of the | ||||
| \f[C]--date2\f[R] flag). | ||||
| .PP | ||||
| \f[B]\f[CB]depth:N\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match (or display, depending on command) accounts at or above this | ||||
| depth. | ||||
| .PP | ||||
| \f[B]\f[CB]note:REGEX\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match transaction notes (the part of the description right of | ||||
| \f[C]|\f[R], or the whole description if there\[aq]s no \f[C]|\f[R]). | ||||
| .PP | ||||
| \f[B]\f[CB]payee:REGEX\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match transaction payee/payer names (the part of the description left of | ||||
| \f[C]|\f[R], or the whole description if there\[aq]s no \f[C]|\f[R]). | ||||
| .PP | ||||
| \f[B]\f[CB]real:, real:0\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match real or virtual postings respectively. | ||||
| .PP | ||||
| \f[B]\f[CB]status:, status:!, status:*\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match unmarked, pending, or cleared transactions respectively. | ||||
| .PP | ||||
| \f[B]\f[CB]tag:REGEX[=REGEX]\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| Match by tag name, and optionally also by tag value. | ||||
| (To match only by value, use \f[C]tag:.=REGEX\f[R].) Note that postings | ||||
| also inherit tags from their transaction, and transactions also acquire | ||||
| tags from their postings, when querying. | ||||
| .PP | ||||
| (\f[B]\f[CB]inacct:ACCTNAME\f[B]\f[R] | ||||
| .PD 0 | ||||
| .P | ||||
| .PD | ||||
| A special query term used automatically in hledger-web only: tells | ||||
| hledger-web to show the transaction register for an account.) | ||||
| .SS Combining query terms | ||||
| .PP | ||||
| Most commands select things which match: | ||||
| .IP \[bu] 2 | ||||
| any of the description terms AND | ||||
| .IP \[bu] 2 | ||||
| @ -1161,7 +1322,7 @@ any of the status terms AND | ||||
| .IP \[bu] 2 | ||||
| all the other terms. | ||||
| .PP | ||||
| The print command instead shows transactions which: | ||||
| while the print command shows transactions which: | ||||
| .IP \[bu] 2 | ||||
| match any of the description terms AND | ||||
| .IP \[bu] 2 | ||||
| @ -1171,89 +1332,49 @@ have no postings matching any of the negative account terms AND | ||||
| .IP \[bu] 2 | ||||
| match all the other terms. | ||||
| .PP | ||||
| The following kinds of search terms can be used. | ||||
| Remember these can also be prefixed with \f[B]\f[CB]not:\f[B]\f[R], eg | ||||
| to exclude a particular subaccount. | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]REGEX\f[R]\f[B], \f[R]\f[C]acct:REGEX\f[R]\f[B]\f[R] | ||||
| match account names by this regular expression. | ||||
| (With no prefix, \f[C]acct:\f[R] is assumed.) | ||||
| same as above | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]amt:N, amt:<N, amt:<=N, amt:>N, amt:>=N\f[R]\f[B]\f[R] | ||||
| match postings with a single-commodity amount that is equal to, less | ||||
| than, or greater than N. | ||||
| (Multi-commodity amounts are not tested, and will always match.) The | ||||
| comparison has two modes: if N is preceded by a + or - sign (or is 0), | ||||
| the two signed numbers are compared. | ||||
| Otherwise, the absolute magnitudes are compared, ignoring sign. | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]code:REGEX\f[R]\f[B]\f[R] | ||||
| match by transaction code (eg check number) | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]cur:REGEX\f[R]\f[B]\f[R] | ||||
| match postings or transactions including any amounts whose | ||||
| currency/commodity symbol is fully matched by REGEX. | ||||
| (For a partial match, use \f[C].*REGEX.*\f[R]). | ||||
| Note, to match characters which are regex-significant, like the dollar | ||||
| sign (\f[C]$\f[R]), you need to prepend \f[C]\[rs]\f[R]. | ||||
| And when using the command line you need to add one more level of | ||||
| quoting to hide it from the shell, so eg do: | ||||
| \f[C]hledger print cur:\[aq]\[rs]$\[aq]\f[R] or | ||||
| \f[C]hledger print cur:\[rs]\[rs]$\f[R]. | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]desc:REGEX\f[R]\f[B]\f[R] | ||||
| match transaction descriptions. | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]date:PERIODEXPR\f[R]\f[B]\f[R] | ||||
| match dates within the specified period. | ||||
| PERIODEXPR is a period expression (with no report interval). | ||||
| Examples: \f[C]date:2016\f[R], \f[C]date:thismonth\f[R], | ||||
| \f[C]date:2000/2/1-2/15\f[R], \f[C]date:lastweek-\f[R]. | ||||
| If the \f[C]--date2\f[R] command line flag is present, this matches | ||||
| secondary dates instead. | ||||
| (Report intervals will adjust start/end dates to preceding/following | ||||
| subperiod boundaries.) | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]date2:PERIODEXPR\f[R]\f[B]\f[R] | ||||
| match secondary dates within the specified period. | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]depth:N\f[R]\f[B]\f[R] | ||||
| match (or display, depending on command) accounts at or above this depth | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]note:REGEX\f[R]\f[B]\f[R] | ||||
| match transaction notes (part of description right of \f[C]|\f[R], or | ||||
| whole description when there\[aq]s no \f[C]|\f[R]) | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]payee:REGEX\f[R]\f[B]\f[R] | ||||
| match transaction payee/payer names (part of description left of | ||||
| \f[C]|\f[R], or whole description when there\[aq]s no \f[C]|\f[R]) | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]real:, real:0\f[R]\f[B]\f[R] | ||||
| match real or virtual postings respectively | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]status:, status:!, status:*\f[R]\f[B]\f[R] | ||||
| match unmarked, pending, or cleared transactions respectively | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]tag:REGEX[=REGEX]\f[R]\f[B]\f[R] | ||||
| match by tag name, and optionally also by tag value. | ||||
| Note a tag: query is considered to match a transaction if it matches any | ||||
| of the postings. | ||||
| Also remember that postings inherit the tags of their parent | ||||
| transaction. | ||||
| You can do more powerful queries (such as AND-ing two like terms) by | ||||
| running a first query with \f[C]print\f[R], and piping the result into a | ||||
| second hledger command. | ||||
| Eg: how much of food expenses was paid with cash ? | ||||
| .IP | ||||
| .nf | ||||
| \f[C] | ||||
| $ hledger print assets:cash | hledger f- -I balance expenses:food | ||||
| \f[R] | ||||
| .fi | ||||
| .PP | ||||
| The following special search term is used automatically in hledger-web, | ||||
| only: | ||||
| .TP | ||||
| \f[B]\f[R]\f[C]inacct:ACCTNAME\f[R]\f[B]\f[R] | ||||
| tells hledger-web to show the transaction register for this account. | ||||
| Can be filtered further with \f[C]acct\f[R] etc. | ||||
| If you are interested in full boolean expressions for queries, see #203. | ||||
| .SS Queries and command options | ||||
| .PP | ||||
| Some of these can also be expressed as command-line options (eg | ||||
| \f[C]depth:2\f[R] is equivalent to \f[C]--depth 2\f[R]). | ||||
| Generally you can mix options and query arguments, and the resulting | ||||
| query will be their intersection (perhaps excluding the | ||||
| \f[C]-p/--period\f[R] option). | ||||
| Some queries can also be expressed as command-line options: | ||||
| \f[C]depth:2\f[R] is equivalent to \f[C]--depth 2\f[R], | ||||
| \f[C]date:2020\f[R] is equivalent to \f[C]-p 2020\f[R], etc. | ||||
| When you mix command options and query arguments, generally the | ||||
| resulting query is their intersection. | ||||
| .SS Queries and account aliases | ||||
| .PP | ||||
| When account names are rewritten with \f[C]--alias\f[R] or | ||||
| \f[C]alias\f[R], \f[C]acct:\f[R] will match either the old or the new | ||||
| account name. | ||||
| .SS Queries and valuation | ||||
| .PP | ||||
| When amounts are converted to other commodities in cost or value | ||||
| reports, \f[C]cur:\f[R] and \f[C]amt:\f[R] match the old commodity | ||||
| symbol and the old amount quantity, not the new ones (except in hledger | ||||
| 1.22.0 where it\[aq]s reversed, see #1625). | ||||
| .SS Querying with account aliases | ||||
| .PP | ||||
| When account names are rewritten with \f[C]--alias\f[R] or | ||||
| \f[C]alias\f[R], note that \f[C]acct:\f[R] will match either the old or | ||||
| the new account name. | ||||
| .SS Querying with cost or value | ||||
| .PP | ||||
| When amounts are converted to other commodities in cost or value | ||||
| reports, note that \f[C]cur:\f[R] matches the new commodity symbol, and | ||||
| not the old one, and \f[C]amt:\f[R] matches the new quantity, and not | ||||
| the old one. | ||||
| Note: this changed in hledger 1.22, previously it was the reverse, see | ||||
| the discussion at #1625. | ||||
| .SH COSTING | ||||
| .PP | ||||
| The \f[C]-B/--cost\f[R] flag converts amounts to their cost or sale | ||||
| @ -2783,6 +2904,9 @@ With \f[C]-S/--sort-amount\f[R], accounts with the largest (most | ||||
| positive) balances are shown first. | ||||
| Eg: \f[C]hledger bal expenses -MAS\f[R] shows your biggest averaged | ||||
| monthly expenses first. | ||||
| When more than one commodity is present, they will be sorted by the | ||||
| alphabetically earliest commodity first, and then by subsequent | ||||
| commodities (if an amount is missing a commodity, it is treated as 0). | ||||
| .PP | ||||
| Revenues and liability balances are typically negative, however, so | ||||
| \f[C]-S\f[R] shows these in reverse order. | ||||
| @ -3255,7 +3379,7 @@ Budget performance in 2020-01-01..2020-01-15: | ||||
|                ||     $400 [80% of $500]  | ||||
| \f[R] | ||||
| .fi | ||||
| .SS Nested budgets | ||||
| .SS Budgets and subaccounts | ||||
| .PP | ||||
| You can add budgets to any account in your account hierarchy. | ||||
| If you have budgets on both parent account and some of its children, | ||||
| @ -3357,6 +3481,34 @@ Budget performance in 2019/01: | ||||
|                                         ||        0 [                 0]  | ||||
| \f[R] | ||||
| .fi | ||||
| .SS Selecting budget goals | ||||
| .PP | ||||
| The budget report evaluates periodic transaction rules to generate | ||||
| special \[dq]goal transactions\[dq], which generate the goal amounts for | ||||
| each account in each report subperiod. | ||||
| When troubleshooting, you can use the print command to show these as | ||||
| forecasted transactions: | ||||
| .IP | ||||
| .nf | ||||
| \f[C] | ||||
| $ hledger print --forecast=BUDGETREPORTPERIOD tag:generated | ||||
| \f[R] | ||||
| .fi | ||||
| .PP | ||||
| By default, the budget report uses all available periodic transaction | ||||
| rules to generate goals. | ||||
| This includes rules with a different report interval from your report. | ||||
| Eg if you have daily, weekly and monthly periodic rules, all of these | ||||
| will contribute to the goals in a monthly budget report. | ||||
| .PP | ||||
| You can select a subset of periodic rules by providing an argument to | ||||
| the \f[C]--budget\f[R] flag. | ||||
| \f[C]--budget=DESCPAT\f[R] will match all periodic rules whose | ||||
| description contains DESCPAT, a case-insensitive substring (not a | ||||
| regular expression or query). | ||||
| This means you can give your periodic rules descriptions (remember that | ||||
| two spaces are needed), and then select from multiple budgets defined in | ||||
| your journal. | ||||
| .SS Customising single-period balance reports | ||||
| .PP | ||||
| For single-period balance reports displayed in the terminal (only), you | ||||
| @ -4871,6 +5023,28 @@ Using roi to compute total return of investment in stocks: | ||||
| https://github.com/simonmichael/hledger/blob/master/examples/roi-unrealised.ledger | ||||
| .IP \[bu] 2 | ||||
| Cookbook -> Return on Investment | ||||
| .SS Spaces and special characters in \f[C]--inv\f[R] and \f[C]--pnl\f[R] | ||||
| .PP | ||||
| Note that \f[C]--inv\f[R] and \f[C]--pnl\f[R]\[aq]s argument is a query, | ||||
| and queries could have several space-separated terms (see QUERIES). | ||||
| .PP | ||||
| To indicate that all search terms form single command-line argument, you | ||||
| will need to put them in quotes (see Special characters): | ||||
| .IP | ||||
| .nf | ||||
| \f[C] | ||||
| $ hledger roi --inv \[aq]term1 term2 term3 ...\[aq] | ||||
| \f[R] | ||||
| .fi | ||||
| .PP | ||||
| If any query terms contain spaces themselves, you will need an extra | ||||
| level of nested quoting, eg: | ||||
| .IP | ||||
| .nf | ||||
| \f[C] | ||||
| $ hledger roi --inv=\[dq]\[aq]Assets:Test 1\[aq]\[dq] --pnl=\[dq]\[aq]Equity:Unrealized Profit and Loss\[aq]\[dq] | ||||
| \f[R] | ||||
| .fi | ||||
| .SS Semantics of \f[C]--inv\f[R] and \f[C]--pnl\f[R] | ||||
| .PP | ||||
| Query supplied to \f[C]--inv\f[R] has to match all transactions that are | ||||
|  | ||||
							
								
								
									
										1288
									
								
								hledger/hledger.info
									
									
									
									
									
								
							
							
						
						
									
										1288
									
								
								hledger/hledger.info
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @ -251,6 +251,10 @@ OPTIONS | ||||
| 
 | ||||
|               $ hledger register credit\ card | ||||
| 
 | ||||
|        Windows users should keep in mind that cmd treats  single  quote  as  a | ||||
|        regular  character,  so  you should be using double quotes exclusively. | ||||
|        PowerShell treats both single and double quotes as quotes. | ||||
| 
 | ||||
|    Double escaping (regular expression metacharacters) | ||||
|        Characters significant in regular expressions (described below) -  such | ||||
|        as  .,  ^,  $, [, ], (, ), |, and \ - may need to be "regex-escaped" if | ||||
| @ -499,6 +503,8 @@ DATA FILES | ||||
|        o Are all commodities declared with a commodity directive ?  (Commodity | ||||
|          error checking) | ||||
| 
 | ||||
|        o Are all commodity conversions declared explicitly ? | ||||
| 
 | ||||
|        You can also use the check command to run  these  and  some  additional | ||||
|        checks. | ||||
| 
 | ||||
| @ -537,6 +543,7 @@ TIME PERIODS | ||||
|        20181232      8 digits with an invalid day gives an error | ||||
|        201801012     9+ digits beginning with a valid YYYYMMDD gives an error | ||||
| 
 | ||||
| 
 | ||||
|    Report start & end date | ||||
|        By default, most hledger reports will show the full span of time repre- | ||||
|        sented by the journal data.  The report start date will be the earliest | ||||
| @ -630,8 +637,8 @@ TIME PERIODS | ||||
|        also be written as: | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|        -p "1/1 4/1" | ||||
| 
 | ||||
|        -p "january-apr" | ||||
|        -p "this year to 4/1" | ||||
| 
 | ||||
| @ -751,17 +758,104 @@ DEPTH | ||||
|        -2, --depth=2 or depth:2 are equivalent). | ||||
| 
 | ||||
| QUERIES | ||||
|        One of hledger's strengths is being able to quickly report  on  precise | ||||
|        subsets  of  your data.  Most commands accept an optional query expres- | ||||
|        sion, written as arguments after the command name, to filter  the  data | ||||
|        by  date,  account  name or other criteria.  The syntax is similar to a | ||||
|        web search: one or more space-separated search terms, quotes to enclose | ||||
|        whitespace,  prefixes to match specific fields, a not: prefix to negate | ||||
|        the match. | ||||
|        One of hledger's strengths is being able to quickly report on a precise | ||||
|        subset of your data.  Most hledger commands accept optional query argu- | ||||
|        ments to restrict their scope.  The syntax is as follows: | ||||
| 
 | ||||
|        We do not yet support arbitrary boolean combinations of  search  terms; | ||||
|        instead  most  commands show transactions/postings/accounts which match | ||||
|        (or negatively match): | ||||
|        o Zero or more space-separated  query  terms.   These  are  most  often | ||||
|          account name substrings: | ||||
| 
 | ||||
|          utilities food:groceries | ||||
| 
 | ||||
|        o Terms  with  spaces or other special characters should be enclosed in | ||||
|          quotes: | ||||
| 
 | ||||
|          "personal care" | ||||
| 
 | ||||
|        o Regular expressions are also supported: | ||||
| 
 | ||||
|          "^expenses\b" "accounts (payable|receivable)" | ||||
| 
 | ||||
|        o Add a query type prefix to match other parts of the data: | ||||
| 
 | ||||
|          date:202012- desc:amazon cur:USD amt:">100" status: | ||||
| 
 | ||||
|        o Add a not: prefix to negate a term: | ||||
| 
 | ||||
|          not:cur:USD | ||||
| 
 | ||||
|    Query types | ||||
|        Here are the types of query term available.  Remember these can also be | ||||
|        prefixed with not: to convert them into a negative match. | ||||
| 
 | ||||
|        acct:REGEX, REGEX | ||||
|        Match  account names containing this (case insensitive) regular expres- | ||||
|        sion.  This is the default query type when there is no prefix, and reg- | ||||
|        ular  expression  syntax  is  typically  not needed, so usually we just | ||||
|        write an account name substring, like expenses or food. | ||||
| 
 | ||||
|        amt:N, amt:<N, amt:<=N, amt:>N, amt:>=N | ||||
|        Match postings with a single-commodity amount equal to, less  than,  or | ||||
|        greater  than N.  (Postings with multi-commodity amounts are not tested | ||||
|        and will always match.) The comparison has two modes: if N is  preceded | ||||
|        by  a + or - sign (or is 0), the two signed numbers are compared.  Oth- | ||||
|        erwise, the absolute magnitudes are compared, ignoring sign. | ||||
| 
 | ||||
|        code:REGEX | ||||
|        Match by transaction code (eg check number). | ||||
| 
 | ||||
|        cur:REGEX | ||||
|        Match  postings  or  transactions  including  any  amounts  whose  cur- | ||||
|        rency/commodity  symbol  is  fully  matched  by  REGEX.  (For a partial | ||||
|        match, use .*REGEX.*).  Note, to match  special  characters  which  are | ||||
|        regex-significant,  you need to escape them with \.  And for characters | ||||
|        which are significant to your shell you may  need  one  more  level  of | ||||
|        escaping.  So eg to match the dollar sign: | ||||
|        hledger print cur:\\$. | ||||
| 
 | ||||
|        desc:REGEX | ||||
|        Match transaction descriptions. | ||||
| 
 | ||||
|        date:PERIODEXPR | ||||
|        Match  dates  (or  with  the  --date2 flag, secondary dates) within the | ||||
|        specified period.  PERIODEXPR is a period  expression  with  no  report | ||||
|        interval.  Examples: | ||||
|        date:2016, date:thismonth, date:2/1-2/15, date:2021-07-27..nextquarter. | ||||
| 
 | ||||
|        date2:PERIODEXPR | ||||
|        Match secondary dates within the specified period (independent  of  the | ||||
|        --date2 flag). | ||||
| 
 | ||||
|        depth:N | ||||
|        Match  (or  display,  depending  on  command) accounts at or above this | ||||
|        depth. | ||||
| 
 | ||||
|        note:REGEX | ||||
|        Match transaction notes (the part of the description right of |, or the | ||||
|        whole description if there's no |). | ||||
| 
 | ||||
|        payee:REGEX | ||||
|        Match  transaction  payee/payer names (the part of the description left | ||||
|        of |, or the whole description if there's no |). | ||||
| 
 | ||||
|        real:, real:0 | ||||
|        Match real or virtual postings respectively. | ||||
| 
 | ||||
|        status:, status:!, status:* | ||||
|        Match unmarked, pending, or cleared transactions respectively. | ||||
| 
 | ||||
|        tag:REGEX[=REGEX] | ||||
|        Match by tag name, and optionally also by tag value.  (To match only by | ||||
|        value,  use  tag:.=REGEX.)  Note  that  postings also inherit tags from | ||||
|        their transaction, and transactions also acquire tags from their  post- | ||||
|        ings, when querying. | ||||
| 
 | ||||
|        (inacct:ACCTNAME | ||||
|        A  special  query  term  used  automatically in hledger-web only: tells | ||||
|        hledger-web to show the transaction register for an account.) | ||||
| 
 | ||||
|    Combining query terms | ||||
|        Most commands select things which match: | ||||
| 
 | ||||
|        o any of the description terms AND | ||||
| 
 | ||||
| @ -771,7 +865,7 @@ QUERIES | ||||
| 
 | ||||
|        o all the other terms. | ||||
| 
 | ||||
|        The print command instead shows transactions which: | ||||
|        while the print command shows transactions which: | ||||
| 
 | ||||
|        o match any of the description terms AND | ||||
| 
 | ||||
| @ -781,82 +875,41 @@ QUERIES | ||||
| 
 | ||||
|        o match all the other terms. | ||||
| 
 | ||||
|        The following kinds of search terms can be used.   Remember  these  can | ||||
|        also be prefixed with not:, eg to exclude a particular subaccount. | ||||
|        You can do more powerful queries (such as AND-ing two  like  terms)  by | ||||
|        running  a  first query with print, and piping the result into a second | ||||
|        hledger command.  Eg: how much of food expenses was paid with cash ? | ||||
| 
 | ||||
|        REGEX, acct:REGEX | ||||
|               match  account  names by this regular expression.  (With no pre- | ||||
|               fix, acct: is assumed.)  same as above | ||||
|               $ hledger print assets:cash | hledger f- -I balance expenses:food | ||||
| 
 | ||||
|        amt:N, amt:<N, amt:<=N, amt:>N, amt:>=N | ||||
|               match postings with a single-commodity amount that is equal  to, | ||||
|               less  than, or greater than N.  (Multi-commodity amounts are not | ||||
|               tested, and will always match.) The comparison has two modes: if | ||||
|               N is preceded by a + or - sign (or is 0), the two signed numbers | ||||
|               are compared.  Otherwise, the absolute magnitudes are  compared, | ||||
|               ignoring sign. | ||||
|        If you are interested in full  boolean  expressions  for  queries,  see | ||||
|        #203. | ||||
| 
 | ||||
|        code:REGEX | ||||
|               match by transaction code (eg check number) | ||||
|    Queries and command options | ||||
|        Some  queries can also be expressed as command-line options: depth:2 is | ||||
|        equivalent to --depth 2, date:2020 is equivalent to -p 2020, etc.  When | ||||
|        you  mix  command  options and query arguments, generally the resulting | ||||
|        query is their intersection. | ||||
| 
 | ||||
|        cur:REGEX | ||||
|               match  postings or transactions including any amounts whose cur- | ||||
|               rency/commodity symbol is fully matched by REGEX.  (For  a  par- | ||||
|               tial match, use .*REGEX.*).  Note, to match characters which are | ||||
|               regex-significant, like the dollar sign ($), you need to prepend | ||||
|               \.   And  when  using  the command line you need to add one more | ||||
|               level of quoting to hide it from the shell, so  eg  do:  hledger | ||||
|               print cur:'\$' or hledger print cur:\\$. | ||||
|    Queries and account aliases | ||||
|        When account names are rewritten with  --alias  or  alias,  acct:  will | ||||
|        match either the old or the new account name. | ||||
| 
 | ||||
|        desc:REGEX | ||||
|               match transaction descriptions. | ||||
|    Queries and valuation | ||||
|        When  amounts  are  converted  to  other  commodities  in cost or value | ||||
|        reports, cur: and amt: match the  old  commodity  symbol  and  the  old | ||||
|        amount  quantity, not the new ones (except in hledger 1.22.0 where it's | ||||
|        reversed, see #1625). | ||||
| 
 | ||||
|        date:PERIODEXPR | ||||
|               match dates within the specified period.  PERIODEXPR is a period | ||||
|               expression (with  no  report  interval).   Examples:  date:2016, | ||||
|               date:thismonth,   date:2000/2/1-2/15,  date:lastweek-.   If  the | ||||
|               --date2 command line flag is  present,  this  matches  secondary | ||||
|               dates instead.  (Report intervals will adjust start/end dates to | ||||
|               preceding/following subperiod boundaries.) | ||||
|    Querying with account aliases | ||||
|        When account names are rewritten with --alias or alias, note that acct: | ||||
|        will match either the old or the new account name. | ||||
| 
 | ||||
|        date2:PERIODEXPR | ||||
|               match secondary dates within the specified period. | ||||
| 
 | ||||
|        depth:N | ||||
|               match (or display, depending on command) accounts  at  or  above | ||||
|               this depth | ||||
| 
 | ||||
|        note:REGEX | ||||
|               match  transaction  notes  (part  of  description right of |, or | ||||
|               whole description when there's no |) | ||||
| 
 | ||||
|        payee:REGEX | ||||
|               match transaction payee/payer names (part of description left of | ||||
|               |, or whole description when there's no |) | ||||
| 
 | ||||
|        real:, real:0 | ||||
|               match real or virtual postings respectively | ||||
| 
 | ||||
|        status:, status:!, status:* | ||||
|               match unmarked, pending, or cleared transactions respectively | ||||
| 
 | ||||
|        tag:REGEX[=REGEX] | ||||
|               match  by  tag  name,  and optionally also by tag value.  Note a | ||||
|               tag: query is considered to match a transaction  if  it  matches | ||||
|               any  of  the  postings.  Also remember that postings inherit the | ||||
|               tags of their parent transaction. | ||||
| 
 | ||||
|        The following special search term is used automatically in hledger-web, | ||||
|        only: | ||||
| 
 | ||||
|        inacct:ACCTNAME | ||||
|               tells  hledger-web  to  show  the  transaction register for this | ||||
|               account.  Can be filtered further with acct etc. | ||||
| 
 | ||||
|        Some of these can also be expressed as command-line options (eg depth:2 | ||||
|        is  equivalent  to --depth 2).  Generally you can mix options and query | ||||
|        arguments, and the resulting query will be their intersection  (perhaps | ||||
|        excluding the -p/--period option). | ||||
|    Querying with cost or value | ||||
|        When  amounts  are  converted  to  other  commodities  in cost or value | ||||
|        reports, note that cur: matches the new commodity symbol, and  not  the | ||||
|        old one, and amt: matches the new quantity, and not the old one.  Note: | ||||
|        this changed in hledger 1.22, previously it was the  reverse,  see  the | ||||
|        discussion at #1625. | ||||
| 
 | ||||
| COSTING | ||||
|        The  -B/--cost  flag  converts  amounts to their cost or sale amount at | ||||
| @ -1196,6 +1249,8 @@ VALUATION | ||||
|        total/average   of displayed   of displayed   displayed values    of displayed   of  displayed | ||||
|                        values         values                             values         values | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|        balance  (bs, | ||||
|        bse, cf, is) | ||||
|        balance         sums      of   value     at   value at  posting   value     at   value      at | ||||
| @ -1203,8 +1258,6 @@ VALUATION | ||||
|                                       or today  of                       journal  end   sums of post- | ||||
|                                       sums      of                       of  sums  of   ings | ||||
|                                       postings                           postings | ||||
| 
 | ||||
| 
 | ||||
|        budget          like balance   like balance   like      balance   like    bal-   like  balance | ||||
|        amounts         changes        changes        changes             ances          changes | ||||
|        (--budget) | ||||
| @ -1951,7 +2004,10 @@ COMMANDS | ||||
|    Sorting by amount | ||||
|        With -S/--sort-amount, accounts with the largest (most  positive)  bal- | ||||
|        ances  are  shown first.  Eg: hledger bal expenses -MAS shows your big- | ||||
|        gest averaged monthly expenses first. | ||||
|        gest averaged monthly expenses first.  When more than one commodity  is | ||||
|        present,  they  will be sorted by the alphabetically earliest commodity | ||||
|        first, and then by subsequent commodities (if an amount  is  missing  a | ||||
|        commodity, it is treated as 0). | ||||
| 
 | ||||
|        Revenues  and liability balances are typically negative, however, so -S | ||||
|        shows these in reverse  order.   To  work  around  this,  you  can  add | ||||
| @ -2300,7 +2356,7 @@ COMMANDS | ||||
|               ---------------++------------------------ | ||||
|                              ||     $400 [80% of $500] | ||||
| 
 | ||||
|    Nested budgets | ||||
|    Budgets and subaccounts | ||||
|        You can add budgets to any account in your account hierarchy.   If  you | ||||
|        have budgets on both parent account and some of its children, then bud- | ||||
|        get(s) of the child account(s) would be added to the  budget  of  their | ||||
| @ -2383,6 +2439,27 @@ COMMANDS | ||||
|               ----------------------------------------++------------------------------- | ||||
|                                                       ||        0 [                 0] | ||||
| 
 | ||||
|    Selecting budget goals | ||||
|        The budget report evaluates periodic transaction rules to generate spe- | ||||
|        cial  "goal  transactions",  which  generate  the goal amounts for each | ||||
|        account in each report subperiod.  When troubleshooting,  you  can  use | ||||
|        the print command to show these as forecasted transactions: | ||||
| 
 | ||||
|               $ hledger print --forecast=BUDGETREPORTPERIOD tag:generated | ||||
| 
 | ||||
|        By  default,  the budget report uses all available periodic transaction | ||||
|        rules to generate goals.  This includes rules with a  different  report | ||||
|        interval  from  your  report.  Eg if you have daily, weekly and monthly | ||||
|        periodic rules, all of these will contribute to the goals in a  monthly | ||||
|        budget report. | ||||
| 
 | ||||
|        You  can  select a subset of periodic rules by providing an argument to | ||||
|        the --budget flag.  --budget=DESCPAT  will  match  all  periodic  rules | ||||
|        whose description contains DESCPAT, a case-insensitive substring (not a | ||||
|        regular expression or query).  This means you can  give  your  periodic | ||||
|        rules  descriptions  (remember  that  two  spaces are needed), and then | ||||
|        select from multiple budgets defined in your journal. | ||||
| 
 | ||||
|    Customising single-period balance reports | ||||
|        For single-period balance reports displayed in the terminal (only), you | ||||
|        can  use --format FMT to customise the format and content of each line. | ||||
| @ -3542,6 +3619,20 @@ COMMANDS | ||||
| 
 | ||||
|        o Cookbook -> Return on Investment | ||||
| 
 | ||||
|    Spaces and special characters in --inv and --pnl | ||||
|        Note that --inv and --pnl's argument is a query, and queries could have | ||||
|        several space-separated terms (see QUERIES). | ||||
| 
 | ||||
|        To indicate that all search terms form  single  command-line  argument, | ||||
|        you will need to put them in quotes (see Special characters): | ||||
| 
 | ||||
|               $ hledger roi --inv 'term1 term2 term3 ...' | ||||
| 
 | ||||
|        If  any  query  terms contain spaces themselves, you will need an extra | ||||
|        level of nested quoting, eg: | ||||
| 
 | ||||
|               $ hledger roi --inv="'Assets:Test 1'" --pnl="'Equity:Unrealized Profit and Loss'" | ||||
| 
 | ||||
|    Semantics of --inv and --pnl | ||||
|        Query supplied to --inv has to match all transactions that are  related | ||||
|        to your investment.  Transactions not matching --inv will be ignored. | ||||
| @ -4502,10 +4593,6 @@ JOURNAL FORMAT | ||||
|                   aliases                                              until end  of  cur- | ||||
|                                                                        rent  file  or  end | ||||
|                                                                        directive | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|        apply      end apply             prepend a common  parent  to   following   entries | ||||
|        account    account               account names                  until end  of  cur- | ||||
|                                                                        rent  file  or  end | ||||
| @ -4514,6 +4601,13 @@ JOURNAL FORMAT | ||||
|                   ment                                                 until end  of  cur- | ||||
|                                                                        rent  file  or  end | ||||
|                                                                        directive | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|        commod-                format    declare  a commodity and its   number    notation: | ||||
|        ity                              number  notation  &  display   following   entries | ||||
|                                         style                          until  end  of cur- | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user