update embedded manuals

This commit is contained in:
Simon Michael 2017-12-07 12:04:11 -08:00
parent 316b6f344e
commit 302ee50bfe
17 changed files with 715 additions and 737 deletions

View File

@ -1,7 +1,7 @@
This is hledger-api.1.info, produced by makeinfo version 6.0 from stdin. This is hledger-api.info, produced by makeinfo version 6.0 from stdin.
 
File: hledger-api.1.info, Node: Top, Next: OPTIONS, Up: (dir) File: hledger-api.info, Node: Top, Next: OPTIONS, Up: (dir)
hledger-api(1) hledger-api 1.4 hledger-api(1) hledger-api 1.4
****************************** ******************************
@ -30,7 +30,7 @@ the API docs will be printed in Swagger 2.0 format.
* OPTIONS:: * OPTIONS::
 
File: hledger-api.1.info, Node: OPTIONS, Prev: Top, Up: Top File: hledger-api.info, Node: OPTIONS, Prev: Top, Up: Top
1 OPTIONS 1 OPTIONS
********* *********
@ -63,8 +63,8 @@ options as shown above.
 
Tag Table: Tag Table:
Node: Top74 Node: Top72
Node: OPTIONS1220 Node: OPTIONS1216
Ref: #options1307 Ref: #options1301
 
End Tag Table End Tag Table

View File

@ -29,7 +29,7 @@ conversion rules file named \f[C]FILE.csv.rules\f[] in the same
directory. directory.
You can override this with the \f[C]\-\-rules\-file\f[] option. You can override this with the \f[C]\-\-rules\-file\f[] option.
If the rules file does not exist, hledger will auto\-create one with If the rules file does not exist, hledger will auto\-create one with
some example rules, which you\[aq]ll need to adjust. some example rules, which you'll need to adjust.
.PP .PP
At minimum, the rules file must identify the \f[C]date\f[] and At minimum, the rules file must identify the \f[C]date\f[] and
\f[C]amount\f[] fields. \f[C]amount\f[] fields.
@ -87,10 +87,10 @@ Blank lines and lines beginning with \f[C]#\f[] or \f[C];\f[] are
ignored. ignored.
.SS skip .SS skip
.PP .PP
\f[C]skip\f[]\f[I]\f[C]N\f[]\f[] \f[C]skip\f[]\f[I]\f[CI]N\f[I]\f[]
.PP .PP
Skip this number of CSV records at the beginning. Skip this number of CSV records at the beginning.
You\[aq]ll need this whenever your CSV data contains header lines. You'll need this whenever your CSV data contains header lines.
Eg: Eg:
.IP .IP
.nf .nf
@ -101,11 +101,11 @@ skip\ 1
.fi .fi
.SS date\-format .SS date\-format
.PP .PP
\f[C]date\-format\f[]\f[I]\f[C]DATEFMT\f[]\f[] \f[C]date\-format\f[]\f[I]\f[CI]DATEFMT\f[I]\f[]
.PP .PP
When your CSV date fields are not formatted like \f[C]YYYY/MM/DD\f[] (or When your CSV date fields are not formatted like \f[C]YYYY/MM/DD\f[] (or
\f[C]YYYY\-MM\-DD\f[] or \f[C]YYYY.MM.DD\f[]), you\[aq]ll need to \f[C]YYYY\-MM\-DD\f[] or \f[C]YYYY.MM.DD\f[]), you'll need to specify
specify the format. the format.
DATEFMT is a strptime\-like date parsing pattern, which must parse the DATEFMT is a strptime\-like date parsing pattern, which must parse the
date field values completely. date field values completely.
Examples: Examples:
@ -139,8 +139,8 @@ date\-format\ %\-m/%\-d/%Y\ %l:%M\ %p
.fi .fi
.SS field list .SS field list
.PP .PP
\f[C]fields\f[]\f[I]\f[C]FIELDNAME1\f[]\f[], \f[C]fields\f[]\f[I]\f[CI]FIELDNAME1\f[I]\f[],
\f[I]\f[C]FIELDNAME2\f[]\f[]... \f[I]\f[CI]FIELDNAME2\f[I]\f[]\&...
.PP .PP
This (a) names the CSV fields, in order (names may not contain This (a) names the CSV fields, in order (names may not contain
whitespace; uninteresting names may be left blank), and (b) assigns them whitespace; uninteresting names may be left blank), and (b) assigns them
@ -164,7 +164,7 @@ fields\ date,\ description,\ ,\ amount,\ ,\ ,\ somefield,\ anotherfield
.fi .fi
.SS field assignment .SS field assignment
.PP .PP
\f[I]\f[C]ENTRYFIELDNAME\f[]\f[] \f[I]\f[C]FIELDVALUE\f[]\f[] \f[I]\f[CI]ENTRYFIELDNAME\f[I]\f[] \f[I]\f[CI]FIELDVALUE\f[I]\f[]
.PP .PP
This sets a journal entry field (one of the standard names above) to the This sets a journal entry field (one of the standard names above) to the
given text value, which can include CSV field values interpolated by given text value, which can include CSV field values interpolated by
@ -188,30 +188,30 @@ comment\ note:\ %somefield\ \-\ %anotherfield,\ date:\ %1
Field assignments can be used instead of or in addition to a field list. Field assignments can be used instead of or in addition to a field list.
.SS conditional block .SS conditional block
.PP .PP
\f[C]if\f[] \f[I]\f[C]PATTERN\f[]\f[] \f[C]if\f[] \f[I]\f[CI]PATTERN\f[I]\f[]
.PD 0 .PD 0
.P .P
.PD .PD
\ \ \ \ \f[I]\f[C]FIELDASSIGNMENTS\f[]\f[]... \ \ \ \ \f[I]\f[CI]FIELDASSIGNMENTS\f[I]\f[]\&...
.PP .PP
\f[C]if\f[] \f[C]if\f[]
.PD 0 .PD 0
.P .P
.PD .PD
\f[I]\f[C]PATTERN\f[]\f[] \f[I]\f[CI]PATTERN\f[I]\f[]
.PD 0 .PD 0
.P .P
.PD .PD
\f[I]\f[C]PATTERN\f[]\f[]... \f[I]\f[CI]PATTERN\f[I]\f[]\&...
.PD 0 .PD 0
.P .P
.PD .PD
\ \ \ \ \f[I]\f[C]FIELDASSIGNMENTS\f[]\f[]... \ \ \ \ \f[I]\f[CI]FIELDASSIGNMENTS\f[I]\f[]\&...
.PP .PP
This applies one or more field assignments, only to those CSV records This applies one or more field assignments, only to those CSV records
matched by one of the PATTERNs. matched by one of the PATTERNs.
The patterns are case\-insensitive regular expressions which match The patterns are case\-insensitive regular expressions which match
anywhere within the whole CSV record (it\[aq]s not yet possible to match anywhere within the whole CSV record (it's not yet possible to match
within a specific field). within a specific field).
When there are multiple patterns they can be written on separate lines, When there are multiple patterns they can be written on separate lines,
unindented. unindented.
@ -240,11 +240,11 @@ banking\ thru\ software
.fi .fi
.SS include .SS include
.PP .PP
\f[C]include\f[]\f[I]\f[C]RULESFILE\f[]\f[] \f[C]include\f[]\f[I]\f[CI]RULESFILE\f[I]\f[]
.PP .PP
Include another rules file at this point. Include another rules file at this point.
\f[C]RULESFILE\f[] is either an absolute file path or a path relative to \f[C]RULESFILE\f[] is either an absolute file path or a path relative to
the current file\[aq]s directory. the current file's directory.
Eg: Eg:
.IP .IP
.nf .nf
@ -261,9 +261,9 @@ Consider adding this rule if all of the following are true: you might be
processing just one day of data, your CSV records are in reverse processing just one day of data, your CSV records are in reverse
chronological order (newest first), and you care about preserving the chronological order (newest first), and you care about preserving the
order of same\-day transactions. order of same\-day transactions.
It usually isn\[aq]t needed, because hledger autodetects the CSV order, It usually isn't needed, because hledger autodetects the CSV order, but
but when all CSV records have the same date it will assume they are when all CSV records have the same date it will assume they are oldest
oldest first. first.
.SH CSV TIPS .SH CSV TIPS
.SS CSV ordering .SS CSV ordering
.PP .PP
@ -274,9 +274,8 @@ case where you might need \f[C]newest\-first\f[], see above).
.PP .PP
Each journal entry will have two postings, to \f[C]account1\f[] and Each journal entry will have two postings, to \f[C]account1\f[] and
\f[C]account2\f[] respectively. \f[C]account2\f[] respectively.
It\[aq]s not yet possible to generate entries with more than two It's not yet possible to generate entries with more than two postings.
postings. It's conventional and recommended to use \f[C]account1\f[] for the
It\[aq]s conventional and recommended to use \f[C]account1\f[] for the
account whose CSV we are reading. account whose CSV we are reading.
.SS CSV amounts .SS CSV amounts
.PP .PP

View File

@ -1,7 +1,7 @@
This is hledger_csv.5.info, produced by makeinfo version 6.0 from stdin. This is hledger_csv.info, produced by makeinfo version 6.0 from stdin.
 
File: hledger_csv.5.info, Node: Top, Next: CSV RULES, Up: (dir) File: hledger_csv.info, Node: Top, Next: CSV RULES, Up: (dir)
hledger_csv(5) hledger 1.4 hledger_csv(5) hledger 1.4
************************** **************************
@ -69,7 +69,7 @@ amount -%amount
* CSV TIPS:: * CSV TIPS::
 
File: hledger_csv.5.info, Node: CSV RULES, Next: CSV TIPS, Prev: Top, Up: Top File: hledger_csv.info, Node: CSV RULES, Next: CSV TIPS, Prev: Top, Up: Top
1 CSV RULES 1 CSV RULES
*********** ***********
@ -87,7 +87,7 @@ order. Blank lines and lines beginning with '#' or ';' are ignored.
* newest-first:: * newest-first::
 
File: hledger_csv.5.info, Node: skip, Next: date-format, Up: CSV RULES File: hledger_csv.info, Node: skip, Next: date-format, Up: CSV RULES
1.1 skip 1.1 skip
======== ========
@ -101,7 +101,7 @@ whenever your CSV data contains header lines. Eg:
skip 1 skip 1
 
File: hledger_csv.5.info, Node: date-format, Next: field list, Prev: skip, Up: CSV RULES File: hledger_csv.info, Node: date-format, Next: field list, Prev: skip, Up: CSV RULES
1.2 date-format 1.2 date-format
=============== ===============
@ -126,7 +126,7 @@ date-format %Y-%h-%d
date-format %-m/%-d/%Y %l:%M %p date-format %-m/%-d/%Y %l:%M %p
 
File: hledger_csv.5.info, Node: field list, Next: field assignment, Prev: date-format, Up: CSV RULES File: hledger_csv.info, Node: field list, Next: field assignment, Prev: date-format, Up: CSV RULES
1.3 field list 1.3 field list
============== ==============
@ -149,7 +149,7 @@ Eg:
fields date, description, , amount, , , somefield, anotherfield fields date, description, , amount, , , somefield, anotherfield
 
File: hledger_csv.5.info, Node: field assignment, Next: conditional block, Prev: field list, Up: CSV RULES File: hledger_csv.info, Node: field assignment, Next: conditional block, Prev: field list, Up: CSV RULES
1.4 field assignment 1.4 field assignment
==================== ====================
@ -170,7 +170,7 @@ comment note: %somefield - %anotherfield, date: %1
list. list.
 
File: hledger_csv.5.info, Node: conditional block, Next: include, Prev: field assignment, Up: CSV RULES File: hledger_csv.info, Node: conditional block, Next: include, Prev: field assignment, Up: CSV RULES
1.5 conditional block 1.5 conditional block
===================== =====================
@ -204,7 +204,7 @@ banking thru software
comment XXX deductible ? check it comment XXX deductible ? check it
 
File: hledger_csv.5.info, Node: include, Next: newest-first, Prev: conditional block, Up: CSV RULES File: hledger_csv.info, Node: include, Next: newest-first, Prev: conditional block, Up: CSV RULES
1.6 include 1.6 include
=========== ===========
@ -219,7 +219,7 @@ Eg:
include common.rules include common.rules
 
File: hledger_csv.5.info, Node: newest-first, Prev: include, Up: CSV RULES File: hledger_csv.info, Node: newest-first, Prev: include, Up: CSV RULES
1.7 newest-first 1.7 newest-first
================ ================
@ -234,7 +234,7 @@ hledger autodetects the CSV order, but when all CSV records have the
same date it will assume they are oldest first. same date it will assume they are oldest first.
 
File: hledger_csv.5.info, Node: CSV TIPS, Prev: CSV RULES, Up: Top File: hledger_csv.info, Node: CSV TIPS, Prev: CSV RULES, Up: Top
2 CSV TIPS 2 CSV TIPS
********** **********
@ -248,7 +248,7 @@ File: hledger_csv.5.info, Node: CSV TIPS, Prev: CSV RULES, Up: Top
* Reading multiple CSV files:: * Reading multiple CSV files::
 
File: hledger_csv.5.info, Node: CSV ordering, Next: CSV accounts, Up: CSV TIPS File: hledger_csv.info, Node: CSV ordering, Next: CSV accounts, Up: CSV TIPS
2.1 CSV ordering 2.1 CSV ordering
================ ================
@ -258,7 +258,7 @@ same-day entries will be preserved (except in the special case where you
might need 'newest-first', see above). might need 'newest-first', see above).
 
File: hledger_csv.5.info, Node: CSV accounts, Next: CSV amounts, Prev: CSV ordering, Up: CSV TIPS File: hledger_csv.info, Node: CSV accounts, Next: CSV amounts, Prev: CSV ordering, Up: CSV TIPS
2.2 CSV accounts 2.2 CSV accounts
================ ================
@ -269,7 +269,7 @@ two postings. It's conventional and recommended to use 'account1' for
the account whose CSV we are reading. the account whose CSV we are reading.
 
File: hledger_csv.5.info, Node: CSV amounts, Next: CSV balance assertions, Prev: CSV accounts, Up: CSV TIPS File: hledger_csv.info, Node: CSV amounts, Next: CSV balance assertions, Prev: CSV accounts, Up: CSV TIPS
2.3 CSV amounts 2.3 CSV amounts
=============== ===============
@ -294,7 +294,7 @@ fields (giving more control, eg to put the currency symbol on the
right). right).
 
File: hledger_csv.5.info, Node: CSV balance assertions, Next: Reading multiple CSV files, Prev: CSV amounts, Up: CSV TIPS File: hledger_csv.info, Node: CSV balance assertions, Next: Reading multiple CSV files, Prev: CSV amounts, Up: CSV TIPS
2.4 CSV balance assertions 2.4 CSV balance assertions
========================== ==========================
@ -304,7 +304,7 @@ If the CSV includes a running balance, you can assign that to the
it will be asserted as the balance after the 'account1' posting. it will be asserted as the balance after the 'account1' posting.
 
File: hledger_csv.5.info, Node: Reading multiple CSV files, Prev: CSV balance assertions, Up: CSV TIPS File: hledger_csv.info, Node: Reading multiple CSV files, Prev: CSV balance assertions, Up: CSV TIPS
2.5 Reading multiple CSV files 2.5 Reading multiple CSV files
============================== ==============================
@ -316,34 +316,34 @@ one rules file will be used for all the CSV files being read.
 
Tag Table: Tag Table:
Node: Top74 Node: Top72
Node: CSV RULES2165 Node: CSV RULES2161
Ref: #csv-rules2275 Ref: #csv-rules2269
Node: skip2537 Node: skip2531
Ref: #skip2633 Ref: #skip2625
Node: date-format2805 Node: date-format2797
Ref: #date-format2934 Ref: #date-format2924
Node: field list3440 Node: field list3430
Ref: #field-list3579 Ref: #field-list3567
Node: field assignment4284 Node: field assignment4272
Ref: #field-assignment4441 Ref: #field-assignment4427
Node: conditional block4945 Node: conditional block4931
Ref: #conditional-block5101 Ref: #conditional-block5085
Node: include5997 Node: include5981
Ref: #include6129 Ref: #include6111
Node: newest-first6360 Node: newest-first6342
Ref: #newest-first6476 Ref: #newest-first6456
Node: CSV TIPS6887 Node: CSV TIPS6867
Ref: #csv-tips6983 Ref: #csv-tips6961
Node: CSV ordering7101 Node: CSV ordering7079
Ref: #csv-ordering7221 Ref: #csv-ordering7197
Node: CSV accounts7402 Node: CSV accounts7378
Ref: #csv-accounts7542 Ref: #csv-accounts7516
Node: CSV amounts7796 Node: CSV amounts7770
Ref: #csv-amounts7944 Ref: #csv-amounts7916
Node: CSV balance assertions8719 Node: CSV balance assertions8691
Ref: #csv-balance-assertions8903 Ref: #csv-balance-assertions8873
Node: Reading multiple CSV files9108 Node: Reading multiple CSV files9078
Ref: #reading-multiple-csv-files9280 Ref: #reading-multiple-csv-files9248
 
End Tag Table End Tag Table

View File

@ -6,31 +6,29 @@
.SH NAME .SH NAME
.PP .PP
Journal \- hledger\[aq]s default file format, representing a General Journal \- hledger's default file format, representing a General Journal
Journal
.SH DESCRIPTION .SH DESCRIPTION
.PP .PP
hledger\[aq]s usual data source is a plain text file containing journal hledger's usual data source is a plain text file containing journal
entries in hledger journal format. entries in hledger journal format.
This file represents a standard accounting general journal. This file represents a standard accounting general journal.
I use file names ending in \f[C]\&.journal\f[], but that\[aq]s not I use file names ending in \f[C]\&.journal\f[], but that's not required.
required.
The journal file contains a number of transaction entries, each The journal file contains a number of transaction entries, each
describing a transfer of money (or any commodity) between two or more describing a transfer of money (or any commodity) between two or more
named accounts, in a simple format readable by both hledger and humans. named accounts, in a simple format readable by both hledger and humans.
.PP .PP
hledger\[aq]s journal format is a compatible subset, mostly, of hledger's journal format is a compatible subset, mostly, of ledger's
ledger\[aq]s journal format, so hledger can work with compatible ledger journal format, so hledger can work with compatible ledger journal files
journal files as well. as well.
It\[aq]s safe, and encouraged, to run both hledger and ledger on the It's safe, and encouraged, to run both hledger and ledger on the same
same journal file, eg to validate the results you\[aq]re getting. journal file, eg to validate the results you're getting.
.PP .PP
You can use hledger without learning any more about this file; just use You can use hledger without learning any more about this file; just use
the add or web commands to create and update it. the add or web commands to create and update it.
Many users, though, also edit the journal file directly with a text Many users, though, also edit the journal file directly with a text
editor, perhaps assisted by the helper modes for emacs or vim. editor, perhaps assisted by the helper modes for emacs or vim.
.PP .PP
Here\[aq]s an example: Here's an example:
.IP .IP
.nf .nf
\f[C] \f[C]
@ -83,7 +81,7 @@ line or a semicolon)
semicolon until end of line) semicolon until end of line)
.PP .PP
Then comes zero or more (but usually at least 2) indented lines Then comes zero or more (but usually at least 2) indented lines
representing... representing\&...
.SS Postings .SS Postings
.PP .PP
A posting is an addition of some amount to, or removal of some amount A posting is an addition of some amount to, or removal of some amount
@ -136,12 +134,12 @@ The primary date, on the left, is used by default; the secondary date,
on the right, is used when the \f[C]\-\-date2\f[] flag is specified on the right, is used when the \f[C]\-\-date2\f[] flag is specified
(\f[C]\-\-aux\-date\f[] or \f[C]\-\-effective\f[] also work). (\f[C]\-\-aux\-date\f[] or \f[C]\-\-effective\f[] also work).
.PP .PP
The meaning of secondary dates is up to you, but it\[aq]s best to follow The meaning of secondary dates is up to you, but it's best to follow a
a consistent rule. consistent rule.
Eg write the bank\[aq]s clearing date as primary, and when needed, the Eg write the bank's clearing date as primary, and when needed, the date
date the transaction was initiated as secondary. the transaction was initiated as secondary.
.PP .PP
Here\[aq]s an example. Here's an example.
Note that a secondary date will use the year of the primary date if Note that a secondary date will use the year of the primary date if
unspecified. unspecified.
.IP .IP
@ -205,14 +203,14 @@ $\ hledger\ \-f\ t.j\ register\ checking
.fi .fi
.PP .PP
DATE should be a simple date; if the year is not specified it will use DATE should be a simple date; if the year is not specified it will use
the year of the transaction\[aq]s date. the year of the transaction's date.
You can set the secondary date similarly, with \f[C]date2:DATE2\f[]. You can set the secondary date similarly, with \f[C]date2:DATE2\f[].
The \f[C]date:\f[] or \f[C]date2:\f[] tags must have a valid simple date The \f[C]date:\f[] or \f[C]date2:\f[] tags must have a valid simple date
value if they are present, eg a \f[C]date:\f[] tag with no value is not value if they are present, eg a \f[C]date:\f[] tag with no value is not
allowed. allowed.
.PP .PP
Ledger\[aq]s earlier, more compact bracketed date syntax is also Ledger's earlier, more compact bracketed date syntax is also supported:
supported: \f[C][DATE]\f[], \f[C][DATE=DATE2]\f[] or \f[C][=DATE2]\f[]. \f[C][DATE]\f[], \f[C][DATE=DATE2]\f[] or \f[C][=DATE2]\f[].
hledger will attempt to parse any square\-bracketed sequence of the hledger will attempt to parse any square\-bracketed sequence of the
\f[C]0123456789/\-.=\f[] characters in this way. \f[C]0123456789/\-.=\f[] characters in this way.
With this syntax, DATE infers its year from the transaction and DATE2 With this syntax, DATE infers its year from the transaction and DATE2
@ -256,11 +254,11 @@ When reporting, you can filter by status with the
\f[C]status:!\f[], and \f[C]status:*\f[] queries; or the U, P, C keys in \f[C]status:!\f[], and \f[C]status:*\f[] queries; or the U, P, C keys in
hledger\-ui. hledger\-ui.
.PP .PP
Note, in Ledger and in older versions of hledger, the "unmarked" state Note, in Ledger and in older versions of hledger, the \[lq]unmarked\[rq]
is called "uncleared". state is called \[lq]uncleared\[rq].
As of hledger 1.3 we have renamed it to unmarked for clarity. As of hledger 1.3 we have renamed it to unmarked for clarity.
.PP .PP
To replicate Ledger and old hledger\[aq]s behaviour of also matching To replicate Ledger and old hledger's behaviour of also matching
pending, combine \-U and \-P. pending, combine \-U and \-P.
.PP .PP
Status marks are optional, but can be helpful eg for reconciling with Status marks are optional, but can be helpful eg for reconciling with
@ -270,8 +268,9 @@ status.
Eg in Emacs ledger\-mode, you can toggle transaction status with C\-c Eg in Emacs ledger\-mode, you can toggle transaction status with C\-c
C\-e, or posting status with C\-c C\-c. C\-e, or posting status with C\-c C\-c.
.PP .PP
What "uncleared", "pending", and "cleared" actually mean is up to you. What \[lq]uncleared\[rq], \[lq]pending\[rq], and \[lq]cleared\[rq]
Here\[aq]s one suggestion: actually mean is up to you.
Here's one suggestion:
.PP .PP
.TS .TS
tab(@); tab(@);
@ -305,10 +304,10 @@ bank soon (like uncashed checks), and no flags to see the most
up\-to\-date state of your finances. up\-to\-date state of your finances.
.SS Description .SS Description
.PP .PP
A transaction\[aq]s description is the rest of the line following the A transaction's description is the rest of the line following the date
date and status mark (or until a comment begins). and status mark (or until a comment begins).
Sometimes called the "narration" in traditional bookkeeping, it can be Sometimes called the \[lq]narration\[rq] in traditional bookkeeping, it
used for whatever you wish, or left blank. can be used for whatever you wish, or left blank.
Transaction descriptions can be queried, unlike comments. Transaction descriptions can be queried, unlike comments.
.SS Payee and note .SS Payee and note
.PP .PP
@ -369,8 +368,8 @@ Some examples:
.PP .PP
As you can see, the amount format is somewhat flexible: As you can see, the amount format is somewhat flexible:
.IP \[bu] 2 .IP \[bu] 2
amounts are a number (the "quantity") and optionally a currency amounts are a number (the \[lq]quantity\[rq]) and optionally a currency
symbol/commodity name (the "commodity"). symbol/commodity name (the \[lq]commodity\[rq]).
.IP \[bu] 2 .IP \[bu] 2
the commodity is a symbol, word, or phrase, on the left or right, with the commodity is a symbol, word, or phrase, on the left or right, with
or without a separating space. or without a separating space.
@ -418,13 +417,12 @@ will be the maximum from all posting amounts in that commmodity
or if there are no such amounts in the journal, a default format is used or if there are no such amounts in the journal, a default format is used
(like \f[C]$1000.00\f[]). (like \f[C]$1000.00\f[]).
.PP .PP
Price amounts and amounts in D directives usually don\[aq]t affect Price amounts and amounts in D directives usually don't affect amount
amount format inference, but in some situations they can do so format inference, but in some situations they can do so indirectly.
indirectly. (Eg when D's default commodity is applied to a commodity\-less amount,
(Eg when D\[aq]s default commodity is applied to a commodity\-less or when an amountless posting is balanced using a price's commodity, or
amount, or when an amountless posting is balanced using a price\[aq]s when \-V is used.) If you find this causing problems, set the desired
commodity, or when \-V is used.) If you find this causing problems, set format with a commodity directive.
the desired format with a commodity directive.
.SS Virtual Postings .SS Virtual Postings
.PP .PP
When you parenthesise the account name in a posting, we call that a When you parenthesise the account name in a posting, we call that a
@ -435,7 +433,7 @@ it is ignored when checking that the transaction is balanced
it is excluded from reports when the \f[C]\-\-real/\-R\f[] flag is used, it is excluded from reports when the \f[C]\-\-real/\-R\f[] flag is used,
or the \f[C]real:1\f[] query. or the \f[C]real:1\f[] query.
.PP .PP
You could use this, eg, to set an account\[aq]s opening balance without You could use this, eg, to set an account's opening balance without
needing to use the \f[C]equity:opening\ balances\f[] account: needing to use the \f[C]equity:opening\ balances\f[] account:
.IP .IP
.nf .nf
@ -469,8 +467,7 @@ which is more correct and provides better error checking.
.SS Balance Assertions .SS Balance Assertions
.PP .PP
hledger supports Ledger\-style balance assertions in journal files. hledger supports Ledger\-style balance assertions in journal files.
These look like \f[C]=EXPECTEDBALANCE\f[] following a posting\[aq]s These look like \f[C]=EXPECTEDBALANCE\f[] following a posting's amount.
amount.
Eg in this example we assert the expected dollar balance in accounts a Eg in this example we assert the expected dollar balance in accounts a
and b after each posting: and b after each posting:
.IP .IP
@ -495,7 +492,7 @@ You can disable them temporarily with the
troubleshooting or for reading Ledger files. troubleshooting or for reading Ledger files.
.SS Assertions and ordering .SS Assertions and ordering
.PP .PP
hledger sorts an account\[aq]s postings and assertions first by date and hledger sorts an account's postings and assertions first by date and
then (for postings on the same day) by parse order. then (for postings on the same day) by parse order.
Note this is different from Ledger, which sorts assertions only by parse Note this is different from Ledger, which sorts assertions only by parse
order. order.
@ -514,33 +511,33 @@ intra\-day balances.
With included files, things are a little more complicated. With included files, things are a little more complicated.
Including preserves the ordering of postings and assertions. Including preserves the ordering of postings and assertions.
If you have multiple postings to an account on the same day, split If you have multiple postings to an account on the same day, split
across different files, and you also want to assert the account\[aq]s across different files, and you also want to assert the account's
balance on the same day, you\[aq]ll have to put the assertion in the balance on the same day, you'll have to put the assertion in the right
right file. file.
.SS Assertions and multiple \-f options .SS Assertions and multiple \-f options
.PP .PP
Balance assertions don\[aq]t work well across files specified with Balance assertions don't work well across files specified with multiple
multiple \-f options. \-f options.
Use include or concatenate the files instead. Use include or concatenate the files instead.
.SS Assertions and commodities .SS Assertions and commodities
.PP .PP
The asserted balance must be a simple single\-commodity amount, and in The asserted balance must be a simple single\-commodity amount, and in
fact the assertion checks only this commodity\[aq]s balance within the fact the assertion checks only this commodity's balance within the
(possibly multi\-commodity) account balance. (possibly multi\-commodity) account balance.
We could call this a partial balance assertion. We could call this a partial balance assertion.
This is compatible with Ledger, and makes it possible to make assertions This is compatible with Ledger, and makes it possible to make assertions
about accounts containing multiple commodities. about accounts containing multiple commodities.
.PP .PP
To assert each commodity\[aq]s balance in such a multi\-commodity To assert each commodity's balance in such a multi\-commodity account,
account, you can add multiple postings (with amount 0 if necessary). you can add multiple postings (with amount 0 if necessary).
But note that no matter how many assertions you add, you can\[aq]t be But note that no matter how many assertions you add, you can't be sure
sure the account does not contain some unexpected commodity. the account does not contain some unexpected commodity.
(We\[aq]ll add support for this kind of total balance assertion if (We'll add support for this kind of total balance assertion if there's
there\[aq]s demand.) demand.)
.SS Assertions and subaccounts .SS Assertions and subaccounts
.PP .PP
Balance assertions do not count the balance from subaccounts; they check Balance assertions do not count the balance from subaccounts; they check
the posted account\[aq]s exclusive balance. the posted account's exclusive balance.
For example: For example:
.IP .IP
.nf .nf
@ -552,7 +549,7 @@ For example:
\f[] \f[]
.fi .fi
.PP .PP
The balance report\[aq]s flat mode shows these exclusive balances more The balance report's flat mode shows these exclusive balances more
clearly: clearly:
.IP .IP
.nf .nf
@ -601,9 +598,9 @@ or when adjusting a balance to reality:
\f[] \f[]
.fi .fi
.PP .PP
The calculated amount depends on the account\[aq]s balance in the The calculated amount depends on the account's balance in the commodity
commodity at that point (which depends on the previously\-dated postings at that point (which depends on the previously\-dated postings of the
of the commodity to that account since the last balance assertion or commodity to that account since the last balance assertion or
assignment). assignment).
Note that using balance assignments makes your journal a little less Note that using balance assignments makes your journal a little less
explicit; to know the exact amount posted, you have to run hledger or do explicit; to know the exact amount posted, you have to run hledger or do
@ -611,7 +608,7 @@ the calculations yourself, instead of just reading it.
.SS Prices .SS Prices
.SS Transaction prices .SS Transaction prices
.PP .PP
Within a transaction, you can note an amount\[aq]s price in another Within a transaction, you can note an amount's price in another
commodity. commodity.
This can be used to document the cost (in a purchase) or selling price This can be used to document the cost (in a purchase) or selling price
(in a sale). (in a sale).
@ -662,8 +659,8 @@ hledger infer the price that balances the transaction:
.RE .RE
.PP .PP
Amounts with transaction prices can be displayed in the transaction Amounts with transaction prices can be displayed in the transaction
price\[aq]s commodity by using the \f[C]\-B/\-\-cost\f[] flag (except price's commodity by using the \f[C]\-B/\-\-cost\f[] flag (except for
for #551) ("B" is from "cost Basis"). #551) (\[lq]B\[rq] is from \[lq]cost Basis\[rq]).
Eg for the above, here is how \-B affects the balance report: Eg for the above, here is how \-B affects the balance report:
.IP .IP
.nf .nf
@ -680,7 +677,7 @@ $\ hledger\ bal\ \-N\ \-\-flat\ \-B
Note \-B is sensitive to the order of postings when a transaction price Note \-B is sensitive to the order of postings when a transaction price
is inferred: the inferred price will be in the commodity of the last is inferred: the inferred price will be in the commodity of the last
amount. amount.
So if example 3\[aq]s postings are reversed, while the transaction is So if example 3's postings are reversed, while the transaction is
equivalent, \-B shows something different: equivalent, \-B shows something different:
.IP .IP
.nf .nf
@ -799,8 +796,7 @@ comma or end of line, with leading/trailing whitespace removed:
\f[] \f[]
.fi .fi
.PP .PP
Note this means hledger\[aq]s tag values can not contain commas or Note this means hledger's tag values can not contain commas or newlines.
newlines.
Ending at commas means you can write multiple short tags on one line, Ending at commas means you can write multiple short tags on one line,
comma separated: comma separated:
.IP .IP
@ -812,12 +808,13 @@ comma separated:
.PP .PP
Here, Here,
.IP \[bu] 2 .IP \[bu] 2
"\f[C]a\ comment\ containing\f[]" is just comment text, not a tag \[lq]\f[C]a\ comment\ containing\f[]\[rq] is just comment text, not a
tag
.IP \[bu] 2 .IP \[bu] 2
"\f[C]tag1\f[]" is a tag with no value \[lq]\f[C]tag1\f[]\[rq] is a tag with no value
.IP \[bu] 2 .IP \[bu] 2
"\f[C]tag2\f[]" is another tag, whose value is \[lq]\f[C]tag2\f[]\[rq] is another tag, whose value is
"\f[C]some\ value\ ...\f[]" \[lq]\f[C]some\ value\ ...\f[]\[rq]
.PP .PP
Tags in a transaction comment affect the transaction and all of its Tags in a transaction comment affect the transaction and all of its
postings, while tags in a posting comment affect only that posting. postings, while tags in a posting comment affect only that posting.
@ -833,14 +830,14 @@ For example, the following transaction has three tags (\f[C]A\f[],
\f[] \f[]
.fi .fi
.PP .PP
Tags are like Ledger\[aq]s metadata feature, except hledger\[aq]s tag Tags are like Ledger's metadata feature, except hledger's tag values are
values are simple strings. simple strings.
.SS Directives .SS Directives
.SS Account aliases .SS Account aliases
.PP .PP
You can define aliases which rewrite your account names (after reading You can define aliases which rewrite your account names (after reading
the journal, before generating reports). the journal, before generating reports).
hledger\[aq]s account aliases can be useful for: hledger's account aliases can be useful for:
.IP \[bu] 2 .IP \[bu] 2
expanding shorthand account names to their full form, allowing easier expanding shorthand account names to their full form, allowing easier
data entry and a less verbose journal data entry and a less verbose journal
@ -870,7 +867,7 @@ alias\ OLD\ =\ NEW
Or, you can use the \f[C]\-\-alias\ \[aq]OLD=NEW\[aq]\f[] option on the Or, you can use the \f[C]\-\-alias\ \[aq]OLD=NEW\[aq]\f[] option on the
command line. command line.
This affects all entries. This affects all entries.
It\[aq]s useful for trying out aliases interactively. It's useful for trying out aliases interactively.
.PP .PP
OLD and NEW are full account names. OLD and NEW are full account names.
hledger will replace any occurrence of the old account name with the new hledger will replace any occurrence of the old account name with the new
@ -941,8 +938,8 @@ end\ aliases
.PP .PP
The \f[C]account\f[] directive predefines account names, as in Ledger The \f[C]account\f[] directive predefines account names, as in Ledger
and Beancount. and Beancount.
This may be useful for your own documentation; hledger doesn\[aq]t make This may be useful for your own documentation; hledger doesn't make use
use of it yet. of it yet.
.IP .IP
.nf .nf
\f[C] \f[C]
@ -1028,7 +1025,7 @@ commodity\ 1,000.0000\ AAAA
\f[] \f[]
.fi .fi
.PP .PP
or on multiple lines, using the "format" subdirective. or on multiple lines, using the \[lq]format\[rq] subdirective.
In this case the commodity symbol appears twice and should be the same In this case the commodity symbol appears twice and should be the same
in both places: in both places:
.IP .IP
@ -1048,7 +1045,7 @@ commodity\ INR
.PP .PP
The D directive sets a default commodity (and display format), to be The D directive sets a default commodity (and display format), to be
used for amounts without a commodity symbol (ie, plain numbers). used for amounts without a commodity symbol (ie, plain numbers).
(Note this differs from Ledger\[aq]s default commodity directive.) The (Note this differs from Ledger's default commodity directive.) The
commodity and display format will be applied to all subsequent commodity and display format will be applied to all subsequent
commodity\-less amounts, or until the next D directive. commodity\-less amounts, or until the next D directive.
.IP .IP
@ -1065,8 +1062,8 @@ D\ $1,000.00
.fi .fi
.SS Default year .SS Default year
.PP .PP
You can set a default year to be used for subsequent dates which You can set a default year to be used for subsequent dates which don't
don\[aq]t specify a year. specify a year.
This is a line beginning with \f[C]Y\f[] followed by the year. This is a line beginning with \f[C]Y\f[] followed by the year.
Eg: Eg:
.IP .IP

View File

@ -1,8 +1,8 @@
This is hledger_journal.5.info, produced by makeinfo version 6.0 from This is hledger_journal.info, produced by makeinfo version 6.0 from
stdin. stdin.
 
File: hledger_journal.5.info, Node: Top, Next: FILE FORMAT, Up: (dir) File: hledger_journal.info, Node: Top, Next: FILE FORMAT, Up: (dir)
hledger_journal(5) hledger 1.4 hledger_journal(5) hledger 1.4
****************************** ******************************
@ -60,7 +60,7 @@ assisted by the helper modes for emacs or vim.
* EDITOR SUPPORT:: * EDITOR SUPPORT::
 
File: hledger_journal.5.info, Node: FILE FORMAT, Next: EDITOR SUPPORT, Prev: Top, Up: Top File: hledger_journal.info, Node: FILE FORMAT, Next: EDITOR SUPPORT, Prev: Top, Up: Top
1 FILE FORMAT 1 FILE FORMAT
************* *************
@ -83,7 +83,7 @@ File: hledger_journal.5.info, Node: FILE FORMAT, Next: EDITOR SUPPORT, Prev:
* Directives:: * Directives::
 
File: hledger_journal.5.info, Node: Transactions, Next: Postings, Up: FILE FORMAT File: hledger_journal.info, Node: Transactions, Next: Postings, Up: FILE FORMAT
1.1 Transactions 1.1 Transactions
================ ================
@ -105,7 +105,7 @@ following, separated by spaces:
representing... representing...
 
File: hledger_journal.5.info, Node: Postings, Next: Dates, Prev: Transactions, Up: FILE FORMAT File: hledger_journal.info, Node: Postings, Next: Dates, Prev: Transactions, Up: FILE FORMAT
1.2 Postings 1.2 Postings
============ ============
@ -133,7 +133,7 @@ spaces. But if you accidentally leave only one space (or tab) before
the amount, the amount will be considered part of the account name. the amount, the amount will be considered part of the account name.
 
File: hledger_journal.5.info, Node: Dates, Next: Status, Prev: Postings, Up: FILE FORMAT File: hledger_journal.info, Node: Dates, Next: Status, Prev: Postings, Up: FILE FORMAT
1.3 Dates 1.3 Dates
========= =========
@ -145,7 +145,7 @@ File: hledger_journal.5.info, Node: Dates, Next: Status, Prev: Postings, Up:
* Posting dates:: * Posting dates::
 
File: hledger_journal.5.info, Node: Simple dates, Next: Secondary dates, Up: Dates File: hledger_journal.info, Node: Simple dates, Next: Secondary dates, Up: Dates
1.3.1 Simple dates 1.3.1 Simple dates
------------------ ------------------
@ -158,7 +158,7 @@ command is run. Some examples: '2010/01/31', '1/31', '2010-01-31',
'2010.1.31'. '2010.1.31'.
 
File: hledger_journal.5.info, Node: Secondary dates, Next: Posting dates, Prev: Simple dates, Up: Dates File: hledger_journal.info, Node: Secondary dates, Next: Posting dates, Prev: Simple dates, Up: Dates
1.3.2 Secondary dates 1.3.2 Secondary dates
--------------------- ---------------------
@ -199,7 +199,7 @@ Ledger compatibility, but posting dates are a more powerful and less
confusing alternative. confusing alternative.
 
File: hledger_journal.5.info, Node: Posting dates, Prev: Secondary dates, Up: Dates File: hledger_journal.info, Node: Posting dates, Prev: Secondary dates, Up: Dates
1.3.3 Posting dates 1.3.3 Posting dates
------------------- -------------------
@ -234,7 +234,7 @@ characters in this way. With this syntax, DATE infers its year from the
transaction and DATE2 infers its year from DATE. transaction and DATE2 infers its year from DATE.
 
File: hledger_journal.5.info, Node: Status, Next: Description, Prev: Dates, Up: FILE FORMAT File: hledger_journal.info, Node: Status, Next: Description, Prev: Dates, Up: FILE FORMAT
1.4 Status 1.4 Status
========== ==========
@ -284,7 +284,7 @@ your bank, '-U' to see things which will probably hit your bank soon
your finances. your finances.
 
File: hledger_journal.5.info, Node: Description, Next: Account names, Prev: Status, Up: FILE FORMAT File: hledger_journal.info, Node: Description, Next: Account names, Prev: Status, Up: FILE FORMAT
1.5 Description 1.5 Description
=============== ===============
@ -299,7 +299,7 @@ comments.
* Payee and note:: * Payee and note::
 
File: hledger_journal.5.info, Node: Payee and note, Up: Description File: hledger_journal.info, Node: Payee and note, Up: Description
1.5.1 Payee and note 1.5.1 Payee and note
-------------------- --------------------
@ -310,7 +310,7 @@ the right. This may be worthwhile if you need to do more precise
querying and pivoting by payee. querying and pivoting by payee.
 
File: hledger_journal.5.info, Node: Account names, Next: Amounts, Prev: Description, Up: FILE FORMAT File: hledger_journal.info, Node: Account names, Next: Amounts, Prev: Description, Up: FILE FORMAT
1.6 Account names 1.6 Account names
================= =================
@ -328,7 +328,7 @@ more spaces* (or newline).
Account names can be aliased. Account names can be aliased.
 
File: hledger_journal.5.info, Node: Amounts, Next: Virtual Postings, Prev: Account names, Up: FILE FORMAT File: hledger_journal.info, Node: Amounts, Next: Virtual Postings, Prev: Account names, Up: FILE FORMAT
1.7 Amounts 1.7 Amounts
=========== ===========
@ -396,7 +396,7 @@ when -V is used.) If you find this causing problems, set the desired
format with a commodity directive. format with a commodity directive.
 
File: hledger_journal.5.info, Node: Virtual Postings, Next: Balance Assertions, Prev: Amounts, Up: FILE FORMAT File: hledger_journal.info, Node: Virtual Postings, Next: Balance Assertions, Prev: Amounts, Up: FILE FORMAT
1.8 Virtual Postings 1.8 Virtual Postings
==================== ====================
@ -431,7 +431,7 @@ can usually find an equivalent journal entry using real postings, which
is more correct and provides better error checking. is more correct and provides better error checking.
 
File: hledger_journal.5.info, Node: Balance Assertions, Next: Balance Assignments, Prev: Virtual Postings, Up: FILE FORMAT File: hledger_journal.info, Node: Balance Assertions, Next: Balance Assignments, Prev: Virtual Postings, Up: FILE FORMAT
1.9 Balance Assertions 1.9 Balance Assertions
====================== ======================
@ -465,7 +465,7 @@ or for reading Ledger files.
* Assertions and virtual postings:: * Assertions and virtual postings::
 
File: hledger_journal.5.info, Node: Assertions and ordering, Next: Assertions and included files, Up: Balance Assertions File: hledger_journal.info, Node: Assertions and ordering, Next: Assertions and included files, Up: Balance Assertions
1.9.1 Assertions and ordering 1.9.1 Assertions and ordering
----------------------------- -----------------------------
@ -484,7 +484,7 @@ control over the order of postings and assertions within a day, so you
can assert intra-day balances. can assert intra-day balances.
 
File: hledger_journal.5.info, Node: Assertions and included files, Next: Assertions and multiple -f options, Prev: Assertions and ordering, Up: Balance Assertions File: hledger_journal.info, Node: Assertions and included files, Next: Assertions and multiple -f options, Prev: Assertions and ordering, Up: Balance Assertions
1.9.2 Assertions and included files 1.9.2 Assertions and included files
----------------------------------- -----------------------------------
@ -496,7 +496,7 @@ and you also want to assert the account's balance on the same day,
you'll have to put the assertion in the right file. you'll have to put the assertion in the right file.
 
File: hledger_journal.5.info, Node: Assertions and multiple -f options, Next: Assertions and commodities, Prev: Assertions and included files, Up: Balance Assertions File: hledger_journal.info, Node: Assertions and multiple -f options, Next: Assertions and commodities, Prev: Assertions and included files, Up: Balance Assertions
1.9.3 Assertions and multiple -f options 1.9.3 Assertions and multiple -f options
---------------------------------------- ----------------------------------------
@ -505,7 +505,7 @@ Balance assertions don't work well across files specified with multiple
-f options. Use include or concatenate the files instead. -f options. Use include or concatenate the files instead.
 
File: hledger_journal.5.info, Node: Assertions and commodities, Next: Assertions and subaccounts, Prev: Assertions and multiple -f options, Up: Balance Assertions File: hledger_journal.info, Node: Assertions and commodities, Next: Assertions and subaccounts, Prev: Assertions and multiple -f options, Up: Balance Assertions
1.9.4 Assertions and commodities 1.9.4 Assertions and commodities
-------------------------------- --------------------------------
@ -524,7 +524,7 @@ account does not contain some unexpected commodity. (We'll add support
for this kind of total balance assertion if there's demand.) for this kind of total balance assertion if there's demand.)
 
File: hledger_journal.5.info, Node: Assertions and subaccounts, Next: Assertions and virtual postings, Prev: Assertions and commodities, Up: Balance Assertions File: hledger_journal.info, Node: Assertions and subaccounts, Next: Assertions and virtual postings, Prev: Assertions and commodities, Up: Balance Assertions
1.9.5 Assertions and subaccounts 1.9.5 Assertions and subaccounts
-------------------------------- --------------------------------
@ -547,7 +547,7 @@ $ hledger bal checking --flat
2 2
 
File: hledger_journal.5.info, Node: Assertions and virtual postings, Prev: Assertions and subaccounts, Up: Balance Assertions File: hledger_journal.info, Node: Assertions and virtual postings, Prev: Assertions and subaccounts, Up: Balance Assertions
1.9.6 Assertions and virtual postings 1.9.6 Assertions and virtual postings
------------------------------------- -------------------------------------
@ -557,7 +557,7 @@ virtual. They are not affected by the '--real/-R' flag or 'real:'
query. query.
 
File: hledger_journal.5.info, Node: Balance Assignments, Next: Prices, Prev: Balance Assertions, Up: FILE FORMAT File: hledger_journal.info, Node: Balance Assignments, Next: Prices, Prev: Balance Assertions, Up: FILE FORMAT
1.10 Balance Assignments 1.10 Balance Assignments
======================== ========================
@ -590,7 +590,7 @@ little less explicit; to know the exact amount posted, you have to run
hledger or do the calculations yourself, instead of just reading it. hledger or do the calculations yourself, instead of just reading it.
 
File: hledger_journal.5.info, Node: Prices, Next: Comments, Prev: Balance Assignments, Up: FILE FORMAT File: hledger_journal.info, Node: Prices, Next: Comments, Prev: Balance Assignments, Up: FILE FORMAT
1.11 Prices 1.11 Prices
=========== ===========
@ -601,7 +601,7 @@ File: hledger_journal.5.info, Node: Prices, Next: Comments, Prev: Balance Ass
* Market prices:: * Market prices::
 
File: hledger_journal.5.info, Node: Transaction prices, Next: Market prices, Up: Prices File: hledger_journal.info, Node: Transaction prices, Next: Market prices, Up: Prices
1.11.1 Transaction prices 1.11.1 Transaction prices
------------------------- -------------------------
@ -662,7 +662,7 @@ $ hledger bal -N --flat -B
€100 assets:euros €100 assets:euros
 
File: hledger_journal.5.info, Node: Market prices, Prev: Transaction prices, Up: Prices File: hledger_journal.info, Node: Market prices, Prev: Transaction prices, Up: Prices
1.11.2 Market prices 1.11.2 Market prices
-------------------- --------------------
@ -691,7 +691,7 @@ P 2009/1/1 € $1.35
P 2010/1/1 € $1.40 P 2010/1/1 € $1.40
 
File: hledger_journal.5.info, Node: Comments, Next: Tags, Prev: Prices, Up: FILE FORMAT File: hledger_journal.info, Node: Comments, Next: Tags, Prev: Prices, Up: FILE FORMAT
1.12 Comments 1.12 Comments
============= =============
@ -733,7 +733,7 @@ end comment
; a file comment (because not indented) ; a file comment (because not indented)
 
File: hledger_journal.5.info, Node: Tags, Next: Directives, Prev: Comments, Up: FILE FORMAT File: hledger_journal.info, Node: Tags, Next: Directives, Prev: Comments, Up: FILE FORMAT
1.13 Tags 1.13 Tags
========= =========
@ -776,7 +776,7 @@ example, the following transaction has three tags ('A', 'TAG2',
are simple strings. are simple strings.
 
File: hledger_journal.5.info, Node: Directives, Prev: Tags, Up: FILE FORMAT File: hledger_journal.info, Node: Directives, Prev: Tags, Up: FILE FORMAT
1.14 Directives 1.14 Directives
=============== ===============
@ -793,7 +793,7 @@ File: hledger_journal.5.info, Node: Directives, Prev: Tags, Up: FILE FORMAT
* Including other files:: * Including other files::
 
File: hledger_journal.5.info, Node: Account aliases, Next: account directive, Up: Directives File: hledger_journal.info, Node: Account aliases, Next: account directive, Up: Directives
1.14.1 Account aliases 1.14.1 Account aliases
---------------------- ----------------------
@ -818,7 +818,7 @@ be useful for:
* end aliases:: * end aliases::
 
File: hledger_journal.5.info, Node: Basic aliases, Next: Regex aliases, Up: Account aliases File: hledger_journal.info, Node: Basic aliases, Next: Regex aliases, Up: Account aliases
1.14.1.1 Basic aliases 1.14.1.1 Basic aliases
...................... ......................
@ -841,7 +841,7 @@ alias checking = assets:bank:wells fargo:checking
# rewrites "checking" to "assets:bank:wells fargo:checking", or "checking:a" to "assets:bank:wells fargo:checking:a" # rewrites "checking" to "assets:bank:wells fargo:checking", or "checking:a" to "assets:bank:wells fargo:checking:a"
 
File: hledger_journal.5.info, Node: Regex aliases, Next: Multiple aliases, Prev: Basic aliases, Up: Account aliases File: hledger_journal.info, Node: Regex aliases, Next: Multiple aliases, Prev: Basic aliases, Up: Account aliases
1.14.1.2 Regex aliases 1.14.1.2 Regex aliases
...................... ......................
@ -866,7 +866,7 @@ command line, to end of option argument), so it can contain trailing
whitespace. whitespace.
 
File: hledger_journal.5.info, Node: Multiple aliases, Next: end aliases, Prev: Regex aliases, Up: Account aliases File: hledger_journal.info, Node: Multiple aliases, Next: end aliases, Prev: Regex aliases, Up: Account aliases
1.14.1.3 Multiple aliases 1.14.1.3 Multiple aliases
......................... .........................
@ -882,7 +882,7 @@ following order:
2. alias options, in the order they appear on the command line 2. alias options, in the order they appear on the command line
 
File: hledger_journal.5.info, Node: end aliases, Prev: Multiple aliases, Up: Account aliases File: hledger_journal.info, Node: end aliases, Prev: Multiple aliases, Up: Account aliases
1.14.1.4 end aliases 1.14.1.4 end aliases
.................... ....................
@ -893,7 +893,7 @@ aliases' directive:
end aliases end aliases
 
File: hledger_journal.5.info, Node: account directive, Next: apply account directive, Prev: Account aliases, Up: Directives File: hledger_journal.info, Node: account directive, Next: apply account directive, Prev: Account aliases, Up: Directives
1.14.2 account directive 1.14.2 account directive
------------------------ ------------------------
@ -914,7 +914,7 @@ account expenses:food
; etc. ; etc.
 
File: hledger_journal.5.info, Node: apply account directive, Next: Multi-line comments, Prev: account directive, Up: Directives File: hledger_journal.info, Node: apply account directive, Next: Multi-line comments, Prev: account directive, Up: Directives
1.14.3 apply account directive 1.14.3 apply account directive
------------------------------ ------------------------------
@ -950,7 +950,7 @@ include personal.journal
supported. supported.
 
File: hledger_journal.5.info, Node: Multi-line comments, Next: commodity directive, Prev: apply account directive, Up: Directives File: hledger_journal.info, Node: Multi-line comments, Next: commodity directive, Prev: apply account directive, Up: Directives
1.14.4 Multi-line comments 1.14.4 Multi-line comments
-------------------------- --------------------------
@ -959,7 +959,7 @@ A line containing just 'comment' starts a multi-line comment, and a line
containing just 'end comment' ends it. See comments. containing just 'end comment' ends it. See comments.
 
File: hledger_journal.5.info, Node: commodity directive, Next: Default commodity, Prev: Multi-line comments, Up: Directives File: hledger_journal.info, Node: commodity directive, Next: Default commodity, Prev: Multi-line comments, Up: Directives
1.14.5 commodity directive 1.14.5 commodity directive
-------------------------- --------------------------
@ -991,7 +991,7 @@ commodity INR
format INR 9,99,99,999.00 format INR 9,99,99,999.00
 
File: hledger_journal.5.info, Node: Default commodity, Next: Default year, Prev: commodity directive, Up: Directives File: hledger_journal.info, Node: Default commodity, Next: Default year, Prev: commodity directive, Up: Directives
1.14.6 Default commodity 1.14.6 Default commodity
------------------------ ------------------------
@ -1011,7 +1011,7 @@ D $1,000.00
b b
 
File: hledger_journal.5.info, Node: Default year, Next: Including other files, Prev: Default commodity, Up: Directives File: hledger_journal.info, Node: Default year, Next: Including other files, Prev: Default commodity, Up: Directives
1.14.7 Default year 1.14.7 Default year
------------------- -------------------
@ -1037,7 +1037,7 @@ Y2010 ; change default year to 2010
assets assets
 
File: hledger_journal.5.info, Node: Including other files, Prev: Default year, Up: Directives File: hledger_journal.info, Node: Including other files, Prev: Default year, Up: Directives
1.14.8 Including other files 1.14.8 Including other files
---------------------------- ----------------------------
@ -1054,7 +1054,7 @@ current file. Glob patterns ('*') are not currently supported.
include journal, timeclock or timedot files, but not CSV files. include journal, timeclock or timedot files, but not CSV files.
 
File: hledger_journal.5.info, Node: EDITOR SUPPORT, Prev: FILE FORMAT, Up: Top File: hledger_journal.info, Node: EDITOR SUPPORT, Prev: FILE FORMAT, Up: Top
2 EDITOR SUPPORT 2 EDITOR SUPPORT
**************** ****************
@ -1077,86 +1077,86 @@ Code
 
Tag Table: Tag Table:
Node: Top78 Node: Top76
Node: FILE FORMAT2374 Node: FILE FORMAT2370
Ref: #file-format2500 Ref: #file-format2494
Node: Transactions2723 Node: Transactions2717
Ref: #transactions2846 Ref: #transactions2838
Node: Postings3530 Node: Postings3522
Ref: #postings3659 Ref: #postings3649
Node: Dates4654 Node: Dates4644
Ref: #dates4771 Ref: #dates4759
Node: Simple dates4836 Node: Simple dates4824
Ref: #simple-dates4964 Ref: #simple-dates4950
Node: Secondary dates5330 Node: Secondary dates5316
Ref: #secondary-dates5486 Ref: #secondary-dates5470
Node: Posting dates7049 Node: Posting dates7033
Ref: #posting-dates7180 Ref: #posting-dates7162
Node: Status8554 Node: Status8536
Ref: #status8676 Ref: #status8656
Node: Description10390 Node: Description10370
Ref: #description10530 Ref: #description10508
Node: Payee and note10849 Node: Payee and note10827
Ref: #payee-and-note10965 Ref: #payee-and-note10941
Node: Account names11207 Node: Account names11183
Ref: #account-names11352 Ref: #account-names11326
Node: Amounts11839 Node: Amounts11813
Ref: #amounts11977 Ref: #amounts11949
Node: Virtual Postings14568 Node: Virtual Postings14540
Ref: #virtual-postings14729 Ref: #virtual-postings14699
Node: Balance Assertions15949 Node: Balance Assertions15919
Ref: #balance-assertions16126 Ref: #balance-assertions16094
Node: Assertions and ordering17022 Node: Assertions and ordering16990
Ref: #assertions-and-ordering17210 Ref: #assertions-and-ordering17176
Node: Assertions and included files17910 Node: Assertions and included files17876
Ref: #assertions-and-included-files18153 Ref: #assertions-and-included-files18117
Node: Assertions and multiple -f options18486 Node: Assertions and multiple -f options18450
Ref: #assertions-and-multiple--f-options18742 Ref: #assertions-and-multiple--f-options18704
Node: Assertions and commodities18874 Node: Assertions and commodities18836
Ref: #assertions-and-commodities19111 Ref: #assertions-and-commodities19071
Node: Assertions and subaccounts19807 Node: Assertions and subaccounts19767
Ref: #assertions-and-subaccounts20041 Ref: #assertions-and-subaccounts19999
Node: Assertions and virtual postings20562 Node: Assertions and virtual postings20520
Ref: #assertions-and-virtual-postings20771 Ref: #assertions-and-virtual-postings20727
Node: Balance Assignments20913 Node: Balance Assignments20869
Ref: #balance-assignments21084 Ref: #balance-assignments21038
Node: Prices22203 Node: Prices22157
Ref: #prices22338 Ref: #prices22290
Node: Transaction prices22389 Node: Transaction prices22341
Ref: #transaction-prices22536 Ref: #transaction-prices22486
Node: Market prices24692 Node: Market prices24642
Ref: #market-prices24829 Ref: #market-prices24777
Node: Comments25789 Node: Comments25737
Ref: #comments25913 Ref: #comments25859
Node: Tags27155 Node: Tags27101
Ref: #tags27275 Ref: #tags27219
Node: Directives28677 Node: Directives28621
Ref: #directives28792 Ref: #directives28734
Node: Account aliases28985 Node: Account aliases28927
Ref: #account-aliases29131 Ref: #account-aliases29071
Node: Basic aliases29735 Node: Basic aliases29675
Ref: #basic-aliases29880 Ref: #basic-aliases29818
Node: Regex aliases30570 Node: Regex aliases30508
Ref: #regex-aliases30740 Ref: #regex-aliases30676
Node: Multiple aliases31458 Node: Multiple aliases31394
Ref: #multiple-aliases31632 Ref: #multiple-aliases31566
Node: end aliases32130 Node: end aliases32064
Ref: #end-aliases32272 Ref: #end-aliases32204
Node: account directive32373 Node: account directive32305
Ref: #account-directive32555 Ref: #account-directive32485
Node: apply account directive32851 Node: apply account directive32781
Ref: #apply-account-directive33049 Ref: #apply-account-directive32977
Node: Multi-line comments33708 Node: Multi-line comments33636
Ref: #multi-line-comments33900 Ref: #multi-line-comments33826
Node: commodity directive34028 Node: commodity directive33954
Ref: #commodity-directive34214 Ref: #commodity-directive34138
Node: Default commodity35086 Node: Default commodity35010
Ref: #default-commodity35261 Ref: #default-commodity35183
Node: Default year35798 Node: Default year35720
Ref: #default-year35965 Ref: #default-year35885
Node: Including other files36388 Node: Including other files36308
Ref: #including-other-files36547 Ref: #including-other-files36465
Node: EDITOR SUPPORT36944 Node: EDITOR SUPPORT36862
Ref: #editor-support37064 Ref: #editor-support36980
 
End Tag Table End Tag Table

View File

@ -9,7 +9,7 @@ Timeclock \- the time logging format of timeclock.el, as read by hledger
.SH DESCRIPTION .SH DESCRIPTION
.PP .PP
hledger can read timeclock files. hledger can read timeclock files.
As with Ledger, these are (a subset of) timeclock.el\[aq]s format, As with Ledger, these are (a subset of) timeclock.el's format,
containing clock\-in and clock\-out entries as in the example below. containing clock\-in and clock\-out entries as in the example below.
The date is a simple date. The date is a simple date.
The time format is HH:MM[:SS][+\-ZZZZ]. The time format is HH:MM[:SS][+\-ZZZZ].
@ -63,20 +63,12 @@ use emacs and the built\-in timeclock.el, or the extended
timeclock\-x.el and perhaps the extras in ledgerutils.el timeclock\-x.el and perhaps the extras in ledgerutils.el
.IP \[bu] 2 .IP \[bu] 2
at the command line, use these bash aliases: at the command line, use these bash aliases:
.RS 2 \f[C]shell\ \ \ alias\ ti="echo\ i\ `date\ \[aq]+%Y\-%m\-%d\ %H:%M:%S\[aq]`\ \\$*\ >>$TIMELOG"\ \ \ alias\ to="echo\ o\ `date\ \[aq]+%Y\-%m\-%d\ %H:%M:%S\[aq]`\ >>$TIMELOG"\f[]
.IP
.nf
\f[C]
alias\ ti="echo\ i\ `date\ \[aq]+%Y\-%m\-%d\ %H:%M:%S\[aq]`\ \\$*\ >>$TIMELOG"
alias\ to="echo\ o\ `date\ \[aq]+%Y\-%m\-%d\ %H:%M:%S\[aq]`\ >>$TIMELOG"
\f[]
.fi
.RE
.IP \[bu] 2 .IP \[bu] 2
or use the old \f[C]ti\f[] and \f[C]to\f[] scripts in the ledger 2.x or use the old \f[C]ti\f[] and \f[C]to\f[] scripts in the ledger 2.x
repository. repository.
These rely on a "timeclock" executable which I think is just the ledger These rely on a \[lq]timeclock\[rq] executable which I think is just the
2 executable renamed. ledger 2 executable renamed.
.SH "REPORTING BUGS" .SH "REPORTING BUGS"

View File

@ -1,8 +1,8 @@
This is hledger_timeclock.5.info, produced by makeinfo version 6.0 from This is hledger_timeclock.info, produced by makeinfo version 6.0 from
stdin. stdin.
 
File: hledger_timeclock.5.info, Node: Top, Up: (dir) File: hledger_timeclock.info, Node: Top, Up: (dir)
hledger_timeclock(5) hledger 1.4 hledger_timeclock(5) hledger 1.4
******************************** ********************************
@ -45,11 +45,9 @@ $ hledger -f sample.timeclock register -p weekly --depth 1 --empty # time summa
* use emacs and the built-in timeclock.el, or the extended * use emacs and the built-in timeclock.el, or the extended
timeclock-x.el and perhaps the extras in ledgerutils.el timeclock-x.el and perhaps the extras in ledgerutils.el
* at the command line, use these bash aliases: * at the command line, use these bash aliases: 'shell alias ti="echo
i `date '+%Y-%m-%d %H:%M:%S'` \$* >>$TIMELOG" alias to="echo o
alias ti="echo i `date '+%Y-%m-%d %H:%M:%S'` \$* >>$TIMELOG" `date '+%Y-%m-%d %H:%M:%S'` >>$TIMELOG"'
alias to="echo o `date '+%Y-%m-%d %H:%M:%S'` >>$TIMELOG"
* or use the old 'ti' and 'to' scripts in the ledger 2.x repository. * or use the old 'ti' and 'to' scripts in the ledger 2.x repository.
These rely on a "timeclock" executable which I think is just the These rely on a "timeclock" executable which I think is just the
ledger 2 executable renamed. ledger 2 executable renamed.
@ -57,6 +55,6 @@ $ hledger -f sample.timeclock register -p weekly --depth 1 --empty # time summa
 
Tag Table: Tag Table:
Node: Top80 Node: Top78
 
End Tag Table End Tag Table

View File

@ -45,10 +45,8 @@ DESCRIPTION
o use emacs and the built-in timeclock.el, or the extended time- o use emacs and the built-in timeclock.el, or the extended time-
clock-x.el and perhaps the extras in ledgerutils.el clock-x.el and perhaps the extras in ledgerutils.el
o at the command line, use these bash aliases: o at the command line, use these bash aliases:
shell alias ti="echo i `date '+%Y-%m-%d %H:%M:%S'` \$* >>$TIMELOG" alias to="echo o `date '+%Y-%m-%d %H:%M:%S'` >>$TIMELOG"
alias ti="echo i `date '+%Y-%m-%d %H:%M:%S'` \$* >>$TIMELOG"
alias to="echo o `date '+%Y-%m-%d %H:%M:%S'` >>$TIMELOG"
o or use the old ti and to scripts in the ledger 2.x repository. These o or use the old ti and to scripts in the ledger 2.x repository. These
rely on a "timeclock" executable which I think is just the ledger 2 rely on a "timeclock" executable which I think is just the ledger 2

View File

@ -5,7 +5,7 @@
.SH NAME .SH NAME
.PP .PP
Timedot \- hledger\[aq]s human\-friendly time logging format Timedot \- hledger's human\-friendly time logging format
.SH DESCRIPTION .SH DESCRIPTION
.PP .PP
Timedot is a plain text format for logging dated, categorised quantities Timedot is a plain text format for logging dated, categorised quantities
@ -16,10 +16,10 @@ precise or too interruptive.
It can be formatted like a bar chart, making clear at a glance where It can be formatted like a bar chart, making clear at a glance where
time was spent. time was spent.
.PP .PP
Though called "timedot", this format is read by hledger as commodityless Though called \[lq]timedot\[rq], this format is read by hledger as
quantities, so it could be used to represent dated quantities other than commodityless quantities, so it could be used to represent dated
time. quantities other than time.
In the docs below we\[aq]ll assume it\[aq]s time. In the docs below we'll assume it's time.
.SH FILE FORMAT .SH FILE FORMAT
.PP .PP
A timedot file contains a series of day entries. A timedot file contains a series of day entries.
@ -34,7 +34,7 @@ Quantities can be written as:
.IP \[bu] 2 .IP \[bu] 2
a sequence of dots (.) representing quarter hours. a sequence of dots (.) representing quarter hours.
Spaces may optionally be used for grouping and readability. Spaces may optionally be used for grouping and readability.
Eg: .... Eg: \&....
\&.. \&..
.IP \[bu] 2 .IP \[bu] 2
an integral or decimal number, representing hours. an integral or decimal number, representing hours.

View File

@ -1,8 +1,8 @@
This is hledger_timedot.5.info, produced by makeinfo version 6.0 from This is hledger_timedot.info, produced by makeinfo version 6.0 from
stdin. stdin.
 
File: hledger_timedot.5.info, Node: Top, Next: FILE FORMAT, Up: (dir) File: hledger_timedot.info, Node: Top, Next: FILE FORMAT, Up: (dir)
hledger_timedot(5) hledger 1.4 hledger_timedot(5) hledger 1.4
****************************** ******************************
@ -22,7 +22,7 @@ quantities other than time. In the docs below we'll assume it's time.
* FILE FORMAT:: * FILE FORMAT::
 
File: hledger_timedot.5.info, Node: FILE FORMAT, Prev: Top, Up: Top File: hledger_timedot.info, Node: FILE FORMAT, Prev: Top, Up: Top
1 FILE FORMAT 1 FILE FORMAT
************* *************
@ -109,8 +109,8 @@ $ hledger -f t.timedot --alias /\\./=: bal date:2016/2/4
 
Tag Table: Tag Table:
Node: Top78 Node: Top76
Node: FILE FORMAT809 Node: FILE FORMAT805
Ref: #file-format912 Ref: #file-format906
 
End Tag Table End Tag Table

View File

@ -20,10 +20,10 @@ other commodity, using double\-entry accounting and a simple, editable
file format. file format.
hledger is inspired by and largely compatible with ledger(1). hledger is inspired by and largely compatible with ledger(1).
.PP .PP
hledger\-ui is hledger\[aq]s curses\-style interface, providing an hledger\-ui is hledger's curses\-style interface, providing an efficient
efficient full\-window text UI for viewing accounts and transactions, full\-window text UI for viewing accounts and transactions, and some
and some limited data entry capability. limited data entry capability.
It is easier than hledger\[aq]s command\-line interface, and sometimes It is easier than hledger's command\-line interface, and sometimes
quicker and more convenient than the web interface. quicker and more convenient than the web interface.
.PP .PP
Like hledger, it reads data from one or more files in hledger journal, Like hledger, it reads data from one or more files in hledger journal,
@ -50,7 +50,7 @@ use this custom display theme
.RE .RE
.TP .TP
.B \f[C]\-\-register=ACCTREGEX\f[] .B \f[C]\-\-register=ACCTREGEX\f[]
start in the (first) matched account\[aq]s register screen start in the (first) matched account's register screen
.RS .RS
.RE .RE
.TP .TP
@ -230,7 +230,7 @@ Vi\-style (\f[C]h\f[]/\f[C]j\f[]/\f[C]k\f[]/\f[C]l\f[]) and Emacs\-style
movement keys are also supported. movement keys are also supported.
A tip: movement speed is limited by your keyboard repeat rate, to move A tip: movement speed is limited by your keyboard repeat rate, to move
faster you may want to adjust it. faster you may want to adjust it.
(If you\[aq]re on a mac, the Karabiner app is one way to do that.) (If you're on a mac, the Karabiner app is one way to do that.)
.PP .PP
With shift pressed, the cursor keys adjust the report period, limiting With shift pressed, the cursor keys adjust the report period, limiting
the transactions to be shown (by default, all are shown). the transactions to be shown (by default, all are shown).
@ -238,9 +238,9 @@ the transactions to be shown (by default, all are shown).
report period durations: year, quarter, month, week, day. report period durations: year, quarter, month, week, day.
Then, \f[C]shift\-left/right\f[] moves to the previous/next period. Then, \f[C]shift\-left/right\f[] moves to the previous/next period.
\f[C]t\f[] sets the report period to today. \f[C]t\f[] sets the report period to today.
With the \f[C]\-\-watch\f[] option, when viewing a "current" period (the With the \f[C]\-\-watch\f[] option, when viewing a \[lq]current\[rq]
current day, week, month, quarter, or year), the period will move period (the current day, week, month, quarter, or year), the period will
automatically to track the current date. move automatically to track the current date.
To set a non\-standard period, you can use \f[C]/\f[] and a To set a non\-standard period, you can use \f[C]/\f[] and a
\f[C]date:\f[] query. \f[C]date:\f[] query.
.PP .PP
@ -257,8 +257,8 @@ transactions.
Or, it cancels a minibuffer edit or help dialog in progress. Or, it cancels a minibuffer edit or help dialog in progress.
.PP .PP
\f[C]CTRL\-l\f[] redraws the screen and centers the selection if \f[C]CTRL\-l\f[] redraws the screen and centers the selection if
possible (selections near the top won\[aq]t be centered, since we possible (selections near the top won't be centered, since we don't
don\[aq]t scroll above the top). scroll above the top).
.PP .PP
\f[C]g\f[] reloads from the data file(s) and updates the current screen \f[C]g\f[] reloads from the data file(s) and updates the current screen
and any previous screens. and any previous screens.
@ -268,7 +268,7 @@ and any previous screens.
Disabling balance assertions temporarily can be useful for Disabling balance assertions temporarily can be useful for
troubleshooting. troubleshooting.
.PP .PP
\f[C]a\f[] runs command\-line hledger\[aq]s add command, and reloads the \f[C]a\f[] runs command\-line hledger's add command, and reloads the
updated file. updated file.
This allows some basic data entry. This allows some basic data entry.
.PP .PP
@ -291,8 +291,7 @@ Additional screen\-specific keys are described below.
.SS Accounts screen .SS Accounts screen
.PP .PP
This is normally the first screen displayed. This is normally the first screen displayed.
It lists accounts and their balances, like hledger\[aq]s balance It lists accounts and their balances, like hledger's balance command.
command.
By default, it shows all accounts and their latest ending balances By default, it shows all accounts and their latest ending balances
(including the balances of subaccounts). (including the balances of subaccounts).
if you specify a query on the command line, it shows just the matched if you specify a query on the command line, it shows just the matched
@ -311,7 +310,7 @@ or press \f[C]ESCAPE\f[].
\f[C]F\f[] toggles flat mode, in which accounts are shown as a flat \f[C]F\f[] toggles flat mode, in which accounts are shown as a flat
list, with their full names. list, with their full names.
In this mode, account balances exclude subaccounts, except for accounts In this mode, account balances exclude subaccounts, except for accounts
at the depth limit (as with hledger\[aq]s balance command). at the depth limit (as with hledger's balance command).
.PP .PP
\f[C]H\f[] toggles between showing historical balances or period \f[C]H\f[] toggles between showing historical balances or period
balances. balances.
@ -339,8 +338,8 @@ all three, the filter is removed.)
balances are shown (hledger\-ui shows zero items by default, unlike balances are shown (hledger\-ui shows zero items by default, unlike
command\-line hledger). command\-line hledger).
.PP .PP
Press \f[C]right\f[] or \f[C]enter\f[] to view an account\[aq]s Press \f[C]right\f[] or \f[C]enter\f[] to view an account's transactions
transactions register. register.
.SS Register screen .SS Register screen
.PP .PP
This screen shows the transactions affecting a particular account, like This screen shows the transactions affecting a particular account, like
@ -351,7 +350,7 @@ the other account(s) involved, in abbreviated form.
(If there are both real and virtual postings, it shows only the accounts (If there are both real and virtual postings, it shows only the accounts
affected by real postings.) affected by real postings.)
.IP \[bu] 2 .IP \[bu] 2
the overall change to the current account\[aq]s balance; positive for an the overall change to the current account's balance; positive for an
inflow to this account, negative for an outflow. inflow to this account, negative for an outflow.
.IP \[bu] 2 .IP \[bu] 2
the running historical total or period total for the current account, the running historical total or period total for the current account,
@ -392,10 +391,10 @@ transaction in detail.
.SS Transaction screen .SS Transaction screen
.PP .PP
This screen shows a single transaction, as a general journal entry, This screen shows a single transaction, as a general journal entry,
similar to hledger\[aq]s print command and journal format similar to hledger's print command and journal format
(hledger_journal(5)). (hledger_journal(5)).
.PP .PP
The transaction\[aq]s date(s) and any cleared flag, transaction code, The transaction's date(s) and any cleared flag, transaction code,
description, comments, along with all of its account postings are shown. description, comments, along with all of its account postings are shown.
Simple transactions have two postings, but there can be more (or in Simple transactions have two postings, but there can be more (or in
certain cases, fewer). certain cases, fewer).
@ -406,9 +405,9 @@ In the title bar, the numbers in parentheses show your position within
that account register. that account register.
They will vary depending on which account register you came from They will vary depending on which account register you came from
(remember most transactions appear in multiple account registers). (remember most transactions appear in multiple account registers).
The #N number preceding them is the transaction\[aq]s position within The #N number preceding them is the transaction's position within the
the complete unfiltered journal, which is a more stable id (at least complete unfiltered journal, which is a more stable id (at least until
until the next reload). the next reload).
.SS Error screen .SS Error screen
.PP .PP
This screen will appear if there is a problem, such as a parse error, This screen will appear if there is a problem, such as a parse error,
@ -436,7 +435,7 @@ perhaps \f[C]C:/Users/USER/.hledger.journal\f[]).
The need to precede options with \f[C]\-\-\f[] when invoked from hledger The need to precede options with \f[C]\-\-\f[] when invoked from hledger
is awkward. is awkward.
.PP .PP
\f[C]\-f\-\f[] doesn\[aq]t work (hledger\-ui can\[aq]t read from stdin). \f[C]\-f\-\f[] doesn't work (hledger\-ui can't read from stdin).
.PP .PP
\f[C]\-V\f[] affects only the accounts screen. \f[C]\-V\f[] affects only the accounts screen.
.PP .PP

View File

@ -1,7 +1,7 @@
This is hledger-ui.1.info, produced by makeinfo version 6.0 from stdin. This is hledger-ui.info, produced by makeinfo version 6.0 from stdin.
 
File: hledger-ui.1.info, Node: Top, Next: OPTIONS, Up: (dir) File: hledger-ui.info, Node: Top, Next: OPTIONS, Up: (dir)
hledger-ui(1) hledger-ui 1.4 hledger-ui(1) hledger-ui 1.4
**************************** ****************************
@ -24,7 +24,7 @@ hledger_journal(5) etc.
* SCREENS:: * SCREENS::
 
File: hledger-ui.1.info, Node: OPTIONS, Next: KEYS, Prev: Top, Up: Top File: hledger-ui.info, Node: OPTIONS, Next: KEYS, Prev: Top, Up: Top
1 OPTIONS 1 OPTIONS
********* *********
@ -154,7 +154,7 @@ should contain one command line option/argument per line. (To prevent
this, insert a '--' argument before.) this, insert a '--' argument before.)
 
File: hledger-ui.1.info, Node: KEYS, Next: SCREENS, Prev: OPTIONS, Up: Top File: hledger-ui.info, Node: KEYS, Next: SCREENS, Prev: OPTIONS, Up: Top
2 KEYS 2 KEYS
****** ******
@ -222,7 +222,7 @@ possible) when invoked from the error screen.
Additional screen-specific keys are described below. Additional screen-specific keys are described below.
 
File: hledger-ui.1.info, Node: SCREENS, Prev: KEYS, Up: Top File: hledger-ui.info, Node: SCREENS, Prev: KEYS, Up: Top
3 SCREENS 3 SCREENS
********* *********
@ -235,7 +235,7 @@ File: hledger-ui.1.info, Node: SCREENS, Prev: KEYS, Up: Top
* Error screen:: * Error screen::
 
File: hledger-ui.1.info, Node: Accounts screen, Next: Register screen, Up: SCREENS File: hledger-ui.info, Node: Accounts screen, Next: Register screen, Up: SCREENS
3.1 Accounts screen 3.1 Accounts screen
=================== ===================
@ -284,7 +284,7 @@ command-line hledger).
Press 'right' or 'enter' to view an account's transactions register. Press 'right' or 'enter' to view an account's transactions register.
 
File: hledger-ui.1.info, Node: Register screen, Next: Transaction screen, Prev: Accounts screen, Up: SCREENS File: hledger-ui.info, Node: Register screen, Next: Transaction screen, Prev: Accounts screen, Up: SCREENS
3.2 Register screen 3.2 Register screen
=================== ===================
@ -332,7 +332,7 @@ command-line hledger).
detail. detail.
 
File: hledger-ui.1.info, Node: Transaction screen, Next: Error screen, Prev: Register screen, Up: SCREENS File: hledger-ui.info, Node: Transaction screen, Next: Error screen, Prev: Register screen, Up: SCREENS
3.3 Transaction screen 3.3 Transaction screen
====================== ======================
@ -356,7 +356,7 @@ unfiltered journal, which is a more stable id (at least until the next
reload). reload).
 
File: hledger-ui.1.info, Node: Error screen, Prev: Transaction screen, Up: SCREENS File: hledger-ui.info, Node: Error screen, Prev: Transaction screen, Up: SCREENS
3.4 Error screen 3.4 Error screen
================ ================
@ -368,20 +368,20 @@ to cancel the reload attempt.)
 
Tag Table: Tag Table:
Node: Top73 Node: Top71
Node: OPTIONS825 Node: OPTIONS821
Ref: #options924 Ref: #options918
Node: KEYS3861 Node: KEYS3855
Ref: #keys3958 Ref: #keys3950
Node: SCREENS6917 Node: SCREENS6909
Ref: #screens7004 Ref: #screens6994
Node: Accounts screen7094 Node: Accounts screen7084
Ref: #accounts-screen7224 Ref: #accounts-screen7212
Node: Register screen9454 Node: Register screen9442
Ref: #register-screen9611 Ref: #register-screen9597
Node: Transaction screen11685 Node: Transaction screen11671
Ref: #transaction-screen11845 Ref: #transaction-screen11829
Node: Error screen12715 Node: Error screen12699
Ref: #error-screen12839 Ref: #error-screen12821
 
End Tag Table End Tag Table

View File

@ -20,7 +20,7 @@ other commodity, using double\-entry accounting and a simple, editable
file format. file format.
hledger is inspired by and largely compatible with ledger(1). hledger is inspired by and largely compatible with ledger(1).
.PP .PP
hledger\-web is hledger\[aq]s web interface. hledger\-web is hledger's web interface.
It starts a simple web application for browsing and adding transactions, It starts a simple web application for browsing and adding transactions,
and optionally opens it in a web browser window if possible. and optionally opens it in a web browser window if possible.
It provides a more user\-friendly UI than the hledger CLI or hledger\-ui It provides a more user\-friendly UI than the hledger CLI or hledger\-ui
@ -42,8 +42,8 @@ timeclock, timedot, or CSV format specified with \f[C]\-f\f[], or
perhaps \f[C]C:/Users/USER/.hledger.journal\f[]). perhaps \f[C]C:/Users/USER/.hledger.journal\f[]).
For more about this see hledger(1), hledger_journal(5) etc. For more about this see hledger(1), hledger_journal(5) etc.
.PP .PP
By default, hledger\-web starts the web app in "transient mode" and also By default, hledger\-web starts the web app in \[lq]transient mode\[rq]
opens it in your default web browser if possible. and also opens it in your default web browser if possible.
In this mode the web app will keep running for as long as you have it In this mode the web app will keep running for as long as you have it
open in a browser window, and will exit after two minutes of inactivity open in a browser window, and will exit after two minutes of inactivity
(no requests and no browser windows viewing it). (no requests and no browser windows viewing it).
@ -61,9 +61,8 @@ if you are running multiple hledger\-web instances.
You can use \f[C]\-\-base\-url\f[] to change the protocol, hostname, You can use \f[C]\-\-base\-url\f[] to change the protocol, hostname,
port and path that appear in hyperlinks, useful eg for integrating port and path that appear in hyperlinks, useful eg for integrating
hledger\-web within a larger website. hledger\-web within a larger website.
The default is \f[C]http://HOST:PORT/\f[] using the server\[aq]s The default is \f[C]http://HOST:PORT/\f[] using the server's configured
configured host address and TCP port (or \f[C]http://HOST\f[] if PORT is host address and TCP port (or \f[C]http://HOST\f[] if PORT is 80).
80).
.PP .PP
With \f[C]\-\-file\-url\f[] you can set a different base url for static With \f[C]\-\-file\-url\f[] you can set a different base url for static
files, eg for better caching or cookie\-less serving on high performance files, eg for better caching or cookie\-less serving on high performance
@ -91,7 +90,7 @@ Note: if invoking hledger\-web as a hledger subcommand, write
\f[C]\-\-\f[] before options as shown above. \f[C]\-\-\f[] before options as shown above.
.TP .TP
.B \f[C]\-\-serve\f[] .B \f[C]\-\-serve\f[]
serve and log requests, don\[aq]t browse or auto\-exit serve and log requests, don't browse or auto\-exit
.RS .RS
.RE .RE
.TP .TP
@ -286,8 +285,7 @@ perhaps \f[C]C:/Users/USER/.hledger.journal\f[]).
The need to precede options with \f[C]\-\-\f[] when invoked from hledger The need to precede options with \f[C]\-\-\f[] when invoked from hledger
is awkward. is awkward.
.PP .PP
\f[C]\-f\-\f[] doesn\[aq]t work (hledger\-web can\[aq]t read from \f[C]\-f\-\f[] doesn't work (hledger\-web can't read from stdin).
stdin).
.PP .PP
Query arguments and some hledger options are ignored. Query arguments and some hledger options are ignored.
.PP .PP

View File

@ -1,7 +1,7 @@
This is hledger-web.1.info, produced by makeinfo version 6.0 from stdin. This is hledger-web.info, produced by makeinfo version 6.0 from stdin.
 
File: hledger-web.1.info, Node: Top, Next: OPTIONS, Up: (dir) File: hledger-web.info, Node: Top, Next: OPTIONS, Up: (dir)
hledger-web(1) hledger-web 1.4 hledger-web(1) hledger-web 1.4
****************************** ******************************
@ -68,7 +68,7 @@ hledger-web will show an error until the file has been fixed.
* OPTIONS:: * OPTIONS::
 
File: hledger-web.1.info, Node: OPTIONS, Prev: Top, Up: Top File: hledger-web.info, Node: OPTIONS, Prev: Top, Up: Top
1 OPTIONS 1 OPTIONS
********* *********
@ -200,8 +200,8 @@ this, insert a '--' argument before.)
 
Tag Table: Tag Table:
Node: Top74 Node: Top72
Node: OPTIONS3156 Node: OPTIONS3152
Ref: #options3243 Ref: #options3237
 
End Tag Table End Tag Table

View File

@ -366,7 +366,7 @@ enclose problematic args in single quotes
.IP \[bu] 2 .IP \[bu] 2
if needed, also add a backslash to escape regexp metacharacters if needed, also add a backslash to escape regexp metacharacters
.PP .PP
If you\[aq]re really stumped, add \f[C]\-\-debug=2\f[] to troubleshoot. If you're really stumped, add \f[C]\-\-debug=2\f[] to troubleshoot.
.SS Input files .SS Input files
.PP .PP
hledger reads transactions from a data file (and the add command writes hledger reads transactions from a data file (and the add command writes
@ -399,10 +399,11 @@ $\ cat\ some.journal\ |\ hledger\ \-f\-
\f[] \f[]
.fi .fi
.PP .PP
Usually the data file is in hledger\[aq]s journal format, but it can Usually the data file is in hledger's journal format, but it can also be
also be one of several other formats, listed below. one of several other formats, listed below.
hledger detects the format automatically based on the file extension, or hledger detects the format automatically based on the file extension, or
if that is not recognised, by trying each built\-in "reader" in turn: if that is not recognised, by trying each built\-in \[lq]reader\[rq] in
turn:
.PP .PP
.TS .TS
tab(@); tab(@);
@ -418,7 +419,7 @@ _
T{ T{
\f[C]journal\f[] \f[C]journal\f[]
T}@T{ T}@T{
hledger\[aq]s journal format, also some Ledger journals hledger's journal format, also some Ledger journals
T}@T{ T}@T{
\f[C]\&.journal\f[] \f[C]\&.j\f[] \f[C]\&.hledger\f[] \f[C]\&.ledger\f[] \f[C]\&.journal\f[] \f[C]\&.j\f[] \f[C]\&.hledger\f[] \f[C]\&.ledger\f[]
T} T}
@ -446,8 +447,8 @@ T}
.TE .TE
.PP .PP
If needed (eg to ensure correct error messages when a file has the If needed (eg to ensure correct error messages when a file has the
"wrong" extension), you can force a specific reader/format by prepending \[lq]wrong\[rq] extension), you can force a specific reader/format by
it to the file path with a colon. prepending it to the file path with a colon.
Examples: Examples:
.IP .IP
.nf .nf
@ -469,11 +470,10 @@ If you need those, either use the include directive, or concatenate the
files, eg: \f[C]cat\ a.journal\ b.journal\ |\ hledger\ \-f\-\ CMD\f[]. files, eg: \f[C]cat\ a.journal\ b.journal\ |\ hledger\ \-f\-\ CMD\f[].
.SS Smart dates .SS Smart dates
.PP .PP
hledger\[aq]s user interfaces accept a flexible "smart date" syntax hledger's user interfaces accept a flexible \[lq]smart date\[rq] syntax
(unlike dates in the journal file). (unlike dates in the journal file).
Smart dates allow some english words, can be relative to today\[aq]s Smart dates allow some english words, can be relative to today's date,
date, and can have less\-significant date parts omitted (defaulting to and can have less\-significant date parts omitted (defaulting to 1).
1).
.PP .PP
Examples: Examples:
.PP .PP
@ -551,8 +551,7 @@ l l.
T{ T{
\f[C]\-b\ 2016/3/17\f[] \f[C]\-b\ 2016/3/17\f[]
T}@T{ T}@T{
begin on St. begin on St.\ Patrick's day 2016
Patrick\[aq]s day 2016
T} T}
T{ T{
\f[C]\-e\ 12/1\f[] \f[C]\-e\ 12/1\f[]
@ -603,16 +602,15 @@ The \f[C]\-p/\-\-period\f[] option accepts period expressions, a
shorthand way of expressing a start date, end date, and/or report shorthand way of expressing a start date, end date, and/or report
interval all at once. interval all at once.
.PP .PP
Here\[aq]s a basic period expression specifying the first quarter of Here's a basic period expression specifying the first quarter of 2009.
2009.
Note, hledger always treats start dates as inclusive and end dates as Note, hledger always treats start dates as inclusive and end dates as
exclusive: exclusive:
.PP .PP
\f[C]\-p\ "from\ 2009/1/1\ to\ 2009/4/1"\f[] \f[C]\-p\ "from\ 2009/1/1\ to\ 2009/4/1"\f[]
.PP .PP
Keywords like "from" and "to" are optional, and so are the spaces, as Keywords like \[lq]from\[rq] and \[lq]to\[rq] are optional, and so are
long as you don\[aq]t run two dates together. the spaces, as long as you don't run two dates together.
"to" can also be written as "\-". \[lq]to\[rq] can also be written as \[lq]\-\[rq].
These are equivalent to the above: These are equivalent to the above:
.PP .PP
.TS .TS
@ -674,8 +672,8 @@ everything before january 1, 2009
T} T}
.TE .TE
.PP .PP
A single date with no "from" or "to" defines both the start and end date A single date with no \[lq]from\[rq] or \[lq]to\[rq] defines both the
like so: start and end date like so:
.PP .PP
.TS .TS
tab(@); tab(@);
@ -683,17 +681,17 @@ l l.
T{ T{
\f[C]\-p\ "2009"\f[] \f[C]\-p\ "2009"\f[]
T}@T{ T}@T{
the year 2009; equivalent to "2009/1/1 to 2010/1/1" the year 2009; equivalent to \[lq]2009/1/1 to 2010/1/1\[rq]
T} T}
T{ T{
\f[C]\-p\ "2009/1"\f[] \f[C]\-p\ "2009/1"\f[]
T}@T{ T}@T{
the month of jan; equivalent to "2009/1/1 to 2009/2/1" the month of jan; equivalent to \[lq]2009/1/1 to 2009/2/1\[rq]
T} T}
T{ T{
\f[C]\-p\ "2009/1/1"\f[] \f[C]\-p\ "2009/1/1"\f[]
T}@T{ T}@T{
just that day; equivalent to "2009/1/1 to 2009/1/2" just that day; equivalent to \[lq]2009/1/1 to 2009/1/2\[rq]
T} T}
.TE .TE
.PP .PP
@ -728,9 +726,9 @@ period, even if associated period expression specifies different
explicit start and end date. explicit start and end date.
.SS For example: .SS For example:
.PP .PP
\f[C]\-p\ "weekly\ from\ 2009/1/1\ to\ 2009/4/1"\f[] \-\- starts on \f[C]\-p\ "weekly\ from\ 2009/1/1\ to\ 2009/4/1"\f[] \[en] starts on
2008/12/29, closest preceeding Monday 2008/12/29, closest preceeding Monday
\f[C]\-p\ "monthly\ in\ 2008/11/25"\f[] \-\- starts on 2018/11/01 \f[C]\-p\ "monthly\ in\ 2008/11/25"\f[] \[en] starts on 2018/11/01
.PD 0 .PD 0
.P .P
.PD .PD
@ -738,7 +736,7 @@ explicit start and end date.
starts on 2009/04/01, ends on 2009/06/30, which are first and last days starts on 2009/04/01, ends on 2009/06/30, which are first and last days
of Q2 2009 \f[C]\-p\ "yearly\ from\ 2009\-12\-29"\f[] \- starts on of Q2 2009 \f[C]\-p\ "yearly\ from\ 2009\-12\-29"\f[] \- starts on
2009/01/01, first day of 2009 2009/01/01, first day of 2009
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- \[em]\[em]\[em]\[em]\[em]\[em]\[em]\[em]\[em]\[em]\[em]\[em]\[em]\[em]
.PP .PP
The following more complex report intervals are also supported: The following more complex report intervals are also supported:
\f[C]biweekly\f[], \f[C]bimonthly\f[], \f[C]biweekly\f[], \f[C]bimonthly\f[],
@ -754,15 +752,16 @@ Examples:
tab(@); tab(@);
l. l.
T{ T{
\f[C]\-p\ "bimonthly\ from\ 2008"\f[] \-\- periods will have boundaries \f[C]\-p\ "bimonthly\ from\ 2008"\f[] \[en] periods will have boundaries
on 2008/01/01, 2008/03/01, ... on 2008/01/01, 2008/03/01, \&...
T} T}
T{ T{
\f[C]\-p\ "every\ 2\ weeks"\f[] \-\- starts on closest preceeding Monday \f[C]\-p\ "every\ 2\ weeks"\f[] \[en] starts on closest preceeding
Monday
T} T}
T{ T{
\f[C]\-p\ "every\ 5\ month\ from\ 2009/03"\f[] \-\- periods will have \f[C]\-p\ "every\ 5\ month\ from\ 2009/03"\f[] \[en] periods will have
boundaries on 2009/03/01, 2009/08/01, ... boundaries on 2009/03/01, 2009/08/01, \&...
T} T}
.TE .TE
.PP .PP
@ -781,29 +780,29 @@ Examples:
tab(@); tab(@);
l. l.
T{ T{
\f[C]\-p\ "every\ 2nd\ day\ of\ week"\f[] \-\- periods will go from Tue \f[C]\-p\ "every\ 2nd\ day\ of\ week"\f[] \[en] periods will go from Tue
to Tue to Tue
T} T}
T{ T{
\f[C]\-p\ "every\ Tue"\f[] \-\- same \f[C]\-p\ "every\ Tue"\f[] \[en] same
T} T}
T{ T{
\f[C]\-p\ "every\ 15th\ day"\f[] \-\- period boundaries will be on 15th \f[C]\-p\ "every\ 15th\ day"\f[] \[en] period boundaries will be on 15th
of each month of each month
T} T}
T{ T{
\f[C]\-p\ "every\ 2nd\ Monday"\f[] \-\- period boundaries will be on \f[C]\-p\ "every\ 2nd\ Monday"\f[] \[en] period boundaries will be on
second Monday of each month second Monday of each month
T} T}
T{ T{
\f[C]\-p\ "every\ 11/05"\f[] \-\- yearly periods with boundaries on 5th \f[C]\-p\ "every\ 11/05"\f[] \[en] yearly periods with boundaries on 5th
of Nov of Nov
T} T}
T{ T{
\f[C]\-p\ "every\ 5th\ Nov"\f[] \-\- same \f[C]\-p\ "every\ 5th\ Nov"\f[] \[en] same
T} T}
T{ T{
\f[C]\-p\ "every\ Nov\ 5th"\f[] \-\- same \f[C]\-p\ "every\ Nov\ 5th"\f[] \[en] same
T} T}
.TE .TE
.PP .PP
@ -838,9 +837,9 @@ will be displayed hierarchically in reports.
.PP .PP
\f[C]\-\-pivot\f[] is a general option affecting all reports; you can \f[C]\-\-pivot\f[] is a general option affecting all reports; you can
think of hledger transforming the journal before any other processing, think of hledger transforming the journal before any other processing,
replacing every posting\[aq]s account name with the value of the replacing every posting's account name with the value of the specified
specified field on that posting, inheriting it from the transaction or field on that posting, inheriting it from the transaction or using a
using a blank value if it\[aq]s not present. blank value if it's not present.
.PP .PP
An example: An example:
.IP .IP
@ -888,8 +887,8 @@ $\ hledger\ balance\ \-\-pivot\ member\ tag:member=.
\f[] \f[]
.fi .fi
.PP .PP
Another way (the acct: query matches against the pivoted "account Another way (the acct: query matches against the pivoted \[lq]account
name"): name\[rq]):
.IP .IP
.nf .nf
\f[C] \f[C]
@ -909,9 +908,9 @@ The \f[C]\-V/\-\-value\f[] flag converts the reported amounts to their
market value on the report end date, using the most recent applicable market value on the report end date, using the most recent applicable
market prices, when known. market prices, when known.
Specifically, when there is a market price (P directive) for the Specifically, when there is a market price (P directive) for the
amount\[aq]s commodity, dated on or before the report end date (see amount's commodity, dated on or before the report end date (see hledger
hledger \-> Report start & end date), the amount will be converted to \-> Report start & end date), the amount will be converted to the
the price\[aq]s commodity. price's commodity.
If multiple applicable prices are defined, the latest\-dated one is used If multiple applicable prices are defined, the latest\-dated one is used
(and if dates are equal, the one last parsed). (and if dates are equal, the one last parsed).
.PP .PP
@ -960,7 +959,7 @@ $\ hledger\ \-f\ t.j\ bal\ euros\ \-V\ \-e\ 2016/12/21
\f[] \f[]
.fi .fi
.PP .PP
Currently, hledger\[aq]s \-V only uses market prices recorded with P Currently, hledger's \-V only uses market prices recorded with P
directives, not transaction prices (unlike Ledger). directives, not transaction prices (unlike Ledger).
.PP .PP
Using \-B and \-V together is allowed. Using \-B and \-V together is allowed.
@ -978,7 +977,7 @@ account alias directives and options:
\f[C]alias\ /REGEX/\ =\ REPLACEMENT\f[], \f[C]alias\ /REGEX/\ =\ REPLACEMENT\f[],
\f[C]\-\-alias\ /REGEX/=REPLACEMENT\f[] \f[C]\-\-alias\ /REGEX/=REPLACEMENT\f[]
.PP .PP
hledger\[aq]s regular expressions come from the regex\-tdfa library. hledger's regular expressions come from the regex\-tdfa library.
In general they: In general they:
.IP \[bu] 2 .IP \[bu] 2
are case insensitive are case insensitive
@ -1010,8 +1009,8 @@ meaning to the shell and so must be escaped at least once more.
See Special characters. See Special characters.
.SH QUERIES .SH QUERIES
.PP .PP
One of hledger\[aq]s strengths is being able to quickly report on One of hledger's strengths is being able to quickly report on precise
precise subsets of your data. subsets of your data.
Most commands accept an optional query expression, written as arguments Most commands accept an optional query expression, written as arguments
after the command name, to filter the data by date, account name or after the command name, to filter the data by date, account name or
other criteria. other criteria.
@ -1042,21 +1041,21 @@ have no postings matching any of the negative account terms AND
match all the other terms. match all the other terms.
.PP .PP
The following kinds of search terms can be used. The following kinds of search terms can be used.
Remember these can also be prefixed with \f[B]\f[C]not:\f[]\f[], eg to Remember these can also be prefixed with \f[B]\f[BC]not:\f[B]\f[], eg to
exclude a particular subaccount. exclude a particular subaccount.
.TP .TP
.B \f[B]\f[C]REGEX\f[]\f[] .B \f[B]\f[BC]REGEX\f[B]\f[]
match account names by this regular expression. match account names by this regular expression.
(No prefix is equivalent to \f[C]acct:\f[]). (No prefix is equivalent to \f[C]acct:\f[]).
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]acct:REGEX\f[]\f[] .B \f[B]\f[BC]acct:REGEX\f[B]\f[]
same as above same as above
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]amt:N,\ amt:<N,\ amt:<=N,\ amt:>N,\ amt:>=N\f[]\f[] .B \f[B]\f[BC]amt:N,\ amt:<N,\ amt:<=N,\ amt:>N,\ amt:>=N\f[B]\f[]
match postings with a single\-commodity amount that is equal to, less match postings with a single\-commodity amount that is equal to, less
than, or greater than N. than, or greater than N.
(Multi\-commodity amounts are not tested, and will always match.) The (Multi\-commodity amounts are not tested, and will always match.) The
@ -1066,12 +1065,12 @@ Otherwise, the absolute magnitudes are compared, ignoring sign.
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]code:REGEX\f[]\f[] .B \f[B]\f[BC]code:REGEX\f[B]\f[]
match by transaction code (eg check number) match by transaction code (eg check number)
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]cur:REGEX\f[]\f[] .B \f[B]\f[BC]cur:REGEX\f[B]\f[]
match postings or transactions including any amounts whose match postings or transactions including any amounts whose
currency/commodity symbol is fully matched by REGEX. currency/commodity symbol is fully matched by REGEX.
(For a partial match, use \f[C]\&.*REGEX.*\f[]). (For a partial match, use \f[C]\&.*REGEX.*\f[]).
@ -1084,12 +1083,12 @@ quoting to hide it from the shell, so eg do:
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]desc:REGEX\f[]\f[] .B \f[B]\f[BC]desc:REGEX\f[B]\f[]
match transaction descriptions. match transaction descriptions.
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]date:PERIODEXPR\f[]\f[] .B \f[B]\f[BC]date:PERIODEXPR\f[B]\f[]
match dates within the specified period. match dates within the specified period.
PERIODEXPR is a period expression (with no report interval). PERIODEXPR is a period expression (with no report interval).
Examples: \f[C]date:2016\f[], \f[C]date:thismonth\f[], Examples: \f[C]date:2016\f[], \f[C]date:thismonth\f[],
@ -1099,39 +1098,39 @@ secondary dates instead.
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]date2:PERIODEXPR\f[]\f[] .B \f[B]\f[BC]date2:PERIODEXPR\f[B]\f[]
match secondary dates within the specified period. match secondary dates within the specified period.
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]depth:N\f[]\f[] .B \f[B]\f[BC]depth:N\f[B]\f[]
match (or display, depending on command) accounts at or above this depth match (or display, depending on command) accounts at or above this depth
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]note:REGEX\f[]\f[] .B \f[B]\f[BC]note:REGEX\f[B]\f[]
match transaction notes (part of description right of \f[C]|\f[], or match transaction notes (part of description right of \f[C]|\f[], or
whole description when there\[aq]s no \f[C]|\f[]) whole description when there's no \f[C]|\f[])
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]payee:REGEX\f[]\f[] .B \f[B]\f[BC]payee:REGEX\f[B]\f[]
match transaction payee/payer names (part of description left of match transaction payee/payer names (part of description left of
\f[C]|\f[], or whole description when there\[aq]s no \f[C]|\f[]) \f[C]|\f[], or whole description when there's no \f[C]|\f[])
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]real:,\ real:0\f[]\f[] .B \f[B]\f[BC]real:,\ real:0\f[B]\f[]
match real or virtual postings respectively match real or virtual postings respectively
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]status:,\ status:!,\ status:*\f[]\f[] .B \f[B]\f[BC]status:,\ status:!,\ status:*\f[B]\f[]
match unmarked, pending, or cleared transactions respectively match unmarked, pending, or cleared transactions respectively
.RS .RS
.RE .RE
.TP .TP
.B \f[B]\f[C]tag:REGEX[=REGEX]\f[]\f[] .B \f[B]\f[BC]tag:REGEX[=REGEX]\f[B]\f[]
match by tag name, and optionally also by tag value. match by tag name, and optionally also by tag value.
Note a tag: query is considered to match a transaction if it matches any Note a tag: query is considered to match a transaction if it matches any
of the postings. of the postings.
@ -1143,7 +1142,7 @@ transaction.
The following special search term is used automatically in hledger\-web, The following special search term is used automatically in hledger\-web,
only: only:
.TP .TP
.B \f[B]\f[C]inacct:ACCTNAME\f[]\f[] .B \f[B]\f[BC]inacct:ACCTNAME\f[B]\f[]
tells hledger\-web to show the transaction register for this account. tells hledger\-web to show the transaction register for this account.
Can be filtered further with \f[C]acct\f[] etc. Can be filtered further with \f[C]acct\f[] etc.
.RS .RS
@ -1274,7 +1273,7 @@ $\ hledger\ activity\ \-\-quarterly
Prompt for transactions and add them to the journal. Prompt for transactions and add them to the journal.
.TP .TP
.B \f[C]\-\-no\-new\-accounts\f[] .B \f[C]\-\-no\-new\-accounts\f[]
don\[aq]t allow creating new accounts; helps prevent typos when entering don't allow creating new accounts; helps prevent typos when entering
account names account names
.RS .RS
.RE .RE
@ -1393,7 +1392,7 @@ show a row total column (in multicolumn mode)
.RE .RE
.TP .TP
.B \f[C]\-N\ \-\-no\-total\f[] .B \f[C]\-N\ \-\-no\-total\f[]
don\[aq]t show the final total row don't show the final total row
.RS .RS
.RE .RE
.TP .TP
@ -1403,7 +1402,7 @@ omit N leading account name parts (in flat mode)
.RE .RE
.TP .TP
.B \f[C]\-\-no\-elide\f[] .B \f[C]\-\-no\-elide\f[]
don\[aq]t squash boring parent accounts (in tree mode) don't squash boring parent accounts (in tree mode)
.RS .RS
.RE .RE
.TP .TP
@ -1436,7 +1435,7 @@ instead of account name (in flat mode)
.RE .RE
.PP .PP
The balance command displays accounts and balances. The balance command displays accounts and balances.
It is hledger\[aq]s most featureful and versatile command. It is hledger's most featureful and versatile command.
.IP .IP
.nf .nf
\f[C] \f[C]
@ -1457,21 +1456,21 @@ $\ hledger\ balance
.fi .fi
.PP .PP
More precisely, the balance command shows the \f[I]change\f[] to each More precisely, the balance command shows the \f[I]change\f[] to each
account\[aq]s balance caused by all (matched) postings. account's balance caused by all (matched) postings.
In the common case where you do not filter by date and your journal sets In the common case where you do not filter by date and your journal sets
the correct opening balances, this is the same as the account\[aq]s the correct opening balances, this is the same as the account's ending
ending balance. balance.
.PP .PP
By default, accounts are displayed hierarchically, with subaccounts By default, accounts are displayed hierarchically, with subaccounts
indented below their parent. indented below their parent.
"Boring" accounts, which contain a single interesting subaccount and no \[lq]Boring\[rq] accounts, which contain a single interesting subaccount
balance of their own, are elided into the following line for more and no balance of their own, are elided into the following line for more
compact output. compact output.
(Use \f[C]\-\-no\-elide\f[] to prevent this. (Use \f[C]\-\-no\-elide\f[] to prevent this.
Eliding of boring accounts is not yet supported in multicolumn reports.) Eliding of boring accounts is not yet supported in multicolumn reports.)
.PP .PP
Each account\[aq]s balance is the "inclusive" balance \- it includes the Each account's balance is the \[lq]inclusive\[rq] balance \- it includes
balances of any subaccounts. the balances of any subaccounts.
.PP .PP
Accounts which have zero balance (and no non\-zero subaccounts) are Accounts which have zero balance (and no non\-zero subaccounts) are
omitted. omitted.
@ -1492,8 +1491,8 @@ $\ hledger\ balance\ \-p\ 2008/6\ expenses\ \-\-no\-total
.PP .PP
To see a flat list of full account names instead of the default To see a flat list of full account names instead of the default
hierarchical display, use \f[C]\-\-flat\f[]. hierarchical display, use \f[C]\-\-flat\f[].
In this mode, accounts (unless depth\-clipped) show their "exclusive" In this mode, accounts (unless depth\-clipped) show their
balance, excluding any subaccount balances. \[lq]exclusive\[rq] balance, excluding any subaccount balances.
In this mode, you can also use \f[C]\-\-drop\ N\f[] to omit the first In this mode, you can also use \f[C]\-\-drop\ N\f[] to omit the first
few account name components. few account name components.
.IP .IP
@ -1529,7 +1528,7 @@ There are three types of multi\-column balance report, showing different
information: information:
.IP "1." 3 .IP "1." 3
By default: each column shows the sum of postings in that period, ie the By default: each column shows the sum of postings in that period, ie the
account\[aq]s change of balance in that period. account's change of balance in that period.
This is useful eg for a monthly income statement: This is useful eg for a monthly income statement:
.RS 4 .RS 4
.IP .IP
@ -1603,8 +1602,8 @@ to see the hierarchy, use \f[C]\-\-tree\f[].
With a reporting interval (like \f[C]\-\-quarterly\f[] above), the With a reporting interval (like \f[C]\-\-quarterly\f[] above), the
report start/end dates will be adjusted if necessary so that they report start/end dates will be adjusted if necessary so that they
encompass the displayed report periods. encompass the displayed report periods.
This is so that the first and last periods will be "full" and comparable This is so that the first and last periods will be \[lq]full\[rq] and
to the others. comparable to the others.
.PP .PP
The \f[C]\-E/\-\-empty\f[] flag does two things in multicolumn balance The \f[C]\-E/\-\-empty\f[] flag does two things in multicolumn balance
reports: first, the report will show all columns within the specified reports: first, the report will show all columns within the specified
@ -1621,7 +1620,7 @@ the total for each row.
The \f[C]\-A/\-\-average\f[] flag adds a column showing the average The \f[C]\-A/\-\-average\f[] flag adds a column showing the average
value in each row. value in each row.
.PP .PP
Here\[aq]s an example of all three: Here's an example of all three:
.IP .IP
.nf .nf
\f[C] \f[C]
@ -1678,13 +1677,12 @@ MAX truncates at this width (optional)
FIELDNAME must be enclosed in parentheses, and can be one of: FIELDNAME must be enclosed in parentheses, and can be one of:
.RS 2 .RS 2
.IP \[bu] 2 .IP \[bu] 2
\f[C]depth_spacer\f[] \- a number of spaces equal to the account\[aq]s \f[C]depth_spacer\f[] \- a number of spaces equal to the account's
depth, or if MIN is specified, MIN * depth spaces. depth, or if MIN is specified, MIN * depth spaces.
.IP \[bu] 2 .IP \[bu] 2
\f[C]account\f[] \- the account\[aq]s name \f[C]account\f[] \- the account's name
.IP \[bu] 2 .IP \[bu] 2
\f[C]total\f[] \- the account\[aq]s balance/posted total, right \f[C]total\f[] \- the account's balance/posted total, right justified
justified
.RE .RE
.PP .PP
Also, FMT can begin with an optional prefix to control how Also, FMT can begin with an optional prefix to control how
@ -1703,10 +1701,10 @@ Eg in one\-line mode, \f[C]%(depth_spacer)\f[] has no effect, instead
.PP .PP
Some example formats: Some example formats:
.IP \[bu] 2 .IP \[bu] 2
\f[C]%(total)\f[] \- the account\[aq]s total \f[C]%(total)\f[] \- the account's total
.IP \[bu] 2 .IP \[bu] 2
\f[C]%\-20.20(account)\f[] \- the account\[aq]s name, left justified, \f[C]%\-20.20(account)\f[] \- the account's name, left justified, padded
padded to 20 characters and clipped at 20 characters to 20 characters and clipped at 20 characters
.IP \[bu] 2 .IP \[bu] 2
\f[C]%,%\-50(account)\ \ %25(total)\f[] \- account name padded to 50 \f[C]%,%\-50(account)\ \ %25(total)\f[] \- account name padded to 50
characters, total padded to 20 characters, with multiple commodities characters, total padded to 20 characters, with multiple commodities
@ -1794,7 +1792,7 @@ show a row total column (in multicolumn mode)
.RE .RE
.TP .TP
.B \f[C]\-N\ \-\-no\-total\f[] .B \f[C]\-N\ \-\-no\-total\f[]
don\[aq]t show the final total row don't show the final total row
.RS .RS
.RE .RE
.TP .TP
@ -1804,7 +1802,7 @@ omit N leading account name parts (in flat mode)
.RE .RE
.TP .TP
.B \f[C]\-\-no\-elide\f[] .B \f[C]\-\-no\-elide\f[]
don\[aq]t squash boring parent accounts (in tree mode) don't squash boring parent accounts (in tree mode)
.RS .RS
.RE .RE
.TP .TP
@ -1938,7 +1936,7 @@ show a row total column (in multicolumn mode)
.RE .RE
.TP .TP
.B \f[C]\-N\ \-\-no\-total\f[] .B \f[C]\-N\ \-\-no\-total\f[]
don\[aq]t show the final total row (in simple reports) don't show the final total row (in simple reports)
.RS .RS
.RE .RE
.TP .TP
@ -1948,7 +1946,7 @@ omit N leading account name parts (in flat mode)
.RE .RE
.TP .TP
.B \f[C]\-\-no\-elide\f[] .B \f[C]\-\-no\-elide\f[]
don\[aq]t squash boring parent accounts (in tree mode) don't squash boring parent accounts (in tree mode)
.RS .RS
.RE .RE
.TP .TP
@ -1963,7 +1961,7 @@ sort by amount instead of account name
.RE .RE
.PP .PP
This command displays a simple cashflow statement It shows the change in This command displays a simple cashflow statement It shows the change in
all "cash" (ie, liquid assets) accounts for the period. all \[lq]cash\[rq] (ie, liquid assets) accounts for the period.
It currently assumes that cash accounts are under a top\-level account It currently assumes that cash accounts are under a top\-level account
named \f[C]asset\f[] and do not contain \f[C]receivable\f[], named \f[C]asset\f[] and do not contain \f[C]receivable\f[],
\f[C]:A/R\f[] or \f[C]:fixed\f[]. \f[C]:A/R\f[] or \f[C]:fixed\f[].
@ -1994,7 +1992,7 @@ multicolumn balance reports you can alter the report mode with
.SS check\-dates .SS check\-dates
.PP .PP
Check that transactions are sorted by increasing date. Check that transactions are sorted by increasing date.
With a query, only matched transactions\[aq] dates are checked. With a query, only matched transactions' dates are checked.
.SS check\-dupes .SS check\-dupes
.PP .PP
Report account names having the same leaf but different prefixes. Report account names having the same leaf but different prefixes.
@ -2059,13 +2057,13 @@ just show the transactions to be imported
The input files are specified as arguments \- no need to write \-f The input files are specified as arguments \- no need to write \-f
before each one. before each one.
So eg to add new transactions from all CSV files to the main journal, So eg to add new transactions from all CSV files to the main journal,
it\[aq]s just: \f[C]hledger\ import\ *.csv\f[] it's just: \f[C]hledger\ import\ *.csv\f[]
.PP .PP
New transactions are detected in the same way as print \-\-new: by New transactions are detected in the same way as print \[en]new: by
assuming transactions are always added to the input files in increasing assuming transactions are always added to the input files in increasing
date order, and by saving \f[C]\&.latest.FILE\f[] state files. date order, and by saving \f[C]\&.latest.FILE\f[] state files.
.PP .PP
The \-\-dry\-run output is in journal format, so you can filter it, eg The \[en]dry\-run output is in journal format, so you can filter it, eg
to see only uncategorised transactions: to see only uncategorised transactions:
.IP .IP
.nf .nf
@ -2118,7 +2116,7 @@ show a row total column (in multicolumn mode)
.RE .RE
.TP .TP
.B \f[C]\-N\ \-\-no\-total\f[] .B \f[C]\-N\ \-\-no\-total\f[]
don\[aq]t show the final total row don't show the final total row
.RS .RS
.RE .RE
.TP .TP
@ -2128,7 +2126,7 @@ omit N leading account name parts (in flat mode)
.RE .RE
.TP .TP
.B \f[C]\-\-no\-elide\f[] .B \f[C]\-\-no\-elide\f[]
don\[aq]t squash boring parent accounts (in tree mode) don't squash boring parent accounts (in tree mode)
.RS .RS
.RE .RE
.TP .TP
@ -2241,11 +2239,11 @@ $\ hledger\ print
.PP .PP
The print command displays full journal entries (transactions) from the The print command displays full journal entries (transactions) from the
journal file in date order, tidily formatted. journal file in date order, tidily formatted.
print\[aq]s output is always a valid hledger journal. print's output is always a valid hledger journal.
It preserves all transaction information, but it does not preserve It preserves all transaction information, but it does not preserve
directives or inter\-transaction comments directives or inter\-transaction comments
.PP .PP
Normally, the journal entry\[aq]s explicit or implicit amount style is Normally, the journal entry's explicit or implicit amount style is
preserved. preserved.
Ie when an amount is omitted in the journal, it will be omitted in the Ie when an amount is omitted in the journal, it will be omitted in the
output. output.
@ -2289,7 +2287,7 @@ reordered.
See also the import command. See also the import command.
.PP .PP
The print command also supports output destination and CSV output. The print command also supports output destination and CSV output.
Here\[aq]s an example of print\[aq]s CSV output: Here's an example of print's CSV output:
.IP .IP
.nf .nf
\f[C] \f[C]
@ -2309,19 +2307,19 @@ $\ hledger\ print\ \-Ocsv
\f[] \f[]
.fi .fi
.IP \[bu] 2 .IP \[bu] 2
There is one CSV record per posting, with the parent transaction\[aq]s There is one CSV record per posting, with the parent transaction's
fields repeated. fields repeated.
.IP \[bu] 2 .IP \[bu] 2
The "txnidx" (transaction index) field shows which postings belong to The \[lq]txnidx\[rq] (transaction index) field shows which postings
the same transaction. belong to the same transaction.
(This number might change if transactions are reordered within the file, (This number might change if transactions are reordered within the file,
files are parsed/included in a different order, etc.) files are parsed/included in a different order, etc.)
.IP \[bu] 2 .IP \[bu] 2
The amount is separated into "commodity" (the symbol) and "amount" The amount is separated into \[lq]commodity\[rq] (the symbol) and
(numeric quantity) fields. \[lq]amount\[rq] (numeric quantity) fields.
.IP \[bu] 2 .IP \[bu] 2
The numeric amount is repeated in either the "credit" or "debit" column, The numeric amount is repeated in either the \[lq]credit\[rq] or
for convenience. \[lq]debit\[rq] column, for convenience.
(Those names are not accurate in the accounting sense; it just puts (Those names are not accurate in the accounting sense; it just puts
negative amounts under credit and zero or greater amounts under debit.) negative amounts under credit and zero or greater amounts under debit.)
.SS print\-unique .SS print\-unique
@ -2345,12 +2343,12 @@ start date)
.TP .TP
.B \f[C]\-A\ \-\-average\f[] .B \f[C]\-A\ \-\-average\f[]
show running average of posting amounts instead of total (implies show running average of posting amounts instead of total (implies
\-\-empty) \[en]empty)
.RS .RS
.RE .RE
.TP .TP
.B \f[C]\-r\ \-\-related\f[] .B \f[C]\-r\ \-\-related\f[]
show postings\[aq] siblings instead show postings' siblings instead
.RS .RS
.RE .RE
.TP .TP
@ -2375,7 +2373,7 @@ A file extension matching one of the above formats selects that format.
The register command displays postings, one per line, and their running The register command displays postings, one per line, and their running
total. total.
This is typically used with a query selecting a particular account, to This is typically used with a query selecting a particular account, to
see that account\[aq]s activity: see that account's activity:
.IP .IP
.nf .nf
\f[C] \f[C]
@ -2448,7 +2446,7 @@ $\ hledger\ register\ \-\-monthly\ income\ \-E
\f[] \f[]
.fi .fi
.PP .PP
Often, you\[aq]ll want to see just one line per interval. Often, you'll want to see just one line per interval.
The \f[C]\-\-depth\f[] option helps with this, causing subaccounts to be The \f[C]\-\-depth\f[] option helps with this, causing subaccounts to be
aggregated: aggregated:
.IP .IP
@ -2476,8 +2474,8 @@ variable (not a bash shell variable) or by using the
The description and account columns normally share the space equally The description and account columns normally share the space equally
(about half of (width \- 40) each). (about half of (width \- 40) each).
You can adjust this by adding a description width as part of You can adjust this by adding a description width as part of
\-\-width\[aq]s argument, comma\-separated: \f[C]\-\-width\ W,D\f[] . \[en]width's argument, comma\-separated: \f[C]\-\-width\ W,D\f[] .
Here\[aq]s a diagram: Here's a diagram:
.IP .IP
.nf .nf
\f[C] \f[C]
@ -2561,12 +2559,12 @@ Cases:\ 74\ \ Tried:\ 74\ \ Errors:\ 0\ \ Failures:\ 0
\f[] \f[]
.fi .fi
.PP .PP
This command runs hledger\[aq]s built\-in unit tests and displays a This command runs hledger's built\-in unit tests and displays a quick
quick report. report.
With a regular expression argument, it selects only tests with matching With a regular expression argument, it selects only tests with matching
names. names.
It\[aq]s mainly used in development, but it\[aq]s also nice to be able It's mainly used in development, but it's also nice to be able to check
to check your hledger executable for smoke at any time. your hledger executable for smoke at any time.
.SH ADD\-ON COMMANDS .SH ADD\-ON COMMANDS
.PP .PP
hledger also searches for external add\-on commands, and will include hledger also searches for external add\-on commands, and will include
@ -2580,8 +2578,8 @@ Add\-ons can be invoked like any hledger command, but there are a few
things to be aware of. things to be aware of.
Eg if the \f[C]hledger\-web\f[] add\-on is installed, Eg if the \f[C]hledger\-web\f[] add\-on is installed,
.IP \[bu] 2 .IP \[bu] 2
\f[C]hledger\ \-h\ web\f[] shows hledger\[aq]s help, while \f[C]hledger\ \-h\ web\f[] shows hledger's help, while
\f[C]hledger\ web\ \-h\f[] shows hledger\-web\[aq]s help. \f[C]hledger\ web\ \-h\f[] shows hledger\-web's help.
.IP \[bu] 2 .IP \[bu] 2
Flags specific to the add\-on must have a preceding \f[C]\-\-\f[] to Flags specific to the add\-on must have a preceding \f[C]\-\-\f[] to
hide them from hledger. hide them from hledger.
@ -2617,8 +2615,8 @@ These are maintained separately, and usually updated shortly after a
hledger release. hledger release.
.SS diff .SS diff
.PP .PP
hledger\-diff shows differences in an account\[aq]s transactions between hledger\-diff shows differences in an account's transactions between one
one journal file and another. journal file and another.
.SS iadd .SS iadd
.PP .PP
hledger\-iadd is a curses\-style, more interactive replacement for the hledger\-iadd is a curses\-style, more interactive replacement for the
@ -2633,8 +2631,8 @@ hledger\-irr calculates the internal rate of return of an investment
account. account.
.SS Experimental add\-ons .SS Experimental add\-ons
.PP .PP
These are available in source form in the hledger repo\[aq]s bin/ These are available in source form in the hledger repo's bin/ directory;
directory; installing them is pretty easy. installing them is pretty easy.
They may be less mature and documented than built\-in commands. They may be less mature and documented than built\-in commands.
Reading and tweaking these is a good way to start making your own! Reading and tweaking these is a good way to start making your own!
.SS autosync .SS autosync
@ -2683,7 +2681,7 @@ not supported.
In a Cygwin/MSYS/Mintty window, the tab key is not supported in hledger In a Cygwin/MSYS/Mintty window, the tab key is not supported in hledger
add. add.
.PP .PP
Not all of Ledger\[aq]s journal file syntax is supported. Not all of Ledger's journal file syntax is supported.
See file format differences. See file format differences.
.PP .PP
On large data files, hledger is slower and uses more memory than Ledger. On large data files, hledger is slower and uses more memory than Ledger.
@ -2693,8 +2691,8 @@ Here are some issues you might encounter when you run hledger (and
remember you can also seek help from the IRC channel, mail list or bug remember you can also seek help from the IRC channel, mail list or bug
tracker): tracker):
.PP .PP
\f[B]Successfully installed, but "No command \[aq]hledger\[aq] \f[B]Successfully installed, but \[lq]No command `hledger'
found"\f[] found\[rq]\f[]
.PD 0 .PD 0
.P .P
.PD .PD
@ -2712,10 +2710,10 @@ file\f[]
shell variable. shell variable.
The command \f[C]env\ |\ grep\ LEDGER_FILE\f[] should show it. The command \f[C]env\ |\ grep\ LEDGER_FILE\f[] should show it.
You may need to use \f[C]export\f[]. You may need to use \f[C]export\f[].
Here\[aq]s an explanation. Here's an explanation.
.PP .PP
\f[B]"Illegal byte sequence" or "Invalid or incomplete multibyte or wide \f[B]\[lq]Illegal byte sequence\[rq] or \[lq]Invalid or incomplete
character" errors\f[] multibyte or wide character\[rq] errors\f[]
.PD 0 .PD 0
.P .P
.PD .PD
@ -2724,9 +2722,9 @@ needs an appropriate locale.
This is usually configured system\-wide; you can also configure it This is usually configured system\-wide; you can also configure it
temporarily. temporarily.
The locale may need to be one that supports UTF\-8, if you built hledger The locale may need to be one that supports UTF\-8, if you built hledger
with GHC < 7.2 (or possibly always, I\[aq]m not sure yet). with GHC < 7.2 (or possibly always, I'm not sure yet).
.PP .PP
Here\[aq]s an example of setting the locale temporarily, on ubuntu Here's an example of setting the locale temporarily, on ubuntu
gnu/linux: gnu/linux:
.IP .IP
.nf .nf
@ -2741,8 +2739,7 @@ $\ LANG=en_US.utf8\ hledger\ \-f\ my.journal\ print\ \ \ #\ <\-\ use\ it\ for\ t
\f[] \f[]
.fi .fi
.PP .PP
Here\[aq]s one way to set it permanently, there are probably better Here's one way to set it permanently, there are probably better ways:
ways:
.IP .IP
.nf .nf
\f[C] \f[C]

View File

@ -1,7 +1,7 @@
This is hledger.1.info, produced by makeinfo version 6.0 from stdin. This is hledger.info, produced by makeinfo version 6.0 from stdin.
 
File: hledger.1.info, Node: Top, Next: EXAMPLES, Up: (dir) File: hledger.info, Node: Top, Next: EXAMPLES, Up: (dir)
hledger(1) hledger 1.4 hledger(1) hledger 1.4
********************** **********************
@ -49,7 +49,7 @@ try some commands like 'hledger print' or 'hledger balance'. Run
* ADD-ON COMMANDS:: * ADD-ON COMMANDS::
 
File: hledger.1.info, Node: EXAMPLES, Next: OPTIONS, Prev: Top, Up: Top File: hledger.info, Node: EXAMPLES, Next: OPTIONS, Prev: Top, Up: Top
1 EXAMPLES 1 EXAMPLES
********** **********
@ -108,7 +108,7 @@ $ hledger print desc:shop # show transactions with shop in the d
$ hledger activity -W # show transaction counts per week as a bar chart $ hledger activity -W # show transaction counts per week as a bar chart
 
File: hledger.1.info, Node: OPTIONS, Next: QUERIES, Prev: EXAMPLES, Up: Top File: hledger.info, Node: OPTIONS, Next: QUERIES, Prev: EXAMPLES, Up: Top
2 OPTIONS 2 OPTIONS
********* *********
@ -133,7 +133,7 @@ File: hledger.1.info, Node: OPTIONS, Next: QUERIES, Prev: EXAMPLES, Up: Top
* Regular expressions:: * Regular expressions::
 
File: hledger.1.info, Node: General options, Next: Command options, Up: OPTIONS File: hledger.info, Node: General options, Next: Command options, Up: OPTIONS
2.1 General options 2.1 General options
=================== ===================
@ -239,7 +239,7 @@ the last one takes precedence.
Some reporting options can also be written as query arguments. Some reporting options can also be written as query arguments.
 
File: hledger.1.info, Node: Command options, Next: Command arguments, Prev: General options, Up: OPTIONS File: hledger.info, Node: Command options, Next: Command arguments, Prev: General options, Up: OPTIONS
2.2 Command options 2.2 Command options
=================== ===================
@ -255,7 +255,7 @@ options after a double-hyphen, eg: 'hledger ui -- --watch'. Or, you can
run the addon executable directly: 'hledger-ui --watch'. run the addon executable directly: 'hledger-ui --watch'.
 
File: hledger.1.info, Node: Command arguments, Next: Argument files, Prev: Command options, Up: OPTIONS File: hledger.info, Node: Command arguments, Next: Argument files, Prev: Command options, Up: OPTIONS
2.3 Command arguments 2.3 Command arguments
===================== =====================
@ -264,7 +264,7 @@ Most hledger commands accept arguments after the command name, which are
often a query, filtering the data in some way. often a query, filtering the data in some way.
 
File: hledger.1.info, Node: Argument files, Next: Special characters, Prev: Command arguments, Up: OPTIONS File: hledger.info, Node: Argument files, Next: Special characters, Prev: Command arguments, Up: OPTIONS
2.4 Argument files 2.4 Argument files
================== ==================
@ -275,7 +275,7 @@ prevent this expansion of '@'-arguments, precede them with a '--'
argument. For more, see Save frequently used options. argument. For more, see Save frequently used options.
 
File: hledger.1.info, Node: Special characters, Next: Input files, Prev: Argument files, Up: OPTIONS File: hledger.info, Node: Special characters, Next: Input files, Prev: Argument files, Up: OPTIONS
2.5 Special characters 2.5 Special characters
====================== ======================
@ -313,7 +313,7 @@ quotes. Eg: 'cur:\$').
If you're really stumped, add '--debug=2' to troubleshoot. If you're really stumped, add '--debug=2' to troubleshoot.
 
File: hledger.1.info, Node: Input files, Next: Smart dates, Prev: Special characters, Up: OPTIONS File: hledger.info, Node: Input files, Next: Smart dates, Prev: Special characters, Up: OPTIONS
2.6 Input files 2.6 Input files
=============== ===============
@ -368,7 +368,7 @@ one big journal. There are some limitations with this:
the files, eg: 'cat a.journal b.journal | hledger -f- CMD'. the files, eg: 'cat a.journal b.journal | hledger -f- CMD'.
 
File: hledger.1.info, Node: Smart dates, Next: Report start & end date, Prev: Input files, Up: OPTIONS File: hledger.info, Node: Smart dates, Next: Report start & end date, Prev: Input files, Up: OPTIONS
2.7 Smart dates 2.7 Smart dates
=============== ===============
@ -391,7 +391,7 @@ omitted (defaulting to 1).
'today', 'yesterday', 'tomorrow' 'today', 'yesterday', 'tomorrow'
 
File: hledger.1.info, Node: Report start & end date, Next: Report intervals, Prev: Smart dates, Up: OPTIONS File: hledger.info, Node: Report start & end date, Next: Report intervals, Prev: Smart dates, Up: OPTIONS
2.8 Report start & end date 2.8 Report start & end date
=========================== ===========================
@ -410,7 +410,7 @@ need to write the date _after_ the last day you want to include.
Examples: Examples:
'-b 2016/3/17' begin on St. Patrick's day 2016 '-b 2016/3/17' begin on St. Patrick's day 2016
'-e 12/1' end at the start of december 1st of the current year (11/30 will be the last date included) '-e 12/1' end at the start of december 1st of the current year (11/30 will be the last date included)
'-b thismonth' all transactions on or after the 1st of the current month '-b thismonth' all transactions on or after the 1st of the current month
'-p thismonth' all transactions in the current month '-p thismonth' all transactions in the current month
@ -420,7 +420,7 @@ need to write the date _after_ the last day you want to include.
'date:thismonth' 'date:thismonth'
 
File: hledger.1.info, Node: Report intervals, Next: Period expressions, Prev: Report start & end date, Up: OPTIONS File: hledger.info, Node: Report intervals, Next: Period expressions, Prev: Report start & end date, Up: OPTIONS
2.9 Report intervals 2.9 Report intervals
==================== ====================
@ -433,7 +433,7 @@ complex intervals may be specified with a period expression. Report
intervals can not be specified with a query, currently. intervals can not be specified with a query, currently.
 
File: hledger.1.info, Node: Period expressions, Next: For example, Prev: Report intervals, Up: OPTIONS File: hledger.info, Node: Period expressions, Next: For example, Prev: Report intervals, Up: OPTIONS
2.10 Period expressions 2.10 Period expressions
======================= =======================
@ -494,7 +494,7 @@ associated period expression specifies different explicit start and end
date. date.
 
File: hledger.1.info, Node: For example, Next: Depth limiting, Prev: Period expressions, Up: OPTIONS File: hledger.info, Node: For example, Next: Depth limiting, Prev: Period expressions, Up: OPTIONS
2.11 For example: 2.11 For example:
================= =================
@ -547,7 +547,7 @@ start date and exclusive end date):
'hledger register checking -p "every 3rd day of week"' 'hledger register checking -p "every 3rd day of week"'
 
File: hledger.1.info, Node: Depth limiting, Next: Pivoting, Prev: For example, Up: OPTIONS File: hledger.info, Node: Depth limiting, Next: Pivoting, Prev: For example, Up: OPTIONS
2.12 Depth limiting 2.12 Depth limiting
=================== ===================
@ -559,7 +559,7 @@ less detail. This flag has the same effect as a 'depth:' query argument
(so '-2', '--depth=2' or 'depth:2' are basically equivalent). (so '-2', '--depth=2' or 'depth:2' are basically equivalent).
 
File: hledger.1.info, Node: Pivoting, Next: Cost, Prev: Depth limiting, Up: OPTIONS File: hledger.info, Node: Pivoting, Next: Cost, Prev: Depth limiting, Up: OPTIONS
2.13 Pivoting 2.13 Pivoting
============= =============
@ -616,7 +616,7 @@ $ hledger balance --pivot member acct:.
-2 EUR -2 EUR
 
File: hledger.1.info, Node: Cost, Next: Market value, Prev: Pivoting, Up: OPTIONS File: hledger.info, Node: Cost, Next: Market value, Prev: Pivoting, Up: OPTIONS
2.14 Cost 2.14 Cost
========= =========
@ -625,7 +625,7 @@ The '-B/--cost' flag converts amounts to their cost at transaction time,
if they have a transaction price specified. if they have a transaction price specified.
 
File: hledger.1.info, Node: Market value, Next: Regular expressions, Prev: Cost, Up: OPTIONS File: hledger.info, Node: Market value, Next: Regular expressions, Prev: Cost, Up: OPTIONS
2.15 Market value 2.15 Market value
================= =================
@ -674,7 +674,7 @@ directives, not transaction prices (unlike Ledger).
Using -B and -V together is allowed. Using -B and -V together is allowed.
 
File: hledger.1.info, Node: Regular expressions, Prev: Market value, Up: OPTIONS File: hledger.info, Node: Regular expressions, Prev: Market value, Up: OPTIONS
2.16 Regular expressions 2.16 Regular expressions
======================== ========================
@ -714,7 +714,7 @@ general they:
See Special characters. See Special characters.
 
File: hledger.1.info, Node: QUERIES, Next: COMMANDS, Prev: OPTIONS, Up: Top File: hledger.info, Node: QUERIES, Next: COMMANDS, Prev: OPTIONS, Up: Top
3 QUERIES 3 QUERIES
********* *********
@ -825,7 +825,7 @@ and query arguments, and the resulting query will be their intersection
(perhaps excluding the '-p/--period' option). (perhaps excluding the '-p/--period' option).
 
File: hledger.1.info, Node: COMMANDS, Next: ADD-ON COMMANDS, Prev: QUERIES, Up: Top File: hledger.info, Node: COMMANDS, Next: ADD-ON COMMANDS, Prev: QUERIES, Up: Top
4 COMMANDS 4 COMMANDS
********** **********
@ -871,7 +871,7 @@ detailed command help.
* test:: * test::
 
File: hledger.1.info, Node: accounts, Next: activity, Up: COMMANDS File: hledger.info, Node: accounts, Next: activity, Up: COMMANDS
4.1 accounts 4.1 accounts
============ ============
@ -936,7 +936,7 @@ income:salary
liabilities:debts liabilities:debts
 
File: hledger.1.info, Node: activity, Next: add, Prev: accounts, Up: COMMANDS File: hledger.info, Node: activity, Next: add, Prev: accounts, Up: COMMANDS
4.2 activity 4.2 activity
============ ============
@ -954,7 +954,7 @@ $ hledger activity --quarterly
2008-10-01 ** 2008-10-01 **
 
File: hledger.1.info, Node: add, Next: balance, Prev: activity, Up: COMMANDS File: hledger.info, Node: add, Next: balance, Prev: activity, Up: COMMANDS
4.3 add 4.3 add
======= =======
@ -1024,7 +1024,7 @@ Starting the next transaction (. or ctrl-D/ctrl-C to quit)
Date [2015/05/22]: <CTRL-D> $ Date [2015/05/22]: <CTRL-D> $
 
File: hledger.1.info, Node: balance, Next: balancesheet, Prev: add, Up: COMMANDS File: hledger.info, Node: balance, Next: balancesheet, Prev: add, Up: COMMANDS
4.4 balance 4.4 balance
=========== ===========
@ -1137,7 +1137,7 @@ $ hledger balance -p 2008/6 expenses --no-total
* CSV output:: * CSV output::
 
File: hledger.1.info, Node: Flat mode, Next: Depth limited balance reports, Up: balance File: hledger.info, Node: Flat mode, Next: Depth limited balance reports, Up: balance
4.4.1 Flat mode 4.4.1 Flat mode
--------------- ---------------
@ -1153,7 +1153,7 @@ $ hledger balance -p 2008/6 expenses -N --flat --drop 1
$1 supplies $1 supplies
 
File: hledger.1.info, Node: Depth limited balance reports, Next: Multicolumn balance reports, Prev: Flat mode, Up: balance File: hledger.info, Node: Depth limited balance reports, Next: Multicolumn balance reports, Prev: Flat mode, Up: balance
4.4.2 Depth limited balance reports 4.4.2 Depth limited balance reports
----------------------------------- -----------------------------------
@ -1170,7 +1170,7 @@ $ hledger balance -N --depth 1
$1 liabilities $1 liabilities
 
File: hledger.1.info, Node: Multicolumn balance reports, Next: Custom balance output, Prev: Depth limited balance reports, Up: balance File: hledger.info, Node: Multicolumn balance reports, Next: Custom balance output, Prev: Depth limited balance reports, Up: balance
4.4.3 Multicolumn balance reports 4.4.3 Multicolumn balance reports
--------------------------------- ---------------------------------
@ -1270,7 +1270,7 @@ Balance changes in 2008:
# Average is rounded to the dollar here since all journal amounts are # Average is rounded to the dollar here since all journal amounts are
 
File: hledger.1.info, Node: Custom balance output, Next: Colour support, Prev: Multicolumn balance reports, Up: balance File: hledger.info, Node: Custom balance output, Next: Colour support, Prev: Multicolumn balance reports, Up: balance
4.4.4 Custom balance output 4.4.4 Custom balance output
--------------------------- ---------------------------
@ -1330,7 +1330,7 @@ may be needed to get pleasing results.
the single-column balance report the single-column balance report
 
File: hledger.1.info, Node: Colour support, Next: Output destination, Prev: Custom balance output, Up: balance File: hledger.info, Node: Colour support, Next: Output destination, Prev: Custom balance output, Up: balance
4.4.5 Colour support 4.4.5 Colour support
-------------------- --------------------
@ -1341,7 +1341,7 @@ The balance command shows negative amounts in red, if:
* the output is not being redirected or piped anywhere * the output is not being redirected or piped anywhere
 
File: hledger.1.info, Node: Output destination, Next: CSV output, Prev: Colour support, Up: balance File: hledger.info, Node: Output destination, Next: CSV output, Prev: Colour support, Up: balance
4.4.6 Output destination 4.4.6 Output destination
------------------------ ------------------------
@ -1354,7 +1354,7 @@ $ hledger balance -o - # write to stdout (the default)
$ hledger balance -o FILE # write to FILE $ hledger balance -o FILE # write to FILE
 
File: hledger.1.info, Node: CSV output, Prev: Output destination, Up: balance File: hledger.info, Node: CSV output, Prev: Output destination, Up: balance
4.4.7 CSV output 4.4.7 CSV output
---------------- ----------------
@ -1369,7 +1369,7 @@ $ hledger balance -O csv # write CSV to stdout
$ hledger balance -o FILE.csv # write CSV to FILE.csv $ hledger balance -o FILE.csv # write CSV to FILE.csv
 
File: hledger.1.info, Node: balancesheet, Next: balancesheetequity, Prev: balance, Up: COMMANDS File: hledger.info, Node: balancesheet, Next: balancesheetequity, Prev: balance, Up: COMMANDS
4.5 balancesheet 4.5 balancesheet
================ ================
@ -1448,7 +1448,7 @@ balancesheet shows historical ending balances, which is what you need
for a balance sheet; note this means it ignores report begin dates. for a balance sheet; note this means it ignores report begin dates.
 
File: hledger.1.info, Node: balancesheetequity, Next: cashflow, Prev: balancesheet, Up: COMMANDS File: hledger.info, Node: balancesheetequity, Next: cashflow, Prev: balancesheet, Up: COMMANDS
4.6 balancesheetequity 4.6 balancesheetequity
====================== ======================
@ -1488,7 +1488,7 @@ Total:
0 0
 
File: hledger.1.info, Node: cashflow, Next: check-dates, Prev: balancesheetequity, Up: COMMANDS File: hledger.info, Node: cashflow, Next: check-dates, Prev: balancesheetequity, Up: COMMANDS
4.7 cashflow 4.7 cashflow
============ ============
@ -1561,7 +1561,7 @@ period, though as with multicolumn balance reports you can alter the
report mode with '--change'/'--cumulative'/'--historical'. report mode with '--change'/'--cumulative'/'--historical'.
 
File: hledger.1.info, Node: check-dates, Next: check-dupes, Prev: cashflow, Up: COMMANDS File: hledger.info, Node: check-dates, Next: check-dupes, Prev: cashflow, Up: COMMANDS
4.8 check-dates 4.8 check-dates
=============== ===============
@ -1570,7 +1570,7 @@ Check that transactions are sorted by increasing date. With a query,
only matched transactions' dates are checked. only matched transactions' dates are checked.
 
File: hledger.1.info, Node: check-dupes, Next: equity, Prev: check-dates, Up: COMMANDS File: hledger.info, Node: check-dupes, Next: equity, Prev: check-dates, Up: COMMANDS
4.9 check-dupes 4.9 check-dupes
=============== ===============
@ -1579,7 +1579,7 @@ Report account names having the same leaf but different prefixes. An
example: http://stefanorodighiero.net/software/hledger-dupes.html example: http://stefanorodighiero.net/software/hledger-dupes.html
 
File: hledger.1.info, Node: equity, Next: help, Prev: check-dupes, Up: COMMANDS File: hledger.info, Node: equity, Next: help, Prev: check-dupes, Up: COMMANDS
4.10 equity 4.10 equity
=========== ===========
@ -1589,7 +1589,7 @@ balances to zero and back. Can be useful for bringing account balances
across file boundaries. across file boundaries.
 
File: hledger.1.info, Node: help, Next: import, Prev: equity, Up: COMMANDS File: hledger.info, Node: help, Next: import, Prev: equity, Up: COMMANDS
4.11 help 4.11 help
========= =========
@ -1626,7 +1626,7 @@ DESCRIPTION
... ...
 
File: hledger.1.info, Node: import, Next: incomestatement, Prev: help, Up: COMMANDS File: hledger.info, Node: import, Next: incomestatement, Prev: help, Up: COMMANDS
4.12 import 4.12 import
=========== ===========
@ -1652,7 +1652,7 @@ see only uncategorised transactions:
$ hledger import --dry ... | hledger -f- print unknown --ignore-assertions $ hledger import --dry ... | hledger -f- print unknown --ignore-assertions
 
File: hledger.1.info, Node: incomestatement, Next: prices, Prev: import, Up: COMMANDS File: hledger.info, Node: incomestatement, Next: prices, Prev: import, Up: COMMANDS
4.13 incomestatement 4.13 incomestatement
==================== ====================
@ -1731,7 +1731,7 @@ per period, though as with multicolumn balance reports you can alter the
report mode with '--change'/'--cumulative'/'--historical'. report mode with '--change'/'--cumulative'/'--historical'.
 
File: hledger.1.info, Node: prices, Next: print, Prev: incomestatement, Up: COMMANDS File: hledger.info, Node: prices, Next: print, Prev: incomestatement, Up: COMMANDS
4.14 prices 4.14 prices
=========== ===========
@ -1739,7 +1739,7 @@ File: hledger.1.info, Node: prices, Next: print, Prev: incomestatement, Up:
Print all market prices from the journal. Print all market prices from the journal.
 
File: hledger.1.info, Node: print, Next: print-unique, Prev: prices, Up: COMMANDS File: hledger.info, Node: print, Next: print-unique, Prev: prices, Up: COMMANDS
4.15 print 4.15 print
========== ==========
@ -1856,7 +1856,7 @@ $ hledger print -Ocsv
zero or greater amounts under debit.) zero or greater amounts under debit.)
 
File: hledger.1.info, Node: print-unique, Next: register, Prev: print, Up: COMMANDS File: hledger.info, Node: print-unique, Next: register, Prev: print, Up: COMMANDS
4.16 print-unique 4.16 print-unique
================= =================
@ -1864,7 +1864,7 @@ File: hledger.1.info, Node: print-unique, Next: register, Prev: print, Up: C
Print transactions which do not reuse an already-seen description. Print transactions which do not reuse an already-seen description.
 
File: hledger.1.info, Node: register, Next: register-match, Prev: print-unique, Up: COMMANDS File: hledger.info, Node: register, Next: register-match, Prev: print-unique, Up: COMMANDS
4.17 register 4.17 register
============= =============
@ -1969,7 +1969,7 @@ length and comparable to the others in the report.
* Custom register output:: * Custom register output::
 
File: hledger.1.info, Node: Custom register output, Up: register File: hledger.info, Node: Custom register output, Up: register
4.17.1 Custom register output 4.17.1 Custom register output
----------------------------- -----------------------------
@ -2001,7 +2001,7 @@ $ hledger reg -w $COLUMNS,40 # use terminal width, and set description widt
output. output.
 
File: hledger.1.info, Node: register-match, Next: rewrite, Prev: register, Up: COMMANDS File: hledger.info, Node: register-match, Next: rewrite, Prev: register, Up: COMMANDS
4.18 register-match 4.18 register-match
=================== ===================
@ -2011,7 +2011,7 @@ in the style of the register command. Helps ledger-autosync detect
already-seen transactions when importing. already-seen transactions when importing.
 
File: hledger.1.info, Node: rewrite, Next: stats, Prev: register-match, Up: COMMANDS File: hledger.info, Node: rewrite, Next: stats, Prev: register-match, Up: COMMANDS
4.19 rewrite 4.19 rewrite
============ ============
@ -2019,7 +2019,7 @@ File: hledger.1.info, Node: rewrite, Next: stats, Prev: register-match, Up:
Print all transactions, adding custom postings to the matched ones. Print all transactions, adding custom postings to the matched ones.
 
File: hledger.1.info, Node: stats, Next: tags, Prev: rewrite, Up: COMMANDS File: hledger.info, Node: stats, Next: tags, Prev: rewrite, Up: COMMANDS
4.20 stats 4.20 stats
========== ==========
@ -2051,7 +2051,7 @@ for each report period.
output destination. output destination.
 
File: hledger.1.info, Node: tags, Next: test, Prev: stats, Up: COMMANDS File: hledger.info, Node: tags, Next: test, Prev: stats, Up: COMMANDS
4.21 tags 4.21 tags
========= =========
@ -2062,7 +2062,7 @@ shown. With additional QUERY arguments, only transactions matching the
query are considered. query are considered.
 
File: hledger.1.info, Node: test, Prev: tags, Up: COMMANDS File: hledger.info, Node: test, Prev: tags, Up: COMMANDS
4.22 test 4.22 test
========= =========
@ -2078,7 +2078,7 @@ matching names. It's mainly used in development, but it's also nice to
be able to check your hledger executable for smoke at any time. be able to check your hledger executable for smoke at any time.
 
File: hledger.1.info, Node: ADD-ON COMMANDS, Prev: COMMANDS, Up: Top File: hledger.info, Node: ADD-ON COMMANDS, Prev: COMMANDS, Up: Top
5 ADD-ON COMMANDS 5 ADD-ON COMMANDS
***************** *****************
@ -2116,7 +2116,7 @@ options, journal parsing, reporting, etc.
* Experimental add-ons:: * Experimental add-ons::
 
File: hledger.1.info, Node: Official add-ons, Next: Third party add-ons, Up: ADD-ON COMMANDS File: hledger.info, Node: Official add-ons, Next: Third party add-ons, Up: ADD-ON COMMANDS
5.1 Official add-ons 5.1 Official add-ons
==================== ====================
@ -2129,7 +2129,7 @@ These are maintained and released along with hledger.
* web:: * web::
 
File: hledger.1.info, Node: api, Next: ui, Up: Official add-ons File: hledger.info, Node: api, Next: ui, Up: Official add-ons
5.1.1 api 5.1.1 api
--------- ---------
@ -2137,7 +2137,7 @@ File: hledger.1.info, Node: api, Next: ui, Up: Official add-ons
hledger-api serves hledger data as a JSON web API. hledger-api serves hledger data as a JSON web API.
 
File: hledger.1.info, Node: ui, Next: web, Prev: api, Up: Official add-ons File: hledger.info, Node: ui, Next: web, Prev: api, Up: Official add-ons
5.1.2 ui 5.1.2 ui
-------- --------
@ -2145,7 +2145,7 @@ File: hledger.1.info, Node: ui, Next: web, Prev: api, Up: Official add-ons
hledger-ui provides an efficient curses-style interface. hledger-ui provides an efficient curses-style interface.
 
File: hledger.1.info, Node: web, Prev: ui, Up: Official add-ons File: hledger.info, Node: web, Prev: ui, Up: Official add-ons
5.1.3 web 5.1.3 web
--------- ---------
@ -2153,7 +2153,7 @@ File: hledger.1.info, Node: web, Prev: ui, Up: Official add-ons
hledger-web provides a simple web interface. hledger-web provides a simple web interface.
 
File: hledger.1.info, Node: Third party add-ons, Next: Experimental add-ons, Prev: Official add-ons, Up: ADD-ON COMMANDS File: hledger.info, Node: Third party add-ons, Next: Experimental add-ons, Prev: Official add-ons, Up: ADD-ON COMMANDS
5.2 Third party add-ons 5.2 Third party add-ons
======================= =======================
@ -2168,7 +2168,7 @@ hledger release.
* irr:: * irr::
 
File: hledger.1.info, Node: diff, Next: iadd, Up: Third party add-ons File: hledger.info, Node: diff, Next: iadd, Up: Third party add-ons
5.2.1 diff 5.2.1 diff
---------- ----------
@ -2177,7 +2177,7 @@ hledger-diff shows differences in an account's transactions between one
journal file and another. journal file and another.
 
File: hledger.1.info, Node: iadd, Next: interest, Prev: diff, Up: Third party add-ons File: hledger.info, Node: iadd, Next: interest, Prev: diff, Up: Third party add-ons
5.2.2 iadd 5.2.2 iadd
---------- ----------
@ -2186,7 +2186,7 @@ hledger-iadd is a curses-style, more interactive replacement for the add
command. command.
 
File: hledger.1.info, Node: interest, Next: irr, Prev: iadd, Up: Third party add-ons File: hledger.info, Node: interest, Next: irr, Prev: iadd, Up: Third party add-ons
5.2.3 interest 5.2.3 interest
-------------- --------------
@ -2195,7 +2195,7 @@ hledger-interest generates interest transactions for an account
according to various schemes. according to various schemes.
 
File: hledger.1.info, Node: irr, Prev: interest, Up: Third party add-ons File: hledger.info, Node: irr, Prev: interest, Up: Third party add-ons
5.2.4 irr 5.2.4 irr
--------- ---------
@ -2204,7 +2204,7 @@ hledger-irr calculates the internal rate of return of an investment
account. account.
 
File: hledger.1.info, Node: Experimental add-ons, Prev: Third party add-ons, Up: ADD-ON COMMANDS File: hledger.info, Node: Experimental add-ons, Prev: Third party add-ons, Up: ADD-ON COMMANDS
5.3 Experimental add-ons 5.3 Experimental add-ons
======================== ========================
@ -2221,7 +2221,7 @@ start making your own!
* check:: * check::
 
File: hledger.1.info, Node: autosync, Next: budget, Up: Experimental add-ons File: hledger.info, Node: autosync, Next: budget, Up: Experimental add-ons
5.3.1 autosync 5.3.1 autosync
-------------- --------------
@ -2232,7 +2232,7 @@ and some CSV formats, and can also download the data if your bank offers
OFX Direct Connect. OFX Direct Connect.
 
File: hledger.1.info, Node: budget, Next: chart, Prev: autosync, Up: Experimental add-ons File: hledger.info, Node: budget, Next: chart, Prev: autosync, Up: Experimental add-ons
5.3.2 budget 5.3.2 budget
------------ ------------
@ -2240,7 +2240,7 @@ File: hledger.1.info, Node: budget, Next: chart, Prev: autosync, Up: Experim
hledger-budget.hs adds more budget-tracking features to hledger. hledger-budget.hs adds more budget-tracking features to hledger.
 
File: hledger.1.info, Node: chart, Next: check, Prev: budget, Up: Experimental add-ons File: hledger.info, Node: chart, Next: check, Prev: budget, Up: Experimental add-ons
5.3.3 chart 5.3.3 chart
----------- -----------
@ -2248,7 +2248,7 @@ File: hledger.1.info, Node: chart, Next: check, Prev: budget, Up: Experiment
hledger-chart.hs is an old pie chart generator, in need of some love. hledger-chart.hs is an old pie chart generator, in need of some love.
 
File: hledger.1.info, Node: check, Prev: chart, Up: Experimental add-ons File: hledger.info, Node: check, Prev: chart, Up: Experimental add-ons
5.3.4 check 5.3.4 check
----------- -----------
@ -2257,136 +2257,136 @@ hledger-check.hs checks more powerful account balance assertions.
 
Tag Table: Tag Table:
Node: Top70 Node: Top68
Node: EXAMPLES1886 Node: EXAMPLES1882
Ref: #examples1988 Ref: #examples1982
Node: OPTIONS3634 Node: OPTIONS3628
Ref: #options3738 Ref: #options3730
Node: General options4054 Node: General options4046
Ref: #general-options4181 Ref: #general-options4171
Node: Command options6500 Node: Command options6490
Ref: #command-options6653 Ref: #command-options6641
Node: Command arguments7051 Node: Command arguments7039
Ref: #command-arguments7207 Ref: #command-arguments7193
Node: Argument files7328 Node: Argument files7314
Ref: #argument-files7481 Ref: #argument-files7465
Node: Special characters7747 Node: Special characters7731
Ref: #special-characters7902 Ref: #special-characters7884
Node: Input files9321 Node: Input files9303
Ref: #input-files9459 Ref: #input-files9439
Node: Smart dates11422 Node: Smart dates11402
Ref: #smart-dates11565 Ref: #smart-dates11543
Node: Report start & end date12544 Node: Report start & end date12522
Ref: #report-start-end-date12716 Ref: #report-start-end-date12692
Node: Report intervals13782 Node: Report intervals13757
Ref: #report-intervals13947 Ref: #report-intervals13920
Node: Period expressions14348 Node: Period expressions14321
Ref: #period-expressions14507 Ref: #period-expressions14478
Node: For example16552 Node: For example16523
Ref: #for-example16697 Ref: #for-example16666
Node: Depth limiting18621 Node: Depth limiting18590
Ref: #depth-limiting18760 Ref: #depth-limiting18727
Node: Pivoting19102 Node: Pivoting19069
Ref: #pivoting19222 Ref: #pivoting19187
Node: Cost20898 Node: Cost20863
Ref: #cost21008 Ref: #cost20971
Node: Market value21126 Node: Market value21089
Ref: #market-value21263 Ref: #market-value21224
Node: Regular expressions22563 Node: Regular expressions22524
Ref: #regular-expressions22701 Ref: #regular-expressions22660
Node: QUERIES24062 Node: QUERIES24021
Ref: #queries24166 Ref: #queries24123
Node: COMMANDS28133 Node: COMMANDS28090
Ref: #commands28247 Ref: #commands28202
Node: accounts29230 Node: accounts29185
Ref: #accounts29330 Ref: #accounts29283
Node: activity30323 Node: activity30276
Ref: #activity30435 Ref: #activity30386
Node: add30794 Node: add30745
Ref: #add30895 Ref: #add30844
Node: balance33553 Node: balance33502
Ref: #balance33666 Ref: #balance33613
Node: Flat mode36823 Node: Flat mode36770
Ref: #flat-mode36950 Ref: #flat-mode36895
Node: Depth limited balance reports37370 Node: Depth limited balance reports37315
Ref: #depth-limited-balance-reports37573 Ref: #depth-limited-balance-reports37516
Node: Multicolumn balance reports37993 Node: Multicolumn balance reports37936
Ref: #multicolumn-balance-reports38204 Ref: #multicolumn-balance-reports38145
Node: Custom balance output42852 Node: Custom balance output42793
Ref: #custom-balance-output43036 Ref: #custom-balance-output42975
Node: Colour support45129 Node: Colour support45068
Ref: #colour-support45290 Ref: #colour-support45227
Node: Output destination45463 Node: Output destination45400
Ref: #output-destination45621 Ref: #output-destination45556
Node: CSV output45891 Node: CSV output45826
Ref: #csv-output46010 Ref: #csv-output45943
Node: balancesheet46407 Node: balancesheet46340
Ref: #balancesheet46545 Ref: #balancesheet46476
Node: balancesheetequity48513 Node: balancesheetequity48444
Ref: #balancesheetequity48664 Ref: #balancesheetequity48593
Node: cashflow49453 Node: cashflow49382
Ref: #cashflow49583 Ref: #cashflow49510
Node: check-dates51495 Node: check-dates51422
Ref: #check-dates51624 Ref: #check-dates51549
Node: check-dupes51741 Node: check-dupes51666
Ref: #check-dupes51868 Ref: #check-dupes51791
Node: equity52005 Node: equity51928
Ref: #equity52117 Ref: #equity52038
Node: help52280 Node: help52201
Ref: #help52383 Ref: #help52302
Node: import53457 Node: import53376
Ref: #import53573 Ref: #import53490
Node: incomestatement54303 Node: incomestatement54220
Ref: #incomestatement54439 Ref: #incomestatement54354
Node: prices56392 Node: prices56307
Ref: #prices56509 Ref: #prices56422
Node: print56552 Node: print56465
Ref: #print56664 Ref: #print56575
Node: print-unique61510 Node: print-unique61421
Ref: #print-unique61638 Ref: #print-unique61547
Node: register61706 Node: register61615
Ref: #register61835 Ref: #register61742
Node: Custom register output66336 Node: Custom register output66243
Ref: #custom-register-output66467 Ref: #custom-register-output66372
Node: register-match67764 Node: register-match67669
Ref: #register-match67900 Ref: #register-match67803
Node: rewrite68083 Node: rewrite67986
Ref: #rewrite68202 Ref: #rewrite68103
Node: stats68271 Node: stats68172
Ref: #stats68376 Ref: #stats68275
Node: tags69257 Node: tags69156
Ref: #tags69357 Ref: #tags69254
Node: test69593 Node: test69490
Ref: #test69679 Ref: #test69574
Node: ADD-ON COMMANDS70047 Node: ADD-ON COMMANDS69942
Ref: #add-on-commands70159 Ref: #add-on-commands70052
Node: Official add-ons71446 Node: Official add-ons71339
Ref: #official-add-ons71588 Ref: #official-add-ons71479
Node: api71675 Node: api71566
Ref: #api71766 Ref: #api71655
Node: ui71818 Node: ui71707
Ref: #ui71919 Ref: #ui71806
Node: web71977 Node: web71864
Ref: #web72068 Ref: #web71953
Node: Third party add-ons72114 Node: Third party add-ons71999
Ref: #third-party-add-ons72291 Ref: #third-party-add-ons72174
Node: diff72426 Node: diff72309
Ref: #diff72525 Ref: #diff72406
Node: iadd72624 Node: iadd72505
Ref: #iadd72740 Ref: #iadd72619
Node: interest72823 Node: interest72702
Ref: #interest72946 Ref: #interest72823
Node: irr73041 Node: irr72918
Ref: #irr73141 Ref: #irr73016
Node: Experimental add-ons73219 Node: Experimental add-ons73094
Ref: #experimental-add-ons73373 Ref: #experimental-add-ons73246
Node: autosync73664 Node: autosync73537
Ref: #autosync73778 Ref: #autosync73649
Node: budget74017 Node: budget73888
Ref: #budget74141 Ref: #budget74010
Node: chart74207 Node: chart74076
Ref: #chart74326 Ref: #chart74193
Node: check74397 Node: check74264
Ref: #check74501 Ref: #check74366
 
End Tag Table End Tag Table

View File

@ -359,8 +359,8 @@ OPTIONS
Examples: Examples:
-b 2016/3/17 begin on St. Patrick's -b 2016/3/17 begin on St. Patrick's day
day 2016 2016
-e 12/1 end at the start of decem- -e 12/1 end at the start of decem-
ber 1st of the current ber 1st of the current
year (11/30 will be the year (11/30 will be the
@ -451,12 +451,12 @@ OPTIONS
expression specifies different explicit start and end date. expression specifies different explicit start and end date.
For example: For example:
-p "weekly from 2009/1/1 to 2009/4/1" -- starts on 2008/12/29, closest -p "weekly from 2009/1/1 to 2009/4/1" - starts on 2008/12/29, closest
preceeding Monday -p "monthly in 2008/11/25" -- starts on 2018/11/01 preceeding Monday -p "monthly in 2008/11/25" - starts on 2018/11/01
-p "quarterly from 2009-05-05 to 2009-06-01" - starts on 2009/04/01, -p "quarterly from 2009-05-05 to 2009-06-01" - starts on 2009/04/01,
ends on 2009/06/30, which are first and last days of Q2 2009 ends on 2009/06/30, which are first and last days of Q2 2009
-p "yearly from 2009-12-29" - starts on 2009/01/01, first day of 2009 -p "yearly from 2009-12-29" - starts on 2009/01/01, first day of 2009
------------------------------------------ ----------------------------
The following more complex report intervals are also supported: The following more complex report intervals are also supported:
biweekly, bimonthly, every day|week|month|quarter|year, biweekly, bimonthly, every day|week|month|quarter|year,
@ -468,14 +468,14 @@ OPTIONS
Examples: Examples:
-p "bimonthly from 2008" -- periods -p "bimonthly from 2008" - periods will
will have boundaries on 2008/01/01, have boundaries on 2008/01/01,
2008/03/01, ... 2008/03/01, ...
-p "every 2 weeks" -- starts on closest -p "every 2 weeks" - starts on closest
preceeding Monday preceeding Monday
-p "every 5 month from 2009/03" -- -p "every 5 month from 2009/03" - peri-
periods will have boundaries on ods will have boundaries on 2009/03/01,
2009/03/01, 2009/08/01, ... 2009/08/01, ...
If you want intervals that start on arbitrary day of your choosing and If you want intervals that start on arbitrary day of your choosing and
span a week, month or year, you need to use any of the following: span a week, month or year, you need to use any of the following:
@ -487,18 +487,18 @@ OPTIONS
Examples: Examples:
-p "every 2nd day of week" -- periods -p "every 2nd day of week" - periods
will go from Tue to Tue will go from Tue to Tue
-p "every Tue" -- same -p "every Tue" - same
-p "every 15th day" -- period bound- -p "every 15th day" - period boundaries
aries will be on 15th of each month will be on 15th of each month
-p "every 2nd Monday" -- period bound- -p "every 2nd Monday" - period bound-
aries will be on second Monday of each aries will be on second Monday of each
month month
-p "every 11/05" -- yearly periods with -p "every 11/05" - yearly periods with
boundaries on 5th of Nov boundaries on 5th of Nov
-p "every 5th Nov" -- same -p "every 5th Nov" - same
-p "every Nov 5th" -- same -p "every Nov 5th" - same
Show historical balances at end of 15th each month (N is exclusive end Show historical balances at end of 15th each month (N is exclusive end
date): date):
@ -1454,11 +1454,11 @@ COMMANDS
each one. So eg to add new transactions from all CSV files to the main each one. So eg to add new transactions from all CSV files to the main
journal, it's just: hledger import *.csv journal, it's just: hledger import *.csv
New transactions are detected in the same way as print --new: by assum- New transactions are detected in the same way as print -new: by assum-
ing transactions are always added to the input files in increasing date ing transactions are always added to the input files in increasing date
order, and by saving .latest.FILE state files. order, and by saving .latest.FILE state files.
The --dry-run output is in journal format, so you can filter it, eg to The -dry-run output is in journal format, so you can filter it, eg to
see only uncategorised transactions: see only uncategorised transactions:
$ hledger import --dry ... | hledger -f- print unknown --ignore-assertions $ hledger import --dry ... | hledger -f- print unknown --ignore-assertions
@ -1665,7 +1665,7 @@ COMMANDS
-A --average -A --average
show running average of posting amounts instead of total show running average of posting amounts instead of total
(implies --empty) (implies -empty)
-r --related -r --related
show postings' siblings instead show postings' siblings instead
@ -1755,7 +1755,7 @@ COMMANDS
The description and account columns normally share the space equally The description and account columns normally share the space equally
(about half of (width - 40) each). You can adjust this by adding a (about half of (width - 40) each). You can adjust this by adding a
description width as part of --width's argument, comma-separated: description width as part of -width's argument, comma-separated:
--width W,D . Here's a diagram: --width W,D . Here's a diagram:
<--------------------------------- width (W) ----------------------------------> <--------------------------------- width (W) ---------------------------------->
@ -1944,7 +1944,7 @@ TROUBLESHOOTING
remember you can also seek help from the IRC channel, mail list or bug remember you can also seek help from the IRC channel, mail list or bug
tracker): tracker):
Successfully installed, but "No command 'hledger' found" Successfully installed, but "No command `hledger' found"
stack and cabal install binaries into a special directory, which should stack and cabal install binaries into a special directory, which should
be added to your PATH environment variable. Eg on unix-like systems, be added to your PATH environment variable. Eg on unix-like systems,
that is ~/.local/bin and ~/.cabal/bin respectively. that is ~/.local/bin and ~/.cabal/bin respectively.