;doc: update embedded manuals
This commit is contained in:
parent
4c1c44ce36
commit
4f4426dc24
@ -7,7 +7,7 @@
|
|||||||
hledger\-ui \- terminal interface (TUI) for \f[CR]hledger\f[R], a
|
hledger\-ui \- terminal interface (TUI) for \f[CR]hledger\f[R], a
|
||||||
robust, friendly plain text accounting app.
|
robust, friendly plain text accounting app.
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
\f[CR]hledger\-ui [OPTS] [QUERYARGS]\f[R]
|
\f[CR]hledger\-ui [OPTS] [QUERYARGS]\f[R]
|
||||||
.PD 0
|
.PD 0
|
||||||
.P
|
.P
|
||||||
.PD
|
.PD
|
||||||
@ -15,7 +15,7 @@ or
|
|||||||
.PD 0
|
.PD 0
|
||||||
.P
|
.P
|
||||||
.PD
|
.PD
|
||||||
\f[CR]hledger ui \-\- [OPTS] [QUERYARGS]\f[R]
|
\f[CR]hledger ui [OPTS] [QUERYARGS]\f[R]
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
This manual is for hledger\[aq]s terminal interface, version 1.43.99.
|
This manual is for hledger\[aq]s terminal interface, version 1.43.99.
|
||||||
See also the hledger manual for common concepts and file formats.
|
See also the hledger manual for common concepts and file formats.
|
||||||
|
|||||||
@ -16,7 +16,7 @@ plain text accounting app.
|
|||||||
|
|
||||||
'hledger-ui [OPTS] [QUERYARGS]'
|
'hledger-ui [OPTS] [QUERYARGS]'
|
||||||
or
|
or
|
||||||
'hledger ui -- [OPTS] [QUERYARGS]'
|
'hledger ui [OPTS] [QUERYARGS]'
|
||||||
|
|
||||||
This manual is for hledger's terminal interface, version 1.43.99.
|
This manual is for hledger's terminal interface, version 1.43.99.
|
||||||
See also the hledger manual for common concepts and file formats.
|
See also the hledger manual for common concepts and file formats.
|
||||||
@ -565,22 +565,22 @@ with the UI unresponsive.
|
|||||||
|
|
||||||
Tag Table:
|
Tag Table:
|
||||||
Node: Top221
|
Node: Top221
|
||||||
Node: OPTIONS1872
|
Node: OPTIONS1869
|
||||||
Node: MOUSE8758
|
Node: MOUSE8755
|
||||||
Node: KEYS9090
|
Node: KEYS9087
|
||||||
Node: SCREENS14094
|
Node: SCREENS14091
|
||||||
Node: Menu screen14834
|
Node: Menu screen14831
|
||||||
Node: Cash accounts screen15150
|
Node: Cash accounts screen15147
|
||||||
Node: Balance sheet accounts screen15511
|
Node: Balance sheet accounts screen15508
|
||||||
Node: Income statement accounts screen15847
|
Node: Income statement accounts screen15844
|
||||||
Node: All accounts screen16232
|
Node: All accounts screen16229
|
||||||
Node: Register screen16595
|
Node: Register screen16592
|
||||||
Node: Transaction screen19038
|
Node: Transaction screen19035
|
||||||
Node: Error screen20613
|
Node: Error screen20610
|
||||||
Node: WATCH MODE20979
|
Node: WATCH MODE20976
|
||||||
Node: --watch problems21877
|
Node: --watch problems21874
|
||||||
Node: ENVIRONMENT23230
|
Node: ENVIRONMENT23227
|
||||||
Node: BUGS23463
|
Node: BUGS23460
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
|
||||||
|
|||||||
@ -6,9 +6,9 @@ NAME
|
|||||||
plain text accounting app.
|
plain text accounting app.
|
||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
hledger-ui [OPTS] [QUERYARGS]
|
hledger-ui [OPTS] [QUERYARGS]
|
||||||
or
|
or
|
||||||
hledger ui -- [OPTS] [QUERYARGS]
|
hledger ui [OPTS] [QUERYARGS]
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
This manual is for hledger's terminal interface, version 1.43.99. See
|
This manual is for hledger's terminal interface, version 1.43.99. See
|
||||||
|
|||||||
@ -7,7 +7,7 @@
|
|||||||
hledger\-web \- web interface and API for \f[CR]hledger\f[R], a robust,
|
hledger\-web \- web interface and API for \f[CR]hledger\f[R], a robust,
|
||||||
friendly plain text accounting app.
|
friendly plain text accounting app.
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
\f[CR]hledger\-web [OPTS] [QUERY]\f[R]
|
\f[CR]hledger\-web [OPTS] [QUERY]\f[R]
|
||||||
.PD 0
|
.PD 0
|
||||||
.P
|
.P
|
||||||
.PD
|
.PD
|
||||||
@ -15,7 +15,7 @@ or
|
|||||||
.PD 0
|
.PD 0
|
||||||
.P
|
.P
|
||||||
.PD
|
.PD
|
||||||
\f[CR]hledger web \-\- [OPTS] [QUERY]\f[R]
|
\f[CR]hledger web [OPTS] [QUERY]\f[R]
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
This manual is for hledger\[aq]s web interface, version 1.43.99.
|
This manual is for hledger\[aq]s web interface, version 1.43.99.
|
||||||
See also the hledger manual for common concepts and file formats.
|
See also the hledger manual for common concepts and file formats.
|
||||||
@ -84,7 +84,7 @@ Flags:
|
|||||||
\-\-base\-url=BASEURL set the base url (default: http://IPADDR:PORT)
|
\-\-base\-url=BASEURL set the base url (default: http://IPADDR:PORT)
|
||||||
\-\-test run hledger\-web\[aq]s tests and exit. hspec test
|
\-\-test run hledger\-web\[aq]s tests and exit. hspec test
|
||||||
runner args may follow a \-\-, eg: hledger\-web \-\-test
|
runner args may follow a \-\-, eg: hledger\-web \-\-test
|
||||||
\-\- \-\-help
|
\-\-help
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
By default hledger\-web listens only on IP address \f[CR]127.0.0.1\f[R],
|
By default hledger\-web listens only on IP address \f[CR]127.0.0.1\f[R],
|
||||||
|
|||||||
@ -16,7 +16,7 @@ plain text accounting app.
|
|||||||
|
|
||||||
'hledger-web [OPTS] [QUERY]'
|
'hledger-web [OPTS] [QUERY]'
|
||||||
or
|
or
|
||||||
'hledger web -- [OPTS] [QUERY]'
|
'hledger web [OPTS] [QUERY]'
|
||||||
|
|
||||||
This manual is for hledger's web interface, version 1.43.99. See
|
This manual is for hledger's web interface, version 1.43.99. See
|
||||||
also the hledger manual for common concepts and file formats.
|
also the hledger manual for common concepts and file formats.
|
||||||
@ -96,7 +96,7 @@ Flags:
|
|||||||
--base-url=BASEURL set the base url (default: http://IPADDR:PORT)
|
--base-url=BASEURL set the base url (default: http://IPADDR:PORT)
|
||||||
--test run hledger-web's tests and exit. hspec test
|
--test run hledger-web's tests and exit. hspec test
|
||||||
runner args may follow a --, eg: hledger-web --test
|
runner args may follow a --, eg: hledger-web --test
|
||||||
-- --help
|
--help
|
||||||
|
|
||||||
By default hledger-web listens only on IP address '127.0.0.1', which
|
By default hledger-web listens only on IP address '127.0.0.1', which
|
||||||
be accessed only from the local machine.
|
be accessed only from the local machine.
|
||||||
@ -528,15 +528,15 @@ We welcome bug reports in the hledger issue tracker
|
|||||||
|
|
||||||
Tag Table:
|
Tag Table:
|
||||||
Node: Top223
|
Node: Top223
|
||||||
Node: OPTIONS2581
|
Node: OPTIONS2578
|
||||||
Node: PERMISSIONS11482
|
Node: PERMISSIONS11476
|
||||||
Node: EDITING UPLOADING DOWNLOADING12632
|
Node: EDITING UPLOADING DOWNLOADING12626
|
||||||
Node: RELOADING13647
|
Node: RELOADING13641
|
||||||
Node: JSON API14214
|
Node: JSON API14208
|
||||||
Node: DEBUG OUTPUT19863
|
Node: DEBUG OUTPUT19857
|
||||||
Node: Debug output20015
|
Node: Debug output20009
|
||||||
Node: ENVIRONMENT20533
|
Node: ENVIRONMENT20527
|
||||||
Node: BUGS20769
|
Node: BUGS20763
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
|
||||||
|
|||||||
@ -6,9 +6,9 @@ NAME
|
|||||||
plain text accounting app.
|
plain text accounting app.
|
||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
hledger-web [OPTS] [QUERY]
|
hledger-web [OPTS] [QUERY]
|
||||||
or
|
or
|
||||||
hledger web -- [OPTS] [QUERY]
|
hledger web [OPTS] [QUERY]
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
This manual is for hledger's web interface, version 1.43.99. See also
|
This manual is for hledger's web interface, version 1.43.99. See also
|
||||||
@ -73,7 +73,7 @@ OPTIONS
|
|||||||
--base-url=BASEURL set the base url (default: http://IPADDR:PORT)
|
--base-url=BASEURL set the base url (default: http://IPADDR:PORT)
|
||||||
--test run hledger-web's tests and exit. hspec test
|
--test run hledger-web's tests and exit. hspec test
|
||||||
runner args may follow a --, eg: hledger-web --test
|
runner args may follow a --, eg: hledger-web --test
|
||||||
-- --help
|
--help
|
||||||
|
|
||||||
By default hledger-web listens only on IP address 127.0.0.1, which be
|
By default hledger-web listens only on IP address 127.0.0.1, which be
|
||||||
accessed only from the local machine.
|
accessed only from the local machine.
|
||||||
|
|||||||
@ -20,11 +20,6 @@ or
|
|||||||
.PD 0
|
.PD 0
|
||||||
.P
|
.P
|
||||||
.PD
|
.PD
|
||||||
or
|
|
||||||
.PD 0
|
|
||||||
.P
|
|
||||||
.PD
|
|
||||||
\f[CR]hledger ADDONCMD [OPTS] \-\- [ADDONOPTS] [ADDONARGS]\f[R]
|
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
hledger is a robust, user\-friendly, cross\-platform set of programs for
|
hledger is a robust, user\-friendly, cross\-platform set of programs for
|
||||||
tracking money, time, or any other commodity, using double\-entry
|
tracking money, time, or any other commodity, using double\-entry
|
||||||
@ -283,7 +278,7 @@ Are all commodities declared with a \f[CR]commodity\f[R] directive ?
|
|||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
Are all commodity conversions declared explicitly ?
|
Are all commodity conversions declared explicitly ?
|
||||||
.PP
|
.PP
|
||||||
You can use the check command to run individual checks \-\- the ones
|
You can use the check command to run individual checks \- the ones
|
||||||
listed above and some more.
|
listed above and some more.
|
||||||
.SH Commands
|
.SH Commands
|
||||||
hledger provides various subcommands for getting things done.
|
hledger provides various subcommands for getting things done.
|
||||||
@ -318,31 +313,27 @@ terminal, run \f[CR]hledger CMD \-h\f[R].
|
|||||||
Eg: \f[CR]hledger bal \-h\f[R].
|
Eg: \f[CR]hledger bal \-h\f[R].
|
||||||
.SS Add\-on commands
|
.SS Add\-on commands
|
||||||
In addition to the built\-in commands, you can install \f[I]add\-on
|
In addition to the built\-in commands, you can install \f[I]add\-on
|
||||||
commands\f[R]: programs or scripts named \[dq]hledger\-SOMETHING\[dq],
|
commands\f[R], which will also appear in hledger\[aq]s commands list.
|
||||||
which will also appear in hledger\[aq]s commands list.
|
Some of these can be installed as separate packages; others can be found
|
||||||
If you used the hledger\-install script, you will have several add\-ons
|
in hledger\[aq]s bin/ directory, documented at
|
||||||
installed already.
|
|
||||||
Some more can be found in hledger\[aq]s bin/ directory, documented at
|
|
||||||
https://hledger.org/scripts.html.
|
https://hledger.org/scripts.html.
|
||||||
.PP
|
.PP
|
||||||
More precisely, add\-on commands are programs or scripts in your
|
Add\-on commands are programs or scripts in your shell\[aq]s PATH, whose
|
||||||
shell\[aq]s PATH, whose name starts with \[dq]hledger\-\[dq] and ends
|
name starts with \[dq]hledger\-\[dq] and ends with no extension or a
|
||||||
with no extension or a recognised extension (\[dq].bat\[dq],
|
recognised extension (\[dq].bat\[dq], \[dq].com\[dq], \[dq].exe\[dq],
|
||||||
\[dq].com\[dq], \[dq].exe\[dq], \[dq].hs\[dq], \[dq].js\[dq],
|
\[dq].hs\[dq], \[dq].js\[dq], \[dq].lhs\[dq], \[dq].lua\[dq],
|
||||||
\[dq].lhs\[dq], \[dq].lua\[dq], \[dq].php\[dq], \[dq].pl\[dq],
|
\[dq].php\[dq], \[dq].pl\[dq], \[dq].py\[dq], \[dq].rb\[dq],
|
||||||
\[dq].py\[dq], \[dq].rb\[dq], \[dq].rkt\[dq], or \[dq].sh\[dq]), and (on
|
\[dq].rkt\[dq], or \[dq].sh\[dq]), and (on unix and mac) which has
|
||||||
unix and mac) which has executable permission for the current user.
|
executable permission for the current user.
|
||||||
.PP
|
.PP
|
||||||
You can run add\-on commands using hledger, much like built\-in
|
You can run add\-on commands directly: \f[CR]hledger\-ui \-\-watch\f[R].
|
||||||
commands:
|
.PP
|
||||||
\f[CR]hledger ADDONCMD [\-\- ADDONCMDOPTS] [ADDONCMDARGS]\f[R].
|
Or you can run them with hledger, like built\-in commands:
|
||||||
But note the double hyphen argument, required before add\-on\-specific
|
\f[CR]hledger ui \-\-watch\f[R].
|
||||||
options.
|
In this case hledger\[aq]s config file will be used, so you can set
|
||||||
Eg: \f[CR]hledger ui \-\- \-\-watch\f[R] or
|
custom options for the addon there.
|
||||||
\f[CR]hledger web \-\- \-\-serve\f[R].
|
(Before hledger 1.50, an \f[CR]\-\-\f[R] argument was needed before
|
||||||
If this causes difficulty, you can always run the add\-on directly,
|
addon options, but not any more.)
|
||||||
without using \f[CR]hledger\f[R]: \f[CR]hledger\-ui \-\-watch\f[R] or
|
|
||||||
\f[CR]hledger\-web \-\-serve\f[R].
|
|
||||||
.SH Options
|
.SH Options
|
||||||
Run \f[CR]hledger \-h\f[R] to see general command line help.
|
Run \f[CR]hledger \-h\f[R] to see general command line help.
|
||||||
Options can be written either before or after the command name.
|
Options can be written either before or after the command name.
|
||||||
@ -448,6 +439,11 @@ Usually hledger accepts any unambiguous flag prefix, eg you can write
|
|||||||
\f[CR]\-\-tl\f[R] instead of \f[CR]\-\-tldr\f[R] or \f[CR]\-\-dry\f[R]
|
\f[CR]\-\-tl\f[R] instead of \f[CR]\-\-tldr\f[R] or \f[CR]\-\-dry\f[R]
|
||||||
instead of \f[CR]\-\-dry\-run\f[R].
|
instead of \f[CR]\-\-dry\-run\f[R].
|
||||||
.PP
|
.PP
|
||||||
|
You can combine short flags which don\[aq]t take arguments, eg you can
|
||||||
|
write \f[CR]\-MAST\f[R] instead of \f[CR]\-M \-A \-S \-T\f[R].
|
||||||
|
Flags requiring an argument can\[aq]t be combined in this way
|
||||||
|
(\f[CR]\-If FILE\f[R] won\[aq]t work).
|
||||||
|
.PP
|
||||||
If the same option appears more than once in a command line, usually the
|
If the same option appears more than once in a command line, usually the
|
||||||
last (right\-most) wins.
|
last (right\-most) wins.
|
||||||
Similarly, if mutually exclusive flags are used together, the
|
Similarly, if mutually exclusive flags are used together, the
|
||||||
@ -911,8 +907,7 @@ the effect on all your reports.
|
|||||||
To troubleshoot the effect of config files, run with
|
To troubleshoot the effect of config files, run with
|
||||||
\f[CR]\-\-debug\f[R] or \f[CR]\-\-debug 8\f[R].
|
\f[CR]\-\-debug\f[R] or \f[CR]\-\-debug 8\f[R].
|
||||||
.PP
|
.PP
|
||||||
The config file feature was added in hledger 1.40 and is considered
|
The config file feature was added in hledger 1.40.
|
||||||
\f[I]experimental\f[R].
|
|
||||||
.SS Shell completions
|
.SS Shell completions
|
||||||
If you use the bash or zsh shells, you can optionally set up
|
If you use the bash or zsh shells, you can optionally set up
|
||||||
context\-sensitive autocompletion for hledger command lines.
|
context\-sensitive autocompletion for hledger command lines.
|
||||||
@ -1184,7 +1179,7 @@ If you are using the \f[CR]less\f[R] pager, hledger automatically
|
|||||||
appends a number of options to the \f[CR]LESS\f[R] variable to enable
|
appends a number of options to the \f[CR]LESS\f[R] variable to enable
|
||||||
ANSI colour and a number of other conveniences.
|
ANSI colour and a number of other conveniences.
|
||||||
(At the time of writing: \-\-chop\-long\-lines \-\-hilite\-unread
|
(At the time of writing: \-\-chop\-long\-lines \-\-hilite\-unread
|
||||||
\-\-ignore\-case \-\-mouse \-\-no\-init \-\-quit\-at\-eof
|
\-\-ignore\-case \-\-no\-init \-\-quit\-at\-eof
|
||||||
\-\-quit\-if\-one\-screen \-\-RAW\-CONTROL\-CHARS \-\-shift=8
|
\-\-quit\-if\-one\-screen \-\-RAW\-CONTROL\-CHARS \-\-shift=8
|
||||||
\-\-squeeze\-blank\-lines \-\-use\-backslash ).
|
\-\-squeeze\-blank\-lines \-\-use\-backslash ).
|
||||||
If these don\[aq]t work well, you can set your preferred options in the
|
If these don\[aq]t work well, you can set your preferred options in the
|
||||||
@ -3312,29 +3307,57 @@ You can pull in the content of additional files by writing an include
|
|||||||
directive, like this:
|
directive, like this:
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
include FILEPATH
|
include SOMEFILE
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
Only journal files can include, and only journal, timeclock or timedot
|
This has the same effect as if SOMEFILE\[aq]s content was inlined at
|
||||||
files can be included (not CSV files, currently).
|
this point.
|
||||||
|
(With any include directives in SOMEFILE processed similarly,
|
||||||
|
recursively.)
|
||||||
.PP
|
.PP
|
||||||
If the file path does not begin with a slash, it is relative to the
|
Only journal files can include other files.
|
||||||
current file\[aq]s folder.
|
They can include journal, timeclock or timedot files, but not CSV files.
|
||||||
.PP
|
.PP
|
||||||
A tilde means home directory, eg: \f[CR]include \[ti]/main.journal\f[R].
|
If the file path begins with a tilde, that means your home directory:
|
||||||
|
\f[CR]include \[ti]/main.journal\f[R].
|
||||||
.PP
|
.PP
|
||||||
The path may contain glob patterns to match multiple files, eg:
|
If it begins with a slash, it is an absolute path:
|
||||||
\f[CR]include *.journal\f[R].
|
\f[CR]include /home/user/main.journal\f[R].
|
||||||
|
Otherwise it is relative to the including file\[aq]s folder:
|
||||||
|
\f[CR]include ../finances/main.journal\f[R].
|
||||||
.PP
|
.PP
|
||||||
There is limited support for recursive wildcards: \f[CR]**/\f[R] (the
|
Also, the path may have a file type prefix to force a specific file
|
||||||
slash is required) matches 0 or more subdirectories.
|
format, overriding the file extension(s) (as described in Data formats):
|
||||||
It\[aq]s not super convenient since you have to avoid include cycles and
|
\f[CR]include timedot:notes/2023.md\f[R].
|
||||||
including directories, but this can be done, eg:
|
|
||||||
\f[CR]include */**/*.journal\f[R].
|
|
||||||
.PP
|
.PP
|
||||||
The path may also be prefixed to force a specific file format,
|
The path may contain glob patterns to match multiple files.
|
||||||
overriding the file extension (as described in Data formats):
|
hledger\[aq]s globs are similar to zsh\[aq]s: \f[CR]?\f[R] to match any
|
||||||
\f[CR]include timedot:\[ti]/notes/2023*.md\f[R].
|
character; \f[CR][a\-z]\f[R] to match any character in a range;
|
||||||
|
\f[CR]*\f[R] to match zero or more characters that aren\[aq]t a path
|
||||||
|
separator (like \f[CR]/\f[R]); \f[CR]**\f[R] to match zero or more
|
||||||
|
subdirectories and/or zero or more characters at the start of a file
|
||||||
|
name; etc.
|
||||||
|
Also, hledger\[aq]s globs always exclude the including file itself.
|
||||||
|
So, you can do
|
||||||
|
.IP \[bu] 2
|
||||||
|
\f[CR]include *.journal\f[R] to include all other journal files in the
|
||||||
|
current directory (excluding dot files)
|
||||||
|
.IP \[bu] 2
|
||||||
|
\f[CR]include **.journal\f[R] to include all other journal files in this
|
||||||
|
directory and below (excluding dot directories/files)
|
||||||
|
.IP \[bu] 2
|
||||||
|
\f[CR]include timelogs/2???.timedot\f[R] to include all timedot files
|
||||||
|
named like a year number.
|
||||||
|
.PP
|
||||||
|
There is a limitation: hledger\[aq]s globs always exclude paths
|
||||||
|
involving dot files or dot directories.
|
||||||
|
This is a workaround for unavoidable dot directory traversal; you can
|
||||||
|
disable it and revert to older behaviour with the
|
||||||
|
\f[CR]\-\-old\-glob\f[R] flag, for now.
|
||||||
|
.PP
|
||||||
|
If you are using many, or deeply nested, include files, and have an
|
||||||
|
error that\[aq]s hard to pinpoint: a good troubleshooting command is
|
||||||
|
\f[CR]hledger files \-\-debug=6\f[R] (or 7).
|
||||||
.SS \f[CR]P\f[R] directive
|
.SS \f[CR]P\f[R] directive
|
||||||
The \f[CR]P\f[R] directive declares a market price, which is a
|
The \f[CR]P\f[R] directive declares a market price, which is a
|
||||||
conversion rate between two commodities on a certain date.
|
conversion rate between two commodities on a certain date.
|
||||||
@ -3542,6 +3565,9 @@ Note these generated postings are temporary, existing only for the
|
|||||||
duration of the report, and only when \f[CR]\-\-auto\f[R] is used; they
|
duration of the report, and only when \f[CR]\-\-auto\f[R] is used; they
|
||||||
are not saved in the journal file by hledger.
|
are not saved in the journal file by hledger.
|
||||||
.PP
|
.PP
|
||||||
|
The postings can contain the special string \f[CR]%account\f[R] which
|
||||||
|
will be expanded to the account name of the matched account.
|
||||||
|
.PP
|
||||||
Generated postings\[aq] amounts can depend on the matched posting\[aq]s
|
Generated postings\[aq] amounts can depend on the matched posting\[aq]s
|
||||||
amount.
|
amount.
|
||||||
So auto postings can be useful for, eg, adding tax postings with a
|
So auto postings can be useful for, eg, adding tax postings with a
|
||||||
@ -4222,34 +4248,68 @@ will look for rules in \f[CR]foo.csv.rules\f[R].
|
|||||||
Or, you can tell it to read the rules file, with
|
Or, you can tell it to read the rules file, with
|
||||||
\f[CR]\-f foo.csv.rules\f[R], and it will look for data in
|
\f[CR]\-f foo.csv.rules\f[R], and it will look for data in
|
||||||
\f[CR]foo.csv\f[R] (since 1.30).
|
\f[CR]foo.csv\f[R] (since 1.30).
|
||||||
.PP
|
|
||||||
These are mostly equivalent, but the second method provides some extra
|
These are mostly equivalent, but the second method provides some extra
|
||||||
features.
|
features.
|
||||||
For one, the data file can be missing, without causing an error; it is
|
For one, the data file can be missing, without causing an error; it is
|
||||||
just considered empty.
|
just considered empty.
|
||||||
And, you can specify a different data file by adding a \[dq]source\[dq]
|
.PP
|
||||||
rule:
|
For more flexibility, add a \f[CR]source\f[R] rule, which lets you
|
||||||
|
specify a different data file:
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
source ./Checking1.csv
|
source ./Checking1.csv
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
|
If the file does not exist, it is just considered empty, without raising
|
||||||
|
an error.
|
||||||
|
.PP
|
||||||
If you specify just a file name with no path, hledger will look for it
|
If you specify just a file name with no path, hledger will look for it
|
||||||
in your system\[aq]s downloads directory (\f[CR]\[ti]/Downloads\f[R],
|
in the \f[CR]\[ti]/Downloads\f[R] folder:
|
||||||
currently):
|
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
source Checking1.csv
|
source Checking1.csv
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
And if you specify a glob pattern, hledger will read the most recent of
|
You can use a glob pattern, to avoid specifying the file name exactly:
|
||||||
the matched files (useful with repeated downloads):
|
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
source Checking1*.csv
|
source Checking1*.csv
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
|
This has another benefit: if the pattern matches multiple files, hledger
|
||||||
|
will read the newest (most recently modified) one.
|
||||||
|
This avoids problems if you have downloaded a file multiple times
|
||||||
|
without cleaning up.
|
||||||
|
.PP
|
||||||
|
All this enables a convenient workflow where can you just download CSV
|
||||||
|
files, then run \f[CR]hledger import rules/*\f[R].
|
||||||
|
.PP
|
||||||
See also \[dq]Working with CSV > Reading files specified by rule\[dq].
|
See also \[dq]Working with CSV > Reading files specified by rule\[dq].
|
||||||
|
.PP
|
||||||
|
The \f[CR]archive\f[R] rule adds a few more features to
|
||||||
|
\f[CR]source\f[R]; see below.
|
||||||
|
.SS \f[CR]archive\f[R]
|
||||||
|
Adding the \f[CR]archive\f[R] rule to your rules file affects importing
|
||||||
|
or reading files specified by \f[CR]source\f[R]:
|
||||||
|
.IP \[bu] 2
|
||||||
|
After successfully importing, \f[CR]import\f[R] will move the data file
|
||||||
|
to an archive directory (\f[CR]data/\f[R] next to the rules file,
|
||||||
|
auto\-created), renamed to
|
||||||
|
\f[CR]RULESFILEBASENAME.DATAFILEMODDATE.DATAFILEEXT\f[R].
|
||||||
|
Archiving data files is optional, but it can be useful for
|
||||||
|
troubleshooting, detecting variations in your banks\[aq] CSV data,
|
||||||
|
regenerating entries with improved rules, etc.
|
||||||
|
.IP \[bu] 2
|
||||||
|
\f[CR]import\f[R] will pick the oldest of \f[CR]source\f[R] glob
|
||||||
|
matches, rather than the newest.
|
||||||
|
So if you have multiple versions of a download, repeated imports will
|
||||||
|
process them in chronological order.
|
||||||
|
.IP \[bu] 2
|
||||||
|
For commands other than \f[CR]import\f[R], when the \f[CR]source\f[R]
|
||||||
|
path or glob pattern matches no files, hledger will try to read the
|
||||||
|
latest archived data file instead.
|
||||||
|
This is convenient for working with the downloaded data again, even
|
||||||
|
after it has been imported.
|
||||||
.SS \f[CR]encoding\f[R]
|
.SS \f[CR]encoding\f[R]
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
@ -4366,6 +4426,9 @@ date\-format %Y\-%h\-%d
|
|||||||
# Note the time and junk must be fully parsed, though only the date is used.
|
# Note the time and junk must be fully parsed, though only the date is used.
|
||||||
date\-format %\-m/%\-d/%Y %l:%M %p some other junk
|
date\-format %\-m/%\-d/%Y %l:%M %p some other junk
|
||||||
.EE
|
.EE
|
||||||
|
.PP
|
||||||
|
Note currently there is no locale awareness for things like
|
||||||
|
\f[CR]%b\f[R], and setting LC_TIME won\[aq]t help.
|
||||||
.SS \f[CR]timezone\f[R]
|
.SS \f[CR]timezone\f[R]
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
@ -6110,12 +6173,13 @@ can optionally use \[dq]smart date\[dq] syntax.
|
|||||||
Smart dates can be written with english words, can be relative, and can
|
Smart dates can be written with english words, can be relative, and can
|
||||||
have parts omitted.
|
have parts omitted.
|
||||||
Missing parts are inferred as 1, when needed.
|
Missing parts are inferred as 1, when needed.
|
||||||
Smart dates can be interpreted as dates or periods depending on context.
|
Smart dates can be interpreted as dates or periods depending on the
|
||||||
|
context.
|
||||||
.PP
|
.PP
|
||||||
Examples:
|
Examples:
|
||||||
.PP
|
.PP
|
||||||
\f[CR]2004\-01\-01\f[R], \f[CR]2004/10/1\f[R], \f[CR]2004.9.1\f[R],
|
\f[CR]2004\-01\-01\f[R], \f[CR]2004/10/1\f[R], \f[CR]2004.9.1\f[R],
|
||||||
\f[CR]20240504\f[R] :
|
\f[CR]20240504\f[R], \f[CR]2024Q1\f[R] :
|
||||||
.PD 0
|
.PD 0
|
||||||
.P
|
.P
|
||||||
.PD
|
.PD
|
||||||
@ -6123,10 +6187,17 @@ Exact dates.
|
|||||||
The year must have at least four digits, the month must be 1\-12, the
|
The year must have at least four digits, the month must be 1\-12, the
|
||||||
day must be 1\-31, the separator can be \f[CR]\-\f[R] or \f[CR]/\f[R] or
|
day must be 1\-31, the separator can be \f[CR]\-\f[R] or \f[CR]/\f[R] or
|
||||||
\f[CR].\f[R] or nothing.
|
\f[CR].\f[R] or nothing.
|
||||||
|
The q can be upper or lower case and the quarter number must be 1\-4.
|
||||||
.TP
|
.TP
|
||||||
\f[CR]2004\-10\f[R]
|
\f[CR]2004\-10\f[R]
|
||||||
start of month
|
start of month
|
||||||
.TP
|
.TP
|
||||||
|
\f[CR]2004q3\f[R]
|
||||||
|
start of third quarter of 2004
|
||||||
|
.TP
|
||||||
|
\f[CR]q3\f[R]
|
||||||
|
start of third quarter of current year
|
||||||
|
.TP
|
||||||
\f[CR]2004\f[R]
|
\f[CR]2004\f[R]
|
||||||
start of year
|
start of year
|
||||||
.TP
|
.TP
|
||||||
@ -6226,7 +6297,7 @@ For example, if the journal\[aq]s last transaction is on february 20th,
|
|||||||
of february.
|
of february.
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
\f[CR]hledger register \-\-monthly \-\-end 2/14\f[R] also will end the
|
\f[CR]hledger register \-\-monthly \-\-end 2/14\f[R] also will end the
|
||||||
report at the end of february.
|
report at the end of february (overriding the requested end date).
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
\f[CR]hledger register \-\-monthly \-\-begin 1/5 \-\-end 2/14\f[R] will
|
\f[CR]hledger register \-\-monthly \-\-begin 1/5 \-\-end 2/14\f[R] will
|
||||||
end the report on march 4th [1].
|
end the report on march 4th [1].
|
||||||
@ -6565,7 +6636,7 @@ accounts matching \f[CR]liabilities\f[R] to depth 3,
|
|||||||
all other accounts to depth 1.
|
all other accounts to depth 1.
|
||||||
.PP
|
.PP
|
||||||
If an account is matched by more than one regular expression depth
|
If an account is matched by more than one regular expression depth
|
||||||
argument then the more specific one will used.
|
argument then the more specific one will be used.
|
||||||
For example, if
|
For example, if
|
||||||
\f[CR]\-\-depth assets=1 \-\-depth assets:bank:savings=2\f[R] is
|
\f[CR]\-\-depth assets=1 \-\-depth assets:bank:savings=2\f[R] is
|
||||||
provided, then \f[CR]assets:bank:savings\f[R] will be collapsed to depth
|
provided, then \f[CR]assets:bank:savings\f[R] will be collapsed to depth
|
||||||
@ -6975,7 +7046,7 @@ amount to a cash account\[dq].
|
|||||||
.PD
|
.PD
|
||||||
Like \f[CR]expr:\f[R], but when used with transaction\-oriented commands
|
Like \f[CR]expr:\f[R], but when used with transaction\-oriented commands
|
||||||
like \f[CR]print\f[R], it matches the transaction only if all postings
|
like \f[CR]print\f[R], it matches the transaction only if all postings
|
||||||
are matched by all of QUERYEXPR.
|
are matched by all of QUERYEXPR (and there is at least one posting).
|
||||||
.PD 0
|
.PD 0
|
||||||
.P
|
.P
|
||||||
.PD
|
.PD
|
||||||
@ -8041,8 +8112,8 @@ $ hledger \-f\- print \-\-value=end date:2000/01\-2000/03
|
|||||||
(a) 2 B
|
(a) 2 B
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
With no report period specified, that shows the value as of the last day
|
With no report period specified, the latest transaction date or price
|
||||||
of the journal (2000\-03\-01):
|
date is used as valuation date (2000\-04\-01):
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
$ hledger \-f\- print \-\-value=end
|
$ hledger \-f\- print \-\-value=end
|
||||||
@ -8056,8 +8127,7 @@ $ hledger \-f\- print \-\-value=end
|
|||||||
(a) 3 B
|
(a) 3 B
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
Show the current value (the 2000\-04\-01 price is still in effect
|
The value today is the same (the 2000\-04\-01 price is still in effect):
|
||||||
today):
|
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
$ hledger \-f\- print \-\-value=now
|
$ hledger \-f\- print \-\-value=now
|
||||||
@ -8580,10 +8650,6 @@ eg \f[CR]\-s4\f[R] to play at 4x original speed or \f[CR]\-s.5\f[R] to
|
|||||||
play at half speed.
|
play at half speed.
|
||||||
The default speed is 2x.
|
The default speed is 2x.
|
||||||
.PP
|
.PP
|
||||||
Other asciinema options can be added following a double dash, eg
|
|
||||||
\f[CR]\-\- \-i.1\f[R] to limit pauses or \f[CR]\-\- \-h\f[R] to list
|
|
||||||
asciinema\[aq]s other options.
|
|
||||||
.PP
|
|
||||||
During playback, several keys are available: SPACE to pause/unpause, .
|
During playback, several keys are available: SPACE to pause/unpause, .
|
||||||
to step forward (while paused), CTRL\-c quit.
|
to step forward (while paused), CTRL\-c quit.
|
||||||
.PP
|
.PP
|
||||||
@ -8852,7 +8918,7 @@ Runs hledger\-ui (if installed).
|
|||||||
Runs hledger\-web (if installed).
|
Runs hledger\-web (if installed).
|
||||||
.SH Data entry commands
|
.SH Data entry commands
|
||||||
.SS add
|
.SS add
|
||||||
Record new transactions with interactive prompting in the console.
|
Add new transactions to a journal file, with interactive prompting.
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
Flags:
|
Flags:
|
||||||
@ -8906,6 +8972,9 @@ default commodity with a \f[CR]D\f[R] directive, you might expect
|
|||||||
It does not do this; we assume that if you are using a \f[CR]D\f[R]
|
It does not do this; we assume that if you are using a \f[CR]D\f[R]
|
||||||
directive you prefer not to see the commodity symbol repeated on amounts
|
directive you prefer not to see the commodity symbol repeated on amounts
|
||||||
in the journal.
|
in the journal.
|
||||||
|
.IP \[bu] 2
|
||||||
|
\f[CR]add\f[R] creates entries in journal format; it won\[aq]t work with
|
||||||
|
timeclock or timedot files.
|
||||||
.PP
|
.PP
|
||||||
Examples:
|
Examples:
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
@ -8981,7 +9050,7 @@ $ hledger import bank1\-checking.csv bank1\-savings.csv
|
|||||||
.EX
|
.EX
|
||||||
$ hledger import *.csv
|
$ hledger import *.csv
|
||||||
.EE
|
.EE
|
||||||
.SS Import preview
|
.SS Import dry run
|
||||||
It\[aq]s useful to preview the import by running first with
|
It\[aq]s useful to preview the import by running first with
|
||||||
\f[CR]\-\-dry\-run\f[R], to sanity check the range of dates being
|
\f[CR]\-\-dry\-run\f[R], to sanity check the range of dates being
|
||||||
imported, and to check the effect of your conversion rules if converting
|
imported, and to check the effect of your conversion rules if converting
|
||||||
@ -9004,7 +9073,7 @@ You could also run this repeatedly to see the effect of edits to your
|
|||||||
conversion rules:
|
conversion rules:
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
$ watchexec \-\- \[aq]hledger import \-\-dry\-run bank.csv | hledger \-f\- \-I print unknown\[aq]
|
$ watchexec \-\- \[dq]hledger import \-\-dry\-run bank.csv | hledger \-f\- \-I print unknown\[dq]
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
Once the conversion and dates look good enough to import to your
|
Once the conversion and dates look good enough to import to your
|
||||||
@ -9153,38 +9222,58 @@ journal\[aq]s canonical commodity styles, as declared by
|
|||||||
amounts.
|
amounts.
|
||||||
.PP
|
.PP
|
||||||
Related: CSV > Amount decimal places.
|
Related: CSV > Amount decimal places.
|
||||||
|
.SS Import archiving
|
||||||
|
When importing from a CSV rules file
|
||||||
|
(\f[CR]hledger import bank.rules\f[R]), you can use the archive rule to
|
||||||
|
enable automatic archiving of the data file.
|
||||||
|
After a successful import, the data file (specified by
|
||||||
|
\f[CR]source\f[R]) will be moved to an archive folder (\f[CR]data/\f[R],
|
||||||
|
next to the rules file, auto\-created), and renamed similar to the rules
|
||||||
|
file, with a date.
|
||||||
|
This can be useful for troubleshooting, detecting variations in your
|
||||||
|
banks\[aq] CSV data, regenerating entries with improved rules, etc.
|
||||||
|
.PP
|
||||||
|
The \f[CR]archive\f[R] rule also causes \f[CR]import\f[R] to handle
|
||||||
|
\f[CR]source\f[R] glob patterns differently: when there are multiple
|
||||||
|
matched files, it will pick the oldest, not the newest.
|
||||||
.SS Import special cases
|
.SS Import special cases
|
||||||
If you have a download whose file name varies, you could rename it to a
|
.SS Deduplication
|
||||||
fixed name after each download.
|
|
||||||
Or you could use a CSV \f[CR]source\f[R] rule with a suitable glob
|
|
||||||
pattern, and import from the .rules file instead of the data file.
|
|
||||||
.PP
|
|
||||||
Here\[aq]s a situation where you would need to run \f[CR]import\f[R]
|
|
||||||
with care: say you download \f[CR]bank.csv\f[R], but forget to import it
|
|
||||||
or delete it.
|
|
||||||
And next month you download it again.
|
|
||||||
This time your web browser may save it as \f[CR]bank (2).csv\f[R].
|
|
||||||
So now each of these may have data not included in the other.
|
|
||||||
And a \f[CR]source\f[R] rule with a glob pattern would match only the
|
|
||||||
most recent file.
|
|
||||||
So in this case you should import from each one in turn, in the correct
|
|
||||||
order, taking care to use the same filename each time:
|
|
||||||
.IP
|
|
||||||
.EX
|
|
||||||
$ hledger import bank.csv
|
|
||||||
$ mv \[aq]bank (2).csv\[aq] bank.csv
|
|
||||||
$ hledger import bank.csv
|
|
||||||
.EE
|
|
||||||
.PP
|
|
||||||
Here are two kinds of \[dq]deduplication\[dq] which \f[CR]import\f[R]
|
Here are two kinds of \[dq]deduplication\[dq] which \f[CR]import\f[R]
|
||||||
does not handle (and generally should not, since these can happen
|
does not handle (and should not, because these can happen legitimately
|
||||||
legitimately in financial data):
|
in financial data):
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
Two or more of the new CSV records are identical, and generate identical
|
Two or more of the new CSV records are identical, and generate identical
|
||||||
new journal entries.
|
new journal entries.
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
A new CSV record generates a journal entry identical to one(s) already
|
A new CSV record generates a journal entry identical to one(s) already
|
||||||
in the journal.
|
in the journal.
|
||||||
|
.SS Varying file name
|
||||||
|
If you have a download whose file name varies, you could rename it to a
|
||||||
|
fixed name after each download.
|
||||||
|
Or you could use a CSV \f[CR]source\f[R] rule with a suitable glob
|
||||||
|
pattern, and import from the .rules file.
|
||||||
|
.SS Multiple versions
|
||||||
|
Say you download \f[CR]bank.csv\f[R], import it, but forget to delete it
|
||||||
|
from your downloads folder.
|
||||||
|
The next time you download it, your web browser will save it as (eg)
|
||||||
|
\f[CR]bank (2).csv\f[R].
|
||||||
|
The source rule\[aq]s glob patterns are for just this situation: instead
|
||||||
|
of specifying \f[CR]source bank.csv\f[R], specify
|
||||||
|
\f[CR]source bank*.csv\f[R].
|
||||||
|
Then \f[CR]hledger \-f bank.rules CMD\f[R] or
|
||||||
|
\f[CR]hledger import bank.rules\f[R] will automatically pick the newest
|
||||||
|
matched file (\f[CR]bank (2).csv\f[R]).
|
||||||
|
.PP
|
||||||
|
Alternately, what if you download, but forget to import or delete, then
|
||||||
|
download again ?
|
||||||
|
Now each of \f[CR]bank.csv\f[R] and \f[CR]bank (2).csv\f[R] might
|
||||||
|
contain data that\[aq]s not in the other, and not in your journal.
|
||||||
|
In this case, it\[aq]s best to import each of them in turn, oldest first
|
||||||
|
(otherwise, overlap detection could cause new records to be skipped).
|
||||||
|
Enabling import archiving ensures this.
|
||||||
|
Then \f[CR]hledger import bank.rules; hledger import bank.rules\f[R]
|
||||||
|
will import and archive first \f[CR]bank.csv\f[R], then
|
||||||
|
\f[CR]bank (2).csv\f[R].
|
||||||
.SH Basic report commands
|
.SH Basic report commands
|
||||||
.SS accounts
|
.SS accounts
|
||||||
List the account names used or declared in the journal.
|
List the account names used or declared in the journal.
|
||||||
@ -9813,7 +9902,7 @@ full account name, or a distinctive substring that matches uniquely.
|
|||||||
.PP
|
.PP
|
||||||
Transactions involving subaccounts of this account will also be shown.
|
Transactions involving subaccounts of this account will also be shown.
|
||||||
\f[CR]aregister\f[R] ignores depth limits, so its final total will
|
\f[CR]aregister\f[R] ignores depth limits, so its final total will
|
||||||
always match a balance report with similar arguments.
|
always match a historical balance report with similar arguments.
|
||||||
.PP
|
.PP
|
||||||
Any additional arguments form a query which will filter the transactions
|
Any additional arguments form a query which will filter the transactions
|
||||||
shown.
|
shown.
|
||||||
@ -12212,10 +12301,10 @@ spaces between account and amount.
|
|||||||
More:
|
More:
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
$ hledger rewrite \-\- [QUERY] \-\-add\-posting \[dq]ACCT AMTEXPR\[dq] ...
|
$ hledger rewrite [QUERY] \-\-add\-posting \[dq]ACCT AMTEXPR\[dq] ...
|
||||||
$ hledger rewrite \-\- \[ha]income \-\-add\-posting \[aq](liabilities:tax) *.33\[aq]
|
$ hledger rewrite \[ha]income \-\-add\-posting \[aq](liabilities:tax) *.33\[aq]
|
||||||
$ hledger rewrite \-\- expenses:gifts \-\-add\-posting \[aq](budget:gifts) *\-1\[dq]\[aq]
|
$ hledger rewrite expenses:gifts \-\-add\-posting \[aq](budget:gifts) *\-1\[dq]\[aq]
|
||||||
$ hledger rewrite \-\- \[ha]income \-\-add\-posting \[aq](budget:foreign currency) *0.25 JPY; diversify\[aq]
|
$ hledger rewrite \[ha]income \-\-add\-posting \[aq](budget:foreign currency) *0.25 JPY; diversify\[aq]
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
Argument for \f[CR]\-\-add\-posting\f[R] option is a usual posting of
|
Argument for \f[CR]\-\-add\-posting\f[R] option is a usual posting of
|
||||||
@ -12253,14 +12342,14 @@ It indicates the query by which you want to match the posting to add new
|
|||||||
ones.
|
ones.
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
$ hledger rewrite \-\- \-f input.journal \-f rewrite\-rules.journal > rewritten\-tidy\-output.journal
|
$ hledger rewrite \-f input.journal \-f rewrite\-rules.journal > rewritten\-tidy\-output.journal
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
This is something similar to the commands pipeline:
|
This is something similar to the commands pipeline:
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
$ hledger rewrite \-\- \-f input.journal \[aq]\[ha]income\[aq] \-\-add\-posting \[aq](liabilities:tax) *.33\[aq] \[rs]
|
$ hledger rewrite \-f input.journal \[aq]\[ha]income\[aq] \-\-add\-posting \[aq](liabilities:tax) *.33\[aq] \[rs]
|
||||||
| hledger rewrite \-\- \-f \- expenses:gifts \-\-add\-posting \[aq]budget:gifts *\-1\[aq] \[rs]
|
| hledger rewrite \-f \- expenses:gifts \-\-add\-posting \[aq]budget:gifts *\-1\[aq] \[rs]
|
||||||
\-\-add\-posting \[aq]assets:budget *1\[aq] \[rs]
|
\-\-add\-posting \[aq]assets:budget *1\[aq] \[rs]
|
||||||
> rewritten\-tidy\-output.journal
|
> rewritten\-tidy\-output.journal
|
||||||
.EE
|
.EE
|
||||||
@ -12273,7 +12362,7 @@ To use this tool for batch modification of your journal files you may
|
|||||||
find useful output in form of unified diff.
|
find useful output in form of unified diff.
|
||||||
.IP
|
.IP
|
||||||
.EX
|
.EX
|
||||||
$ hledger rewrite \-\- \-\-diff \-f examples/sample.journal \[aq]\[ha]income\[aq] \-\-add\-posting \[aq](liabilities:tax) *.33\[aq]
|
$ hledger rewrite \-\-diff \-f examples/sample.journal \[aq]\[ha]income\[aq] \-\-add\-posting \[aq](liabilities:tax) *.33\[aq]
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
Output might look like:
|
Output might look like:
|
||||||
@ -12604,10 +12693,10 @@ help:
|
|||||||
command\-specific options must go after the command (it\[aq]s fine to
|
command\-specific options must go after the command (it\[aq]s fine to
|
||||||
put common options there too: \f[CR]hledger CMD OPTS ARGS\f[R])
|
put common options there too: \f[CR]hledger CMD OPTS ARGS\f[R])
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
running add\-on executables directly simplifies command line parsing
|
you can run addon commands via hledger (\f[CR]hledger ui [ARGS]\f[R]) or
|
||||||
(\f[CR]hledger\-ui OPTS ARGS\f[R])
|
directly (\f[CR]hledger\-ui [ARGS]\f[R])
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
enclose \[dq]problematic\[dq] args in single quotes
|
enclose \[dq]problematic\[dq] arguments in single quotes
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
if needed, also add a backslash to hide regular expression
|
if needed, also add a backslash to hide regular expression
|
||||||
metacharacters from the shell
|
metacharacters from the shell
|
||||||
@ -13038,19 +13127,13 @@ We welcome bug reports in the hledger issue tracker
|
|||||||
.PP
|
.PP
|
||||||
Some known issues and limitations:
|
Some known issues and limitations:
|
||||||
.PP
|
.PP
|
||||||
The need to precede add\-on command options with \f[CR]\-\-\f[R] when
|
|
||||||
invoked from hledger is awkward.
|
|
||||||
(See Command options, Constructing command lines.)
|
|
||||||
.PP
|
|
||||||
A system locale with a suitable text encoding must be configured to work
|
A system locale with a suitable text encoding must be configured to work
|
||||||
with non\-ascii data.
|
with non\-ascii data.
|
||||||
(See Text encoding, Troubleshooting.)
|
(See Text encoding, Troubleshooting.)
|
||||||
.PP
|
.PP
|
||||||
On Microsoft Windows, depending whether you are running in a CMD window
|
On Microsoft Windows, depending what kind of terminal window you use,
|
||||||
or a Cygwin/MSYS/Mintty window and how you installed hledger, non\-ascii
|
non\-ascii characters, ANSI text formatting, and/or the add
|
||||||
characters and colours may not be supported, and the tab key may not be
|
command\[aq]s TAB key for completion, may not be supported.
|
||||||
supported by \f[CR]hledger add\f[R].
|
|
||||||
(Running in a WSL window should resolve these.)
|
|
||||||
.PP
|
.PP
|
||||||
When processing large data files, hledger uses more memory than Ledger.
|
When processing large data files, hledger uses more memory than Ledger.
|
||||||
.SS Troubleshooting
|
.SS Troubleshooting
|
||||||
|
|||||||
1221
hledger/hledger.info
1221
hledger/hledger.info
File diff suppressed because it is too large
Load Diff
1201
hledger/hledger.txt
1201
hledger/hledger.txt
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user