From d146b835006905fe702dc31263db06d4c8b324d5 Mon Sep 17 00:00:00 2001 From: Simon Michael Date: Wed, 31 May 2023 19:07:44 -1000 Subject: [PATCH] ;doc: update manuals --- hledger-ui/hledger-ui.1 | 7 +- hledger-ui/hledger-ui.info | 84 +-- hledger-ui/hledger-ui.txt | 5 +- hledger-web/hledger-web.1 | 15 +- hledger-web/hledger-web.info | 54 +- hledger-web/hledger-web.txt | 222 +++--- hledger/hledger.1 | 9 +- hledger/hledger.info | 1274 +++++++++++++++++----------------- hledger/hledger.txt | 7 +- 9 files changed, 829 insertions(+), 848 deletions(-) diff --git a/hledger-ui/hledger-ui.1 b/hledger-ui/hledger-ui.1 index 048c9c22d..dbf96aab5 100644 --- a/hledger-ui/hledger-ui.1 +++ b/hledger-ui/hledger-ui.1 @@ -8,14 +8,11 @@ hledger-ui - robust, friendly plain text accounting (TUI version) .SH SYNOPSIS .PP -\f[V]hledger-ui [OPTS] [QUERYARGS] # run directly\f[R] -.PD 0 -.P -.PD -\f[V]hledger ui -- [OPTS] [QUERYARGS] # run from hledger\f[R] +\f[V]hledger-ui [OPTS] [QUERYARGS]\f[R] .PD 0 .P .PD +\f[V]hledger ui -- [OPTS] [QUERYARGS]\f[R] .SH DESCRIPTION .PP This manual is for hledger\[aq]s terminal interface, version 1.29.99. diff --git a/hledger-ui/hledger-ui.info b/hledger-ui/hledger-ui.info index 4d1855bed..f7ce941e9 100644 --- a/hledger-ui/hledger-ui.info +++ b/hledger-ui/hledger-ui.info @@ -13,8 +13,8 @@ hledger-ui(1) hledger-ui - robust, friendly plain text accounting (TUI version) - 'hledger-ui [OPTS] [QUERYARGS] # run directly' -'hledger ui -- [OPTS] [QUERYARGS] # run from hledger' + 'hledger-ui [OPTS] [QUERYARGS]' +'hledger ui -- [OPTS] [QUERYARGS]' This manual is for hledger's terminal interface, version 1.29.99. See also the hledger manual for common concepts and file formats. @@ -665,46 +665,46 @@ above).  Tag Table: Node: Top223 -Node: OPTIONS1866 -Ref: #options1964 -Node: General help options2987 -Ref: #general-help-options3136 -Node: General input options3418 -Ref: #general-input-options3603 -Node: General reporting options4305 -Ref: #general-reporting-options4469 -Node: MOUSE7859 -Ref: #mouse7954 -Node: KEYS8191 -Ref: #keys8284 -Node: SCREENS12797 -Ref: #screens12895 -Node: Menu13475 -Ref: #menu13568 -Node: Cash accounts13763 -Ref: #cash-accounts13905 -Node: Balance sheet accounts14089 -Ref: #balance-sheet-accounts14270 -Node: Income statement accounts14390 -Ref: #income-statement-accounts14576 -Node: All accounts14740 -Ref: #all-accounts14886 -Node: Register15068 -Ref: #register15192 -Node: Transaction17154 -Ref: #transaction17277 -Node: Error18694 -Ref: #error18788 -Node: TIPS19032 -Ref: #tips19131 -Node: Watch mode19173 -Ref: #watch-mode19280 -Node: Debug output20739 -Ref: #debug-output20850 -Node: ENVIRONMENT21062 -Ref: #environment21172 -Node: BUGS21363 -Ref: #bugs21446 +Node: OPTIONS1832 +Ref: #options1930 +Node: General help options2953 +Ref: #general-help-options3102 +Node: General input options3384 +Ref: #general-input-options3569 +Node: General reporting options4271 +Ref: #general-reporting-options4435 +Node: MOUSE7825 +Ref: #mouse7920 +Node: KEYS8157 +Ref: #keys8250 +Node: SCREENS12763 +Ref: #screens12861 +Node: Menu13441 +Ref: #menu13534 +Node: Cash accounts13729 +Ref: #cash-accounts13871 +Node: Balance sheet accounts14055 +Ref: #balance-sheet-accounts14236 +Node: Income statement accounts14356 +Ref: #income-statement-accounts14542 +Node: All accounts14706 +Ref: #all-accounts14852 +Node: Register15034 +Ref: #register15158 +Node: Transaction17120 +Ref: #transaction17243 +Node: Error18660 +Ref: #error18754 +Node: TIPS18998 +Ref: #tips19097 +Node: Watch mode19139 +Ref: #watch-mode19246 +Node: Debug output20705 +Ref: #debug-output20816 +Node: ENVIRONMENT21028 +Ref: #environment21138 +Node: BUGS21329 +Ref: #bugs21412  End Tag Table diff --git a/hledger-ui/hledger-ui.txt b/hledger-ui/hledger-ui.txt index 702fd0188..cbbf5a6c7 100644 --- a/hledger-ui/hledger-ui.txt +++ b/hledger-ui/hledger-ui.txt @@ -7,8 +7,9 @@ NAME hledger-ui - robust, friendly plain text accounting (TUI version) SYNOPSIS - hledger-ui [OPTS] [QUERYARGS] # run directly - hledger ui -- [OPTS] [QUERYARGS] # run from hledger + hledger-ui [OPTS] [QUERYARGS] + hledger ui -- [OPTS] [QUERYARGS] + DESCRIPTION This manual is for hledger's terminal interface, version 1.29.99. See also the hledger manual for common concepts and file formats. diff --git a/hledger-web/hledger-web.1 b/hledger-web/hledger-web.1 index 2412e86c6..8de0622e9 100644 --- a/hledger-web/hledger-web.1 +++ b/hledger-web/hledger-web.1 @@ -8,22 +8,11 @@ hledger-web - robust, friendly plain text accounting (Web version) .SH SYNOPSIS .PP -\f[V]hledger-web [OPTS] [ARGS] # run temporarily & open browser\f[R] -.PD 0 -.P -.PD -\f[V]hledger-web --serve [OPTS] [ARGS] # run without stopping\f[R] -.PD 0 -.P -.PD -\f[V]hledger-web --serve-api [OPTS] [ARGS] # run HTTP JSON server only\f[R] -.PD 0 -.P -.PD -\f[V]hledger web -- [OPTS] [ARGS] # run from hledger\f[R] +\f[V]hledger-web [--serve|--serve-api] [OPTS] [ARGS]\f[R] .PD 0 .P .PD +\f[V]hledger web -- [--serve|--serve-api] [OPTS] [ARGS]\f[R] .SH DESCRIPTION .PP This manual is for hledger\[aq]s web interface, version 1.29.99. diff --git a/hledger-web/hledger-web.info b/hledger-web/hledger-web.info index 43144d31e..dfa073b26 100644 --- a/hledger-web/hledger-web.info +++ b/hledger-web/hledger-web.info @@ -13,10 +13,8 @@ hledger-web(1) hledger-web - robust, friendly plain text accounting (Web version) - 'hledger-web [OPTS] [ARGS] # run temporarily & open browser' -'hledger-web --serve [OPTS] [ARGS] # run without stopping' -'hledger-web --serve-api [OPTS] [ARGS] # run HTTP JSON server only' -'hledger web -- [OPTS] [ARGS] # run from hledger' + 'hledger-web [--serve|--serve-api] [OPTS] [ARGS]' +'hledger web -- [--serve|--serve-api] [OPTS] [ARGS]' This manual is for hledger's web interface, version 1.29.99. See also the hledger manual for common concepts and file formats. @@ -648,30 +646,30 @@ http://bugs.hledger.org), or on the #hledger chat or hledger mail list  Tag Table: Node: Top225 -Node: OPTIONS2715 -Ref: #options2820 -Node: General help options6131 -Ref: #general-help-options6281 -Node: General input options6563 -Ref: #general-input-options6749 -Node: General reporting options7451 -Ref: #general-reporting-options7616 -Node: PERMISSIONS11006 -Ref: #permissions11145 -Node: EDITING UPLOADING DOWNLOADING12357 -Ref: #editing-uploading-downloading12538 -Node: RELOADING13372 -Ref: #reloading13506 -Node: JSON API13939 -Ref: #json-api14054 -Node: DEBUG OUTPUT19542 -Ref: #debug-output19667 -Node: Debug output19694 -Ref: #debug-output-119795 -Node: ENVIRONMENT20212 -Ref: #environment20331 -Node: BUGS20448 -Ref: #bugs20532 +Node: OPTIONS2580 +Ref: #options2685 +Node: General help options5996 +Ref: #general-help-options6146 +Node: General input options6428 +Ref: #general-input-options6614 +Node: General reporting options7316 +Ref: #general-reporting-options7481 +Node: PERMISSIONS10871 +Ref: #permissions11010 +Node: EDITING UPLOADING DOWNLOADING12222 +Ref: #editing-uploading-downloading12403 +Node: RELOADING13237 +Ref: #reloading13371 +Node: JSON API13804 +Ref: #json-api13919 +Node: DEBUG OUTPUT19407 +Ref: #debug-output19532 +Node: Debug output19559 +Ref: #debug-output-119660 +Node: ENVIRONMENT20077 +Ref: #environment20196 +Node: BUGS20313 +Ref: #bugs20397  End Tag Table diff --git a/hledger-web/hledger-web.txt b/hledger-web/hledger-web.txt index de49b9624..7bbe7c9b0 100644 --- a/hledger-web/hledger-web.txt +++ b/hledger-web/hledger-web.txt @@ -7,47 +7,45 @@ NAME hledger-web - robust, friendly plain text accounting (Web version) SYNOPSIS - hledger-web [OPTS] [ARGS] # run temporarily & open - browser - hledger-web --serve [OPTS] [ARGS] # run without stopping - hledger-web --serve-api [OPTS] [ARGS] # run HTTP JSON server only - hledger web -- [OPTS] [ARGS] # run from hledger + hledger-web [--serve|--serve-api] [OPTS] [ARGS] + hledger web -- [--serve|--serve-api] [OPTS] [ARGS] + DESCRIPTION - This manual is for hledger's web interface, version 1.29.99. See also + This manual is for hledger's web interface, version 1.29.99. See also the hledger manual for common concepts and file formats. - hledger is a robust, user-friendly, cross-platform set of programs for - tracking money, time, or any other commodity, using double-entry ac- - counting and a simple, editable file format. hledger is inspired by - and largely compatible with ledger(1), and largely interconvertible + hledger is a robust, user-friendly, cross-platform set of programs for + tracking money, time, or any other commodity, using double-entry ac- + counting and a simple, editable file format. hledger is inspired by + and largely compatible with ledger(1), and largely interconvertible with beancount(1). - hledger-web is a simple web application for browsing and adding trans- - actions. It provides a more user-friendly UI than the hledger CLI or - hledger-ui TUI, showing more at once (accounts, the current account + hledger-web is a simple web application for browsing and adding trans- + actions. It provides a more user-friendly UI than the hledger CLI or + hledger-ui TUI, showing more at once (accounts, the current account register, balance charts) and allowing history-aware data entry, inter- active searching, and bookmarking. - hledger-web also lets you share a journal with multiple users, or even - the public web. There is no access control, so if you need that you - should put it behind a suitable web proxy. As a small protection - against data loss when running an unprotected instance, it writes a + hledger-web also lets you share a journal with multiple users, or even + the public web. There is no access control, so if you need that you + should put it behind a suitable web proxy. As a small protection + against data loss when running an unprotected instance, it writes a numbered backup of the main journal file (only) on every edit. - Like hledger, it reads from (and appends to) a journal file specified - by the LEDGER_FILE environment variable (defaulting to - $HOME/.hledger.journal); or you can specify files with -f options. It - can also read timeclock files, timedot files, or any CSV/SSV/TSV file + Like hledger, it reads from (and appends to) a journal file specified + by the LEDGER_FILE environment variable (defaulting to + $HOME/.hledger.journal); or you can specify files with -f options. It + can also read timeclock files, timedot files, or any CSV/SSV/TSV file with a date field. (See hledger(1) -> Input for details.) hledger-web can be run in three modes: o Transient mode (the default): your default web browser will be opened - to show the app if possible, and the app exits automatically after - two minutes of inactivity (no requests received and no open browser + to show the app if possible, and the app exits automatically after + two minutes of inactivity (no requests received and no open browser windows viewing it). - o With --serve: the app runs without stopping, and without opening a + o With --serve: the app runs without stopping, and without opening a browser. o With --serve-api: only the JSON API is served. @@ -57,7 +55,7 @@ DESCRIPTION OPTIONS Command-line options and arguments may be used to set an initial filter - on the data. These filter options are not shown in the web UI, but it + on the data. These filter options are not shown in the web UI, but it will be applied in addition to any search query entered there. hledger-web provides the following options: @@ -66,7 +64,7 @@ OPTIONS serve and log requests, don't browse or auto-exit after timeout --serve-api - like --serve, but serve only the JSON web API, without the + like --serve, but serve only the JSON web API, without the server-side web UI --host=IPADDR @@ -76,61 +74,61 @@ OPTIONS listen on this TCP port (default: 5000) --socket=SOCKETFILE - use a unix domain socket file to listen for requests instead of - a TCP socket. Implies --serve. It can only be used if the op- + use a unix domain socket file to listen for requests instead of + a TCP socket. Implies --serve. It can only be used if the op- erating system can provide this type of socket. --base-url=URL - set the base url (default: http://IPADDR:PORT). Note: affects - url generation but not route parsing. Can be useful if running + set the base url (default: http://IPADDR:PORT). Note: affects + url generation but not route parsing. Can be useful if running behind a reverse web proxy that does path rewriting. --file-url=URL set the static files url (default: BASEURL/static). hledger-web - normally serves static files itself, but if you wanted to serve - them from another server for efficiency, you would set the url + normally serves static files itself, but if you wanted to serve + them from another server for efficiency, you would set the url with this. --capabilities=CAP[,CAP..] - enable the view, add, and/or manage capabilities (default: + enable the view, add, and/or manage capabilities (default: view,add) --capabilities-header=HTTPHEADER - read capabilities to enable from a HTTP header, like X-Sand- + read capabilities to enable from a HTTP header, like X-Sand- storm-Permissions (default: disabled) - --test run hledger-web's tests and exit. hspec test runner args may + --test run hledger-web's tests and exit. hspec test runner args may follow a --, eg: hledger-web --test -- --help - By default the server listens on IP address 127.0.0.1, accessible only - to local requests. You can use --host to change this, eg --host + By default the server listens on IP address 127.0.0.1, accessible only + to local requests. You can use --host to change this, eg --host 0.0.0.0 to listen on all configured addresses. - Similarly, use --port to set a TCP port other than 5000, eg if you are + Similarly, use --port to set a TCP port other than 5000, eg if you are running multiple hledger-web instances. Both of these options are ignored when --socket is used. In this case, - it creates an AF_UNIX socket file at the supplied path and uses that - for communication. This is an alternative way of running multiple - hledger-web instances behind a reverse proxy that handles authentica- - tion for different users. The path can be derived in a predictable + it creates an AF_UNIX socket file at the supplied path and uses that + for communication. This is an alternative way of running multiple + hledger-web instances behind a reverse proxy that handles authentica- + tion for different users. The path can be derived in a predictable way, eg by using the username within the path. As an example, nginx as - reverse proxy can use the variable $remote_user to derive a path from - the username used in a HTTP basic authentication. The following - proxy_pass directive allows access to all hledger-web instances that + reverse proxy can use the variable $remote_user to derive a path from + the username used in a HTTP basic authentication. The following + proxy_pass directive allows access to all hledger-web instances that created a socket in /tmp/hledger/: proxy_pass http://unix:/tmp/hledger/${remote_user}.socket; - You can use --base-url to change the protocol, hostname, port and path + You can use --base-url to change the protocol, hostname, port and path that appear in hyperlinks, useful eg for integrating hledger-web within - a larger website. The default is http://HOST:PORT/ using the server's + a larger website. The default is http://HOST:PORT/ using the server's configured host address and TCP port (or http://HOST if PORT is 80). - With --file-url you can set a different base url for static files, eg + With --file-url you can set a different base url for static files, eg for better caching or cookie-less serving on high performance websites. - hledger-web also supports many of hledger's general options (and the + hledger-web also supports many of hledger's general options (and the hledger manual's command line tips also apply here): General help options @@ -153,7 +151,7 @@ OPTIONS $LEDGER_FILE or $HOME/.hledger.journal) --rules-file=RULESFILE - Conversion rules file to use when reading CSV (default: + Conversion rules file to use when reading CSV (default: FILE.rules) --separator=CHAR @@ -172,7 +170,7 @@ OPTIONS assignments) -s --strict - do extra error checking (check that all posted accounts are de- + do extra error checking (check that all posted accounts are de- clared) General reporting options @@ -200,7 +198,7 @@ OPTIONS multiperiod/multicolumn report by year -p --period=PERIODEXP - set start date, end date, and/or reporting interval all at once + set start date, end date, and/or reporting interval all at once using period expressions syntax --date2 @@ -208,7 +206,7 @@ OPTIONS fects) --today=DATE - override today's date (affects relative smart dates, for + override today's date (affects relative smart dates, for tests/examples) -U --unmarked @@ -227,21 +225,21 @@ OPTIONS hide/aggregate accounts or postings more than NUM levels deep -E --empty - show items with zero amount, normally hidden (and vice-versa in + show items with zero amount, normally hidden (and vice-versa in hledger-ui/hledger-web) -B --cost convert amounts to their cost/selling amount at transaction time -V --market - convert amounts to their market value in default valuation com- + convert amounts to their market value in default valuation com- modities -X --exchange=COMM convert amounts to their market value in commodity COMM --value - convert amounts to cost or market value, more flexibly than + convert amounts to cost or market value, more flexibly than -B/-V/-X --infer-equity @@ -251,38 +249,38 @@ OPTIONS infer costs from conversion equity postings --infer-market-prices - use costs as additional market prices, as if they were P direc- + use costs as additional market prices, as if they were P direc- tives --forecast - generate transactions from periodic rules, between the latest - recorded txn and 6 months from today, or during the specified - PERIOD (= is required). Auto posting rules will be applied to - these transactions as well. Also, in hledger-ui make future- + generate transactions from periodic rules, between the latest + recorded txn and 6 months from today, or during the specified + PERIOD (= is required). Auto posting rules will be applied to + these transactions as well. Also, in hledger-ui make future- dated transactions visible. - --auto generate extra postings by applying auto posting rules to all + --auto generate extra postings by applying auto posting rules to all txns (not just forecast txns) --verbose-tags - add visible tags indicating transactions or postings which have + add visible tags indicating transactions or postings which have been generated/modified --commodity-style - Override the commodity style in the output for the specified + Override the commodity style in the output for the specified commodity. For example 'EUR1.000,00'. --color=WHEN (or --colour=WHEN) - Should color-supporting commands use ANSI color codes in text - output. 'auto' (default): whenever stdout seems to be a color- - supporting terminal. 'always' or 'yes': always, useful eg when - piping output into 'less -R'. 'never' or 'no': never. A + Should color-supporting commands use ANSI color codes in text + output. 'auto' (default): whenever stdout seems to be a color- + supporting terminal. 'always' or 'yes': always, useful eg when + piping output into 'less -R'. 'never' or 'no': never. A NO_COLOR environment variable overrides this. --pretty[=WHEN] - Show prettier output, e.g. using unicode box-drawing charac- - ters. Accepts 'yes' (the default) or 'no' ('y', 'n', 'always', - 'never' also work). If you provide an argument you must use + Show prettier output, e.g. using unicode box-drawing charac- + ters. Accepts 'yes' (the default) or 'no' ('y', 'n', 'always', + 'never' also work). If you provide an argument you must use '=', e.g. '--pretty=yes'. When a reporting option appears more than once in the command line, the @@ -291,13 +289,13 @@ OPTIONS Some reporting options can also be written as query arguments. PERMISSIONS - By default, hledger-web allows anyone who can reach it to view the + By default, hledger-web allows anyone who can reach it to view the journal and to add new transactions, but not to change existing data. You can restrict who can reach it by - o setting the IP address it listens on (see --host above). By default - it listens on 127.0.0.1, accessible to all users on the local ma- + o setting the IP address it listens on (see --host above). By default + it listens on 127.0.0.1, accessible to all users on the local ma- chine. o putting it behind an authenticating proxy, using eg apache or nginx @@ -307,44 +305,44 @@ PERMISSIONS You can restrict what the users who reach it can do, by o using the --capabilities=CAP[,CAP..] flag when you start it, enabling - one or more of the following capabilities. The default value is + one or more of the following capabilities. The default value is view,add: o view - allows viewing the journal file and all included files o add - allows adding new transactions to the main journal file - o manage - allows editing, uploading or downloading the main or in- + o manage - allows editing, uploading or downloading the main or in- cluded files - o using the --capabilities-header=HTTPHEADER flag to specify a HTTP - header from which it will read capabilities to enable. hledger-web - on Sandstorm uses the X-Sandstorm-Permissions header to integrate + o using the --capabilities-header=HTTPHEADER flag to specify a HTTP + header from which it will read capabilities to enable. hledger-web + on Sandstorm uses the X-Sandstorm-Permissions header to integrate with Sandstorm's permissions. This is disabled by default. EDITING, UPLOADING, DOWNLOADING - If you enable the manage capability mentioned above, you'll see a new - "spanner" button to the right of the search form. Clicking this will - let you edit, upload, or download the journal file or any files it in- + If you enable the manage capability mentioned above, you'll see a new + "spanner" button to the right of the search form. Clicking this will + let you edit, upload, or download the journal file or any files it in- cludes. - Note, unlike any other hledger command, in this mode you (or any visi- + Note, unlike any other hledger command, in this mode you (or any visi- tor) can alter or wipe the data files. - Normally whenever a file is changed in this way, hledger-web saves a - numbered backup (assuming file permissions allow it, the disk is not - full, etc.) hledger-web is not aware of version control systems, cur- - rently; if you use one, you'll have to arrange to commit the changes + Normally whenever a file is changed in this way, hledger-web saves a + numbered backup (assuming file permissions allow it, the disk is not + full, etc.) hledger-web is not aware of version control systems, cur- + rently; if you use one, you'll have to arrange to commit the changes yourself (eg with a cron job or a file watcher like entr). - Changes which would leave the journal file(s) unparseable or non-valid - (eg with failing balance assertions) are prevented. (Probably. This + Changes which would leave the journal file(s) unparseable or non-valid + (eg with failing balance assertions) are prevented. (Probably. This needs re-testing.) RELOADING hledger-web detects changes made to the files by other means (eg if you - edit it directly, outside of hledger-web), and it will show the new - data when you reload the page or navigate to a new page. If a change + edit it directly, outside of hledger-web), and it will show the new + data when you reload the page or navigate to a new page. If a change makes a file unparseable, hledger-web will display an error message un- til the file has been fixed. @@ -352,8 +350,8 @@ RELOADING that both machine clocks are roughly in step.) JSON API - In addition to the web UI, hledger-web also serves a JSON API that can - be used to get data or add new transactions. If you want the JSON API + In addition to the web UI, hledger-web also serves a JSON API that can + be used to get data or add new transactions. If you want the JSON API only, you can use the --serve-api flag. Eg: $ hledger-web -f examples/sample.journal --serve-api @@ -370,7 +368,7 @@ JSON API /accounttransactions/ACCOUNTNAME Eg, all account names in the journal (similar to the accounts command). - (hledger-web's JSON does not include newlines, here we use python to + (hledger-web's JSON does not include newlines, here we use python to prettify it): $ curl -s http://127.0.0.1:5000/accountnames | python -m json.tool @@ -411,25 +409,25 @@ JSON API "aprice": null, ... - Most of the JSON corresponds to hledger's data types; for details of - what the fields mean, see the Hledger.Data.Json haddock docs and click - on the various data types, eg Transaction. And for a higher level un- + Most of the JSON corresponds to hledger's data types; for details of + what the fields mean, see the Hledger.Data.Json haddock docs and click + on the various data types, eg Transaction. And for a higher level un- derstanding, see the journal docs. In some cases there is outer JSON corresponding to a "Report" type. To - understand that, go to the Hledger.Web.Handler.MiscR haddock and look - at the source for the appropriate handler to see what it returns. Eg + understand that, go to the Hledger.Web.Handler.MiscR haddock and look + at the source for the appropriate handler to see what it returns. Eg for /accounttransactions it's getAccounttransactionsR, returning a "ac- - countTransactionsReport ...". Looking up the haddock for that we can - see that /accounttransactions returns an AccountTransactionsReport, - which consists of a report title and a list of AccountTransactionsRe- + countTransactionsReport ...". Looking up the haddock for that we can + see that /accounttransactions returns an AccountTransactionsReport, + which consists of a report title and a list of AccountTransactionsRe- portItem (etc). - You can add a new transaction to the journal with a PUT request to - /add, if hledger-web was started with the add capability (enabled by + You can add a new transaction to the journal with a PUT request to + /add, if hledger-web was started with the add capability (enabled by default). The payload must be the full, exact JSON representation of a - hledger transaction (partial data won't do). You can get sample JSON - from hledger-web's /transactions or /accounttransactions, or you can + hledger transaction (partial data won't do). You can get sample JSON + from hledger-web's /transactions or /accounttransactions, or you can export it with hledger-lib, eg like so: .../hledger$ stack ghci hledger-lib @@ -525,28 +523,28 @@ JSON API "tstatus": "Unmarked" } - And here's how to test adding it with curl. This should add a new en- + And here's how to test adding it with curl. This should add a new en- try to your journal: $ curl http://127.0.0.1:5000/add -X PUT -H 'Content-Type: application/json' --data-binary @txn.json DEBUG OUTPUT Debug output - You can add --debug[=N] to the command line to log debug output. N + You can add --debug[=N] to the command line to log debug output. N ranges from 1 (least output, the default) to 9 (maximum output). Typi- - cally you would start with 1 and increase until you are seeing enough. - Debug output goes to stderr, interleaved with the requests logged on + cally you would start with 1 and increase until you are seeing enough. + Debug output goes to stderr, interleaved with the requests logged on stdout. To capture debug output in a log file instead, you can usually redirect stderr, eg: hledger-web --debug=3 2>hledger-web.log. ENVIRONMENT - LEDGER_FILE The main journal file to use when not specified with + LEDGER_FILE The main journal file to use when not specified with -f/--file. Default: $HOME/.hledger.journal. BUGS We welcome bug reports in the hledger issue tracker (shortcut: - http://bugs.hledger.org), or on the #hledger chat or hledger mail list + http://bugs.hledger.org), or on the #hledger chat or hledger mail list (https://hledger.org/support). Some known issues: diff --git a/hledger/hledger.1 b/hledger/hledger.1 index 1a97f402e..e669a033a 100644 --- a/hledger/hledger.1 +++ b/hledger/hledger.1 @@ -9,18 +9,15 @@ hledger - robust, friendly plain text accounting (CLI version) .SH SYNOPSIS .PP -\f[V]hledger # show commmands list\f[R] +\f[V]hledger\f[R] .PD 0 .P .PD -\f[V]hledger COMMAND [OPTS] [ARGS] # run built-in command\f[R] -.PD 0 -.P -.PD -\f[V]hledger ADDONCMD -- [OPTS] [ARGS] # run add-on command from PATH\f[R] +\f[V]hledger COMMAND [OPTS] [ARGS]\f[R] .PD 0 .P .PD +\f[V]hledger ADDONCMD -- [OPTS] [ARGS]\f[R] .SH DESCRIPTION .PP hledger is a robust, user-friendly, cross-platform set of programs for diff --git a/hledger/hledger.info b/hledger/hledger.info index 8dfed47da..42e0604b3 100644 --- a/hledger/hledger.info +++ b/hledger/hledger.info @@ -13,9 +13,9 @@ hledger(1) hledger - robust, friendly plain text accounting (CLI version) - 'hledger # show commmands list' -'hledger COMMAND [OPTS] [ARGS] # run built-in command' -'hledger ADDONCMD -- [OPTS] [ARGS] # run add-on command from PATH' + 'hledger' +'hledger COMMAND [OPTS] [ARGS]' +'hledger ADDONCMD -- [OPTS] [ARGS]' hledger is a robust, user-friendly, cross-platform set of programs for tracking money, time, or any other commodity, using double-entry @@ -10695,640 +10695,640 @@ See hledger and Ledger for full details.  Tag Table: Node: Top210 -Node: PART 1 USER INTERFACE3858 -Ref: #part-1-user-interface3997 -Node: Input3997 -Ref: #input4107 -Node: Data formats5056 -Ref: #data-formats5169 -Node: Standard input6602 -Ref: #standard-input6742 -Node: Multiple files6969 -Ref: #multiple-files7108 -Node: Strict mode7706 -Ref: #strict-mode7816 -Node: Commands8540 -Ref: #commands8642 -Node: Add-on commands9709 -Ref: #add-on-commands9811 -Node: Options10927 -Ref: #options11039 -Node: General help options11367 -Ref: #general-help-options11513 -Node: General input options11795 -Ref: #general-input-options11977 -Node: General reporting options12679 -Ref: #general-reporting-options12840 -Node: Command line tips16230 -Ref: #command-line-tips16360 -Node: Option repetition16619 -Ref: #option-repetition16763 -Node: Special characters17082 -Ref: #special-characters17255 -Node: Single escaping shell metacharacters17418 -Ref: #single-escaping-shell-metacharacters17659 -Node: Double escaping regular expression metacharacters18262 -Ref: #double-escaping-regular-expression-metacharacters18573 -Node: Triple escaping for add-on commands19099 -Ref: #triple-escaping-for-add-on-commands19359 -Node: Less escaping20003 -Ref: #less-escaping20157 -Node: Unicode characters20481 -Ref: #unicode-characters20656 -Node: Regular expressions22068 -Ref: #regular-expressions22241 -Node: Argument files23985 -Ref: #argument-files24121 -Node: Output24618 -Ref: #output24730 -Node: Output destination24857 -Ref: #output-destination24988 -Node: Output format25413 -Ref: #output-format25559 -Node: CSV output27097 -Ref: #csv-output27213 -Node: HTML output27316 -Ref: #html-output27454 -Node: JSON output27548 -Ref: #json-output27686 -Node: SQL output28608 -Ref: #sql-output28724 -Node: Commodity styles29459 -Ref: #commodity-styles29599 -Node: Colour30198 -Ref: #colour30316 -Node: Box-drawing30720 -Ref: #box-drawing30838 -Node: Paging31128 -Ref: #paging31242 -Node: Debug output32195 -Ref: #debug-output32301 -Node: Environment32964 -Ref: #environment33088 -Node: PART 2 DATA FORMATS33632 -Ref: #part-2-data-formats33775 -Node: Journal33775 -Ref: #journal33884 -Node: Journal cheatsheet34541 -Ref: #journal-cheatsheet34680 -Node: About journal format38665 -Ref: #about-journal-format38825 -Node: Comments40441 -Ref: #comments40571 -Node: Transactions41387 -Ref: #transactions41510 -Node: Dates42524 -Ref: #dates42631 -Node: Simple dates42676 -Ref: #simple-dates42792 -Node: Posting dates43292 -Ref: #posting-dates43410 -Node: Status44379 -Ref: #status44480 -Node: Code46188 -Ref: #code46291 -Node: Description46523 -Ref: #description46654 -Node: Payee and note46974 -Ref: #payee-and-note47080 -Node: Transaction comments47415 -Ref: #transaction-comments47568 -Node: Postings47931 -Ref: #postings48064 -Node: Account names49059 -Ref: #account-names49189 -Node: Amounts50863 -Ref: #amounts50978 -Node: Decimal marks digit group marks51963 -Ref: #decimal-marks-digit-group-marks52138 -Node: Commodity53152 -Ref: #commodity53339 -Node: Directives influencing number parsing and display54291 -Ref: #directives-influencing-number-parsing-and-display54550 -Node: Commodity display style55002 -Ref: #commodity-display-style55208 -Node: Rounding57377 -Ref: #rounding57495 -Node: Costs57794 -Ref: #costs57910 -Node: Other cost/lot notations60108 -Ref: #other-costlot-notations60240 -Node: Balance assertions62829 -Ref: #balance-assertions62980 -Node: Assertions and ordering64063 -Ref: #assertions-and-ordering64252 -Node: Assertions and multiple included files64952 -Ref: #assertions-and-multiple-included-files65212 -Node: Assertions and multiple -f files65712 -Ref: #assertions-and-multiple--f-files65963 -Node: Assertions and commodities66360 -Ref: #assertions-and-commodities66582 -Node: Assertions and prices67762 -Ref: #assertions-and-prices67968 -Node: Assertions and subaccounts68395 -Ref: #assertions-and-subaccounts68616 -Node: Assertions and virtual postings68940 -Ref: #assertions-and-virtual-postings69178 -Node: Assertions and auto postings69310 -Ref: #assertions-and-auto-postings69540 -Node: Assertions and precision70185 -Ref: #assertions-and-precision70367 -Node: Posting comments70634 -Ref: #posting-comments70780 -Node: Tags71157 -Ref: #tags71271 -Node: Tag values72464 -Ref: #tag-values72553 -Node: Directives73312 -Ref: #directives73439 -Node: Directives and multiple files74769 -Ref: #directives-and-multiple-files74947 -Node: Directive effects75714 -Ref: #directive-effects75868 -Node: account directive78881 -Ref: #account-directive79037 -Node: Account comments80435 -Ref: #account-comments80585 -Node: Account subdirectives81093 -Ref: #account-subdirectives81284 -Node: Account error checking81426 -Ref: #account-error-checking81624 -Node: Account display order82813 -Ref: #account-display-order83001 -Node: Account types84102 -Ref: #account-types84243 -Node: alias directive87870 -Ref: #alias-directive88031 -Node: Basic aliases89081 -Ref: #basic-aliases89212 -Node: Regex aliases89956 -Ref: #regex-aliases90113 -Node: Combining aliases91003 -Ref: #combining-aliases91181 -Node: Aliases and multiple files92457 -Ref: #aliases-and-multiple-files92661 -Node: end aliases directive93240 -Ref: #end-aliases-directive93459 -Node: Aliases can generate bad account names93608 -Ref: #aliases-can-generate-bad-account-names93856 -Node: Aliases and account types94441 -Ref: #aliases-and-account-types94633 -Node: commodity directive95329 -Ref: #commodity-directive95503 -Node: Commodity error checking98077 -Ref: #commodity-error-checking98223 -Node: decimal-mark directive98738 -Ref: #decimal-mark-directive98920 -Node: include directive99317 -Ref: #include-directive99481 -Node: P directive100405 -Ref: #p-directive100550 -Node: payee directive101433 -Ref: #payee-directive101582 -Node: tag directive101898 -Ref: #tag-directive102053 -Node: Periodic transactions102521 -Ref: #periodic-transactions102686 -Node: Periodic rule syntax104392 -Ref: #periodic-rule-syntax104570 -Node: Periodic rules and relative dates105215 -Ref: #periodic-rules-and-relative-dates105481 -Node: Two spaces between period expression and description!105992 -Ref: #two-spaces-between-period-expression-and-description106269 -Node: Auto postings106953 -Ref: #auto-postings107101 -Node: Auto postings and multiple files109538 -Ref: #auto-postings-and-multiple-files109702 -Node: Auto postings and dates110103 -Ref: #auto-postings-and-dates110351 -Node: Auto postings and transaction balancing / inferred amounts / balance assertions110526 -Ref: #auto-postings-and-transaction-balancing-inferred-amounts-balance-assertions110882 -Node: Auto posting tags111385 -Ref: #auto-posting-tags111667 -Node: Auto postings on forecast transactions only112303 -Ref: #auto-postings-on-forecast-transactions-only112549 -Node: Other syntax112796 -Ref: #other-syntax112912 -Node: Balance assignments113539 -Ref: #balance-assignments113695 -Node: Balance assignments and prices115025 -Ref: #balance-assignments-and-prices115193 -Node: Bracketed posting dates115404 -Ref: #bracketed-posting-dates115588 -Node: D directive116102 -Ref: #d-directive116270 -Node: apply account directive117870 -Ref: #apply-account-directive118050 -Node: Y directive118737 -Ref: #y-directive118897 -Node: Secondary dates119725 -Ref: #secondary-dates119879 -Node: Star comments120693 -Ref: #star-comments120853 -Node: Valuation expressions121385 -Ref: #valuation-expressions121562 -Node: Virtual postings121684 -Ref: #virtual-postings121861 -Node: Other Ledger directives123298 -Ref: #other-ledger-directives123461 -Node: CSV124027 -Ref: #csv124120 -Node: CSV rules cheatsheet126200 -Ref: #csv-rules-cheatsheet126329 -Node: source128127 -Ref: #source128250 -Node: separator129130 -Ref: #separator129243 -Node: skip129783 -Ref: #skip129891 -Node: date-format130435 -Ref: #date-format130556 -Node: timezone131280 -Ref: #timezone131403 -Node: newest-first132408 -Ref: #newest-first132546 -Node: intra-day-reversed133124 -Ref: #intra-day-reversed133278 -Node: decimal-mark133771 -Ref: #decimal-mark133912 -Node: fields list134251 -Ref: #fields-list134390 -Node: Field assignment136061 -Ref: #field-assignment136205 -Node: Field names137232 -Ref: #field-names137363 -Node: date field138566 -Ref: #date-field138684 -Node: date2 field138732 -Ref: #date2-field138873 -Node: status field138929 -Ref: #status-field139072 -Node: code field139121 -Ref: #code-field139266 -Node: description field139311 -Ref: #description-field139471 -Node: comment field139530 -Ref: #comment-field139685 -Node: account field139978 -Ref: #account-field140128 -Node: amount field140698 -Ref: #amount-field140847 -Node: currency field144223 -Ref: #currency-field144376 -Node: balance field144633 -Ref: #balance-field144765 -Node: if block145137 -Ref: #if-block145258 -Node: Matchers146666 -Ref: #matchers146780 -Node: if table148262 -Ref: #if-table148384 -Node: balance-type149806 -Ref: #balance-type149935 -Node: include150635 -Ref: #include150762 -Node: Working with CSV151206 -Ref: #working-with-csv151353 -Node: Rapid feedback151760 -Ref: #rapid-feedback151893 -Node: Valid CSV152345 -Ref: #valid-csv152491 -Node: File Extension153223 -Ref: #file-extension153396 -Node: Reading CSV from standard input153960 -Ref: #reading-csv-from-standard-input154184 -Node: Reading multiple CSV files154348 -Ref: #reading-multiple-csv-files154579 -Node: Reading files specified by rule154820 -Ref: #reading-files-specified-by-rule155048 -Node: Valid transactions156219 -Ref: #valid-transactions156418 -Node: Deduplicating importing157046 -Ref: #deduplicating-importing157241 -Node: Setting amounts158277 -Ref: #setting-amounts158448 -Node: Amount signs160913 -Ref: #amount-signs161083 -Node: Setting currency/commodity161980 -Ref: #setting-currencycommodity162184 -Node: Amount decimal places163358 -Ref: #amount-decimal-places163564 -Node: Referencing other fields163876 -Ref: #referencing-other-fields164089 -Node: How CSV rules are evaluated164986 -Ref: #how-csv-rules-are-evaluated165203 -Node: Well factored rules166656 -Ref: #well-factored-rules166824 -Node: CSV rules examples167148 -Ref: #csv-rules-examples167283 -Node: Bank of Ireland167348 -Ref: #bank-of-ireland167485 -Node: Coinbase168947 -Ref: #coinbase169085 -Node: Amazon170132 -Ref: #amazon170257 -Node: Paypal171976 -Ref: #paypal172084 -Node: Timeclock179728 -Ref: #timeclock179833 -Node: Timedot182011 -Ref: #timedot182134 -Node: PART 3 REPORTING CONCEPTS187003 -Ref: #part-3-reporting-concepts187167 -Node: Time periods187167 -Ref: #time-periods187301 -Node: Report start & end date187419 -Ref: #report-start-end-date187571 -Node: Smart dates189230 -Ref: #smart-dates189383 -Node: Report intervals191251 -Ref: #report-intervals191406 -Node: Date adjustment191824 -Ref: #date-adjustment191984 -Node: Period expressions192835 -Ref: #period-expressions192976 -Node: Period expressions with a report interval194740 -Ref: #period-expressions-with-a-report-interval194974 -Node: More complex report intervals195188 -Ref: #more-complex-report-intervals195433 -Node: Multiple weekday intervals197234 -Ref: #multiple-weekday-intervals197423 -Node: Depth198245 -Ref: #depth198347 -Node: Queries198643 -Ref: #queries198745 -Node: Query types199654 -Ref: #query-types199775 -Node: Combining query terms202949 -Ref: #combining-query-terms203126 -Node: Queries and command options204394 -Ref: #queries-and-command-options204593 -Node: Queries and valuation204842 -Ref: #queries-and-valuation205037 -Node: Querying with account aliases205266 -Ref: #querying-with-account-aliases205477 -Node: Querying with cost or value205607 -Ref: #querying-with-cost-or-value205784 -Node: Pivoting206085 -Ref: #pivoting206199 -Node: Generating data207657 -Ref: #generating-data207789 -Node: Forecasting209372 -Ref: #forecasting209497 -Node: --forecast210028 -Ref: #forecast210159 -Node: Inspecting forecast transactions211205 -Ref: #inspecting-forecast-transactions211407 -Node: Forecast reports212537 -Ref: #forecast-reports212710 -Node: Forecast tags213646 -Ref: #forecast-tags213806 -Node: Forecast period in detail214266 -Ref: #forecast-period-in-detail214460 -Node: Forecast troubleshooting215354 -Ref: #forecast-troubleshooting215522 -Node: Budgeting216425 -Ref: #budgeting216545 -Node: Cost reporting216982 -Ref: #cost-reporting217110 -Node: -B Convert to cost218217 -Ref: #b-convert-to-cost218373 -Node: Equity conversion postings219765 -Ref: #equity-conversion-postings219979 -Node: Inferring equity postings from cost220870 -Ref: #inferring-equity-postings-from-cost221119 -Node: Inferring cost from equity postings221930 -Ref: #inferring-cost-from-equity-postings222178 -Node: When to infer cost/equity223945 -Ref: #when-to-infer-costequity224163 -Node: How to record conversions224559 -Ref: #how-to-record-conversions224751 -Node: Conversion with implicit cost225042 -Ref: #conversion-with-implicit-cost225247 -Node: Conversion with explicit cost226124 -Ref: #conversion-with-explicit-cost226369 -Node: Conversion with equity postings226786 -Ref: #conversion-with-equity-postings227055 -Node: Conversion with equity postings and explicit cost227874 -Ref: #conversion-with-equity-postings-and-explicit-cost228141 -Node: Cost tips228603 -Ref: #cost-tips228729 -Node: Valuation229435 -Ref: #valuation229559 -Node: -V Value230333 -Ref: #v-value230459 -Node: -X Value in specified commodity230654 -Ref: #x-value-in-specified-commodity230849 -Node: Valuation date230998 -Ref: #valuation-date231169 -Node: Finding market price231606 -Ref: #finding-market-price231811 -Node: --infer-market-prices market prices from transactions232981 -Ref: #infer-market-prices-market-prices-from-transactions233257 -Node: Valuation commodity236013 -Ref: #valuation-commodity236226 -Node: Simple valuation examples237439 -Ref: #simple-valuation-examples237637 -Node: --value Flexible valuation238296 -Ref: #value-flexible-valuation238500 -Node: More valuation examples240144 -Ref: #more-valuation-examples240353 -Node: Interaction of valuation and queries242352 -Ref: #interaction-of-valuation-and-queries242593 -Node: Effect of valuation on reports243065 -Ref: #effect-of-valuation-on-reports243262 -Node: PART 4 COMMANDS250959 -Ref: #part-4-commands251102 -Node: Commands overview251481 -Ref: #commands-overview251615 -Node: DATA ENTRY251794 -Ref: #data-entry251918 -Node: DATA CREATION252117 -Ref: #data-creation252271 -Node: DATA MANAGEMENT252389 -Ref: #data-management252554 -Node: REPORTS FINANCIAL252675 -Ref: #reports-financial252850 -Node: REPORTS VERSATILE253155 -Ref: #reports-versatile253328 -Node: REPORTS BASIC253581 -Ref: #reports-basic253733 -Node: HELP254242 -Ref: #help254364 -Node: ADD-ONS254474 -Ref: #add-ons254580 -Node: accounts255159 -Ref: #accounts255292 -Node: activity257179 -Ref: #activity257298 -Node: add257672 -Ref: #add257782 -Node: aregister260593 -Ref: #aregister260714 -Node: aregister and custom posting dates263602 -Ref: #aregister-and-custom-posting-dates263768 -Node: balance264320 -Ref: #balance264446 -Node: balance features265421 -Ref: #balance-features265561 -Node: Simple balance report267520 -Ref: #simple-balance-report267705 -Node: Balance report line format269330 -Ref: #balance-report-line-format269532 -Node: Filtered balance report271690 -Ref: #filtered-balance-report271882 -Node: List or tree mode272209 -Ref: #list-or-tree-mode272377 -Node: Depth limiting273722 -Ref: #depth-limiting273888 -Node: Dropping top-level accounts274489 -Ref: #dropping-top-level-accounts274689 -Node: Showing declared accounts274999 -Ref: #showing-declared-accounts275198 -Node: Sorting by amount275729 -Ref: #sorting-by-amount275896 -Node: Percentages276566 -Ref: #percentages276725 -Node: Multi-period balance report277273 -Ref: #multi-period-balance-report277473 -Node: Balance change end balance279748 -Ref: #balance-change-end-balance279957 -Node: Balance report types281385 -Ref: #balance-report-types281566 -Node: Calculation type282064 -Ref: #calculation-type282219 -Node: Accumulation type282768 -Ref: #accumulation-type282948 -Node: Valuation type283850 -Ref: #valuation-type284038 -Node: Combining balance report types285033 -Ref: #combining-balance-report-types285227 -Node: Budget report287065 -Ref: #budget-report287217 -Node: Budget report start date292871 -Ref: #budget-report-start-date293049 -Node: Budgets and subaccounts294381 -Ref: #budgets-and-subaccounts294588 -Node: Selecting budget goals298028 -Ref: #selecting-budget-goals298227 -Node: Budget vs forecast299262 -Ref: #budget-vs-forecast299421 -Node: Data layout301051 -Ref: #data-layout301201 -Node: Useful balance reports309096 -Ref: #useful-balance-reports309246 -Node: balancesheet310331 -Ref: #balancesheet310476 -Node: balancesheetequity311796 -Ref: #balancesheetequity311954 -Node: cashflow313343 -Ref: #cashflow313474 -Node: check314902 -Ref: #check315016 -Node: Basic checks315818 -Ref: #basic-checks315938 -Node: Strict checks316458 -Ref: #strict-checks316601 -Node: Other checks317024 -Ref: #other-checks317166 -Node: Custom checks317729 -Ref: #custom-checks317886 -Node: More about specific checks318303 -Ref: #more-about-specific-checks318465 -Node: close319193 -Ref: #close319304 -Node: close and balance assertions322714 -Ref: #close-and-balance-assertions322892 -Node: Example retain earnings324043 -Ref: #example-retain-earnings324260 -Node: Example migrate balances to a new file324692 -Ref: #example-migrate-balances-to-a-new-file324957 -Node: Example excluding closing/opening transactions325533 -Ref: #example-excluding-closingopening-transactions325782 -Node: codes327000 -Ref: #codes327117 -Node: commodities327981 -Ref: #commodities328109 -Node: demo328179 -Ref: #demo328300 -Node: descriptions329144 -Ref: #descriptions329274 -Node: diff329565 -Ref: #diff329680 -Node: files330722 -Ref: #files330831 -Node: help330972 -Ref: #help-1331081 -Node: import332454 -Ref: #import332577 -Node: Deduplication333663 -Ref: #deduplication333788 -Node: Import testing335682 -Ref: #import-testing335847 -Node: Importing balance assignments336690 -Ref: #importing-balance-assignments336896 -Node: Commodity display styles337545 -Ref: #commodity-display-styles337718 -Node: incomestatement337847 -Ref: #incomestatement337989 -Node: notes339310 -Ref: #notes339432 -Node: payees339794 -Ref: #payees339909 -Node: prices340428 -Ref: #prices340543 -Node: print340841 -Ref: #print340956 -Node: register346294 -Ref: #register346416 -Node: Custom register output351447 -Ref: #custom-register-output351578 -Node: rewrite352915 -Ref: #rewrite353033 -Node: Re-write rules in a file354931 -Ref: #re-write-rules-in-a-file355094 -Node: Diff output format356243 -Ref: #diff-output-format356426 -Node: rewrite vs print --auto357518 -Ref: #rewrite-vs.-print---auto357678 -Node: roi358234 -Ref: #roi358341 -Node: Spaces and special characters in --inv and --pnl360062 -Ref: #spaces-and-special-characters-in---inv-and---pnl360302 -Node: Semantics of --inv and --pnl360790 -Ref: #semantics-of---inv-and---pnl361029 -Node: IRR and TWR explained362879 -Ref: #irr-and-twr-explained363039 -Node: stats366125 -Ref: #stats366233 -Node: tags367620 -Ref: #tags-1367727 -Node: test368736 -Ref: #test368829 -Node: PART 5 COMMON TASKS369571 -Ref: #part-5-common-tasks369717 -Node: Getting help370015 -Ref: #getting-help370156 -Node: Constructing command lines370916 -Ref: #constructing-command-lines371117 -Node: Starting a journal file371774 -Ref: #starting-a-journal-file371976 -Node: Setting LEDGER_FILE373178 -Ref: #setting-ledger_file373370 -Node: Setting opening balances374327 -Ref: #setting-opening-balances374528 -Node: Recording transactions377669 -Ref: #recording-transactions377858 -Node: Reconciling378414 -Ref: #reconciling378566 -Node: Reporting380823 -Ref: #reporting380972 -Node: Migrating to a new file384957 -Ref: #migrating-to-a-new-file385114 -Node: BUGS385413 -Ref: #bugs385503 -Node: Troubleshooting386382 -Ref: #troubleshooting386482 +Node: PART 1 USER INTERFACE3782 +Ref: #part-1-user-interface3921 +Node: Input3921 +Ref: #input4031 +Node: Data formats4980 +Ref: #data-formats5093 +Node: Standard input6526 +Ref: #standard-input6666 +Node: Multiple files6893 +Ref: #multiple-files7032 +Node: Strict mode7630 +Ref: #strict-mode7740 +Node: Commands8464 +Ref: #commands8566 +Node: Add-on commands9633 +Ref: #add-on-commands9735 +Node: Options10851 +Ref: #options10963 +Node: General help options11291 +Ref: #general-help-options11437 +Node: General input options11719 +Ref: #general-input-options11901 +Node: General reporting options12603 +Ref: #general-reporting-options12764 +Node: Command line tips16154 +Ref: #command-line-tips16284 +Node: Option repetition16543 +Ref: #option-repetition16687 +Node: Special characters17006 +Ref: #special-characters17179 +Node: Single escaping shell metacharacters17342 +Ref: #single-escaping-shell-metacharacters17583 +Node: Double escaping regular expression metacharacters18186 +Ref: #double-escaping-regular-expression-metacharacters18497 +Node: Triple escaping for add-on commands19023 +Ref: #triple-escaping-for-add-on-commands19283 +Node: Less escaping19927 +Ref: #less-escaping20081 +Node: Unicode characters20405 +Ref: #unicode-characters20580 +Node: Regular expressions21992 +Ref: #regular-expressions22165 +Node: Argument files23909 +Ref: #argument-files24045 +Node: Output24542 +Ref: #output24654 +Node: Output destination24781 +Ref: #output-destination24912 +Node: Output format25337 +Ref: #output-format25483 +Node: CSV output27021 +Ref: #csv-output27137 +Node: HTML output27240 +Ref: #html-output27378 +Node: JSON output27472 +Ref: #json-output27610 +Node: SQL output28532 +Ref: #sql-output28648 +Node: Commodity styles29383 +Ref: #commodity-styles29523 +Node: Colour30122 +Ref: #colour30240 +Node: Box-drawing30644 +Ref: #box-drawing30762 +Node: Paging31052 +Ref: #paging31166 +Node: Debug output32119 +Ref: #debug-output32225 +Node: Environment32888 +Ref: #environment33012 +Node: PART 2 DATA FORMATS33556 +Ref: #part-2-data-formats33699 +Node: Journal33699 +Ref: #journal33808 +Node: Journal cheatsheet34465 +Ref: #journal-cheatsheet34604 +Node: About journal format38589 +Ref: #about-journal-format38749 +Node: Comments40365 +Ref: #comments40495 +Node: Transactions41311 +Ref: #transactions41434 +Node: Dates42448 +Ref: #dates42555 +Node: Simple dates42600 +Ref: #simple-dates42716 +Node: Posting dates43216 +Ref: #posting-dates43334 +Node: Status44303 +Ref: #status44404 +Node: Code46112 +Ref: #code46215 +Node: Description46447 +Ref: #description46578 +Node: Payee and note46898 +Ref: #payee-and-note47004 +Node: Transaction comments47339 +Ref: #transaction-comments47492 +Node: Postings47855 +Ref: #postings47988 +Node: Account names48983 +Ref: #account-names49113 +Node: Amounts50787 +Ref: #amounts50902 +Node: Decimal marks digit group marks51887 +Ref: #decimal-marks-digit-group-marks52062 +Node: Commodity53076 +Ref: #commodity53263 +Node: Directives influencing number parsing and display54215 +Ref: #directives-influencing-number-parsing-and-display54474 +Node: Commodity display style54926 +Ref: #commodity-display-style55132 +Node: Rounding57301 +Ref: #rounding57419 +Node: Costs57718 +Ref: #costs57834 +Node: Other cost/lot notations60032 +Ref: #other-costlot-notations60164 +Node: Balance assertions62753 +Ref: #balance-assertions62904 +Node: Assertions and ordering63987 +Ref: #assertions-and-ordering64176 +Node: Assertions and multiple included files64876 +Ref: #assertions-and-multiple-included-files65136 +Node: Assertions and multiple -f files65636 +Ref: #assertions-and-multiple--f-files65887 +Node: Assertions and commodities66284 +Ref: #assertions-and-commodities66506 +Node: Assertions and prices67686 +Ref: #assertions-and-prices67892 +Node: Assertions and subaccounts68319 +Ref: #assertions-and-subaccounts68540 +Node: Assertions and virtual postings68864 +Ref: #assertions-and-virtual-postings69102 +Node: Assertions and auto postings69234 +Ref: #assertions-and-auto-postings69464 +Node: Assertions and precision70109 +Ref: #assertions-and-precision70291 +Node: Posting comments70558 +Ref: #posting-comments70704 +Node: Tags71081 +Ref: #tags71195 +Node: Tag values72388 +Ref: #tag-values72477 +Node: Directives73236 +Ref: #directives73363 +Node: Directives and multiple files74693 +Ref: #directives-and-multiple-files74871 +Node: Directive effects75638 +Ref: #directive-effects75792 +Node: account directive78805 +Ref: #account-directive78961 +Node: Account comments80359 +Ref: #account-comments80509 +Node: Account subdirectives81017 +Ref: #account-subdirectives81208 +Node: Account error checking81350 +Ref: #account-error-checking81548 +Node: Account display order82737 +Ref: #account-display-order82925 +Node: Account types84026 +Ref: #account-types84167 +Node: alias directive87794 +Ref: #alias-directive87955 +Node: Basic aliases89005 +Ref: #basic-aliases89136 +Node: Regex aliases89880 +Ref: #regex-aliases90037 +Node: Combining aliases90927 +Ref: #combining-aliases91105 +Node: Aliases and multiple files92381 +Ref: #aliases-and-multiple-files92585 +Node: end aliases directive93164 +Ref: #end-aliases-directive93383 +Node: Aliases can generate bad account names93532 +Ref: #aliases-can-generate-bad-account-names93780 +Node: Aliases and account types94365 +Ref: #aliases-and-account-types94557 +Node: commodity directive95253 +Ref: #commodity-directive95427 +Node: Commodity error checking98001 +Ref: #commodity-error-checking98147 +Node: decimal-mark directive98662 +Ref: #decimal-mark-directive98844 +Node: include directive99241 +Ref: #include-directive99405 +Node: P directive100329 +Ref: #p-directive100474 +Node: payee directive101357 +Ref: #payee-directive101506 +Node: tag directive101822 +Ref: #tag-directive101977 +Node: Periodic transactions102445 +Ref: #periodic-transactions102610 +Node: Periodic rule syntax104316 +Ref: #periodic-rule-syntax104494 +Node: Periodic rules and relative dates105139 +Ref: #periodic-rules-and-relative-dates105405 +Node: Two spaces between period expression and description!105916 +Ref: #two-spaces-between-period-expression-and-description106193 +Node: Auto postings106877 +Ref: #auto-postings107025 +Node: Auto postings and multiple files109462 +Ref: #auto-postings-and-multiple-files109626 +Node: Auto postings and dates110027 +Ref: #auto-postings-and-dates110275 +Node: Auto postings and transaction balancing / inferred amounts / balance assertions110450 +Ref: #auto-postings-and-transaction-balancing-inferred-amounts-balance-assertions110806 +Node: Auto posting tags111309 +Ref: #auto-posting-tags111591 +Node: Auto postings on forecast transactions only112227 +Ref: #auto-postings-on-forecast-transactions-only112473 +Node: Other syntax112720 +Ref: #other-syntax112836 +Node: Balance assignments113463 +Ref: #balance-assignments113619 +Node: Balance assignments and prices114949 +Ref: #balance-assignments-and-prices115117 +Node: Bracketed posting dates115328 +Ref: #bracketed-posting-dates115512 +Node: D directive116026 +Ref: #d-directive116194 +Node: apply account directive117794 +Ref: #apply-account-directive117974 +Node: Y directive118661 +Ref: #y-directive118821 +Node: Secondary dates119649 +Ref: #secondary-dates119803 +Node: Star comments120617 +Ref: #star-comments120777 +Node: Valuation expressions121309 +Ref: #valuation-expressions121486 +Node: Virtual postings121608 +Ref: #virtual-postings121785 +Node: Other Ledger directives123222 +Ref: #other-ledger-directives123385 +Node: CSV123951 +Ref: #csv124044 +Node: CSV rules cheatsheet126124 +Ref: #csv-rules-cheatsheet126253 +Node: source128051 +Ref: #source128174 +Node: separator129054 +Ref: #separator129167 +Node: skip129707 +Ref: #skip129815 +Node: date-format130359 +Ref: #date-format130480 +Node: timezone131204 +Ref: #timezone131327 +Node: newest-first132332 +Ref: #newest-first132470 +Node: intra-day-reversed133048 +Ref: #intra-day-reversed133202 +Node: decimal-mark133695 +Ref: #decimal-mark133836 +Node: fields list134175 +Ref: #fields-list134314 +Node: Field assignment135985 +Ref: #field-assignment136129 +Node: Field names137156 +Ref: #field-names137287 +Node: date field138490 +Ref: #date-field138608 +Node: date2 field138656 +Ref: #date2-field138797 +Node: status field138853 +Ref: #status-field138996 +Node: code field139045 +Ref: #code-field139190 +Node: description field139235 +Ref: #description-field139395 +Node: comment field139454 +Ref: #comment-field139609 +Node: account field139902 +Ref: #account-field140052 +Node: amount field140622 +Ref: #amount-field140771 +Node: currency field144147 +Ref: #currency-field144300 +Node: balance field144557 +Ref: #balance-field144689 +Node: if block145061 +Ref: #if-block145182 +Node: Matchers146590 +Ref: #matchers146704 +Node: if table148186 +Ref: #if-table148308 +Node: balance-type149730 +Ref: #balance-type149859 +Node: include150559 +Ref: #include150686 +Node: Working with CSV151130 +Ref: #working-with-csv151277 +Node: Rapid feedback151684 +Ref: #rapid-feedback151817 +Node: Valid CSV152269 +Ref: #valid-csv152415 +Node: File Extension153147 +Ref: #file-extension153320 +Node: Reading CSV from standard input153884 +Ref: #reading-csv-from-standard-input154108 +Node: Reading multiple CSV files154272 +Ref: #reading-multiple-csv-files154503 +Node: Reading files specified by rule154744 +Ref: #reading-files-specified-by-rule154972 +Node: Valid transactions156143 +Ref: #valid-transactions156342 +Node: Deduplicating importing156970 +Ref: #deduplicating-importing157165 +Node: Setting amounts158201 +Ref: #setting-amounts158372 +Node: Amount signs160837 +Ref: #amount-signs161007 +Node: Setting currency/commodity161904 +Ref: #setting-currencycommodity162108 +Node: Amount decimal places163282 +Ref: #amount-decimal-places163488 +Node: Referencing other fields163800 +Ref: #referencing-other-fields164013 +Node: How CSV rules are evaluated164910 +Ref: #how-csv-rules-are-evaluated165127 +Node: Well factored rules166580 +Ref: #well-factored-rules166748 +Node: CSV rules examples167072 +Ref: #csv-rules-examples167207 +Node: Bank of Ireland167272 +Ref: #bank-of-ireland167409 +Node: Coinbase168871 +Ref: #coinbase169009 +Node: Amazon170056 +Ref: #amazon170181 +Node: Paypal171900 +Ref: #paypal172008 +Node: Timeclock179652 +Ref: #timeclock179757 +Node: Timedot181935 +Ref: #timedot182058 +Node: PART 3 REPORTING CONCEPTS186927 +Ref: #part-3-reporting-concepts187091 +Node: Time periods187091 +Ref: #time-periods187225 +Node: Report start & end date187343 +Ref: #report-start-end-date187495 +Node: Smart dates189154 +Ref: #smart-dates189307 +Node: Report intervals191175 +Ref: #report-intervals191330 +Node: Date adjustment191748 +Ref: #date-adjustment191908 +Node: Period expressions192759 +Ref: #period-expressions192900 +Node: Period expressions with a report interval194664 +Ref: #period-expressions-with-a-report-interval194898 +Node: More complex report intervals195112 +Ref: #more-complex-report-intervals195357 +Node: Multiple weekday intervals197158 +Ref: #multiple-weekday-intervals197347 +Node: Depth198169 +Ref: #depth198271 +Node: Queries198567 +Ref: #queries198669 +Node: Query types199578 +Ref: #query-types199699 +Node: Combining query terms202873 +Ref: #combining-query-terms203050 +Node: Queries and command options204318 +Ref: #queries-and-command-options204517 +Node: Queries and valuation204766 +Ref: #queries-and-valuation204961 +Node: Querying with account aliases205190 +Ref: #querying-with-account-aliases205401 +Node: Querying with cost or value205531 +Ref: #querying-with-cost-or-value205708 +Node: Pivoting206009 +Ref: #pivoting206123 +Node: Generating data207581 +Ref: #generating-data207713 +Node: Forecasting209296 +Ref: #forecasting209421 +Node: --forecast209952 +Ref: #forecast210083 +Node: Inspecting forecast transactions211129 +Ref: #inspecting-forecast-transactions211331 +Node: Forecast reports212461 +Ref: #forecast-reports212634 +Node: Forecast tags213570 +Ref: #forecast-tags213730 +Node: Forecast period in detail214190 +Ref: #forecast-period-in-detail214384 +Node: Forecast troubleshooting215278 +Ref: #forecast-troubleshooting215446 +Node: Budgeting216349 +Ref: #budgeting216469 +Node: Cost reporting216906 +Ref: #cost-reporting217034 +Node: -B Convert to cost218141 +Ref: #b-convert-to-cost218297 +Node: Equity conversion postings219689 +Ref: #equity-conversion-postings219903 +Node: Inferring equity postings from cost220794 +Ref: #inferring-equity-postings-from-cost221043 +Node: Inferring cost from equity postings221854 +Ref: #inferring-cost-from-equity-postings222102 +Node: When to infer cost/equity223869 +Ref: #when-to-infer-costequity224087 +Node: How to record conversions224483 +Ref: #how-to-record-conversions224675 +Node: Conversion with implicit cost224966 +Ref: #conversion-with-implicit-cost225171 +Node: Conversion with explicit cost226048 +Ref: #conversion-with-explicit-cost226293 +Node: Conversion with equity postings226710 +Ref: #conversion-with-equity-postings226979 +Node: Conversion with equity postings and explicit cost227798 +Ref: #conversion-with-equity-postings-and-explicit-cost228065 +Node: Cost tips228527 +Ref: #cost-tips228653 +Node: Valuation229359 +Ref: #valuation229483 +Node: -V Value230257 +Ref: #v-value230383 +Node: -X Value in specified commodity230578 +Ref: #x-value-in-specified-commodity230773 +Node: Valuation date230922 +Ref: #valuation-date231093 +Node: Finding market price231530 +Ref: #finding-market-price231735 +Node: --infer-market-prices market prices from transactions232905 +Ref: #infer-market-prices-market-prices-from-transactions233181 +Node: Valuation commodity235937 +Ref: #valuation-commodity236150 +Node: Simple valuation examples237363 +Ref: #simple-valuation-examples237561 +Node: --value Flexible valuation238220 +Ref: #value-flexible-valuation238424 +Node: More valuation examples240068 +Ref: #more-valuation-examples240277 +Node: Interaction of valuation and queries242276 +Ref: #interaction-of-valuation-and-queries242517 +Node: Effect of valuation on reports242989 +Ref: #effect-of-valuation-on-reports243186 +Node: PART 4 COMMANDS250883 +Ref: #part-4-commands251026 +Node: Commands overview251405 +Ref: #commands-overview251539 +Node: DATA ENTRY251718 +Ref: #data-entry251842 +Node: DATA CREATION252041 +Ref: #data-creation252195 +Node: DATA MANAGEMENT252313 +Ref: #data-management252478 +Node: REPORTS FINANCIAL252599 +Ref: #reports-financial252774 +Node: REPORTS VERSATILE253079 +Ref: #reports-versatile253252 +Node: REPORTS BASIC253505 +Ref: #reports-basic253657 +Node: HELP254166 +Ref: #help254288 +Node: ADD-ONS254398 +Ref: #add-ons254504 +Node: accounts255083 +Ref: #accounts255216 +Node: activity257103 +Ref: #activity257222 +Node: add257596 +Ref: #add257706 +Node: aregister260517 +Ref: #aregister260638 +Node: aregister and custom posting dates263526 +Ref: #aregister-and-custom-posting-dates263692 +Node: balance264244 +Ref: #balance264370 +Node: balance features265345 +Ref: #balance-features265485 +Node: Simple balance report267444 +Ref: #simple-balance-report267629 +Node: Balance report line format269254 +Ref: #balance-report-line-format269456 +Node: Filtered balance report271614 +Ref: #filtered-balance-report271806 +Node: List or tree mode272133 +Ref: #list-or-tree-mode272301 +Node: Depth limiting273646 +Ref: #depth-limiting273812 +Node: Dropping top-level accounts274413 +Ref: #dropping-top-level-accounts274613 +Node: Showing declared accounts274923 +Ref: #showing-declared-accounts275122 +Node: Sorting by amount275653 +Ref: #sorting-by-amount275820 +Node: Percentages276490 +Ref: #percentages276649 +Node: Multi-period balance report277197 +Ref: #multi-period-balance-report277397 +Node: Balance change end balance279672 +Ref: #balance-change-end-balance279881 +Node: Balance report types281309 +Ref: #balance-report-types281490 +Node: Calculation type281988 +Ref: #calculation-type282143 +Node: Accumulation type282692 +Ref: #accumulation-type282872 +Node: Valuation type283774 +Ref: #valuation-type283962 +Node: Combining balance report types284957 +Ref: #combining-balance-report-types285151 +Node: Budget report286989 +Ref: #budget-report287141 +Node: Budget report start date292795 +Ref: #budget-report-start-date292973 +Node: Budgets and subaccounts294305 +Ref: #budgets-and-subaccounts294512 +Node: Selecting budget goals297952 +Ref: #selecting-budget-goals298151 +Node: Budget vs forecast299186 +Ref: #budget-vs-forecast299345 +Node: Data layout300975 +Ref: #data-layout301125 +Node: Useful balance reports309020 +Ref: #useful-balance-reports309170 +Node: balancesheet310255 +Ref: #balancesheet310400 +Node: balancesheetequity311720 +Ref: #balancesheetequity311878 +Node: cashflow313267 +Ref: #cashflow313398 +Node: check314826 +Ref: #check314940 +Node: Basic checks315742 +Ref: #basic-checks315862 +Node: Strict checks316382 +Ref: #strict-checks316525 +Node: Other checks316948 +Ref: #other-checks317090 +Node: Custom checks317653 +Ref: #custom-checks317810 +Node: More about specific checks318227 +Ref: #more-about-specific-checks318389 +Node: close319117 +Ref: #close319228 +Node: close and balance assertions322638 +Ref: #close-and-balance-assertions322816 +Node: Example retain earnings323967 +Ref: #example-retain-earnings324184 +Node: Example migrate balances to a new file324616 +Ref: #example-migrate-balances-to-a-new-file324881 +Node: Example excluding closing/opening transactions325457 +Ref: #example-excluding-closingopening-transactions325706 +Node: codes326924 +Ref: #codes327041 +Node: commodities327905 +Ref: #commodities328033 +Node: demo328103 +Ref: #demo328224 +Node: descriptions329068 +Ref: #descriptions329198 +Node: diff329489 +Ref: #diff329604 +Node: files330646 +Ref: #files330755 +Node: help330896 +Ref: #help-1331005 +Node: import332378 +Ref: #import332501 +Node: Deduplication333587 +Ref: #deduplication333712 +Node: Import testing335606 +Ref: #import-testing335771 +Node: Importing balance assignments336614 +Ref: #importing-balance-assignments336820 +Node: Commodity display styles337469 +Ref: #commodity-display-styles337642 +Node: incomestatement337771 +Ref: #incomestatement337913 +Node: notes339234 +Ref: #notes339356 +Node: payees339718 +Ref: #payees339833 +Node: prices340352 +Ref: #prices340467 +Node: print340765 +Ref: #print340880 +Node: register346218 +Ref: #register346340 +Node: Custom register output351371 +Ref: #custom-register-output351502 +Node: rewrite352839 +Ref: #rewrite352957 +Node: Re-write rules in a file354855 +Ref: #re-write-rules-in-a-file355018 +Node: Diff output format356167 +Ref: #diff-output-format356350 +Node: rewrite vs print --auto357442 +Ref: #rewrite-vs.-print---auto357602 +Node: roi358158 +Ref: #roi358265 +Node: Spaces and special characters in --inv and --pnl359986 +Ref: #spaces-and-special-characters-in---inv-and---pnl360226 +Node: Semantics of --inv and --pnl360714 +Ref: #semantics-of---inv-and---pnl360953 +Node: IRR and TWR explained362803 +Ref: #irr-and-twr-explained362963 +Node: stats366049 +Ref: #stats366157 +Node: tags367544 +Ref: #tags-1367651 +Node: test368660 +Ref: #test368753 +Node: PART 5 COMMON TASKS369495 +Ref: #part-5-common-tasks369641 +Node: Getting help369939 +Ref: #getting-help370080 +Node: Constructing command lines370840 +Ref: #constructing-command-lines371041 +Node: Starting a journal file371698 +Ref: #starting-a-journal-file371900 +Node: Setting LEDGER_FILE373102 +Ref: #setting-ledger_file373294 +Node: Setting opening balances374251 +Ref: #setting-opening-balances374452 +Node: Recording transactions377593 +Ref: #recording-transactions377782 +Node: Reconciling378338 +Ref: #reconciling378490 +Node: Reporting380747 +Ref: #reporting380896 +Node: Migrating to a new file384881 +Ref: #migrating-to-a-new-file385038 +Node: BUGS385337 +Ref: #bugs385427 +Node: Troubleshooting386306 +Ref: #troubleshooting386406  End Tag Table diff --git a/hledger/hledger.txt b/hledger/hledger.txt index c86e4ccce..c2b8f214f 100644 --- a/hledger/hledger.txt +++ b/hledger/hledger.txt @@ -7,9 +7,10 @@ NAME hledger - robust, friendly plain text accounting (CLI version) SYNOPSIS - hledger # show commmands list - hledger COMMAND [OPTS] [ARGS] # run built-in command - hledger ADDONCMD -- [OPTS] [ARGS] # run add-on command from PATH + hledger + hledger COMMAND [OPTS] [ARGS] + hledger ADDONCMD -- [OPTS] [ARGS] + DESCRIPTION hledger is a robust, user-friendly, cross-platform set of programs for tracking money, time, or any other commodity, using double-entry ac-