documentation changed to reflect new bs/is/cf and -V behavior
This commit is contained in:
parent
b41d11c6e9
commit
600132445c
@ -1,32 +1,30 @@
|
|||||||
This is hledger-api/doc/hledger-api.1.info, produced by makeinfo
|
This is hledger-api.1.info, produced by makeinfo version 5.2 from stdin.
|
||||||
version 4.8 from stdin.
|
|
||||||
|
|
||||||
|
|
||||||
File: hledger-api.1.info, Node: Top, Up: (dir)
|
File: hledger-api.1.info, Node: Top, Next: OPTIONS, Up: (dir)
|
||||||
|
|
||||||
hledger-api(1) hledger-api dev
|
hledger-api(1) hledger-api dev
|
||||||
******************************
|
******************************
|
||||||
|
|
||||||
hledger-api is a simple web API server, intended to support client-side
|
hledger-api is a simple web API server, intended to support client-side
|
||||||
web apps operating on hledger data. It comes with a series of simple
|
web apps operating on hledger data. It comes with a series of simple
|
||||||
client-side app examples, which drive its evolution.
|
client-side app examples, which drive its evolution.
|
||||||
|
|
||||||
Like hledger, it reads data from one or more files in hledger
|
Like hledger, it reads data from one or more files in hledger
|
||||||
journal, timeclock, timedot, or CSV format specified with `-f', or
|
journal, timeclock, timedot, or CSV format specified with '-f', or
|
||||||
`$LEDGER_FILE', or `$HOME/.hledger.journal' (on windows, perhaps
|
'$LEDGER_FILE', or '$HOME/.hledger.journal' (on windows, perhaps
|
||||||
`C:/Users/USER/.hledger.journal'). For more about this see hledger(1),
|
'C:/Users/USER/.hledger.journal'). For more about this see hledger(1),
|
||||||
hledger_journal(5) etc.
|
hledger_journal(5) etc.
|
||||||
|
|
||||||
The server listens on IP address 127.0.0.1, accessible only to local
|
The server listens on IP address 127.0.0.1, accessible only to local
|
||||||
requests, by default. You can change this with `--host', eg `--host
|
requests, by default. You can change this with '--host', eg '--host
|
||||||
0.0.0.0' to listen on all addresses. Note there is no other access
|
0.0.0.0' to listen on all addresses. Note there is no other access
|
||||||
control, so you will need to hide hledger-api behind an authenticating
|
control, so you will need to hide hledger-api behind an authenticating
|
||||||
proxy if you want to restrict access. You can change the TCP port
|
proxy if you want to restrict access. You can change the TCP port
|
||||||
(default: 8001) with `-p PORT'.
|
(default: 8001) with '-p PORT'.
|
||||||
|
|
||||||
If invoked as `hledger-api --swagger', instead of starting a server
|
If invoked as 'hledger-api --swagger', instead of starting a server
|
||||||
the API docs will be printed in Swagger 2.0 format.
|
the API docs will be printed in Swagger 2.0 format.
|
||||||
|
|
||||||
* Menu:
|
* Menu:
|
||||||
|
|
||||||
* OPTIONS::
|
* OPTIONS::
|
||||||
@ -37,56 +35,57 @@ File: hledger-api.1.info, Node: OPTIONS, Prev: Top, Up: Top
|
|||||||
1 OPTIONS
|
1 OPTIONS
|
||||||
*********
|
*********
|
||||||
|
|
||||||
Note: if invoking hledger-api as a hledger subcommand, write `--'
|
Note: if invoking hledger-api as a hledger subcommand, write '--' before
|
||||||
before options as shown above.
|
options as shown above.
|
||||||
|
|
||||||
`-d --static-dir=DIR'
|
'-d --static-dir=DIR'
|
||||||
serve files from a different directory (default: `.')
|
|
||||||
|
serve files from a different directory (default: '.')
|
||||||
|
'-p --port=PORT'
|
||||||
|
|
||||||
`-p --port=PORT'
|
|
||||||
use a different TCP port (default: 8001)
|
use a different TCP port (default: 8001)
|
||||||
|
'--swagger'
|
||||||
|
|
||||||
`--swagger'
|
|
||||||
print API docs in Swagger 2.0 format, and exit
|
print API docs in Swagger 2.0 format, and exit
|
||||||
|
|
||||||
hledger general options:
|
hledger general options:
|
||||||
|
|
||||||
`-h'
|
'-h'
|
||||||
show general usage (or after COMMAND, the command's usage)
|
|
||||||
|
show general usage (or after COMMAND, the command's usage)
|
||||||
|
'--help'
|
||||||
|
|
||||||
`--help'
|
|
||||||
show the current program's manual as plain text (or after an add-on
|
show the current program's manual as plain text (or after an add-on
|
||||||
COMMAND, the add-on's manual)
|
COMMAND, the add-on's manual)
|
||||||
|
'--man'
|
||||||
|
|
||||||
`--man'
|
|
||||||
show the current program's manual with man
|
show the current program's manual with man
|
||||||
|
'--info'
|
||||||
|
|
||||||
`--info'
|
|
||||||
show the current program's manual with info
|
show the current program's manual with info
|
||||||
|
'--version'
|
||||||
|
|
||||||
`--version'
|
|
||||||
show version
|
show version
|
||||||
|
'--debug[=N]'
|
||||||
|
|
||||||
`--debug[=N]'
|
|
||||||
show debug output (levels 1-9, default: 1)
|
show debug output (levels 1-9, default: 1)
|
||||||
|
'-f FILE --file=FILE'
|
||||||
|
|
||||||
`-f FILE --file=FILE'
|
use a different input file. For stdin, use -
|
||||||
use a different input file. For stdin, use -
|
'--rules-file=RULESFILE'
|
||||||
|
|
||||||
`--rules-file=RULESFILE'
|
|
||||||
Conversion rules file to use when reading CSV (default: FILE.rules)
|
Conversion rules file to use when reading CSV (default: FILE.rules)
|
||||||
|
'--alias=OLD=NEW'
|
||||||
|
|
||||||
`--alias=OLD=NEW'
|
|
||||||
display accounts named OLD as NEW
|
display accounts named OLD as NEW
|
||||||
|
'-I --ignore-assertions'
|
||||||
|
|
||||||
`-I --ignore-assertions'
|
|
||||||
ignore any failing balance assertions in the journal
|
ignore any failing balance assertions in the journal
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Tag Table:
|
Tag Table:
|
||||||
Node: Top90
|
Node: Top74
|
||||||
Node: OPTIONS1216
|
Node: OPTIONS1220
|
||||||
Ref: #options1303
|
Ref: #options1307
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
|||||||
@ -1,23 +1,21 @@
|
|||||||
This is hledger-lib/doc/hledger_csv.5.info, produced by makeinfo
|
This is hledger_csv.5.info, produced by makeinfo version 5.2 from stdin.
|
||||||
version 4.8 from stdin.
|
|
||||||
|
|
||||||
|
|
||||||
File: hledger_csv.5.info, Node: Top, Up: (dir)
|
File: hledger_csv.5.info, Node: Top, Next: CSV RULES, Up: (dir)
|
||||||
|
|
||||||
hledger_csv(5) hledger dev
|
hledger_csv(5) hledger dev
|
||||||
**************************
|
**************************
|
||||||
|
|
||||||
hledger can read CSV files, converting each CSV record into a journal
|
hledger can read CSV files, converting each CSV record into a journal
|
||||||
entry (transaction), if you provide some conversion hints in a "rules
|
entry (transaction), if you provide some conversion hints in a "rules
|
||||||
file". This file should be named like the CSV file with an additional
|
file". This file should be named like the CSV file with an additional
|
||||||
`.rules' suffix (eg: `mybank.csv.rules'); or, you can specify the file
|
'.rules' suffix (eg: 'mybank.csv.rules'); or, you can specify the file
|
||||||
with `--rules-file PATH'. hledger will create it if necessary, with
|
with '--rules-file PATH'. hledger will create it if necessary, with
|
||||||
some default rules which you'll need to adjust. At minimum, the rules
|
some default rules which you'll need to adjust. At minimum, the rules
|
||||||
file must specify the `date' and `amount' fields. For an example, see
|
file must specify the 'date' and 'amount' fields. For an example, see
|
||||||
How to read CSV files.
|
How to read CSV files.
|
||||||
|
|
||||||
To learn about _exporting_ CSV, see CSV output.
|
To learn about _exporting_ CSV, see CSV output.
|
||||||
|
|
||||||
* Menu:
|
* Menu:
|
||||||
|
|
||||||
* CSV RULES::
|
* CSV RULES::
|
||||||
@ -30,8 +28,7 @@ File: hledger_csv.5.info, Node: CSV RULES, Next: TIPS, Prev: Top, Up: Top
|
|||||||
***********
|
***********
|
||||||
|
|
||||||
The following six kinds of rule can appear in the rules file, in any
|
The following six kinds of rule can appear in the rules file, in any
|
||||||
order. Blank lines and lines beginning with `#' or `;' are ignored.
|
order. Blank lines and lines beginning with '#' or ';' are ignored.
|
||||||
|
|
||||||
* Menu:
|
* Menu:
|
||||||
|
|
||||||
* skip::
|
* skip::
|
||||||
@ -47,11 +44,10 @@ File: hledger_csv.5.info, Node: skip, Next: date-format, Up: CSV RULES
|
|||||||
1.1 skip
|
1.1 skip
|
||||||
========
|
========
|
||||||
|
|
||||||
`skip'_`N'_
|
'skip'_'N'_
|
||||||
|
|
||||||
Skip this number of CSV records at the beginning. You'll need this
|
|
||||||
whenever your CSV data contains header lines. Eg:
|
|
||||||
|
|
||||||
|
Skip this number of CSV records at the beginning. You'll need this
|
||||||
|
whenever your CSV data contains header lines. Eg:
|
||||||
|
|
||||||
# ignore the first CSV line
|
# ignore the first CSV line
|
||||||
skip 1
|
skip 1
|
||||||
@ -62,26 +58,22 @@ File: hledger_csv.5.info, Node: date-format, Next: field list, Prev: skip, U
|
|||||||
1.2 date-format
|
1.2 date-format
|
||||||
===============
|
===============
|
||||||
|
|
||||||
`date-format'_`DATEFMT'_
|
'date-format'_'DATEFMT'_
|
||||||
|
|
||||||
When your CSV date fields are not formatted like `YYYY/MM/DD' (or
|
When your CSV date fields are not formatted like 'YYYY/MM/DD' (or
|
||||||
`YYYY-MM-DD' or `YYYY.MM.DD'), you'll need to specify the format.
|
'YYYY-MM-DD' or 'YYYY.MM.DD'), you'll need to specify 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. Examples:
|
date field values completely. Examples:
|
||||||
|
|
||||||
|
|
||||||
# for dates like "6/11/2013":
|
# for dates like "6/11/2013":
|
||||||
date-format %-d/%-m/%Y
|
date-format %-d/%-m/%Y
|
||||||
|
|
||||||
|
|
||||||
# for dates like "11/06/2013":
|
# for dates like "11/06/2013":
|
||||||
date-format %m/%d/%Y
|
date-format %m/%d/%Y
|
||||||
|
|
||||||
|
|
||||||
# for dates like "2013-Nov-06":
|
# for dates like "2013-Nov-06":
|
||||||
date-format %Y-%h-%d
|
date-format %Y-%h-%d
|
||||||
|
|
||||||
|
|
||||||
# for dates like "11/6/2013 11:32 PM":
|
# for dates like "11/6/2013 11:32 PM":
|
||||||
date-format %-m/%-d/%Y %l:%M %p
|
date-format %-m/%-d/%Y %l:%M %p
|
||||||
|
|
||||||
@ -91,15 +83,13 @@ File: hledger_csv.5.info, Node: field list, Next: field assignment, Prev: dat
|
|||||||
1.3 field list
|
1.3 field list
|
||||||
==============
|
==============
|
||||||
|
|
||||||
`fields'_`FIELDNAME1'_, _`FIELDNAME2'_...
|
'fields'_'FIELDNAME1'_, _'FIELDNAME2'_...
|
||||||
|
|
||||||
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
|
||||||
to journal entry fields if you use any of these standard field names:
|
to journal entry fields if you use any of these standard field names:
|
||||||
`date', `date2', `status', `code', `description', `comment',
|
'date', 'date2', 'status', 'code', 'description', 'comment', 'account1',
|
||||||
`account1', `account2', `amount', `amount-in', `amount-out',
|
'account2', 'amount', 'amount-in', 'amount-out', 'currency'. Eg:
|
||||||
`currency'. Eg:
|
|
||||||
|
|
||||||
|
|
||||||
# use the 1st, 2nd and 4th CSV fields as the entry's date, description and amount,
|
# use the 1st, 2nd and 4th CSV fields as the entry's date, description and amount,
|
||||||
# and give the 7th and 8th fields meaningful names for later reference:
|
# and give the 7th and 8th fields meaningful names for later reference:
|
||||||
@ -115,17 +105,15 @@ File: hledger_csv.5.info, Node: field assignment, Next: conditional block, Pr
|
|||||||
1.4 field assignment
|
1.4 field assignment
|
||||||
====================
|
====================
|
||||||
|
|
||||||
_`ENTRYFIELDNAME'_ _`FIELDVALUE'_
|
_'ENTRYFIELDNAME'_ _'FIELDVALUE'_
|
||||||
|
|
||||||
This sets a journal entry field (one of the standard names above) to
|
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
|
the given text value, which can include CSV field values interpolated by
|
||||||
name (`%CSVFIELDNAME') or 1-based position (`%N'). Eg:
|
name ('%CSVFIELDNAME') or 1-based position ('%N'). Eg:
|
||||||
|
|
||||||
|
|
||||||
# set the amount to the 4th CSV field with "USD " prepended
|
# set the amount to the 4th CSV field with "USD " prepended
|
||||||
amount USD %4
|
amount USD %4
|
||||||
|
|
||||||
|
|
||||||
# combine three fields to make a comment (containing two tags)
|
# combine three fields to make a comment (containing two tags)
|
||||||
comment note: %somefield - %anotherfield, date: %1
|
comment note: %somefield - %anotherfield, date: %1
|
||||||
|
|
||||||
@ -138,28 +126,26 @@ File: hledger_csv.5.info, Node: conditional block, Next: include, Prev: field
|
|||||||
1.5 conditional block
|
1.5 conditional block
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
`if' _`PATTERN'_
|
'if' _'PATTERN'_
|
||||||
_`FIELDASSIGNMENTS'_...
|
_'FIELDASSIGNMENTS'_...
|
||||||
|
|
||||||
`if'
|
'if'
|
||||||
_`PATTERN'_
|
_'PATTERN'_
|
||||||
_`PATTERN'_...
|
_'PATTERN'_...
|
||||||
_`FIELDASSIGNMENTS'_...
|
_'FIELDASSIGNMENTS'_...
|
||||||
|
|
||||||
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. The patterns are case-insensitive
|
matched by one of the PATTERNs. The patterns are case-insensitive
|
||||||
regular expressions which match anywhere within the whole CSV record
|
regular expressions which match anywhere within the whole CSV record
|
||||||
(it's not yet possible to match within a specific field). When there are
|
(it's not yet possible to match within a specific field). When there
|
||||||
multiple patterns they can be written on separate lines, unindented. The
|
are multiple patterns they can be written on separate lines, unindented.
|
||||||
field assignments are on separate lines indented by at least one space.
|
The field assignments are on separate lines indented by at least one
|
||||||
Examples:
|
space. Examples:
|
||||||
|
|
||||||
|
|
||||||
# if the CSV record contains "groceries", set account2 to "expenses:groceries"
|
# if the CSV record contains "groceries", set account2 to "expenses:groceries"
|
||||||
if groceries
|
if groceries
|
||||||
account2 expenses:groceries
|
account2 expenses:groceries
|
||||||
|
|
||||||
|
|
||||||
# if the CSV record contains any of these patterns, set account2 and comment as shown
|
# if the CSV record contains any of these patterns, set account2 and comment as shown
|
||||||
if
|
if
|
||||||
monthly service fee
|
monthly service fee
|
||||||
@ -174,13 +160,12 @@ File: hledger_csv.5.info, Node: include, Prev: conditional block, Up: CSV RUL
|
|||||||
1.6 include
|
1.6 include
|
||||||
===========
|
===========
|
||||||
|
|
||||||
`include'_`RULESFILE'_
|
'include'_'RULESFILE'_
|
||||||
|
|
||||||
Include another rules file at this point. `RULESFILE' is either an
|
Include another rules file at this point. 'RULESFILE' is either an
|
||||||
absolute file path or a path relative to the current file's directory.
|
absolute file path or a path relative to the current file's directory.
|
||||||
Eg:
|
Eg:
|
||||||
|
|
||||||
|
|
||||||
# rules reused with several CSV files
|
# rules reused with several CSV files
|
||||||
include common.rules
|
include common.rules
|
||||||
|
|
||||||
@ -190,42 +175,41 @@ File: hledger_csv.5.info, Node: TIPS, Prev: CSV RULES, Up: Top
|
|||||||
2 TIPS
|
2 TIPS
|
||||||
******
|
******
|
||||||
|
|
||||||
Each generated journal entry will have two postings, to `account1' and
|
Each generated journal entry will have two postings, to 'account1' and
|
||||||
`account2' respectively. Currently it's not possible to generate
|
'account2' respectively. Currently it's not possible to generate
|
||||||
entries with more than two postings.
|
entries with more than two postings.
|
||||||
|
|
||||||
If the CSV has debit/credit amounts in separate fields, assign to the
|
If the CSV has debit/credit amounts in separate fields, assign to the
|
||||||
`amount-in' and `amount-out' pseudo fields instead of `amount'.
|
'amount-in' and 'amount-out' pseudo fields instead of 'amount'.
|
||||||
|
|
||||||
If the CSV has the currency in a separate field, assign that to the
|
If the CSV has the currency in a separate field, assign that to the
|
||||||
`currency' pseudo field which will be automatically prepended to the
|
'currency' pseudo field which will be automatically prepended to the
|
||||||
amount. (Or you can do the same thing with a field assignment.)
|
amount. (Or you can do the same thing with a field assignment.)
|
||||||
|
|
||||||
If an amount value is parenthesised, it will be de-parenthesised and
|
If an amount value is parenthesised, it will be de-parenthesised and
|
||||||
sign-flipped automatically.
|
sign-flipped automatically.
|
||||||
|
|
||||||
The generated journal entries will be sorted by date. The original
|
The generated journal entries will be sorted by date. The original
|
||||||
order of same-day entries will be preserved, usually.
|
order of same-day entries will be preserved, usually.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Tag Table:
|
Tag Table:
|
||||||
Node: Top90
|
Node: Top74
|
||||||
Node: CSV RULES795
|
Node: CSV RULES800
|
||||||
Ref: #csv-rules901
|
Ref: #csv-rules906
|
||||||
Node: skip1144
|
Node: skip1149
|
||||||
Ref: #skip1240
|
Ref: #skip1245
|
||||||
Node: date-format1411
|
Node: date-format1417
|
||||||
Ref: #date-format1540
|
Ref: #date-format1546
|
||||||
Node: field list2049
|
Node: field list2052
|
||||||
Ref: #field-list2188
|
Ref: #field-list2191
|
||||||
Node: field assignment2883
|
Node: field assignment2886
|
||||||
Ref: #field-assignment3040
|
Ref: #field-assignment3043
|
||||||
Node: conditional block3545
|
Node: conditional block3547
|
||||||
Ref: #conditional-block3701
|
Ref: #conditional-block3703
|
||||||
Node: include4588
|
Node: include4599
|
||||||
Ref: #include4699
|
Ref: #include4710
|
||||||
Node: TIPS4930
|
Node: TIPS4941
|
||||||
Ref: #tips5014
|
Ref: #tips5025
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
|||||||
@ -124,27 +124,27 @@ CSV RULES
|
|||||||
include common.rules
|
include common.rules
|
||||||
|
|
||||||
TIPS
|
TIPS
|
||||||
Each generated journal entry will have two postings, to account1 and
|
Each generated journal entry will have two postings, to account1 and
|
||||||
account2 respectively. Currently it's not possible to generate entries
|
account2 respectively. Currently it's not possible to generate entries
|
||||||
with more than two postings.
|
with more than two postings.
|
||||||
|
|
||||||
If the CSV has debit/credit amounts in separate fields, assign to the
|
If the CSV has debit/credit amounts in separate fields, assign to the
|
||||||
amount-in and amount-out pseudo fields instead of amount.
|
amount-in and amount-out pseudo fields instead of amount.
|
||||||
|
|
||||||
If the CSV has the currency in a separate field, assign that to the
|
If the CSV has the currency in a separate field, assign that to the
|
||||||
currency pseudo field which will be automatically prepended to the
|
currency pseudo field which will be automatically prepended to the
|
||||||
amount. (Or you can do the same thing with a field assignment.)
|
amount. (Or you can do the same thing with a field assignment.)
|
||||||
|
|
||||||
If an amount value is parenthesised, it will be de-parenthesised and
|
If an amount value is parenthesised, it will be de-parenthesised and
|
||||||
sign-flipped automatically.
|
sign-flipped automatically.
|
||||||
|
|
||||||
The generated journal entries will be sorted by date. The original
|
The generated journal entries will be sorted by date. The original
|
||||||
order of same-day entries will be preserved, usually.
|
order of same-day entries will be preserved, usually.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
REPORTING BUGS
|
REPORTING BUGS
|
||||||
Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel
|
Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel
|
||||||
or hledger mail list)
|
or hledger mail list)
|
||||||
|
|
||||||
|
|
||||||
@ -158,7 +158,7 @@ COPYRIGHT
|
|||||||
|
|
||||||
|
|
||||||
SEE ALSO
|
SEE ALSO
|
||||||
hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1),
|
hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1),
|
||||||
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
|
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
|
||||||
dot(5), ledger(1)
|
dot(5), ledger(1)
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -7,23 +7,23 @@ NAME
|
|||||||
Journal - hledger's default file format, representing a General Journal
|
Journal - hledger's default file format, representing a General Journal
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
hledger'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. This file represents a standard
|
entries in hledger journal format. This file represents a standard
|
||||||
accounting general journal. I use file names ending in .journal, but
|
accounting general journal. I use file names ending in .journal, but
|
||||||
that's not required. The journal file contains a number of transaction
|
that's not required. The journal file contains a number of transaction
|
||||||
entries, each describing a transfer of money (or any commodity) between
|
entries, each describing a transfer of money (or any commodity) between
|
||||||
two or more named accounts, in a simple format readable by both hledger
|
two or more named accounts, in a simple format readable by both hledger
|
||||||
and humans.
|
and humans.
|
||||||
|
|
||||||
hledger's journal format is a compatible subset, mostly, of ledger's
|
hledger's journal format is a compatible subset, mostly, of ledger's
|
||||||
journal format, so hledger can work with compatible ledger journal
|
journal format, so hledger can work with compatible ledger journal
|
||||||
files as well. It's safe, and encouraged, to run both hledger and
|
files as well. It's safe, and encouraged, to run both hledger and
|
||||||
ledger on the same journal file, eg to validate the results you're get-
|
ledger on the same journal file, eg to validate the results you're get-
|
||||||
ting.
|
ting.
|
||||||
|
|
||||||
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. Many users, though,
|
the add or web commands to create and update it. Many users, though,
|
||||||
also edit the journal file directly with a text editor, perhaps
|
also edit the journal file directly with a text editor, perhaps
|
||||||
assisted by the helper modes for emacs or vim.
|
assisted by the helper modes for emacs or vim.
|
||||||
|
|
||||||
Here's an example:
|
Here's an example:
|
||||||
@ -53,18 +53,18 @@ DESCRIPTION
|
|||||||
|
|
||||||
FILE FORMAT
|
FILE FORMAT
|
||||||
Transactions
|
Transactions
|
||||||
Transactions are represented by journal entries. Each begins with a
|
Transactions are represented by journal entries. Each begins with a
|
||||||
simple date in column 0, followed by three optional fields with spaces
|
simple date in column 0, followed by three optional fields with spaces
|
||||||
between them:
|
between them:
|
||||||
|
|
||||||
o a status flag, which can be empty or ! or * (meaning "uncleared",
|
o a status flag, which can be empty or ! or * (meaning "uncleared",
|
||||||
"pending" and "cleared", or whatever you want)
|
"pending" and "cleared", or whatever you want)
|
||||||
|
|
||||||
o a transaction code (eg a check number),
|
o a transaction code (eg a check number),
|
||||||
|
|
||||||
o and/or a description
|
o and/or a description
|
||||||
|
|
||||||
then some number of postings, of some amount to some account. Each
|
then some number of postings, of some amount to some account. Each
|
||||||
posting is on its own line, consisting of:
|
posting is on its own line, consisting of:
|
||||||
|
|
||||||
o indentation of one or more spaces (or tabs)
|
o indentation of one or more spaces (or tabs)
|
||||||
@ -76,34 +76,34 @@ FILE FORMAT
|
|||||||
o optionally, two or more spaces or tabs followed by an amount
|
o optionally, two or more spaces or tabs followed by an amount
|
||||||
|
|
||||||
Usually there are two or more postings, though one or none is also pos-
|
Usually there are two or more postings, though one or none is also pos-
|
||||||
sible. The posting amounts within a transaction must always balance,
|
sible. The posting amounts within a transaction must always balance,
|
||||||
ie add up to 0. Optionally one amount can be left blank, in which case
|
ie add up to 0. Optionally one amount can be left blank, in which case
|
||||||
it will be inferred.
|
it will be inferred.
|
||||||
|
|
||||||
Dates
|
Dates
|
||||||
Simple dates
|
Simple dates
|
||||||
Within a journal file, transaction dates use Y/M/D (or Y-M-D or Y.M.D)
|
Within a journal file, transaction dates use Y/M/D (or Y-M-D or Y.M.D)
|
||||||
Leading zeros are optional. The year may be omitted, in which case it
|
Leading zeros are optional. The year may be omitted, in which case it
|
||||||
will be inferred from the context - the current transaction, the
|
will be inferred from the context - the current transaction, the
|
||||||
default year set with a default year directive, or the current date
|
default year set with a default year directive, or the current date
|
||||||
when the command is run. Some examples: 2010/01/31, 1/31, 2010-01-31,
|
when the command is run. Some examples: 2010/01/31, 1/31, 2010-01-31,
|
||||||
2010.1.31.
|
2010.1.31.
|
||||||
|
|
||||||
Secondary dates
|
Secondary dates
|
||||||
Real-life transactions sometimes involve more than one date - eg the
|
Real-life transactions sometimes involve more than one date - eg the
|
||||||
date you write a cheque, and the date it clears in your bank. When you
|
date you write a cheque, and the date it clears in your bank. When you
|
||||||
want to model this, eg for more accurate balances, you can specify
|
want to model this, eg for more accurate balances, you can specify
|
||||||
individual posting dates, which I recommend. Or, you can use the sec-
|
individual posting dates, which I recommend. Or, you can use the sec-
|
||||||
ondary dates (aka auxiliary/effective dates) feature, supported for
|
ondary dates (aka auxiliary/effective dates) feature, supported for
|
||||||
compatibility with Ledger.
|
compatibility with Ledger.
|
||||||
|
|
||||||
A secondary date can be written after the primary date, separated by an
|
A secondary date can be written after the primary date, separated by an
|
||||||
equals sign. The primary date, on the left, is used by default; the
|
equals sign. The primary date, on the left, is used by default; the
|
||||||
secondary date, on the right, is used when the --date2 flag is speci-
|
secondary date, on the right, is used when the --date2 flag is speci-
|
||||||
fied (--aux-date or --effective also work).
|
fied (--aux-date or --effective also work).
|
||||||
|
|
||||||
The meaning of secondary dates is up to you, but it's best to follow a
|
The meaning of secondary dates is up to you, but it's best to follow a
|
||||||
consistent rule. Eg write the bank's clearing date as primary, and
|
consistent rule. Eg write the bank's clearing date as primary, and
|
||||||
when needed, the date the transaction was initiated as secondary.
|
when needed, the date the transaction was initiated as secondary.
|
||||||
|
|
||||||
Here's an example. Note that a secondary date will use the year of the
|
Here's an example. Note that a secondary date will use the year of the
|
||||||
@ -119,18 +119,18 @@ FILE FORMAT
|
|||||||
$ hledger register checking --date2
|
$ hledger register checking --date2
|
||||||
2010/02/19 movie ticket assets:checking $-10 $-10
|
2010/02/19 movie ticket assets:checking $-10 $-10
|
||||||
|
|
||||||
Secondary dates require some effort; you must use them consistently in
|
Secondary dates require some effort; you must use them consistently in
|
||||||
your journal entries and remember whether to use or not use the --date2
|
your journal entries and remember whether to use or not use the --date2
|
||||||
flag for your reports. They are included in hledger for Ledger compat-
|
flag for your reports. They are included in hledger for Ledger compat-
|
||||||
ibility, but posting dates are a more powerful and less confusing
|
ibility, but posting dates are a more powerful and less confusing
|
||||||
alternative.
|
alternative.
|
||||||
|
|
||||||
Posting dates
|
Posting dates
|
||||||
You can give individual postings a different date from their parent
|
You can give individual postings a different date from their parent
|
||||||
transaction, by adding a posting comment containing a tag (see below)
|
transaction, by adding a posting comment containing a tag (see below)
|
||||||
like date:DATE. This is probably the best way to control posting dates
|
like date:DATE. This is probably the best way to control posting dates
|
||||||
precisely. Eg in this example the expense should appear in May
|
precisely. Eg in this example the expense should appear in May
|
||||||
reports, and the deduction from checking should be reported on 6/1 for
|
reports, and the deduction from checking should be reported on 6/1 for
|
||||||
easy bank reconciliation:
|
easy bank reconciliation:
|
||||||
|
|
||||||
2015/5/30
|
2015/5/30
|
||||||
@ -143,23 +143,23 @@ FILE FORMAT
|
|||||||
$ hledger -f t.j register checking
|
$ hledger -f t.j register checking
|
||||||
2015/06/01 assets:checking $-10 $-10
|
2015/06/01 assets:checking $-10 $-10
|
||||||
|
|
||||||
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's date. You can set the secondary date
|
the year of the transaction's date. You can set the secondary date
|
||||||
similarly, with date2:DATE2. The date: or date2: tags must have a
|
similarly, with date2:DATE2. The date: or date2: tags must have a
|
||||||
valid simple date value if they are present, eg a date: tag with no
|
valid simple date value if they are present, eg a date: tag with no
|
||||||
value is not allowed.
|
value is not allowed.
|
||||||
|
|
||||||
Ledger's earlier, more compact bracketed date syntax is also supported:
|
Ledger's earlier, more compact bracketed date syntax is also supported:
|
||||||
[DATE], [DATE=DATE2] or [=DATE2]. hledger will attempt to parse any
|
[DATE], [DATE=DATE2] or [=DATE2]. hledger will attempt to parse any
|
||||||
square-bracketed sequence of the 0123456789/-.= characters in this way.
|
square-bracketed sequence of the 0123456789/-.= 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
|
||||||
infers its year from DATE.
|
infers its year from DATE.
|
||||||
|
|
||||||
Account names
|
Account names
|
||||||
Account names typically have several parts separated by a full colon,
|
Account names typically have several parts separated by a full colon,
|
||||||
from which hledger derives a hierarchical chart of accounts. They can
|
from which hledger derives a hierarchical chart of accounts. They can
|
||||||
be anything you like, but in finance there are traditionally five
|
be anything you like, but in finance there are traditionally five
|
||||||
top-level accounts: assets, liabilities, income, expenses, and equity.
|
top-level accounts: assets, liabilities, income, expenses, and equity.
|
||||||
|
|
||||||
Account names may contain single spaces, eg: assets:accounts receiv-
|
Account names may contain single spaces, eg: assets:accounts receiv-
|
||||||
able. Because of this, they must always be followed by two or more
|
able. Because of this, they must always be followed by two or more
|
||||||
@ -206,31 +206,31 @@ FILE FORMAT
|
|||||||
|
|
||||||
o if there is a commodity directive specifying the format, that is used
|
o if there is a commodity directive specifying the format, that is used
|
||||||
|
|
||||||
o otherwise the format is inferred from the first posting amount in
|
o otherwise the format is inferred from the first posting amount in
|
||||||
that commodity in the journal, and the precision (number of decimal
|
that commodity in the journal, and the precision (number of decimal
|
||||||
places) will be the maximum from all posting amounts in that commmod-
|
places) will be the maximum from all posting amounts in that commmod-
|
||||||
ity
|
ity
|
||||||
|
|
||||||
o or if there are no such amounts in the journal, a default format is
|
o or if there are no such amounts in the journal, a default format is
|
||||||
used (like $1000.00).
|
used (like $1000.00).
|
||||||
|
|
||||||
Price amounts and amounts in D directives usually don't affect amount
|
Price amounts and amounts in D directives usually don't affect amount
|
||||||
format inference, but in some situations they can do so indirectly.
|
format inference, but in some situations they can do so indirectly.
|
||||||
(Eg when D's default commodity is applied to a commodity-less amount,
|
(Eg when D's default commodity is applied to a commodity-less amount,
|
||||||
or when an amountless posting is balanced using a price's commodity, or
|
or when an amountless posting is balanced using a price's commodity, or
|
||||||
when -V is used.) If you find this causing problems, set the desired
|
when -V is used.) If you find this causing problems, set the desired
|
||||||
format with a commodity directive.
|
format with a commodity directive.
|
||||||
|
|
||||||
Virtual Postings
|
Virtual Postings
|
||||||
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
|
||||||
virtual posting, which means:
|
virtual posting, which means:
|
||||||
|
|
||||||
o it is ignored when checking that the transaction is balanced
|
o it is ignored when checking that the transaction is balanced
|
||||||
|
|
||||||
o it is excluded from reports when the --real/-R flag is used, or the
|
o it is excluded from reports when the --real/-R flag is used, or the
|
||||||
real:1 query.
|
real:1 query.
|
||||||
|
|
||||||
You could use this, eg, to set an account's opening balance without
|
You could use this, eg, to set an account's opening balance without
|
||||||
needing to use the equity:opening balances account:
|
needing to use the equity:opening balances account:
|
||||||
|
|
||||||
1/1 special unbalanced posting to set initial balance
|
1/1 special unbalanced posting to set initial balance
|
||||||
@ -238,8 +238,8 @@ FILE FORMAT
|
|||||||
|
|
||||||
When the account name is bracketed, we call it a balanced virtual post-
|
When the account name is bracketed, we call it a balanced virtual post-
|
||||||
ing. This is like an ordinary virtual posting except the balanced vir-
|
ing. This is like an ordinary virtual posting except the balanced vir-
|
||||||
tual postings in a transaction must balance to 0, like the real post-
|
tual postings in a transaction must balance to 0, like the real post-
|
||||||
ings (but separately from them). Balanced virtual postings are also
|
ings (but separately from them). Balanced virtual postings are also
|
||||||
excluded by --real/-R or real:1.
|
excluded by --real/-R or real:1.
|
||||||
|
|
||||||
1/1 buy food with cash, and update some budget-tracking subaccounts elsewhere
|
1/1 buy food with cash, and update some budget-tracking subaccounts elsewhere
|
||||||
@ -249,13 +249,13 @@ FILE FORMAT
|
|||||||
[assets:checking:budget:food] $-10
|
[assets:checking:budget:food] $-10
|
||||||
|
|
||||||
Virtual postings have some legitimate uses, but those are few. You can
|
Virtual postings have some legitimate uses, but those are few. You can
|
||||||
usually find an equivalent journal entry using real postings, which is
|
usually find an equivalent journal entry using real postings, which is
|
||||||
more correct and provides better error checking.
|
more correct and provides better error checking.
|
||||||
|
|
||||||
Balance Assertions
|
Balance Assertions
|
||||||
hledger supports Ledger-style balance assertions in journal files.
|
hledger supports Ledger-style balance assertions in journal files.
|
||||||
These look like =EXPECTEDBALANCE following a posting's amount. Eg in
|
These look like =EXPECTEDBALANCE following a posting's amount. Eg in
|
||||||
this example we assert the expected dollar balance in accounts a and b
|
this example we assert the expected dollar balance in accounts a and b
|
||||||
after each posting:
|
after each posting:
|
||||||
|
|
||||||
2013/1/1
|
2013/1/1
|
||||||
@ -267,31 +267,31 @@ FILE FORMAT
|
|||||||
b $-1 =$-2
|
b $-1 =$-2
|
||||||
|
|
||||||
After reading a journal file, hledger will check all balance assertions
|
After reading a journal file, hledger will check all balance assertions
|
||||||
and report an error if any of them fail. Balance assertions can pro-
|
and report an error if any of them fail. Balance assertions can pro-
|
||||||
tect you from, eg, inadvertently disrupting reconciled balances while
|
tect you from, eg, inadvertently disrupting reconciled balances while
|
||||||
cleaning up old entries. You can disable them temporarily with the
|
cleaning up old entries. You can disable them temporarily with the
|
||||||
--ignore-assertions flag, which can be useful for troubleshooting or
|
--ignore-assertions flag, which can be useful for troubleshooting or
|
||||||
for reading Ledger files.
|
for reading Ledger files.
|
||||||
|
|
||||||
Assertions and ordering
|
Assertions and ordering
|
||||||
hledger sorts an account'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. Note this is dif-
|
then (for postings on the same day) by parse order. Note this is dif-
|
||||||
ferent from Ledger, which sorts assertions only by parse order. (Also,
|
ferent from Ledger, which sorts assertions only by parse order. (Also,
|
||||||
Ledger assertions do not see the accumulated effect of repeated post-
|
Ledger assertions do not see the accumulated effect of repeated post-
|
||||||
ings to the same account within a transaction.)
|
ings to the same account within a transaction.)
|
||||||
|
|
||||||
So, hledger balance assertions keep working if you reorder differ-
|
So, hledger balance assertions keep working if you reorder differ-
|
||||||
ently-dated transactions within the journal. But if you reorder
|
ently-dated transactions within the journal. But if you reorder
|
||||||
same-dated transactions or postings, assertions might break and require
|
same-dated transactions or postings, assertions might break and require
|
||||||
updating. This order dependence does bring an advantage: precise con-
|
updating. This order dependence does bring an advantage: precise con-
|
||||||
trol over the order of postings and assertions within a day, so you can
|
trol over the order of postings and assertions within a day, so you can
|
||||||
assert intra-day balances.
|
assert intra-day balances.
|
||||||
|
|
||||||
Assertions and included files
|
Assertions and included files
|
||||||
With included files, things are a little more complicated. Including
|
With included files, things are a little more complicated. Including
|
||||||
preserves the ordering of postings and assertions. If you have multi-
|
preserves the ordering of postings and assertions. If you have multi-
|
||||||
ple postings to an account on the same day, split across different
|
ple postings to an account on the same day, split across different
|
||||||
files, and you also want to assert the account's balance on the same
|
files, 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.
|
day, you'll have to put the assertion in the right file.
|
||||||
|
|
||||||
Assertions and multiple -f options
|
Assertions and multiple -f options
|
||||||
@ -299,21 +299,21 @@ FILE FORMAT
|
|||||||
-f options. Use include or concatenate the files instead.
|
-f options. Use include or concatenate the files instead.
|
||||||
|
|
||||||
Assertions and commodities
|
Assertions and commodities
|
||||||
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's balance within the
|
fact the assertion checks only this commodity's balance within the
|
||||||
(possibly multi-commodity) account balance. We could call this a par-
|
(possibly multi-commodity) account balance. We could call this a par-
|
||||||
tial balance assertion. This is compatible with Ledger, and makes it
|
tial balance assertion. This is compatible with Ledger, and makes it
|
||||||
possible to make assertions about accounts containing multiple commodi-
|
possible to make assertions about accounts containing multiple commodi-
|
||||||
ties.
|
ties.
|
||||||
|
|
||||||
To assert each commodity's balance in such a multi-commodity account,
|
To assert each commodity's balance in such a multi-commodity account,
|
||||||
you can add multiple postings (with amount 0 if necessary). But note
|
you can add multiple postings (with amount 0 if necessary). But note
|
||||||
that no matter how many assertions you add, you can't be sure the
|
that no matter how many assertions you add, you can't be sure the
|
||||||
account does not contain some unexpected commodity. (We'll add support
|
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.)
|
||||||
|
|
||||||
Assertions and subaccounts
|
Assertions and subaccounts
|
||||||
Balance assertions do not count the balance from subaccounts; they
|
Balance assertions do not count the balance from subaccounts; they
|
||||||
check the posted account's exclusive balance. For example:
|
check the posted account's exclusive balance. For example:
|
||||||
|
|
||||||
1/1
|
1/1
|
||||||
@ -321,7 +321,7 @@ FILE FORMAT
|
|||||||
checking 1 = 1 ; post to the parent account, its exclusive balance is now 1
|
checking 1 = 1 ; post to the parent account, its exclusive balance is now 1
|
||||||
equity
|
equity
|
||||||
|
|
||||||
The balance report's flat mode shows these exclusive balances more
|
The balance report's flat mode shows these exclusive balances more
|
||||||
clearly:
|
clearly:
|
||||||
|
|
||||||
$ hledger bal checking --flat
|
$ hledger bal checking --flat
|
||||||
@ -335,10 +335,10 @@ FILE FORMAT
|
|||||||
tual. They are not affected by the --real/-R flag or real: query.
|
tual. They are not affected by the --real/-R flag or real: query.
|
||||||
|
|
||||||
Balance Assignments
|
Balance Assignments
|
||||||
Ledger-style balance assignments are also supported. These are like
|
Ledger-style balance assignments are also supported. These are like
|
||||||
balance assertions, but with no posting amount on the left side of the
|
balance assertions, but with no posting amount on the left side of the
|
||||||
equals sign; instead it is calculated automatically so as to satisfy
|
equals sign; instead it is calculated automatically so as to satisfy
|
||||||
the assertion. This can be a convenience during data entry, eg when
|
the assertion. This can be a convenience during data entry, eg when
|
||||||
setting opening balances:
|
setting opening balances:
|
||||||
|
|
||||||
; starting a new journal, set asset account balances
|
; starting a new journal, set asset account balances
|
||||||
@ -356,27 +356,27 @@ FILE FORMAT
|
|||||||
expenses:misc
|
expenses:misc
|
||||||
|
|
||||||
The calculated amount depends on the account's balance in the commodity
|
The calculated amount depends on the account's balance in the commodity
|
||||||
at that point (which depends on the previously-dated postings of the
|
at that point (which depends on the previously-dated postings of the
|
||||||
commodity to that account since the last balance assertion or assign-
|
commodity to that account since the last balance assertion or assign-
|
||||||
ment). Note that using balance assignments makes your journal a little
|
ment). Note that using balance assignments makes your journal a little
|
||||||
less explicit; to know the exact amount posted, you have to run hledger
|
less explicit; to know the exact amount posted, you have to run hledger
|
||||||
or do the calculations yourself, instead of just reading it.
|
or do the calculations yourself, instead of just reading it.
|
||||||
|
|
||||||
Prices
|
Prices
|
||||||
Transaction prices
|
Transaction prices
|
||||||
Within a transaction posting, you can record an amount's price in
|
Within a transaction posting, you can record an amount's price in
|
||||||
another commodity. This can be used to document the cost (for a pur-
|
another commodity. This can be used to document the cost (for a pur-
|
||||||
chase), or selling price (for a sale), or the exchange rate that was
|
chase), or selling price (for a sale), or the exchange rate that was
|
||||||
used, for this transaction. These transaction prices are fixed, and do
|
used, for this transaction. These transaction prices are fixed, and do
|
||||||
not change over time.
|
not change over time.
|
||||||
|
|
||||||
Amounts with transaction prices can be displayed in the transaction
|
Amounts with transaction prices can be displayed in the transaction
|
||||||
price's commodity, by using the --cost/-B flag supported by most
|
price's commodity, by using the --cost/-B flag supported by most
|
||||||
hledger commands (mnemonic: "cost Basis").
|
hledger commands (mnemonic: "cost Basis").
|
||||||
|
|
||||||
There are several ways to record a transaction price:
|
There are several ways to record a transaction price:
|
||||||
|
|
||||||
1. Write the unit price (aka exchange rate), as @ UNITPRICE after the
|
1. Write the unit price (aka exchange rate), as @ UNITPRICE after the
|
||||||
amount:
|
amount:
|
||||||
|
|
||||||
2009/1/1
|
2009/1/1
|
||||||
@ -390,7 +390,7 @@ FILE FORMAT
|
|||||||
assets:cash
|
assets:cash
|
||||||
|
|
||||||
3. Or let hledger infer the price so as to balance the transaction. To
|
3. Or let hledger infer the price so as to balance the transaction. To
|
||||||
permit this, you must fully specify all posting amounts, and their
|
permit this, you must fully specify all posting amounts, and their
|
||||||
sum must have a non-zero amount in exactly two commodities:
|
sum must have a non-zero amount in exactly two commodities:
|
||||||
|
|
||||||
2009/1/1
|
2009/1/1
|
||||||
@ -404,38 +404,38 @@ FILE FORMAT
|
|||||||
assets:foreign currency $135.00
|
assets:foreign currency $135.00
|
||||||
assets:cash $-135.00
|
assets:cash $-135.00
|
||||||
|
|
||||||
Example use for transaction prices: recording the effective conversion
|
Example use for transaction prices: recording the effective conversion
|
||||||
rate of purchases made in a foreign currency.
|
rate of purchases made in a foreign currency.
|
||||||
|
|
||||||
Market prices
|
Market prices
|
||||||
Market prices are not tied to a particular transaction; they represent
|
Market prices are not tied to a particular transaction; they represent
|
||||||
historical exchange rates between two commodities. (Ledger calls them
|
historical exchange rates between two commodities. (Ledger calls them
|
||||||
historical prices.) For example, the prices published by a stock
|
historical prices.) For example, the prices published by a stock
|
||||||
exchange or the foreign exchange market. Some commands (balance, cur-
|
exchange or the foreign exchange market. Some commands (balance, cur-
|
||||||
rently) can use this information to show the market value of things at
|
rently) can use this information to show the market value of things at
|
||||||
a given date.
|
a given date.
|
||||||
|
|
||||||
To record market prices, use P directives in the main journal or in an
|
To record market prices, use P directives in the main journal or in an
|
||||||
included file. Their format is:
|
included file. Their format is:
|
||||||
|
|
||||||
P DATE COMMODITYBEINGPRICED UNITPRICE
|
P DATE COMMODITYBEINGPRICED UNITPRICE
|
||||||
|
|
||||||
DATE is a simple date as usual. COMMODITYBEINGPRICED is the symbol of
|
DATE is a simple date as usual. COMMODITYBEINGPRICED is the symbol of
|
||||||
the commodity being priced. UNITPRICE is an ordinary amount (symbol
|
the commodity being priced. UNITPRICE is an ordinary amount (symbol
|
||||||
and quantity) in a second commodity, specifying the unit price or con-
|
and quantity) in a second commodity, specifying the unit price or con-
|
||||||
version rate for the first commodity in terms of the second, on the
|
version rate for the first commodity in terms of the second, on the
|
||||||
given date.
|
given date.
|
||||||
|
|
||||||
For example, the following directives say that one euro was worth 1.35
|
For example, the following directives say that one euro was worth 1.35
|
||||||
US dollars during 2009, and $1.40 from 2010 onward:
|
US dollars during 2009, and $1.40 from 2010 onward:
|
||||||
|
|
||||||
P 2009/1/1 $1.35
|
P 2009/1/1 $1.35
|
||||||
P 2010/1/1 $1.40
|
P 2010/1/1 $1.40
|
||||||
|
|
||||||
Comments
|
Comments
|
||||||
Lines in the journal beginning with a semicolon (;) or hash (#) or
|
Lines in the journal beginning with a semicolon (;) or hash (#) or
|
||||||
asterisk (*) are comments, and will be ignored. (Asterisk comments
|
asterisk (*) are comments, and will be ignored. (Asterisk comments
|
||||||
make it easy to treat your journal like an org-mode outline in emacs.)
|
make it easy to treat your journal like an org-mode outline in emacs.)
|
||||||
|
|
||||||
Also, anything between comment and end comment directives is a
|
Also, anything between comment and end comment directives is a
|
||||||
(multi-line) comment. If there is no end comment, the comment extends
|
(multi-line) comment. If there is no end comment, the comment extends
|
||||||
@ -551,27 +551,27 @@ FILE FORMAT
|
|||||||
Or, you can use the --alias 'OLD=NEW' option on the command line. This
|
Or, you can use the --alias 'OLD=NEW' option on the command line. This
|
||||||
affects all entries. It's useful for trying out aliases interactively.
|
affects all entries. It's useful for trying out aliases interactively.
|
||||||
|
|
||||||
OLD and NEW are full account names. hledger will replace any occur-
|
OLD and NEW are full account names. hledger will replace any occur-
|
||||||
rence of the old account name with the new one. Subaccounts are also
|
rence of the old account name with the new one. Subaccounts are also
|
||||||
affected. Eg:
|
affected. Eg:
|
||||||
|
|
||||||
alias checking = assets:bank:wells fargo:checking
|
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"
|
||||||
|
|
||||||
Regex aliases
|
Regex aliases
|
||||||
There is also a more powerful variant that uses a regular expression,
|
There is also a more powerful variant that uses a regular expression,
|
||||||
indicated by the forward slashes. (This was the default behaviour in
|
indicated by the forward slashes. (This was the default behaviour in
|
||||||
hledger 0.24-0.25):
|
hledger 0.24-0.25):
|
||||||
|
|
||||||
alias /REGEX/ = REPLACEMENT
|
alias /REGEX/ = REPLACEMENT
|
||||||
|
|
||||||
or --alias '/REGEX/=REPLACEMENT'.
|
or --alias '/REGEX/=REPLACEMENT'.
|
||||||
|
|
||||||
REGEX is a case-insensitive regular expression. Anywhere it matches
|
REGEX is a case-insensitive regular expression. Anywhere it matches
|
||||||
inside an account name, the matched part will be replaced by REPLACE-
|
inside an account name, the matched part will be replaced by REPLACE-
|
||||||
MENT. If REGEX contains parenthesised match groups, these can be ref-
|
MENT. If REGEX contains parenthesised match groups, these can be ref-
|
||||||
erenced by the usual numeric backreferences in REPLACEMENT. Note, cur-
|
erenced by the usual numeric backreferences in REPLACEMENT. Note, cur-
|
||||||
rently regular expression aliases may cause noticeable slow-downs.
|
rently regular expression aliases may cause noticeable slow-downs.
|
||||||
(And if you use Ledger on your hledger file, they will be ignored.) Eg:
|
(And if you use Ledger on your hledger file, they will be ignored.) Eg:
|
||||||
|
|
||||||
alias /^(.+):bank:([^:]+)(.*)/ = \1:\2 \3
|
alias /^(.+):bank:([^:]+)(.*)/ = \1:\2 \3
|
||||||
@ -730,7 +730,6 @@ EDITOR SUPPORT
|
|||||||
These were written with Ledger in mind, but also work with hledger
|
These were written with Ledger in mind, but also work with hledger
|
||||||
files:
|
files:
|
||||||
|
|
||||||
|
|
||||||
Emacs http://www.ledger-cli.org/3.0/doc/ledger-mode.html
|
Emacs http://www.ledger-cli.org/3.0/doc/ledger-mode.html
|
||||||
Vim https://github.com/ledger/ledger/wiki/Get-
|
Vim https://github.com/ledger/ledger/wiki/Get-
|
||||||
ting-started
|
ting-started
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
This is hledger-lib/doc/hledger_timeclock.5.info, produced by makeinfo
|
This is hledger_timeclock.5.info, produced by makeinfo version 5.2 from
|
||||||
version 4.8 from stdin.
|
stdin.
|
||||||
|
|
||||||
|
|
||||||
File: hledger_timeclock.5.info, Node: Top, Up: (dir)
|
File: hledger_timeclock.5.info, Node: Top, Up: (dir)
|
||||||
@ -7,24 +7,22 @@ File: hledger_timeclock.5.info, Node: Top, Up: (dir)
|
|||||||
hledger_timeclock(5) hledger dev
|
hledger_timeclock(5) hledger dev
|
||||||
********************************
|
********************************
|
||||||
|
|
||||||
hledger can read timeclock files. As with Ledger, these are (a subset
|
hledger can read timeclock files. As with Ledger, these are (a subset
|
||||||
of) timeclock.el's format, containing clock-in and clock-out entries as
|
of) timeclock.el's format, containing clock-in and clock-out entries as
|
||||||
in the example below. The date is a simple date. The time format is
|
in the example below. The date is a simple date. The time format is
|
||||||
HH:MM[:SS][+-ZZZZ]. Seconds and timezone are optional. The timezone, if
|
HH:MM[:SS][+-ZZZZ]. Seconds and timezone are optional. The timezone, if
|
||||||
present, must be four digits and is ignored (currently the time is
|
present, must be four digits and is ignored (currently the time is
|
||||||
always interpreted as a local time).
|
always interpreted as a local time).
|
||||||
|
|
||||||
|
|
||||||
i 2015/03/30 09:00:00 some:account name optional description after two spaces
|
i 2015/03/30 09:00:00 some:account name optional description after two spaces
|
||||||
o 2015/03/30 09:20:00
|
o 2015/03/30 09:20:00
|
||||||
i 2015/03/31 22:21:45 another account
|
i 2015/03/31 22:21:45 another account
|
||||||
o 2015/04/01 02:00:34
|
o 2015/04/01 02:00:34
|
||||||
|
|
||||||
hledger treats each clock-in/clock-out pair as a transaction posting
|
hledger treats each clock-in/clock-out pair as a transaction posting
|
||||||
some number of hours to an account. Or if the session spans more than
|
some number of hours to an account. Or if the session spans more than
|
||||||
one day, it is split into several transactions, one for each day. For
|
one day, it is split into several transactions, one for each day. For
|
||||||
the above time log, `hledger print' generates these journal entries:
|
the above time log, 'hledger print' generates these journal entries:
|
||||||
|
|
||||||
|
|
||||||
$ hledger -f t.timeclock print
|
$ hledger -f t.timeclock print
|
||||||
2015/03/30 * optional description after two spaces
|
2015/03/30 * optional description after two spaces
|
||||||
@ -38,7 +36,6 @@ $ hledger -f t.timeclock print
|
|||||||
|
|
||||||
Here is a sample.timeclock to download and some queries to try:
|
Here is a sample.timeclock to download and some queries to try:
|
||||||
|
|
||||||
|
|
||||||
$ hledger -f sample.timeclock balance # current time balances
|
$ hledger -f sample.timeclock balance # current time balances
|
||||||
$ hledger -f sample.timeclock register -p 2009/3 # sessions in march 2009
|
$ hledger -f sample.timeclock register -p 2009/3 # sessions in march 2009
|
||||||
$ hledger -f sample.timeclock register -p weekly --depth 1 --empty # time summary by week
|
$ hledger -f sample.timeclock register -p weekly --depth 1 --empty # time summary by week
|
||||||
@ -50,18 +47,16 @@ $ hledger -f sample.timeclock register -p weekly --depth 1 --empty # time summa
|
|||||||
|
|
||||||
* at the command line, use these bash aliases:
|
* at the command line, use these bash aliases:
|
||||||
|
|
||||||
|
|
||||||
alias ti="echo i `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"
|
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.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Tag Table:
|
Tag Table:
|
||||||
Node: Top96
|
Node: Top80
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
|||||||
@ -7,11 +7,11 @@ NAME
|
|||||||
Timeclock - the time logging format of timeclock.el, as read by hledger
|
Timeclock - the time logging format of timeclock.el, as read by hledger
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
hledger can read timeclock files. As with Ledger, these are (a subset
|
hledger can read timeclock files. As with Ledger, these are (a subset
|
||||||
of) timeclock.el's format, containing clock-in and clock-out entries as
|
of) timeclock.el's format, containing clock-in and clock-out entries as
|
||||||
in the example below. The date is a simple date. The time format is
|
in the example below. The date is a simple date. The time format is
|
||||||
HH:MM[:SS][+-ZZZZ]. Seconds and timezone are optional. The timezone,
|
HH:MM[:SS][+-ZZZZ]. Seconds and timezone are optional. The timezone,
|
||||||
if present, must be four digits and is ignored (currently the time is
|
if present, must be four digits and is ignored (currently the time is
|
||||||
always interpreted as a local time).
|
always interpreted as a local time).
|
||||||
|
|
||||||
i 2015/03/30 09:00:00 some:account name optional description after two spaces
|
i 2015/03/30 09:00:00 some:account name optional description after two spaces
|
||||||
@ -19,9 +19,9 @@ DESCRIPTION
|
|||||||
i 2015/03/31 22:21:45 another account
|
i 2015/03/31 22:21:45 another account
|
||||||
o 2015/04/01 02:00:34
|
o 2015/04/01 02:00:34
|
||||||
|
|
||||||
hledger treats each clock-in/clock-out pair as a transaction posting
|
hledger treats each clock-in/clock-out pair as a transaction posting
|
||||||
some number of hours to an account. Or if the session spans more than
|
some number of hours to an account. Or if the session spans more than
|
||||||
one day, it is split into several transactions, one for each day. For
|
one day, it is split into several transactions, one for each day. For
|
||||||
the above time log, hledger print generates these journal entries:
|
the above time log, hledger print generates these journal entries:
|
||||||
|
|
||||||
$ hledger -f t.timeclock print
|
$ hledger -f t.timeclock print
|
||||||
@ -42,7 +42,7 @@ DESCRIPTION
|
|||||||
|
|
||||||
To generate time logs, ie to clock in and clock out, you could:
|
To generate time logs, ie to clock in and clock out, you could:
|
||||||
|
|
||||||
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:
|
||||||
@ -51,13 +51,13 @@ DESCRIPTION
|
|||||||
alias to="echo o `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
|
||||||
executable renamed.
|
executable renamed.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
REPORTING BUGS
|
REPORTING BUGS
|
||||||
Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel
|
Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel
|
||||||
or hledger mail list)
|
or hledger mail list)
|
||||||
|
|
||||||
|
|
||||||
@ -71,7 +71,7 @@ COPYRIGHT
|
|||||||
|
|
||||||
|
|
||||||
SEE ALSO
|
SEE ALSO
|
||||||
hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1),
|
hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1),
|
||||||
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
|
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
|
||||||
dot(5), ledger(1)
|
dot(5), ledger(1)
|
||||||
|
|
||||||
|
|||||||
@ -1,24 +1,23 @@
|
|||||||
This is hledger-lib/doc/hledger_timedot.5.info, produced by makeinfo
|
This is hledger_timedot.5.info, produced by makeinfo version 5.2 from
|
||||||
version 4.8 from stdin.
|
stdin.
|
||||||
|
|
||||||
|
|
||||||
File: hledger_timedot.5.info, Node: Top, Up: (dir)
|
File: hledger_timedot.5.info, Node: Top, Next: FILE FORMAT, Up: (dir)
|
||||||
|
|
||||||
hledger_timedot(5) hledger dev
|
hledger_timedot(5) hledger dev
|
||||||
******************************
|
******************************
|
||||||
|
|
||||||
Timedot is a plain text format for logging dated, categorised quantities
|
Timedot is a plain text format for logging dated, categorised quantities
|
||||||
(eg time), supported by hledger. It is convenient for approximate and
|
(eg time), supported by hledger. It is convenient for approximate and
|
||||||
retroactive time logging, eg when the real-time clock-in/out required
|
retroactive time logging, eg when the real-time clock-in/out required
|
||||||
with a timeclock file is too precise or too interruptive. It can be
|
with a timeclock file is too precise or too interruptive. It can be
|
||||||
formatted like a bar chart, making clear at a glance where time was
|
formatted like a bar chart, making clear at a glance where time was
|
||||||
spent.
|
spent.
|
||||||
|
|
||||||
Though called "timedot", the format does not specify the commodity
|
Though called "timedot", the format does not specify the commodity
|
||||||
being logged, so could represent other dated, quantifiable things. Eg
|
being logged, so could represent other dated, quantifiable things. Eg
|
||||||
you could record a single-entry journal of financial transactions,
|
you could record a single-entry journal of financial transactions,
|
||||||
perhaps slightly more conveniently than with hledger_journal(5) format.
|
perhaps slightly more conveniently than with hledger_journal(5) format.
|
||||||
|
|
||||||
* Menu:
|
* Menu:
|
||||||
|
|
||||||
* FILE FORMAT::
|
* FILE FORMAT::
|
||||||
@ -29,26 +28,24 @@ File: hledger_timedot.5.info, Node: FILE FORMAT, Prev: Top, Up: Top
|
|||||||
1 FILE FORMAT
|
1 FILE FORMAT
|
||||||
*************
|
*************
|
||||||
|
|
||||||
A timedot file contains a series of day entries. A day entry begins with
|
A timedot file contains a series of day entries. A day entry begins
|
||||||
a date, and is followed by category/quantity pairs, one per line. Dates
|
with a date, and is followed by category/quantity pairs, one per line.
|
||||||
are hledger-style simple dates (see hledger_journal(5)). Categories are
|
Dates are hledger-style simple dates (see hledger_journal(5)).
|
||||||
hledger-style account names, optionally indented. There must be at least
|
Categories are hledger-style account names, optionally indented. There
|
||||||
two spaces between the category and the quantity. Quantities can be
|
must be at least two spaces between the category and the quantity.
|
||||||
written in two ways:
|
Quantities can be written in two ways:
|
||||||
|
|
||||||
1. a series of dots (period characters). Each dot represents "a
|
1. a series of dots (period characters). Each dot represents "a
|
||||||
quarter" - eg, a quarter hour. Spaces can be used to group dots
|
quarter" - eg, a quarter hour. Spaces can be used to group dots
|
||||||
into hours, for easier counting.
|
into hours, for easier counting.
|
||||||
|
|
||||||
2. a number (integer or decimal), representing "units" - eg, hours. A
|
2. a number (integer or decimal), representing "units" - eg, hours. A
|
||||||
good alternative when dots are cumbersome. (A number also can
|
good alternative when dots are cumbersome. (A number also can
|
||||||
record negative quantities.)
|
record negative quantities.)
|
||||||
|
|
||||||
|
Blank lines and lines beginning with #, ; or * are ignored. An
|
||||||
Blank lines and lines beginning with #, ; or * are ignored. An
|
|
||||||
example:
|
example:
|
||||||
|
|
||||||
|
|
||||||
# on this day, 6h was spent on client work, 1.5h on haskell FOSS work, etc.
|
# on this day, 6h was spent on client work, 1.5h on haskell FOSS work, etc.
|
||||||
2016/2/1
|
2016/2/1
|
||||||
inc:client1 .... .... .... .... .... ....
|
inc:client1 .... .... .... .... .... ....
|
||||||
@ -61,7 +58,6 @@ biz:research .
|
|||||||
|
|
||||||
Or with numbers:
|
Or with numbers:
|
||||||
|
|
||||||
|
|
||||||
2016/2/3
|
2016/2/3
|
||||||
inc:client1 4
|
inc:client1 4
|
||||||
fos:hledger 3
|
fos:hledger 3
|
||||||
@ -69,7 +65,6 @@ biz:research 1
|
|||||||
|
|
||||||
Reporting:
|
Reporting:
|
||||||
|
|
||||||
|
|
||||||
$ hledger -f t.timedot print date:2016/2/2
|
$ hledger -f t.timedot print date:2016/2/2
|
||||||
2016/02/02 *
|
2016/02/02 *
|
||||||
(inc:client1) 2.00
|
(inc:client1) 2.00
|
||||||
@ -77,7 +72,6 @@ $ hledger -f t.timedot print date:2016/2/2
|
|||||||
2016/02/02 *
|
2016/02/02 *
|
||||||
(biz:research) 0.25
|
(biz:research) 0.25
|
||||||
|
|
||||||
|
|
||||||
$ hledger -f t.timedot bal --daily --tree
|
$ hledger -f t.timedot bal --daily --tree
|
||||||
Balance changes in 2016/02/01-2016/02/03:
|
Balance changes in 2016/02/01-2016/02/03:
|
||||||
|
|
||||||
@ -93,15 +87,13 @@ Balance changes in 2016/02/01-2016/02/03:
|
|||||||
------------++----------------------------------------
|
------------++----------------------------------------
|
||||||
|| 7.75 2.25 8.00
|
|| 7.75 2.25 8.00
|
||||||
|
|
||||||
I prefer to use period for separating account components. We can make
|
I prefer to use period for separating account components. We can
|
||||||
this work with an account alias:
|
make this work with an account alias:
|
||||||
|
|
||||||
|
|
||||||
2016/2/4
|
2016/2/4
|
||||||
fos.hledger.timedot 4
|
fos.hledger.timedot 4
|
||||||
fos.ledger ..
|
fos.ledger ..
|
||||||
|
|
||||||
|
|
||||||
$ hledger -f t.timedot --alias /\\./=: bal date:2016/2/4
|
$ hledger -f t.timedot --alias /\\./=: bal date:2016/2/4
|
||||||
4.50 fos
|
4.50 fos
|
||||||
4.00 hledger:timedot
|
4.00 hledger:timedot
|
||||||
@ -111,11 +103,10 @@ $ hledger -f t.timedot --alias /\\./=: bal date:2016/2/4
|
|||||||
|
|
||||||
Here is a sample.timedot.
|
Here is a sample.timedot.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Tag Table:
|
Tag Table:
|
||||||
Node: Top94
|
Node: Top78
|
||||||
Node: FILE FORMAT876
|
Node: FILE FORMAT882
|
||||||
Ref: #file-format979
|
Ref: #file-format985
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
|||||||
@ -63,12 +63,6 @@ show period balances (changes) at startup instead of historical balances
|
|||||||
show full account names, unindented
|
show full account names, unindented
|
||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
.TP
|
|
||||||
.B \f[C]\-V\ \-\-value\f[]
|
|
||||||
show amounts as their current market value in their default valuation
|
|
||||||
commodity (accounts screen only)
|
|
||||||
.RS
|
|
||||||
.RE
|
|
||||||
.PP
|
.PP
|
||||||
hledger general options:
|
hledger general options:
|
||||||
.TP
|
.TP
|
||||||
@ -208,6 +202,12 @@ price, if any)
|
|||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
.TP
|
.TP
|
||||||
|
.B \f[C]\-V\ \-\-value\f[]
|
||||||
|
convert amounts to their market value on the report end date (using the
|
||||||
|
most recent applicable market price, if any)
|
||||||
|
.RS
|
||||||
|
.RE
|
||||||
|
.TP
|
||||||
.B \f[C]\-\-pivot\ TAGNAME\f[]
|
.B \f[C]\-\-pivot\ TAGNAME\f[]
|
||||||
organize reports by some tag\[aq]s value instead of by account
|
organize reports by some tag\[aq]s value instead of by account
|
||||||
.RS
|
.RS
|
||||||
|
|||||||
@ -1,24 +1,22 @@
|
|||||||
This is hledger-ui/doc/hledger-ui.1.info, produced by makeinfo version
|
This is hledger-ui.1.info, produced by makeinfo version 5.2 from stdin.
|
||||||
4.8 from stdin.
|
|
||||||
|
|
||||||
|
|
||||||
File: hledger-ui.1.info, Node: Top, Up: (dir)
|
File: hledger-ui.1.info, Node: Top, Next: OPTIONS, Up: (dir)
|
||||||
|
|
||||||
hledger-ui(1) hledger-ui dev
|
hledger-ui(1) hledger-ui dev
|
||||||
****************************
|
****************************
|
||||||
|
|
||||||
hledger-ui is hledger's curses-style interface, providing an efficient
|
hledger-ui is hledger's curses-style interface, providing an efficient
|
||||||
full-window text UI for viewing accounts and transactions, and some
|
full-window text UI for viewing accounts and transactions, and some
|
||||||
limited data entry capability. It is easier than hledger's command-line
|
limited data entry capability. It is easier than hledger's command-line
|
||||||
interface, and sometimes quicker and more convenient than the web
|
interface, and sometimes quicker and more convenient than the web
|
||||||
interface.
|
interface.
|
||||||
|
|
||||||
Like hledger, it reads data from one or more files in hledger
|
Like hledger, it reads data from one or more files in hledger
|
||||||
journal, timeclock, timedot, or CSV format specified with `-f', or
|
journal, timeclock, timedot, or CSV format specified with '-f', or
|
||||||
`$LEDGER_FILE', or `$HOME/.hledger.journal' (on windows, perhaps
|
'$LEDGER_FILE', or '$HOME/.hledger.journal' (on windows, perhaps
|
||||||
`C:/Users/USER/.hledger.journal'). For more about this see hledger(1),
|
'C:/Users/USER/.hledger.journal'). For more about this see hledger(1),
|
||||||
hledger_journal(5) etc.
|
hledger_journal(5) etc.
|
||||||
|
|
||||||
* Menu:
|
* Menu:
|
||||||
|
|
||||||
* OPTIONS::
|
* OPTIONS::
|
||||||
@ -31,121 +29,124 @@ File: hledger-ui.1.info, Node: OPTIONS, Next: KEYS, Prev: Top, Up: Top
|
|||||||
1 OPTIONS
|
1 OPTIONS
|
||||||
*********
|
*********
|
||||||
|
|
||||||
Note: if invoking hledger-ui as a hledger subcommand, write `--' before
|
Note: if invoking hledger-ui as a hledger subcommand, write '--' before
|
||||||
options as shown above.
|
options as shown above.
|
||||||
|
|
||||||
Any QUERYARGS are interpreted as a hledger search query which filters
|
Any QUERYARGS are interpreted as a hledger search query which filters
|
||||||
the data.
|
the data.
|
||||||
|
|
||||||
`--watch'
|
'--watch'
|
||||||
|
|
||||||
watch for data and date changes and reload automatically
|
watch for data and date changes and reload automatically
|
||||||
|
'--theme=default|terminal|greenterm'
|
||||||
|
|
||||||
`--theme=default|terminal|greenterm'
|
|
||||||
use this custom display theme
|
use this custom display theme
|
||||||
|
'--register=ACCTREGEX'
|
||||||
|
|
||||||
`--register=ACCTREGEX'
|
|
||||||
start in the (first) matched account's register screen
|
start in the (first) matched account's register screen
|
||||||
|
'--change'
|
||||||
|
|
||||||
`--change'
|
|
||||||
show period balances (changes) at startup instead of historical
|
show period balances (changes) at startup instead of historical
|
||||||
balances
|
balances
|
||||||
|
'--flat'
|
||||||
|
|
||||||
`--flat'
|
|
||||||
show full account names, unindented
|
show full account names, unindented
|
||||||
|
|
||||||
`-V --value'
|
|
||||||
show amounts as their current market value in their default
|
|
||||||
valuation commodity (accounts screen only)
|
|
||||||
|
|
||||||
hledger general options:
|
hledger general options:
|
||||||
|
|
||||||
`-h'
|
'-h'
|
||||||
show general usage (or after COMMAND, the command's usage)
|
|
||||||
|
show general usage (or after COMMAND, the command's usage)
|
||||||
|
'--help'
|
||||||
|
|
||||||
`--help'
|
|
||||||
show the current program's manual as plain text (or after an add-on
|
show the current program's manual as plain text (or after an add-on
|
||||||
COMMAND, the add-on's manual)
|
COMMAND, the add-on's manual)
|
||||||
|
'--man'
|
||||||
|
|
||||||
`--man'
|
|
||||||
show the current program's manual with man
|
show the current program's manual with man
|
||||||
|
'--info'
|
||||||
|
|
||||||
`--info'
|
|
||||||
show the current program's manual with info
|
show the current program's manual with info
|
||||||
|
'--version'
|
||||||
|
|
||||||
`--version'
|
|
||||||
show version
|
show version
|
||||||
|
'--debug[=N]'
|
||||||
|
|
||||||
`--debug[=N]'
|
|
||||||
show debug output (levels 1-9, default: 1)
|
show debug output (levels 1-9, default: 1)
|
||||||
|
'-f FILE --file=FILE'
|
||||||
|
|
||||||
`-f FILE --file=FILE'
|
use a different input file. For stdin, use -
|
||||||
use a different input file. For stdin, use -
|
'--rules-file=RULESFILE'
|
||||||
|
|
||||||
`--rules-file=RULESFILE'
|
|
||||||
Conversion rules file to use when reading CSV (default: FILE.rules)
|
Conversion rules file to use when reading CSV (default: FILE.rules)
|
||||||
|
'--alias=OLD=NEW'
|
||||||
|
|
||||||
`--alias=OLD=NEW'
|
|
||||||
display accounts named OLD as NEW
|
display accounts named OLD as NEW
|
||||||
|
'-I --ignore-assertions'
|
||||||
|
|
||||||
`-I --ignore-assertions'
|
|
||||||
ignore any failing balance assertions in the journal
|
ignore any failing balance assertions in the journal
|
||||||
|
|
||||||
hledger reporting options:
|
hledger reporting options:
|
||||||
|
|
||||||
`-b --begin=DATE'
|
'-b --begin=DATE'
|
||||||
|
|
||||||
include postings/txns on or after this date
|
include postings/txns on or after this date
|
||||||
|
'-e --end=DATE'
|
||||||
|
|
||||||
`-e --end=DATE'
|
|
||||||
include postings/txns before this date
|
include postings/txns before this date
|
||||||
|
'-D --daily'
|
||||||
|
|
||||||
`-D --daily'
|
|
||||||
multiperiod/multicolumn report by day
|
multiperiod/multicolumn report by day
|
||||||
|
'-W --weekly'
|
||||||
|
|
||||||
`-W --weekly'
|
|
||||||
multiperiod/multicolumn report by week
|
multiperiod/multicolumn report by week
|
||||||
|
'-M --monthly'
|
||||||
|
|
||||||
`-M --monthly'
|
|
||||||
multiperiod/multicolumn report by month
|
multiperiod/multicolumn report by month
|
||||||
|
'-Q --quarterly'
|
||||||
|
|
||||||
`-Q --quarterly'
|
|
||||||
multiperiod/multicolumn report by quarter
|
multiperiod/multicolumn report by quarter
|
||||||
|
'-Y --yearly'
|
||||||
|
|
||||||
`-Y --yearly'
|
|
||||||
multiperiod/multicolumn report by year
|
multiperiod/multicolumn report by year
|
||||||
|
'-p --period=PERIODEXP'
|
||||||
|
|
||||||
`-p --period=PERIODEXP'
|
|
||||||
set start date, end date, and/or reporting interval all at once
|
set start date, end date, and/or reporting interval all at once
|
||||||
(overrides the flags above)
|
(overrides the flags above)
|
||||||
|
'--date2'
|
||||||
|
|
||||||
`--date2'
|
|
||||||
show, and match with -b/-e/-p/date:, secondary dates instead
|
show, and match with -b/-e/-p/date:, secondary dates instead
|
||||||
|
'-C --cleared'
|
||||||
|
|
||||||
`-C --cleared'
|
|
||||||
include only cleared postings/txns
|
include only cleared postings/txns
|
||||||
|
'--pending'
|
||||||
|
|
||||||
`--pending'
|
|
||||||
include only pending postings/txns
|
include only pending postings/txns
|
||||||
|
'-U --uncleared'
|
||||||
|
|
||||||
`-U --uncleared'
|
|
||||||
include only uncleared (and pending) postings/txns
|
include only uncleared (and pending) postings/txns
|
||||||
|
'-R --real'
|
||||||
|
|
||||||
`-R --real'
|
|
||||||
include only non-virtual postings
|
include only non-virtual postings
|
||||||
|
'--depth=N'
|
||||||
|
|
||||||
`--depth=N'
|
|
||||||
hide accounts/postings deeper than N
|
hide accounts/postings deeper than N
|
||||||
|
'-E --empty'
|
||||||
|
|
||||||
`-E --empty'
|
|
||||||
show items with zero amount, normally hidden
|
show items with zero amount, normally hidden
|
||||||
|
'-B --cost'
|
||||||
|
|
||||||
`-B --cost'
|
|
||||||
convert amounts to their cost at transaction time (using the
|
convert amounts to their cost at transaction time (using the
|
||||||
transaction price, if any)
|
transaction price, if any)
|
||||||
|
'-V --value'
|
||||||
|
|
||||||
|
convert amounts to their market value on the report end date (using
|
||||||
|
the most recent applicable market price, if any)
|
||||||
|
'--pivot TAGNAME'
|
||||||
|
|
||||||
`--pivot TAGNAME'
|
|
||||||
organize reports by some tag's value instead of by account
|
organize reports by some tag's value instead of by account
|
||||||
|
'--anon'
|
||||||
|
|
||||||
`--anon'
|
|
||||||
show anonymized accounts and payees
|
show anonymized accounts and payees
|
||||||
|
|
||||||
|
|
||||||
@ -154,57 +155,57 @@ File: hledger-ui.1.info, Node: KEYS, Next: SCREENS, Prev: OPTIONS, Up: Top
|
|||||||
2 KEYS
|
2 KEYS
|
||||||
******
|
******
|
||||||
|
|
||||||
`?' shows a help dialog listing all keys. (Some of these also appear in
|
'?' shows a help dialog listing all keys. (Some of these also appear in
|
||||||
the quick help at the bottom of each screen.) Press `?' again (or
|
the quick help at the bottom of each screen.) Press '?' again (or
|
||||||
`ESCAPE', or `LEFT') to close it. The following keys work on most
|
'ESCAPE', or 'LEFT') to close it. The following keys work on most
|
||||||
screens:
|
screens:
|
||||||
|
|
||||||
The cursor keys navigate: `right' (or `enter') goes deeper, `left'
|
The cursor keys navigate: 'right' (or 'enter') goes deeper, 'left'
|
||||||
returns to the previous screen, `up'/`down'/`page up'/`page
|
returns to the previous screen, 'up'/'down'/'page up'/'page
|
||||||
down'/`home'/`end' move up and down through lists. Vi-style
|
down'/'home'/'end' move up and down through lists. Vi-style
|
||||||
`h'/`j'/`k'/`l' movement keys are also supported. A tip: movement speed
|
'h'/'j'/'k'/'l' movement keys are also supported. A tip: movement speed
|
||||||
is limited by your keyboard repeat rate, to move faster you may want to
|
is limited by your keyboard repeat rate, to move faster you may want to
|
||||||
adjust it. (If you're on a mac, the Karabiner app is one way to do
|
adjust it. (If you're on a mac, the Karabiner app is one way to do
|
||||||
that.)
|
that.)
|
||||||
|
|
||||||
With shift pressed, the cursor keys adjust the report period,
|
With shift pressed, the cursor keys adjust the report period,
|
||||||
limiting the transactions to be shown (by default, all are shown).
|
limiting the transactions to be shown (by default, all are shown).
|
||||||
`shift-down/up' steps downward and upward through these standard report
|
'shift-down/up' steps downward and upward through these standard report
|
||||||
period durations: year, quarter, month, week, day. Then,
|
period durations: year, quarter, month, week, day. Then,
|
||||||
`shift-left/right' moves to the previous/next period. `t' sets the
|
'shift-left/right' moves to the previous/next period. 't' sets the
|
||||||
report period to today. With the `--watch' option, when viewing a
|
report period to today. With the '--watch' option, when viewing a
|
||||||
"current" period (the current day, week, month, quarter, or year), the
|
"current" period (the current day, week, month, quarter, or year), the
|
||||||
period will move automatically to track the current date. To set a
|
period will move automatically to track the current date. To set a
|
||||||
non-standard period, you can use `/' and a `date:' query.
|
non-standard period, you can use '/' and a 'date:' query.
|
||||||
|
|
||||||
`/' lets you set a general filter query limiting the data shown,
|
'/' lets you set a general filter query limiting the data shown,
|
||||||
using the same query terms as in hledger and hledger-web. While editing
|
using the same query terms as in hledger and hledger-web. While editing
|
||||||
the query, you can use CTRL-a/e/d/k, BS, cursor keys; press `ENTER' to
|
the query, you can use CTRL-a/e/d/k, BS, cursor keys; press 'ENTER' to
|
||||||
set it, or `ESCAPE'to cancel. There are also keys for quickly adjusting
|
set it, or 'ESCAPE'to cancel. There are also keys for quickly adjusting
|
||||||
some common filters like account depth and cleared/uncleared (see
|
some common filters like account depth and cleared/uncleared (see
|
||||||
below). `BACKSPACE' or `DELETE' removes all filters, showing all
|
below). 'BACKSPACE' or 'DELETE' removes all filters, showing all
|
||||||
transactions.
|
transactions.
|
||||||
|
|
||||||
`ESCAPE' removes all filters and jumps back to the top screen. Or,
|
'ESCAPE' removes all filters and jumps back to the top screen. Or,
|
||||||
it cancels a minibuffer edit or help dialog in progress.
|
it cancels a minibuffer edit or help dialog in progress.
|
||||||
|
|
||||||
`g' reloads from the data file(s) and updates the current screen and
|
'g' reloads from the data file(s) and updates the current screen and
|
||||||
any previous screens. (With large files, this could cause a noticeable
|
any previous screens. (With large files, this could cause a noticeable
|
||||||
pause.)
|
pause.)
|
||||||
|
|
||||||
`I' toggles balance assertion checking. Disabling balance assertions
|
'I' toggles balance assertion checking. Disabling balance assertions
|
||||||
temporarily can be useful for troubleshooting.
|
temporarily can be useful for troubleshooting.
|
||||||
|
|
||||||
`a' runs command-line hledger's add command, and reloads the updated
|
'a' runs command-line hledger's add command, and reloads the updated
|
||||||
file. This allows some basic data entry.
|
file. This allows some basic data entry.
|
||||||
|
|
||||||
`E' runs $HLEDGER_UI_EDITOR, or $EDITOR, or a default (`emacsclient
|
'E' runs $HLEDGER_UI_EDITOR, or $EDITOR, or a default ('emacsclient
|
||||||
-a "" -nw') on the journal file. With some editors (emacs, vi), the
|
-a "" -nw') on the journal file. With some editors (emacs, vi), the
|
||||||
cursor will be positioned at the current transaction when invoked from
|
cursor will be positioned at the current transaction when invoked from
|
||||||
the register and transaction screens, and at the error location (if
|
the register and transaction screens, and at the error location (if
|
||||||
possible) when invoked from the error screen.
|
possible) when invoked from the error screen.
|
||||||
|
|
||||||
`q' quits the application.
|
'q' quits the application.
|
||||||
|
|
||||||
Additional screen-specific keys are described below.
|
Additional screen-specific keys are described below.
|
||||||
|
|
||||||
@ -227,45 +228,45 @@ File: hledger-ui.1.info, Node: Accounts screen, Next: Register screen, Up: SC
|
|||||||
3.1 Accounts screen
|
3.1 Accounts screen
|
||||||
===================
|
===================
|
||||||
|
|
||||||
This is normally the first screen displayed. It lists accounts and their
|
This is normally the first screen displayed. It lists accounts and
|
||||||
balances, like hledger's balance command. By default, it shows all
|
their balances, like hledger's balance command. By default, it shows
|
||||||
accounts and their latest ending balances (including the balances of
|
all accounts and their latest ending balances (including the balances of
|
||||||
subaccounts). if you specify a query on the command line, it shows just
|
subaccounts). if you specify a query on the command line, it shows just
|
||||||
the matched accounts and the balances from matched transactions.
|
the matched accounts and the balances from matched transactions.
|
||||||
|
|
||||||
Account names are normally indented to show the hierarchy (tree
|
Account names are normally indented to show the hierarchy (tree
|
||||||
mode). To see less detail, set a depth limit by pressing a number key,
|
mode). To see less detail, set a depth limit by pressing a number key,
|
||||||
`1' to `9'. `0' shows even less detail, collapsing all accounts to a
|
'1' to '9'. '0' shows even less detail, collapsing all accounts to a
|
||||||
single total. `-' and `+' (or `=') decrease and increase the depth
|
single total. '-' and '+' (or '=') decrease and increase the depth
|
||||||
limit. To remove the depth limit, set it higher than the maximum
|
limit. To remove the depth limit, set it higher than the maximum
|
||||||
account depth, or press `ESCAPE'.
|
account depth, or press 'ESCAPE'.
|
||||||
|
|
||||||
`F' toggles flat mode, in which accounts are shown as a flat list,
|
'F' toggles flat mode, in which accounts are shown as a flat list,
|
||||||
with their full names. In this mode, account balances exclude
|
with their full names. In this mode, account balances exclude
|
||||||
subaccounts, except for accounts at the depth limit (as with hledger's
|
subaccounts, except for accounts at the depth limit (as with hledger's
|
||||||
balance command).
|
balance command).
|
||||||
|
|
||||||
`H' toggles between showing historical balances or period balances.
|
'H' toggles between showing historical balances or period balances.
|
||||||
Historical balances (the default) are ending balances at the end of the
|
Historical balances (the default) are ending balances at the end of the
|
||||||
report period, taking into account all transactions before that date
|
report period, taking into account all transactions before that date
|
||||||
(filtered by the filter query if any), including transactions before the
|
(filtered by the filter query if any), including transactions before the
|
||||||
start of the report period. In other words, historical balances are what
|
start of the report period. In other words, historical balances are
|
||||||
you would see on a bank statement for that account (unless disturbed by
|
what you would see on a bank statement for that account (unless
|
||||||
a filter query). Period balances ignore transactions before the report
|
disturbed by a filter query). Period balances ignore transactions
|
||||||
start date, so they show the change in balance during the report period.
|
before the report start date, so they show the change in balance during
|
||||||
They are more useful eg when viewing a time log.
|
the report period. They are more useful eg when viewing a time log.
|
||||||
|
|
||||||
`C' toggles cleared mode, in which uncleared transactions and
|
'C' toggles cleared mode, in which uncleared transactions and
|
||||||
postings are not shown. `U' toggles uncleared mode, in which only
|
postings are not shown. 'U' toggles uncleared mode, in which only
|
||||||
uncleared transactions/postings are shown.
|
uncleared transactions/postings are shown.
|
||||||
|
|
||||||
`R' toggles real mode, in which virtual postings are ignored.
|
'R' toggles real mode, in which virtual postings are ignored.
|
||||||
|
|
||||||
`Z' toggles nonzero mode, in which only accounts with nonzero
|
'Z' toggles nonzero mode, in which only accounts with nonzero
|
||||||
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).
|
||||||
|
|
||||||
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.1.info, Node: Register screen, Next: Transaction screen, Prev: Accounts screen, Up: SCREENS
|
||||||
@ -274,44 +275,42 @@ File: hledger-ui.1.info, Node: Register screen, Next: Transaction screen, Pre
|
|||||||
===================
|
===================
|
||||||
|
|
||||||
This screen shows the transactions affecting a particular account, like
|
This screen shows the transactions affecting a particular account, like
|
||||||
a check register. Each line represents one transaction and shows:
|
a check register. Each line represents one transaction and shows:
|
||||||
|
|
||||||
* the other account(s) involved, in abbreviated form. (If there are
|
* the other account(s) involved, in abbreviated form. (If there are
|
||||||
both real and virtual postings, it shows only the accounts
|
both real and virtual postings, it shows only the accounts affected
|
||||||
affected by real postings.)
|
by real postings.)
|
||||||
|
|
||||||
* the overall change to the current account's balance; positive for
|
* the overall change to the current account's balance; positive for
|
||||||
an inflow to this account, negative for an outflow.
|
an inflow to this account, negative for an outflow.
|
||||||
|
|
||||||
* the running historical total or period total for the current
|
* the running historical total or period total for the current
|
||||||
account, after the transaction. This can be toggled with `H'.
|
account, after the transaction. This can be toggled with 'H'.
|
||||||
Similar to the accounts screen, the historical total is affected
|
Similar to the accounts screen, the historical total is affected by
|
||||||
by transactions (filtered by the filter query) before the report
|
transactions (filtered by the filter query) before the report start
|
||||||
start date, while the period total is not. If the historical total
|
date, while the period total is not. If the historical total is
|
||||||
is not disturbed by a filter query, it will be the running
|
not disturbed by a filter query, it will be the running historical
|
||||||
historical balance you would see on a bank register for the
|
balance you would see on a bank register for the current account.
|
||||||
current account.
|
|
||||||
|
|
||||||
|
|
||||||
If the accounts screen was in tree mode, the register screen will
|
If the accounts screen was in tree mode, the register screen will
|
||||||
include transactions from both the current account and its subaccounts.
|
include transactions from both the current account and its subaccounts.
|
||||||
If the accounts screen was in flat mode, and a non-depth-clipped account
|
If the accounts screen was in flat mode, and a non-depth-clipped account
|
||||||
was selected, the register screen will exclude transactions from
|
was selected, the register screen will exclude transactions from
|
||||||
subaccounts. In other words, the register always shows the transactions
|
subaccounts. In other words, the register always shows the transactions
|
||||||
responsible for the period balance shown on the accounts screen. As on
|
responsible for the period balance shown on the accounts screen. As on
|
||||||
the accounts screen, this can be toggled with `F'.
|
the accounts screen, this can be toggled with 'F'.
|
||||||
|
|
||||||
`C' toggles cleared mode, in which uncleared transactions and
|
'C' toggles cleared mode, in which uncleared transactions and
|
||||||
postings are not shown. `U' toggles uncleared mode, in which only
|
postings are not shown. 'U' toggles uncleared mode, in which only
|
||||||
uncleared transactions/postings are shown.
|
uncleared transactions/postings are shown.
|
||||||
|
|
||||||
`R' toggles real mode, in which virtual postings are ignored.
|
'R' toggles real mode, in which virtual postings are ignored.
|
||||||
|
|
||||||
`Z' toggles nonzero mode, in which only transactions posting a
|
'Z' toggles nonzero mode, in which only transactions posting a
|
||||||
nonzero change are shown (hledger-ui shows zero items by default, unlike
|
nonzero change are shown (hledger-ui shows zero items by default, unlike
|
||||||
command-line hledger).
|
command-line hledger).
|
||||||
|
|
||||||
Press `right' (or `enter') to view the selected transaction in
|
Press 'right' (or 'enter') to view the selected transaction in
|
||||||
detail.
|
detail.
|
||||||
|
|
||||||
|
|
||||||
@ -329,11 +328,11 @@ 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).
|
||||||
|
|
||||||
`up' and `down' will step through all transactions listed in the
|
'up' and 'down' will step through all transactions listed in the
|
||||||
previous account register screen. In the title bar, the numbers in
|
previous account register screen. In the title bar, the numbers in
|
||||||
parentheses show your position within that account register. They will
|
parentheses show your position within that account register. They will
|
||||||
vary depending on which account register you came from (remember most
|
vary depending on which account register you came from (remember most
|
||||||
transactions appear in multiple account registers). The #N number
|
transactions appear in multiple account registers). The #N number
|
||||||
preceding them is the transaction's position within the complete
|
preceding them is the transaction's position within the complete
|
||||||
unfiltered journal, which is a more stable id (at least until the next
|
unfiltered journal, which is a more stable id (at least until the next
|
||||||
reload).
|
reload).
|
||||||
@ -345,27 +344,26 @@ File: hledger-ui.1.info, Node: Error screen, Prev: Transaction screen, Up: SC
|
|||||||
================
|
================
|
||||||
|
|
||||||
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,
|
||||||
when you press g to reload. Once you have fixed the problem, press g
|
when you press g to reload. Once you have fixed the problem, press g
|
||||||
again to reload and resume normal operation. (Or, you can press escape
|
again to reload and resume normal operation. (Or, you can press escape
|
||||||
to cancel the reload attempt.)
|
to cancel the reload attempt.)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Tag Table:
|
Tag Table:
|
||||||
Node: Top88
|
Node: Top73
|
||||||
Node: OPTIONS823
|
Node: OPTIONS825
|
||||||
Ref: #options922
|
Ref: #options924
|
||||||
Node: KEYS3611
|
Node: KEYS3631
|
||||||
Ref: #keys3708
|
Ref: #keys3728
|
||||||
Node: SCREENS6278
|
Node: SCREENS6316
|
||||||
Ref: #screens6365
|
Ref: #screens6403
|
||||||
Node: Accounts screen6455
|
Node: Accounts screen6493
|
||||||
Ref: #accounts-screen6585
|
Ref: #accounts-screen6623
|
||||||
Node: Register screen8623
|
Node: Register screen8672
|
||||||
Ref: #register-screen8780
|
Ref: #register-screen8829
|
||||||
Node: Transaction screen10668
|
Node: Transaction screen10718
|
||||||
Ref: #transaction-screen10828
|
Ref: #transaction-screen10878
|
||||||
Node: Error screen11695
|
Node: Error screen11748
|
||||||
Ref: #error-screen11819
|
Ref: #error-screen11872
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
|||||||
@ -50,15 +50,11 @@ OPTIONS
|
|||||||
|
|
||||||
--flat show full account names, unindented
|
--flat show full account names, unindented
|
||||||
|
|
||||||
-V --value
|
|
||||||
show amounts as their current market value in their default val-
|
|
||||||
uation commodity (accounts screen only)
|
|
||||||
|
|
||||||
hledger general options:
|
hledger general options:
|
||||||
|
|
||||||
-h show general usage (or after COMMAND, the command's usage)
|
-h show general usage (or after COMMAND, the command's usage)
|
||||||
|
|
||||||
--help show the current program's manual as plain text (or after an
|
--help show the current program's manual as plain text (or after an
|
||||||
add-on COMMAND, the add-on's manual)
|
add-on COMMAND, the add-on's manual)
|
||||||
|
|
||||||
--man show the current program's manual with man
|
--man show the current program's manual with man
|
||||||
@ -75,7 +71,7 @@ OPTIONS
|
|||||||
use a different input file. For stdin, use -
|
use a different input file. For stdin, use -
|
||||||
|
|
||||||
--rules-file=RULESFILE
|
--rules-file=RULESFILE
|
||||||
Conversion rules file to use when reading CSV (default:
|
Conversion rules file to use when reading CSV (default:
|
||||||
FILE.rules)
|
FILE.rules)
|
||||||
|
|
||||||
--alias=OLD=NEW
|
--alias=OLD=NEW
|
||||||
@ -108,7 +104,7 @@ OPTIONS
|
|||||||
multiperiod/multicolumn report by year
|
multiperiod/multicolumn report by year
|
||||||
|
|
||||||
-p --period=PERIODEXP
|
-p --period=PERIODEXP
|
||||||
set start date, end date, and/or reporting interval all at once
|
set start date, end date, and/or reporting interval all at once
|
||||||
(overrides the flags above)
|
(overrides the flags above)
|
||||||
|
|
||||||
--date2
|
--date2
|
||||||
@ -133,9 +129,13 @@ OPTIONS
|
|||||||
show items with zero amount, normally hidden
|
show items with zero amount, normally hidden
|
||||||
|
|
||||||
-B --cost
|
-B --cost
|
||||||
convert amounts to their cost at transaction time (using the
|
convert amounts to their cost at transaction time (using the
|
||||||
transaction price, if any)
|
transaction price, if any)
|
||||||
|
|
||||||
|
-V --value
|
||||||
|
convert amounts to their market value on the report end date
|
||||||
|
(using the most recent applicable market price, if any)
|
||||||
|
|
||||||
--pivot TAGNAME
|
--pivot TAGNAME
|
||||||
organize reports by some tag's value instead of by account
|
organize reports by some tag's value instead of by account
|
||||||
|
|
||||||
|
|||||||
@ -258,6 +258,12 @@ price, if any)
|
|||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
.TP
|
.TP
|
||||||
|
.B \f[C]\-V\ \-\-value\f[]
|
||||||
|
convert amounts to their market value on the report end date (using the
|
||||||
|
most recent applicable market price, if any)
|
||||||
|
.RS
|
||||||
|
.RE
|
||||||
|
.TP
|
||||||
.B \f[C]\-\-pivot\ TAGNAME\f[]
|
.B \f[C]\-\-pivot\ TAGNAME\f[]
|
||||||
organize reports by some tag\[aq]s value instead of by account
|
organize reports by some tag\[aq]s value instead of by account
|
||||||
.RS
|
.RS
|
||||||
|
|||||||
@ -1,69 +1,68 @@
|
|||||||
This is hledger-web/doc/hledger-web.1.info, produced by makeinfo
|
This is hledger-web.1.info, produced by makeinfo version 5.2 from stdin.
|
||||||
version 4.8 from stdin.
|
|
||||||
|
|
||||||
|
|
||||||
File: hledger-web.1.info, Node: Top, Up: (dir)
|
File: hledger-web.1.info, Node: Top, Next: OPTIONS, Up: (dir)
|
||||||
|
|
||||||
hledger-web(1) hledger-web dev
|
hledger-web(1) hledger-web dev
|
||||||
******************************
|
******************************
|
||||||
|
|
||||||
hledger-web is hledger's web interface. It starts a simple web
|
hledger-web is hledger's web interface. It starts a simple web
|
||||||
application for browsing and adding transactions, and optionally opens
|
application for browsing and adding transactions, and optionally opens
|
||||||
it in a web browser window if possible. It provides a more user-friendly
|
it in a web browser window if possible. It provides a more
|
||||||
UI than the hledger CLI or hledger-ui interface, showing more at once
|
user-friendly UI than the hledger CLI or hledger-ui interface, showing
|
||||||
(accounts, the current account register, balance charts) and allowing
|
more at once (accounts, the current account register, balance charts)
|
||||||
history-aware data entry, interactive searching, and bookmarking.
|
and allowing history-aware data entry, interactive searching, and
|
||||||
|
bookmarking.
|
||||||
|
|
||||||
hledger-web also lets you share a ledger with multiple users, or even
|
hledger-web also lets you share a ledger with multiple users, or even
|
||||||
the public web. There is no access control, so if you need that you
|
the public web. There is no access control, so if you need that you
|
||||||
should put it behind a suitable web proxy. As a small protection against
|
should put it behind a suitable web proxy. As a small protection
|
||||||
data loss when running an unprotected instance, it writes a numbered
|
against data loss when running an unprotected instance, it writes a
|
||||||
backup of the main journal file (only ?) on every edit.
|
numbered backup of the main journal file (only ?) on every edit.
|
||||||
|
|
||||||
Like hledger, it reads data from one or more files in hledger
|
Like hledger, it reads data from one or more files in hledger
|
||||||
journal, timeclock, timedot, or CSV format specified with `-f', or
|
journal, timeclock, timedot, or CSV format specified with '-f', or
|
||||||
`$LEDGER_FILE', or `$HOME/.hledger.journal' (on windows, perhaps
|
'$LEDGER_FILE', or '$HOME/.hledger.journal' (on windows, perhaps
|
||||||
`C:/Users/USER/.hledger.journal'). For more about this see hledger(1),
|
'C:/Users/USER/.hledger.journal'). For more about this see hledger(1),
|
||||||
hledger_journal(5) etc.
|
hledger_journal(5) etc.
|
||||||
|
|
||||||
By default, hledger-web starts the web app in "transient mode" and
|
By default, hledger-web starts the web app in "transient mode" and
|
||||||
also opens it in your default web browser if possible. In this mode the
|
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 open in a browser
|
web app will keep running for as long as you have it open in a browser
|
||||||
window, and will exit after two minutes of inactivity (no requests and
|
window, and will exit after two minutes of inactivity (no requests and
|
||||||
no browser windows viewing it). With `--serve', it just runs the web
|
no browser windows viewing it). With '--serve', it just runs the web
|
||||||
app without exiting, and logs requests to the console.
|
app without exiting, and logs requests to the console.
|
||||||
|
|
||||||
By default the server listens on IP address 127.0.0.1, accessible
|
By default the server listens on IP address 127.0.0.1, accessible
|
||||||
only to local requests. You can use `--host' to change this, eg `--host
|
only to local requests. You can use '--host' to change this, eg '--host
|
||||||
0.0.0.0' to listen on all configured addresses.
|
0.0.0.0' to listen on all configured addresses.
|
||||||
|
|
||||||
Similarly, use `--port' to set a TCP port other than 5000, eg if you
|
Similarly, use '--port' to set a TCP port other than 5000, eg if you
|
||||||
are running multiple hledger-web instances.
|
are running multiple hledger-web instances.
|
||||||
|
|
||||||
You can use `--base-url' to change the protocol, hostname, port and
|
You can use '--base-url' to change the protocol, hostname, port and
|
||||||
path that appear in hyperlinks, useful eg for integrating hledger-web
|
path that appear in hyperlinks, useful eg for integrating hledger-web
|
||||||
within a larger website. The default is `http://HOST:PORT/' using the
|
within a larger website. The default is 'http://HOST:PORT/' using the
|
||||||
server's configured host address and TCP port (or `http://HOST' if PORT
|
server's configured host address and TCP port (or 'http://HOST' if PORT
|
||||||
is 80).
|
is 80).
|
||||||
|
|
||||||
With `--file-url' you can set a different base url for static files,
|
With '--file-url' you can set a different base url for static files,
|
||||||
eg for better caching or cookie-less serving on high performance
|
eg for better caching or cookie-less serving on high performance
|
||||||
websites.
|
websites.
|
||||||
|
|
||||||
Note there is no built-in access control (aside from listening on
|
Note there is no built-in access control (aside from listening on
|
||||||
127.0.0.1 by default). So you will need to hide hledger-web behind an
|
127.0.0.1 by default). So you will need to hide hledger-web behind an
|
||||||
authenticating proxy (such as apache or nginx) if you want to restrict
|
authenticating proxy (such as apache or nginx) if you want to restrict
|
||||||
who can see and add entries to your journal.
|
who can see and add entries to your journal.
|
||||||
|
|
||||||
Command-line options and arguments may be used to set an initial
|
Command-line options and arguments may be used to set an initial
|
||||||
filter on the data. This is not shown in the web UI, but it will be
|
filter on the data. This is not shown in the web UI, but it will be
|
||||||
applied in addition to any search query entered there.
|
applied in addition to any search query entered there.
|
||||||
|
|
||||||
With journal and timeclock files (but not CSV files, currently) the
|
With journal and timeclock files (but not CSV files, currently) the
|
||||||
web app detects changes made by other means and will show the new data
|
web app detects changes made by other means and will show the new data
|
||||||
on the next request. If a change makes the file unparseable, hledger-web
|
on the next request. If a change makes the file unparseable,
|
||||||
will show an error until the file has been fixed.
|
hledger-web will show an error until the file has been fixed.
|
||||||
|
|
||||||
* Menu:
|
* Menu:
|
||||||
|
|
||||||
* OPTIONS::
|
* OPTIONS::
|
||||||
@ -74,125 +73,131 @@ File: hledger-web.1.info, Node: OPTIONS, Prev: Top, Up: Top
|
|||||||
1 OPTIONS
|
1 OPTIONS
|
||||||
*********
|
*********
|
||||||
|
|
||||||
Note: if invoking hledger-web as a hledger subcommand, write `--'
|
Note: if invoking hledger-web as a hledger subcommand, write '--' before
|
||||||
before options as shown above.
|
options as shown above.
|
||||||
|
|
||||||
|
'--serve'
|
||||||
|
|
||||||
`--serve'
|
|
||||||
serve and log requests, don't browse or auto-exit
|
serve and log requests, don't browse or auto-exit
|
||||||
|
'--host=IPADDR'
|
||||||
|
|
||||||
`--host=IPADDR'
|
|
||||||
listen on this IP address (default: 127.0.0.1)
|
listen on this IP address (default: 127.0.0.1)
|
||||||
|
'--port=PORT'
|
||||||
|
|
||||||
`--port=PORT'
|
|
||||||
listen on this TCP port (default: 5000)
|
listen on this TCP port (default: 5000)
|
||||||
|
'--base-url=URL'
|
||||||
|
|
||||||
`--base-url=URL'
|
|
||||||
set the base url (default: http://IPADDR:PORT). You would change
|
set the base url (default: http://IPADDR:PORT). You would change
|
||||||
this when sharing over the network, or integrating within a larger
|
this when sharing over the network, or integrating within a larger
|
||||||
website.
|
website.
|
||||||
|
'--file-url=URL'
|
||||||
|
|
||||||
`--file-url=URL'
|
set the static files url (default: BASEURL/static). hledger-web
|
||||||
set the static files url (default: BASEURL/static). hledger-web
|
|
||||||
normally serves static files itself, but if you wanted to serve
|
normally serves static files itself, but if you wanted to serve
|
||||||
them from another server for efficiency, you would set the url
|
them from another server for efficiency, you would set the url with
|
||||||
with this.
|
this.
|
||||||
|
|
||||||
hledger general options:
|
hledger general options:
|
||||||
|
|
||||||
`-h'
|
'-h'
|
||||||
show general usage (or after COMMAND, the command's usage)
|
|
||||||
|
show general usage (or after COMMAND, the command's usage)
|
||||||
|
'--help'
|
||||||
|
|
||||||
`--help'
|
|
||||||
show the current program's manual as plain text (or after an add-on
|
show the current program's manual as plain text (or after an add-on
|
||||||
COMMAND, the add-on's manual)
|
COMMAND, the add-on's manual)
|
||||||
|
'--man'
|
||||||
|
|
||||||
`--man'
|
|
||||||
show the current program's manual with man
|
show the current program's manual with man
|
||||||
|
'--info'
|
||||||
|
|
||||||
`--info'
|
|
||||||
show the current program's manual with info
|
show the current program's manual with info
|
||||||
|
'--version'
|
||||||
|
|
||||||
`--version'
|
|
||||||
show version
|
show version
|
||||||
|
'--debug[=N]'
|
||||||
|
|
||||||
`--debug[=N]'
|
|
||||||
show debug output (levels 1-9, default: 1)
|
show debug output (levels 1-9, default: 1)
|
||||||
|
'-f FILE --file=FILE'
|
||||||
|
|
||||||
`-f FILE --file=FILE'
|
use a different input file. For stdin, use -
|
||||||
use a different input file. For stdin, use -
|
'--rules-file=RULESFILE'
|
||||||
|
|
||||||
`--rules-file=RULESFILE'
|
|
||||||
Conversion rules file to use when reading CSV (default: FILE.rules)
|
Conversion rules file to use when reading CSV (default: FILE.rules)
|
||||||
|
'--alias=OLD=NEW'
|
||||||
|
|
||||||
`--alias=OLD=NEW'
|
|
||||||
display accounts named OLD as NEW
|
display accounts named OLD as NEW
|
||||||
|
'-I --ignore-assertions'
|
||||||
|
|
||||||
`-I --ignore-assertions'
|
|
||||||
ignore any failing balance assertions in the journal
|
ignore any failing balance assertions in the journal
|
||||||
|
|
||||||
hledger reporting options:
|
hledger reporting options:
|
||||||
|
|
||||||
`-b --begin=DATE'
|
'-b --begin=DATE'
|
||||||
|
|
||||||
include postings/txns on or after this date
|
include postings/txns on or after this date
|
||||||
|
'-e --end=DATE'
|
||||||
|
|
||||||
`-e --end=DATE'
|
|
||||||
include postings/txns before this date
|
include postings/txns before this date
|
||||||
|
'-D --daily'
|
||||||
|
|
||||||
`-D --daily'
|
|
||||||
multiperiod/multicolumn report by day
|
multiperiod/multicolumn report by day
|
||||||
|
'-W --weekly'
|
||||||
|
|
||||||
`-W --weekly'
|
|
||||||
multiperiod/multicolumn report by week
|
multiperiod/multicolumn report by week
|
||||||
|
'-M --monthly'
|
||||||
|
|
||||||
`-M --monthly'
|
|
||||||
multiperiod/multicolumn report by month
|
multiperiod/multicolumn report by month
|
||||||
|
'-Q --quarterly'
|
||||||
|
|
||||||
`-Q --quarterly'
|
|
||||||
multiperiod/multicolumn report by quarter
|
multiperiod/multicolumn report by quarter
|
||||||
|
'-Y --yearly'
|
||||||
|
|
||||||
`-Y --yearly'
|
|
||||||
multiperiod/multicolumn report by year
|
multiperiod/multicolumn report by year
|
||||||
|
'-p --period=PERIODEXP'
|
||||||
|
|
||||||
`-p --period=PERIODEXP'
|
|
||||||
set start date, end date, and/or reporting interval all at once
|
set start date, end date, and/or reporting interval all at once
|
||||||
(overrides the flags above)
|
(overrides the flags above)
|
||||||
|
'--date2'
|
||||||
|
|
||||||
`--date2'
|
|
||||||
show, and match with -b/-e/-p/date:, secondary dates instead
|
show, and match with -b/-e/-p/date:, secondary dates instead
|
||||||
|
'-C --cleared'
|
||||||
|
|
||||||
`-C --cleared'
|
|
||||||
include only cleared postings/txns
|
include only cleared postings/txns
|
||||||
|
'--pending'
|
||||||
|
|
||||||
`--pending'
|
|
||||||
include only pending postings/txns
|
include only pending postings/txns
|
||||||
|
'-U --uncleared'
|
||||||
|
|
||||||
`-U --uncleared'
|
|
||||||
include only uncleared (and pending) postings/txns
|
include only uncleared (and pending) postings/txns
|
||||||
|
'-R --real'
|
||||||
|
|
||||||
`-R --real'
|
|
||||||
include only non-virtual postings
|
include only non-virtual postings
|
||||||
|
'--depth=N'
|
||||||
|
|
||||||
`--depth=N'
|
|
||||||
hide accounts/postings deeper than N
|
hide accounts/postings deeper than N
|
||||||
|
'-E --empty'
|
||||||
|
|
||||||
`-E --empty'
|
|
||||||
show items with zero amount, normally hidden
|
show items with zero amount, normally hidden
|
||||||
|
'-B --cost'
|
||||||
|
|
||||||
`-B --cost'
|
|
||||||
convert amounts to their cost at transaction time (using the
|
convert amounts to their cost at transaction time (using the
|
||||||
transaction price, if any)
|
transaction price, if any)
|
||||||
|
'-V --value'
|
||||||
|
|
||||||
|
convert amounts to their market value on the report end date (using
|
||||||
|
the most recent applicable market price, if any)
|
||||||
|
'--pivot TAGNAME'
|
||||||
|
|
||||||
`--pivot TAGNAME'
|
|
||||||
organize reports by some tag's value instead of by account
|
organize reports by some tag's value instead of by account
|
||||||
|
'--anon'
|
||||||
|
|
||||||
`--anon'
|
|
||||||
show anonymized accounts and payees
|
show anonymized accounts and payees
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Tag Table:
|
Tag Table:
|
||||||
Node: Top90
|
Node: Top74
|
||||||
Node: OPTIONS3144
|
Node: OPTIONS3156
|
||||||
Ref: #options3231
|
Ref: #options3243
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
|||||||
@ -57,22 +57,22 @@ DESCRIPTION
|
|||||||
With --file-url you can set a different base url for static files, eg
|
With --file-url you can set a different base url for static files, eg
|
||||||
for better caching or cookie-less serving on high performance websites.
|
for better caching or cookie-less serving on high performance websites.
|
||||||
|
|
||||||
Note there is no built-in access control (aside from listening on
|
Note there is no built-in access control (aside from listening on
|
||||||
127.0.0.1 by default). So you will need to hide hledger-web behind an
|
127.0.0.1 by default). So you will need to hide hledger-web behind an
|
||||||
authenticating proxy (such as apache or nginx) if you want to restrict
|
authenticating proxy (such as apache or nginx) if you want to restrict
|
||||||
who can see and add entries to your journal.
|
who can see and add entries to your journal.
|
||||||
|
|
||||||
Command-line options and arguments may be used to set an initial filter
|
Command-line options and arguments may be used to set an initial filter
|
||||||
on the data. This is not shown in the web UI, but it will be applied
|
on the data. This is not shown in the web UI, but it will be applied
|
||||||
in addition to any search query entered there.
|
in addition to any search query entered there.
|
||||||
|
|
||||||
With journal and timeclock files (but not CSV files, currently) the web
|
With journal and timeclock files (but not CSV files, currently) the web
|
||||||
app detects changes made by other means and will show the new data on
|
app detects changes made by other means and will show the new data on
|
||||||
the next request. If a change makes the file unparseable, hledger-web
|
the next request. If a change makes the file unparseable, hledger-web
|
||||||
will show an error until the file has been fixed.
|
will show an error until the file has been fixed.
|
||||||
|
|
||||||
OPTIONS
|
OPTIONS
|
||||||
Note: if invoking hledger-web as a hledger subcommand, write -- before
|
Note: if invoking hledger-web as a hledger subcommand, write -- before
|
||||||
options as shown above.
|
options as shown above.
|
||||||
|
|
||||||
--serve
|
--serve
|
||||||
@ -85,21 +85,21 @@ OPTIONS
|
|||||||
listen on this TCP port (default: 5000)
|
listen on this TCP port (default: 5000)
|
||||||
|
|
||||||
--base-url=URL
|
--base-url=URL
|
||||||
set the base url (default: http://IPADDR:PORT). You would
|
set the base url (default: http://IPADDR:PORT). You would
|
||||||
change this when sharing over the network, or integrating within
|
change this when sharing over the network, or integrating within
|
||||||
a larger website.
|
a larger website.
|
||||||
|
|
||||||
--file-url=URL
|
--file-url=URL
|
||||||
set the static files url (default: BASEURL/static). hledger-web
|
set the static files url (default: BASEURL/static). hledger-web
|
||||||
normally serves static files itself, but if you wanted to serve
|
normally serves static files itself, but if you wanted to serve
|
||||||
them from another server for efficiency, you would set the url
|
them from another server for efficiency, you would set the url
|
||||||
with this.
|
with this.
|
||||||
|
|
||||||
hledger general options:
|
hledger general options:
|
||||||
|
|
||||||
-h show general usage (or after COMMAND, the command's usage)
|
-h show general usage (or after COMMAND, the command's usage)
|
||||||
|
|
||||||
--help show the current program's manual as plain text (or after an
|
--help show the current program's manual as plain text (or after an
|
||||||
add-on COMMAND, the add-on's manual)
|
add-on COMMAND, the add-on's manual)
|
||||||
|
|
||||||
--man show the current program's manual with man
|
--man show the current program's manual with man
|
||||||
@ -116,7 +116,7 @@ OPTIONS
|
|||||||
use a different input file. For stdin, use -
|
use a different input file. For stdin, use -
|
||||||
|
|
||||||
--rules-file=RULESFILE
|
--rules-file=RULESFILE
|
||||||
Conversion rules file to use when reading CSV (default:
|
Conversion rules file to use when reading CSV (default:
|
||||||
FILE.rules)
|
FILE.rules)
|
||||||
|
|
||||||
--alias=OLD=NEW
|
--alias=OLD=NEW
|
||||||
@ -149,7 +149,7 @@ OPTIONS
|
|||||||
multiperiod/multicolumn report by year
|
multiperiod/multicolumn report by year
|
||||||
|
|
||||||
-p --period=PERIODEXP
|
-p --period=PERIODEXP
|
||||||
set start date, end date, and/or reporting interval all at once
|
set start date, end date, and/or reporting interval all at once
|
||||||
(overrides the flags above)
|
(overrides the flags above)
|
||||||
|
|
||||||
--date2
|
--date2
|
||||||
@ -174,9 +174,13 @@ OPTIONS
|
|||||||
show items with zero amount, normally hidden
|
show items with zero amount, normally hidden
|
||||||
|
|
||||||
-B --cost
|
-B --cost
|
||||||
convert amounts to their cost at transaction time (using the
|
convert amounts to their cost at transaction time (using the
|
||||||
transaction price, if any)
|
transaction price, if any)
|
||||||
|
|
||||||
|
-V --value
|
||||||
|
convert amounts to their market value on the report end date
|
||||||
|
(using the most recent applicable market price, if any)
|
||||||
|
|
||||||
--pivot TAGNAME
|
--pivot TAGNAME
|
||||||
organize reports by some tag's value instead of by account
|
organize reports by some tag's value instead of by account
|
||||||
|
|
||||||
|
|||||||
@ -357,6 +357,12 @@ price, if any)
|
|||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
.TP
|
.TP
|
||||||
|
.B \f[C]\-V\ \-\-value\f[]
|
||||||
|
convert amounts to their market value on the report end date (using the
|
||||||
|
most recent applicable market price, if any)
|
||||||
|
.RS
|
||||||
|
.RE
|
||||||
|
.TP
|
||||||
.B \f[C]\-\-pivot\ TAGNAME\f[]
|
.B \f[C]\-\-pivot\ TAGNAME\f[]
|
||||||
organize reports by some tag\[aq]s value instead of by account
|
organize reports by some tag\[aq]s value instead of by account
|
||||||
.RS
|
.RS
|
||||||
@ -1243,12 +1249,6 @@ is depth\-clipped (default in multicolumn reports)
|
|||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
.TP
|
.TP
|
||||||
.B \f[C]\-V\ \-\-value\f[]
|
|
||||||
convert amounts to their market value on the report end date (using the
|
|
||||||
most recent applicable market price, if any)
|
|
||||||
.RS
|
|
||||||
.RE
|
|
||||||
.TP
|
|
||||||
.B \f[C]\-A\ \-\-average\f[]
|
.B \f[C]\-A\ \-\-average\f[]
|
||||||
show a row average column (in multicolumn mode)
|
show a row average column (in multicolumn mode)
|
||||||
.RS
|
.RS
|
||||||
@ -1667,10 +1667,25 @@ show full account names, as a list (default)
|
|||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
.TP
|
.TP
|
||||||
|
.B \f[C]\-N\ \-\-no\-total\f[]
|
||||||
|
don\[aq]t show the final total row
|
||||||
|
.RS
|
||||||
|
.RE
|
||||||
|
.TP
|
||||||
.B \f[C]\-\-drop=N\f[]
|
.B \f[C]\-\-drop=N\f[]
|
||||||
in flat mode: omit N leading account name parts
|
in flat mode: omit N leading account name parts
|
||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
|
.TP
|
||||||
|
.B \f[C]\-\-no\-elide\f[]
|
||||||
|
don\[aq]t squash boring parent accounts (in tree mode)
|
||||||
|
.RS
|
||||||
|
.RE
|
||||||
|
.TP
|
||||||
|
.B \f[C]\-\-format=LINEFORMAT\f[]
|
||||||
|
in single\-column balance reports: use this custom line format
|
||||||
|
.RS
|
||||||
|
.RE
|
||||||
.PP
|
.PP
|
||||||
This command displays a simple balance sheet.
|
This command displays a simple balance sheet.
|
||||||
It currently assumes that you have top\-level accounts named
|
It currently assumes that you have top\-level accounts named
|
||||||
@ -1708,10 +1723,25 @@ show full account names, as a list (default)
|
|||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
.TP
|
.TP
|
||||||
|
.B \f[C]\-N\ \-\-no\-total\f[]
|
||||||
|
don\[aq]t show the final total row
|
||||||
|
.RS
|
||||||
|
.RE
|
||||||
|
.TP
|
||||||
.B \f[C]\-\-drop=N\f[]
|
.B \f[C]\-\-drop=N\f[]
|
||||||
in flat mode: omit N leading account name parts
|
in flat mode: omit N leading account name parts
|
||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
|
.TP
|
||||||
|
.B \f[C]\-\-no\-elide\f[]
|
||||||
|
don\[aq]t squash boring parent accounts (in tree mode)
|
||||||
|
.RS
|
||||||
|
.RE
|
||||||
|
.TP
|
||||||
|
.B \f[C]\-\-format=LINEFORMAT\f[]
|
||||||
|
in single\-column balance reports: use this custom line format
|
||||||
|
.RS
|
||||||
|
.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 "cash" (ie, liquid assets) accounts for the period.
|
||||||
@ -1784,10 +1814,25 @@ show full account names, as a list (default)
|
|||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
.TP
|
.TP
|
||||||
|
.B \f[C]\-N\ \-\-no\-total\f[]
|
||||||
|
don\[aq]t show the final total row
|
||||||
|
.RS
|
||||||
|
.RE
|
||||||
|
.TP
|
||||||
.B \f[C]\-\-drop=N\f[]
|
.B \f[C]\-\-drop=N\f[]
|
||||||
in flat mode: omit N leading account name parts
|
in flat mode: omit N leading account name parts
|
||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
|
.TP
|
||||||
|
.B \f[C]\-\-no\-elide\f[]
|
||||||
|
don\[aq]t squash boring parent accounts (in tree mode)
|
||||||
|
.RS
|
||||||
|
.RE
|
||||||
|
.TP
|
||||||
|
.B \f[C]\-\-format=LINEFORMAT\f[]
|
||||||
|
in single\-column balance reports: use this custom line format
|
||||||
|
.RS
|
||||||
|
.RE
|
||||||
.PP
|
.PP
|
||||||
This command displays a simple income statement.
|
This command displays a simple income statement.
|
||||||
It currently assumes that you have top\-level accounts named
|
It currently assumes that you have top\-level accounts named
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -121,33 +121,33 @@ OPTIONS
|
|||||||
hledger COMMAND -h shows these. Eg: hledger register --cleared.
|
hledger COMMAND -h shows these. Eg: hledger register --cleared.
|
||||||
|
|
||||||
o Command-specific options are also provided by some commands.
|
o Command-specific options are also provided by some commands.
|
||||||
hledger COMMAND -h shows these too. Eg: hledger register --average.
|
hledger COMMAND -h shows these too. Eg: hledger register --average.
|
||||||
|
|
||||||
o Some hledger commands come from separate add-on executables, which
|
o Some hledger commands come from separate add-on executables, which
|
||||||
have their own options. hledger COMMAND -h shows these, as usual.
|
have their own options. hledger COMMAND -h shows these, as usual.
|
||||||
Such options, if not also supported by hledger, should be written
|
Such options, if not also supported by hledger, should be written
|
||||||
following a double hyphen argument (--) so that hledger's option
|
following a double hyphen argument (--) so that hledger's option
|
||||||
parser does not complain. Eg: hledger ui -- --register=checking.
|
parser does not complain. Eg: hledger ui -- --register=checking.
|
||||||
Or, you can just run the add-on directly: hledger-ui --regis-
|
Or, you can just run the add-on directly: hledger-ui --regis-
|
||||||
ter=checking.
|
ter=checking.
|
||||||
|
|
||||||
Command arguments may also follow the command name. In most cases
|
Command arguments may also follow the command name. In most cases
|
||||||
these specify a query which filters the data. Command options and
|
these specify a query which filters the data. Command options and
|
||||||
arguments can be intermixed.
|
arguments can be intermixed.
|
||||||
|
|
||||||
Option and argument values containing problematic characters should be
|
Option and argument values containing problematic characters should be
|
||||||
escaped with double quotes, backslashes, or (best) single quotes. This
|
escaped with double quotes, backslashes, or (best) single quotes. This
|
||||||
means spaces, but also characters which are significant to your command
|
means spaces, but also characters which are significant to your command
|
||||||
shell, such as less-than/greater-than. Eg: hledger regis-
|
shell, such as less-than/greater-than. Eg: hledger regis-
|
||||||
ter -p 'last year' "accounts receivable (receiv-
|
ter -p 'last year' "accounts receivable (receiv-
|
||||||
able|payable)" amt:\>100.
|
able|payable)" amt:\>100.
|
||||||
|
|
||||||
Characters which are significant to the shell and also in regular
|
Characters which are significant to the shell and also in regular
|
||||||
expressions, like parentheses, the pipe symbol and the dollar sign,
|
expressions, like parentheses, the pipe symbol and the dollar sign,
|
||||||
must sometimes be double-escaped. Eg, to match the dollar symbol:
|
must sometimes be double-escaped. Eg, to match the dollar symbol:
|
||||||
hledger balance cur:'\$' or hledger balance cur:\\$.
|
hledger balance cur:'\$' or hledger balance cur:\\$.
|
||||||
|
|
||||||
There's more.. options and arguments being passed by hledger to an
|
There's more.. options and arguments being passed by hledger to an
|
||||||
add-on executable get de-escaped once in the process. In this case you
|
add-on executable get de-escaped once in the process. In this case you
|
||||||
might need triple-escaping. Eg: hledger ui cur:'\\$' or
|
might need triple-escaping. Eg: hledger ui cur:'\\$' or
|
||||||
hledger ui cur:\\\\$.
|
hledger ui cur:\\\\$.
|
||||||
@ -169,7 +169,7 @@ OPTIONS
|
|||||||
|
|
||||||
-h show general usage (or after COMMAND, the command's usage)
|
-h show general usage (or after COMMAND, the command's usage)
|
||||||
|
|
||||||
--help show the current program's manual as plain text (or after an
|
--help show the current program's manual as plain text (or after an
|
||||||
add-on COMMAND, the add-on's manual)
|
add-on COMMAND, the add-on's manual)
|
||||||
|
|
||||||
--man show the current program's manual with man
|
--man show the current program's manual with man
|
||||||
@ -186,7 +186,7 @@ OPTIONS
|
|||||||
use a different input file. For stdin, use -
|
use a different input file. For stdin, use -
|
||||||
|
|
||||||
--rules-file=RULESFILE
|
--rules-file=RULESFILE
|
||||||
Conversion rules file to use when reading CSV (default:
|
Conversion rules file to use when reading CSV (default:
|
||||||
FILE.rules)
|
FILE.rules)
|
||||||
|
|
||||||
--alias=OLD=NEW
|
--alias=OLD=NEW
|
||||||
@ -220,7 +220,7 @@ OPTIONS
|
|||||||
multiperiod/multicolumn report by year
|
multiperiod/multicolumn report by year
|
||||||
|
|
||||||
-p --period=PERIODEXP
|
-p --period=PERIODEXP
|
||||||
set start date, end date, and/or reporting interval all at once
|
set start date, end date, and/or reporting interval all at once
|
||||||
(overrides the flags above)
|
(overrides the flags above)
|
||||||
|
|
||||||
--date2
|
--date2
|
||||||
@ -245,9 +245,13 @@ OPTIONS
|
|||||||
show items with zero amount, normally hidden
|
show items with zero amount, normally hidden
|
||||||
|
|
||||||
-B --cost
|
-B --cost
|
||||||
convert amounts to their cost at transaction time (using the
|
convert amounts to their cost at transaction time (using the
|
||||||
transaction price, if any)
|
transaction price, if any)
|
||||||
|
|
||||||
|
-V --value
|
||||||
|
convert amounts to their market value on the report end date
|
||||||
|
(using the most recent applicable market price, if any)
|
||||||
|
|
||||||
--pivot TAGNAME
|
--pivot TAGNAME
|
||||||
organize reports by some tag's value instead of by account
|
organize reports by some tag's value instead of by account
|
||||||
|
|
||||||
@ -278,7 +282,6 @@ OPTIONS
|
|||||||
format automatically based on the file extension, or if that is not
|
format automatically based on the file extension, or if that is not
|
||||||
recognised, by trying each built-in "reader" in turn:
|
recognised, by trying each built-in "reader" in turn:
|
||||||
|
|
||||||
|
|
||||||
Reader: Reads: Used for file extensions:
|
Reader: Reads: Used for file extensions:
|
||||||
-----------------------------------------------------------------------------
|
-----------------------------------------------------------------------------
|
||||||
journal hledger's journal format, also .journal .j .hledger
|
journal hledger's journal format, also .journal .j .hledger
|
||||||
@ -316,13 +319,12 @@ OPTIONS
|
|||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
|
|
||||||
2009/1/1, 2009/01/01, simple dates, several sep-
|
2009/1/1, 2009/01/01, simple dates, several sep-
|
||||||
2009-1-1, 2009.1.1 arators allowed
|
2009-1-1, 2009.1.1 arators allowed
|
||||||
2009/1, 2009 same as above - a missing
|
2009/1, 2009 same as above - a missing
|
||||||
day or month defaults to 1
|
day or month defaults to 1
|
||||||
1/1, january, jan, relative dates, meaning
|
1/1, january, jan, relative dates, meaning
|
||||||
this year january 1 of the current
|
this year january 1 of the current
|
||||||
year
|
year
|
||||||
next year january 1 of next year
|
next year january 1 of next year
|
||||||
this month the 1st of the current
|
this month the 1st of the current
|
||||||
@ -331,6 +333,7 @@ OPTIONS
|
|||||||
last week the monday of the week
|
last week the monday of the week
|
||||||
before this one
|
before this one
|
||||||
lastweek spaces are optional
|
lastweek spaces are optional
|
||||||
|
|
||||||
today, yesterday, tomorrow
|
today, yesterday, tomorrow
|
||||||
|
|
||||||
Report start & end date
|
Report start & end date
|
||||||
@ -348,7 +351,6 @@ OPTIONS
|
|||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
|
|
||||||
-b 2016/3/17 begin on St. Patrick's
|
-b 2016/3/17 begin on St. Patrick's
|
||||||
day 2016
|
day 2016
|
||||||
-e 12/1 end at the start of decem-
|
-e 12/1 end at the start of decem-
|
||||||
@ -376,27 +378,25 @@ OPTIONS
|
|||||||
|
|
||||||
Period expressions
|
Period expressions
|
||||||
The -p/--period option accepts period expressions, a shorthand way of
|
The -p/--period option accepts period expressions, a shorthand way of
|
||||||
expressing a start date, end date, and/or report interval all at once.
|
expressing a start date, end date, and/or report interval all at once.
|
||||||
|
|
||||||
Here's a basic period expression specifying the first quarter of 2009.
|
Here's a basic period expression specifying the first quarter of 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:
|
||||||
|
|
||||||
-p "from 2009/1/1 to 2009/4/1"
|
-p "from 2009/1/1 to 2009/4/1"
|
||||||
|
|
||||||
Keywords like "from" and "to" are optional, and so are the spaces, as
|
Keywords like "from" and "to" are optional, and so are the spaces, as
|
||||||
long as you don't run two dates together. "to" can also be written as
|
long as you don't run two dates together. "to" can also be written as
|
||||||
"-". These are equivalent to the above:
|
"-". These are equivalent to the above:
|
||||||
|
|
||||||
|
|
||||||
-p "2009/1/1 2009/4/1"
|
-p "2009/1/1 2009/4/1"
|
||||||
-p2009/1/1to2009/4/1
|
-p2009/1/1to2009/4/1
|
||||||
-p2009/1/1-2009/4/1
|
-p2009/1/1-2009/4/1
|
||||||
|
|
||||||
Dates are smart dates, so if the current year is 2009, the above can
|
Dates are smart dates, so if the current year is 2009, the above can
|
||||||
also be written as:
|
also be written as:
|
||||||
|
|
||||||
|
|
||||||
-p "1/1 4/1"
|
-p "1/1 4/1"
|
||||||
-p "january-apr"
|
-p "january-apr"
|
||||||
-p "this year to 4/1"
|
-p "this year to 4/1"
|
||||||
@ -404,62 +404,57 @@ OPTIONS
|
|||||||
If you specify only one date, the missing start or end date will be the
|
If you specify only one date, the missing start or end date will be the
|
||||||
earliest or latest transaction in your journal:
|
earliest or latest transaction in your journal:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-p "from 2009/1/1" everything after january
|
-p "from 2009/1/1" everything after january
|
||||||
1, 2009
|
1, 2009
|
||||||
-p "from 2009/1" the same
|
-p "from 2009/1" the same
|
||||||
-p "from 2009" the same
|
-p "from 2009" the same
|
||||||
-p "to 2009" everything before january
|
-p "to 2009" everything before january
|
||||||
1, 2009
|
1, 2009
|
||||||
|
|
||||||
A single date with no "from" or "to" defines both the start and end
|
A single date with no "from" or "to" defines both the start and end
|
||||||
date like so:
|
date like so:
|
||||||
|
|
||||||
|
-p "2009" the year 2009; equivalent
|
||||||
-p "2009" the year 2009; equivalent
|
|
||||||
to "2009/1/1 to 2010/1/1"
|
to "2009/1/1 to 2010/1/1"
|
||||||
-p "2009/1" the month of jan; equiva-
|
-p "2009/1" the month of jan; equiva-
|
||||||
lent to "2009/1/1 to
|
lent to "2009/1/1 to
|
||||||
2009/2/1"
|
2009/2/1"
|
||||||
-p "2009/1/1" just that day; equivalent
|
-p "2009/1/1" just that day; equivalent
|
||||||
to "2009/1/1 to 2009/1/2"
|
to "2009/1/1 to 2009/1/2"
|
||||||
|
|
||||||
The argument of -p can also begin with, or be, a report interval
|
The argument of -p can also begin with, or be, a report interval
|
||||||
expression. The basic report intervals are daily, weekly, monthly,
|
expression. The basic report intervals are daily, weekly, monthly,
|
||||||
quarterly, or yearly, which have the same effect as the -D,-W,-M,-Q, or
|
quarterly, or yearly, which have the same effect as the -D,-W,-M,-Q, or
|
||||||
-Y flags. Between report interval and start/end dates (if any), the
|
-Y flags. Between report interval and start/end dates (if any), the
|
||||||
word in is optional. Examples:
|
word in is optional. Examples:
|
||||||
|
|
||||||
|
|
||||||
-p "weekly from 2009/1/1 to 2009/4/1"
|
-p "weekly from 2009/1/1 to 2009/4/1"
|
||||||
-p "monthly in 2008"
|
-p "monthly in 2008"
|
||||||
-p "quarterly"
|
-p "quarterly"
|
||||||
|
|
||||||
The following more complex report intervals are also supported:
|
The following more complex report intervals are also supported:
|
||||||
biweekly, bimonthly, every N days|weeks|months|quarters|years,
|
biweekly, bimonthly, every N days|weeks|months|quarters|years,
|
||||||
every Nth day [of month], every Nth day of week.
|
every Nth day [of month], every Nth day of week.
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
|
|
||||||
-p "bimonthly from 2008"
|
-p "bimonthly from 2008"
|
||||||
-p "every 2 weeks"
|
-p "every 2 weeks"
|
||||||
-p "every 5 days from 1/3"
|
-p "every 5 days from 1/3"
|
||||||
|
|
||||||
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):
|
||||||
|
|
||||||
hledger balance -H -p "every 16th day"
|
hledger balance -H -p "every 16th day"
|
||||||
|
|
||||||
Group postings from start of wednesday to end of next tuesday (N is
|
Group postings from start of wednesday to end of next tuesday (N is
|
||||||
start date and exclusive end date):
|
start date and exclusive end date):
|
||||||
|
|
||||||
hledger register checking -p "every 3rd day of week"
|
hledger register checking -p "every 3rd day of week"
|
||||||
|
|
||||||
Depth limiting
|
Depth limiting
|
||||||
With the --depth N option, commands like account, balance and register
|
With the --depth N option, commands like account, balance and register
|
||||||
will show only the uppermost accounts in the account tree, down to
|
will show only the uppermost accounts in the account tree, down to
|
||||||
level N. Use this when you want a summary with less detail.
|
level N. Use this when you want a summary with less detail.
|
||||||
|
|
||||||
Pivoting
|
Pivoting
|
||||||
@ -467,17 +462,17 @@ OPTIONS
|
|||||||
on account name. The --pivot TAGNAME option causes it to sum and orga-
|
on account name. The --pivot TAGNAME option causes it to sum and orga-
|
||||||
nize hierarchy based on some other field instead.
|
nize hierarchy based on some other field instead.
|
||||||
|
|
||||||
TAGNAME is the full, case-insensitive name of a tag you have defined,
|
TAGNAME is the full, case-insensitive name of a tag you have defined,
|
||||||
or one of the built-in implicit tags (like code or payee). As with
|
or one of the built-in implicit tags (like code or payee). As with
|
||||||
account names, when tag values have multiple:colon-separated:parts
|
account names, when tag values have multiple:colon-separated:parts
|
||||||
hledger will build hierarchy, displayed in tree-mode reports, summaris-
|
hledger will build hierarchy, displayed in tree-mode reports, summaris-
|
||||||
able with a depth limit, and so on.
|
able with a depth limit, and so on.
|
||||||
|
|
||||||
--pivot affects all reports, and is one of those options you can write
|
--pivot affects all reports, and is one of those options you can write
|
||||||
before the command name if you wish. You can think of hledger trans-
|
before the command name if you wish. You can think of hledger trans-
|
||||||
forming the journal before any other processing, replacing every post-
|
forming the journal before any other processing, replacing every post-
|
||||||
ing's account name with the value of the specified tag on that posting,
|
ing's account name with the value of the specified tag on that posting,
|
||||||
inheriting it from the transaction or using a blank value if it's not
|
inheriting it from the transaction or using a blank value if it's not
|
||||||
present.
|
present.
|
||||||
|
|
||||||
An example:
|
An example:
|
||||||
@ -502,7 +497,7 @@ OPTIONS
|
|||||||
--------------------
|
--------------------
|
||||||
0
|
0
|
||||||
|
|
||||||
One way to show only amounts with a member: value (using a query,
|
One way to show only amounts with a member: value (using a query,
|
||||||
described below):
|
described below):
|
||||||
|
|
||||||
$ hledger balance --pivot member tag:member=.
|
$ hledger balance --pivot member tag:member=.
|
||||||
@ -510,7 +505,7 @@ OPTIONS
|
|||||||
--------------------
|
--------------------
|
||||||
-2 EUR
|
-2 EUR
|
||||||
|
|
||||||
Another way (the acct: query matches against the pivoted "account
|
Another way (the acct: query matches against the pivoted "account
|
||||||
name"):
|
name"):
|
||||||
|
|
||||||
$ hledger balance --pivot member acct:.
|
$ hledger balance --pivot member acct:.
|
||||||
@ -521,56 +516,56 @@ OPTIONS
|
|||||||
Regular expressions
|
Regular expressions
|
||||||
hledger uses regular expressions in a number of places:
|
hledger uses regular expressions in a number of places:
|
||||||
|
|
||||||
o query terms, on the command line and in the hledger-web search form:
|
o query terms, on the command line and in the hledger-web search form:
|
||||||
REGEX, desc:REGEX, cur:REGEX, tag:...=REGEX
|
REGEX, desc:REGEX, cur:REGEX, tag:...=REGEX
|
||||||
|
|
||||||
o CSV rules conditional blocks: if REGEX ...
|
o CSV rules conditional blocks: if REGEX ...
|
||||||
|
|
||||||
o account alias directives and options: alias /REGEX/ = REPLACEMENT,
|
o account alias directives and options: alias /REGEX/ = REPLACEMENT,
|
||||||
--alias /REGEX/=REPLACEMENT
|
--alias /REGEX/=REPLACEMENT
|
||||||
|
|
||||||
hledger's regular expressions come from the regex-tdfa library. In
|
hledger's regular expressions come from the regex-tdfa library. In
|
||||||
general they:
|
general they:
|
||||||
|
|
||||||
o are case insensitive
|
o are case insensitive
|
||||||
|
|
||||||
o are infix matching (do not need to match the entire thing being
|
o are infix matching (do not need to match the entire thing being
|
||||||
matched)
|
matched)
|
||||||
|
|
||||||
o are POSIX extended regular expressions
|
o are POSIX extended regular expressions
|
||||||
|
|
||||||
o also support GNU word boundaries (\<, \>, \b, \B)
|
o also support GNU word boundaries (\<, \>, \b, \B)
|
||||||
|
|
||||||
o and parenthesised capturing groups and numeric backreferences in
|
o and parenthesised capturing groups and numeric backreferences in
|
||||||
replacement strings
|
replacement strings
|
||||||
|
|
||||||
o do not support mode modifiers like (?s)
|
o do not support mode modifiers like (?s)
|
||||||
|
|
||||||
Some things to note:
|
Some things to note:
|
||||||
|
|
||||||
o In the alias directive and --alias option, regular expressions must
|
o In the alias directive and --alias option, regular expressions must
|
||||||
be enclosed in forward slashes (/REGEX/). Elsewhere in hledger,
|
be enclosed in forward slashes (/REGEX/). Elsewhere in hledger,
|
||||||
these are not required.
|
these are not required.
|
||||||
|
|
||||||
o To match a regular expression metacharacter like $ as a literal char-
|
o To match a regular expression metacharacter like $ as a literal char-
|
||||||
acter, prepend a backslash. Eg to search for amounts with the dollar
|
acter, prepend a backslash. Eg to search for amounts with the dollar
|
||||||
sign in hledger-web, write cur:\$.
|
sign in hledger-web, write cur:\$.
|
||||||
|
|
||||||
o On the command line, some metacharacters like $ have a special mean-
|
o On the command line, some metacharacters like $ have a special mean-
|
||||||
ing to the shell and so must be escaped a second time, with single or
|
ing to the shell and so must be escaped a second time, with single or
|
||||||
double quotes or another backslash. Eg, to match amounts with the
|
double quotes or another backslash. Eg, to match amounts with the
|
||||||
dollar sign from the command line, write cur:'\$' or cur:\\$.
|
dollar sign from the command line, write cur:'\$' or cur:\\$.
|
||||||
|
|
||||||
QUERIES
|
QUERIES
|
||||||
One of hledger's strengths is being able to quickly report on precise
|
One of hledger's strengths is being able to quickly report on precise
|
||||||
subsets of your data. Most commands accept an optional query expres-
|
subsets of your data. Most commands accept an optional query expres-
|
||||||
sion, written as arguments after the command name, to filter the data
|
sion, written as arguments after the command name, to filter the data
|
||||||
by date, account name or other criteria. The syntax is similar to a
|
by date, account name or other criteria. The syntax is similar to a
|
||||||
web search: one or more space-separated search terms, quotes to enclose
|
web search: one or more space-separated search terms, quotes to enclose
|
||||||
whitespace, optional prefixes to match specific fields. Multiple
|
whitespace, optional prefixes to match specific fields. Multiple
|
||||||
search terms are combined as follows:
|
search terms are combined as follows:
|
||||||
|
|
||||||
All commands except print: show transactions/postings/accounts which
|
All commands except print: show transactions/postings/accounts which
|
||||||
match (or negatively match)
|
match (or negatively match)
|
||||||
|
|
||||||
o any of the description terms AND
|
o any of the description terms AND
|
||||||
@ -597,22 +592,22 @@ QUERIES
|
|||||||
same as above
|
same as above
|
||||||
|
|
||||||
amt:N, amt:<N, amt:<=N, amt:>N, amt:>=N
|
amt:N, amt:<N, amt:<=N, amt:>N, amt:>=N
|
||||||
match postings with a single-commodity amount that is equal to,
|
match postings with a single-commodity amount that is equal to,
|
||||||
less than, or greater than N. (Multi-commodity amounts are not
|
less than, or greater than N. (Multi-commodity amounts are not
|
||||||
tested, and will always match.) The comparison has two modes: if
|
tested, and will always match.) The comparison has two modes: if
|
||||||
N is preceded by a + or - sign (or is 0), the two signed numbers
|
N is preceded by a + or - sign (or is 0), the two signed numbers
|
||||||
are compared. Otherwise, the absolute magnitudes are compared,
|
are compared. Otherwise, the absolute magnitudes are compared,
|
||||||
ignoring sign.
|
ignoring sign.
|
||||||
|
|
||||||
code:REGEX
|
code:REGEX
|
||||||
match by transaction code (eg check number)
|
match by transaction code (eg check number)
|
||||||
|
|
||||||
cur:REGEX
|
cur:REGEX
|
||||||
match postings or transactions including any amounts whose cur-
|
match postings or transactions including any amounts whose cur-
|
||||||
rency/commodity symbol is fully matched by REGEX. (For a par-
|
rency/commodity symbol is fully matched by REGEX. (For a par-
|
||||||
tial match, use .*REGEX.*). Note, to match characters which are
|
tial match, use .*REGEX.*). Note, to match characters which are
|
||||||
regex-significant, like the dollar sign ($), you need to prepend
|
regex-significant, like the dollar sign ($), you need to prepend
|
||||||
\. And when using the command line you need to add one more
|
\. And when using the command line you need to add one more
|
||||||
level of quoting to hide it from the shell, so eg do:
|
level of quoting to hide it from the shell, so eg do:
|
||||||
hledger print cur:'\$' or hledger print cur:\\$.
|
hledger print cur:'\$' or hledger print cur:\\$.
|
||||||
|
|
||||||
@ -621,29 +616,29 @@ QUERIES
|
|||||||
|
|
||||||
date:PERIODEXPR
|
date:PERIODEXPR
|
||||||
match dates within the specified period. PERIODEXPR is a period
|
match dates within the specified period. PERIODEXPR is a period
|
||||||
expression (with no report interval). Examples: date:2016,
|
expression (with no report interval). Examples: date:2016,
|
||||||
date:thismonth, date:2000/2/1-2/15, date:lastweek-. If the
|
date:thismonth, date:2000/2/1-2/15, date:lastweek-. If the
|
||||||
--date2 command line flag is present, this matches secondary
|
--date2 command line flag is present, this matches secondary
|
||||||
dates instead.
|
dates instead.
|
||||||
|
|
||||||
date2:PERIODEXPR
|
date2:PERIODEXPR
|
||||||
match secondary dates within the specified period.
|
match secondary dates within the specified period.
|
||||||
|
|
||||||
depth:N
|
depth:N
|
||||||
match (or display, depending on command) accounts at or above
|
match (or display, depending on command) accounts at or above
|
||||||
this depth
|
this depth
|
||||||
|
|
||||||
real:, real:0
|
real:, real:0
|
||||||
match real or virtual postings respectively
|
match real or virtual postings respectively
|
||||||
|
|
||||||
status:*, status:!, status:
|
status:*, status:!, status:
|
||||||
match cleared, pending, or uncleared/pending transactions
|
match cleared, pending, or uncleared/pending transactions
|
||||||
respectively
|
respectively
|
||||||
|
|
||||||
tag:REGEX[=REGEX]
|
tag:REGEX[=REGEX]
|
||||||
match by tag name, and optionally also by tag value. Note a
|
match by tag name, and optionally also by tag value. Note a
|
||||||
tag: query is considered to match a transaction if it matches
|
tag: query is considered to match a transaction if it matches
|
||||||
any of the postings. Also remember that postings inherit the
|
any of the postings. Also remember that postings inherit the
|
||||||
tags of their parent transaction.
|
tags of their parent transaction.
|
||||||
|
|
||||||
not: before any of the above negates the match.
|
not: before any of the above negates the match.
|
||||||
@ -651,24 +646,24 @@ QUERIES
|
|||||||
inacct:ACCTNAME
|
inacct:ACCTNAME
|
||||||
a special term used automatically when you click an account name
|
a special term used automatically when you click an account name
|
||||||
in hledger-web, specifying the account register we are currently
|
in hledger-web, specifying the account register we are currently
|
||||||
in (selects the transactions of that account and how to show
|
in (selects the transactions of that account and how to show
|
||||||
them, can be filtered further with acct etc). Not supported
|
them, can be filtered further with acct etc). Not supported
|
||||||
elsewhere in hledger.
|
elsewhere in hledger.
|
||||||
|
|
||||||
Some of these can also be expressed as command-line options (eg depth:2
|
Some of these can also be expressed as command-line options (eg depth:2
|
||||||
is equivalent to --depth 2). Generally you can mix options and query
|
is equivalent to --depth 2). Generally you can mix options and query
|
||||||
arguments, and the resulting query will be their intersection (perhaps
|
arguments, and the resulting query will be their intersection (perhaps
|
||||||
excluding the -p/--period option).
|
excluding the -p/--period option).
|
||||||
|
|
||||||
COMMANDS
|
COMMANDS
|
||||||
hledger provides a number of subcommands; hledger with no arguments
|
hledger provides a number of subcommands; hledger with no arguments
|
||||||
shows a list.
|
shows a list.
|
||||||
|
|
||||||
If you install additional hledger-* packages, or if you put programs or
|
If you install additional hledger-* packages, or if you put programs or
|
||||||
scripts named hledger-NAME in your PATH, these will also be listed as
|
scripts named hledger-NAME in your PATH, these will also be listed as
|
||||||
subcommands.
|
subcommands.
|
||||||
|
|
||||||
Run a subcommand by writing its name as first argument (eg
|
Run a subcommand by writing its name as first argument (eg
|
||||||
hledger incomestatement). You can also write any unambiguous prefix of
|
hledger incomestatement). You can also write any unambiguous prefix of
|
||||||
a command name (hledger inc), or one of the standard short aliases dis-
|
a command name (hledger inc), or one of the standard short aliases dis-
|
||||||
played in the command list (hledger is).
|
played in the command list (hledger is).
|
||||||
@ -683,14 +678,14 @@ COMMANDS
|
|||||||
--drop=N
|
--drop=N
|
||||||
in flat mode: omit N leading account name parts
|
in flat mode: omit N leading account name parts
|
||||||
|
|
||||||
This command lists all account names that are in use (ie, all the
|
This command lists all account names that are in use (ie, all the
|
||||||
accounts which have at least one transaction posting to them). With
|
accounts which have at least one transaction posting to them). With
|
||||||
query arguments, only matched account names are shown.
|
query arguments, only matched account names are shown.
|
||||||
|
|
||||||
It shows a flat list by default. With --tree, it uses indentation to
|
It shows a flat list by default. With --tree, it uses indentation to
|
||||||
show the account hierarchy.
|
show the account hierarchy.
|
||||||
|
|
||||||
In flat mode you can add --drop N to omit the first few account name
|
In flat mode you can add --drop N to omit the first few account name
|
||||||
components.
|
components.
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
@ -733,8 +728,8 @@ COMMANDS
|
|||||||
activity
|
activity
|
||||||
Show an ascii barchart of posting counts per interval.
|
Show an ascii barchart of posting counts per interval.
|
||||||
|
|
||||||
The activity command displays an ascii histogram showing transaction
|
The activity command displays an ascii histogram showing transaction
|
||||||
counts by day, week, month or other reporting interval (by day is the
|
counts by day, week, month or other reporting interval (by day is the
|
||||||
default). With query arguments, it counts only matched transactions.
|
default). With query arguments, it counts only matched transactions.
|
||||||
|
|
||||||
$ hledger activity --quarterly
|
$ hledger activity --quarterly
|
||||||
@ -747,24 +742,24 @@ COMMANDS
|
|||||||
Prompt for transactions and add them to the journal.
|
Prompt for transactions and add them to the journal.
|
||||||
|
|
||||||
--no-new-accounts
|
--no-new-accounts
|
||||||
don't allow creating new accounts; helps prevent typos when
|
don't allow creating new accounts; helps prevent typos when
|
||||||
entering account names
|
entering account names
|
||||||
|
|
||||||
Many hledger users edit their journals directly with a text editor, or
|
Many hledger users edit their journals directly with a text editor, or
|
||||||
generate them from CSV. For more interactive data entry, there is the
|
generate them from CSV. For more interactive data entry, there is the
|
||||||
add command, which prompts interactively on the console for new trans-
|
add command, which prompts interactively on the console for new trans-
|
||||||
actions, and appends them to the journal file (if there are multiple
|
actions, and appends them to the journal file (if there are multiple
|
||||||
-f FILE options, the first file is used.) Existing transactions are not
|
-f FILE options, the first file is used.) Existing transactions are not
|
||||||
changed. This is the only hledger command that writes to the journal
|
changed. This is the only hledger command that writes to the journal
|
||||||
file.
|
file.
|
||||||
|
|
||||||
To use it, just run hledger add and follow the prompts. You can add as
|
To use it, just run hledger add and follow the prompts. You can add as
|
||||||
many transactions as you like; when you are finished, enter . or press
|
many transactions as you like; when you are finished, enter . or press
|
||||||
control-d or control-c to exit.
|
control-d or control-c to exit.
|
||||||
|
|
||||||
Features:
|
Features:
|
||||||
|
|
||||||
o add tries to provide useful defaults, using the most similar recent
|
o add tries to provide useful defaults, using the most similar recent
|
||||||
transaction (by description) as a template.
|
transaction (by description) as a template.
|
||||||
|
|
||||||
o You can also set the initial defaults with command line arguments.
|
o You can also set the initial defaults with command line arguments.
|
||||||
@ -772,20 +767,20 @@ COMMANDS
|
|||||||
o Readline-style edit keys can be used during data entry.
|
o Readline-style edit keys can be used during data entry.
|
||||||
|
|
||||||
o The tab key will auto-complete whenever possible - accounts, descrip-
|
o The tab key will auto-complete whenever possible - accounts, descrip-
|
||||||
tions, dates (yesterday, today, tomorrow). If the input area is
|
tions, dates (yesterday, today, tomorrow). If the input area is
|
||||||
empty, it will insert the default value.
|
empty, it will insert the default value.
|
||||||
|
|
||||||
o If the journal defines a default commodity, it will be added to any
|
o If the journal defines a default commodity, it will be added to any
|
||||||
bare numbers entered.
|
bare numbers entered.
|
||||||
|
|
||||||
o A parenthesised transaction code may be entered following a date.
|
o A parenthesised transaction code may be entered following a date.
|
||||||
|
|
||||||
o Comments and tags may be entered following a description or amount.
|
o Comments and tags may be entered following a description or amount.
|
||||||
|
|
||||||
o If you make a mistake, enter < at any prompt to restart the transac-
|
o If you make a mistake, enter < at any prompt to restart the transac-
|
||||||
tion.
|
tion.
|
||||||
|
|
||||||
o Input prompts are displayed in a different colour when the terminal
|
o Input prompts are displayed in a different colour when the terminal
|
||||||
supports it.
|
supports it.
|
||||||
|
|
||||||
Example (see the tutorial for a detailed explanation):
|
Example (see the tutorial for a detailed explanation):
|
||||||
@ -822,7 +817,7 @@ COMMANDS
|
|||||||
show balance change in each period (default)
|
show balance change in each period (default)
|
||||||
|
|
||||||
--cumulative
|
--cumulative
|
||||||
show balance change accumulated across periods (in multicolumn
|
show balance change accumulated across periods (in multicolumn
|
||||||
reports)
|
reports)
|
||||||
|
|
||||||
-H --historical
|
-H --historical
|
||||||
@ -835,10 +830,6 @@ COMMANDS
|
|||||||
--flat show accounts as a list; amounts exclude subaccounts except when
|
--flat show accounts as a list; amounts exclude subaccounts except when
|
||||||
account is depth-clipped (default in multicolumn reports)
|
account is depth-clipped (default in multicolumn reports)
|
||||||
|
|
||||||
-V --value
|
|
||||||
convert amounts to their market value on the report end date
|
|
||||||
(using the most recent applicable market price, if any)
|
|
||||||
|
|
||||||
-A --average
|
-A --average
|
||||||
show a row average column (in multicolumn mode)
|
show a row average column (in multicolumn mode)
|
||||||
|
|
||||||
@ -1062,13 +1053,13 @@ COMMANDS
|
|||||||
$ hledger -f t.j bal euros -V -e 2016/12/21
|
$ hledger -f t.j bal euros -V -e 2016/12/21
|
||||||
$103.00 assets:euros
|
$103.00 assets:euros
|
||||||
|
|
||||||
Currently, hledger's -V only uses market prices recorded with P direc-
|
Currently, hledger's -V only uses market prices recorded with P direc-
|
||||||
tives, not transaction prices (unlike Ledger).
|
tives, not transaction prices (unlike Ledger).
|
||||||
|
|
||||||
Using -B and -V together is allowed.
|
Using -B and -V together is allowed.
|
||||||
|
|
||||||
Custom balance output
|
Custom balance output
|
||||||
In simple (non-multi-column) balance reports, you can customise the
|
In simple (non-multi-column) balance reports, you can customise the
|
||||||
output with --format FMT:
|
output with --format FMT:
|
||||||
|
|
||||||
$ hledger balance --format "%20(account) %12(total)"
|
$ hledger balance --format "%20(account) %12(total)"
|
||||||
@ -1086,7 +1077,7 @@ COMMANDS
|
|||||||
0
|
0
|
||||||
|
|
||||||
The FMT format string (plus a newline) specifies the formatting applied
|
The FMT format string (plus a newline) specifies the formatting applied
|
||||||
to each account/balance pair. It may contain any suitable text, with
|
to each account/balance pair. It may contain any suitable text, with
|
||||||
data fields interpolated like so:
|
data fields interpolated like so:
|
||||||
|
|
||||||
%[MIN][.MAX](FIELDNAME)
|
%[MIN][.MAX](FIELDNAME)
|
||||||
@ -1097,14 +1088,14 @@ COMMANDS
|
|||||||
|
|
||||||
o FIELDNAME must be enclosed in parentheses, and can be one of:
|
o FIELDNAME must be enclosed in parentheses, and can be one of:
|
||||||
|
|
||||||
o depth_spacer - a number of spaces equal to the account's depth, or
|
o depth_spacer - a number of spaces equal to the account's depth, or
|
||||||
if MIN is specified, MIN * depth spaces.
|
if MIN is specified, MIN * depth spaces.
|
||||||
|
|
||||||
o account - the account's name
|
o account - the account's name
|
||||||
|
|
||||||
o total - the account's balance/posted total, right justified
|
o total - the account's balance/posted total, right justified
|
||||||
|
|
||||||
Also, FMT can begin with an optional prefix to control how multi-com-
|
Also, FMT can begin with an optional prefix to control how multi-com-
|
||||||
modity amounts are rendered:
|
modity amounts are rendered:
|
||||||
|
|
||||||
o %_ - render on multiple lines, bottom-aligned (the default)
|
o %_ - render on multiple lines, bottom-aligned (the default)
|
||||||
@ -1113,7 +1104,7 @@ COMMANDS
|
|||||||
|
|
||||||
o %, - render on one line, comma-separated
|
o %, - render on one line, comma-separated
|
||||||
|
|
||||||
There are some quirks. Eg in one-line mode, %(depth_spacer) has no
|
There are some quirks. Eg in one-line mode, %(depth_spacer) has no
|
||||||
effect, instead %(account) has indentation built in.
|
effect, instead %(account) has indentation built in.
|
||||||
Experimentation may be needed to get pleasing results.
|
Experimentation may be needed to get pleasing results.
|
||||||
|
|
||||||
@ -1121,19 +1112,19 @@ COMMANDS
|
|||||||
|
|
||||||
o %(total) - the account's total
|
o %(total) - the account's total
|
||||||
|
|
||||||
o %-20.20(account) - the account's name, left justified, padded to 20
|
o %-20.20(account) - the account's name, left justified, padded to 20
|
||||||
characters and clipped at 20 characters
|
characters and clipped at 20 characters
|
||||||
|
|
||||||
o %,%-50(account) %25(total) - account name padded to 50 characters,
|
o %,%-50(account) %25(total) - account name padded to 50 characters,
|
||||||
total padded to 20 characters, with multiple commodities rendered on
|
total padded to 20 characters, with multiple commodities rendered on
|
||||||
one line
|
one line
|
||||||
|
|
||||||
o %20(total) %2(depth_spacer)%-(account) - the default format for the
|
o %20(total) %2(depth_spacer)%-(account) - the default format for the
|
||||||
single-column balance report
|
single-column balance report
|
||||||
|
|
||||||
Output destination
|
Output destination
|
||||||
The balance, print, register and stats commands can write their output
|
The balance, print, register and stats commands can write their output
|
||||||
to a destination other than the console. This is controlled by the
|
to a destination other than the console. This is controlled by the
|
||||||
-o/--output-file option.
|
-o/--output-file option.
|
||||||
|
|
||||||
$ hledger balance -o - # write to stdout (the default)
|
$ hledger balance -o - # write to stdout (the default)
|
||||||
@ -1141,8 +1132,8 @@ COMMANDS
|
|||||||
|
|
||||||
CSV output
|
CSV output
|
||||||
The balance, print and register commands can write their output as CSV.
|
The balance, print and register commands can write their output as CSV.
|
||||||
This is useful for exporting data to other applications, eg to make
|
This is useful for exporting data to other applications, eg to make
|
||||||
charts in a spreadsheet. This is controlled by the -O/--output-format
|
charts in a spreadsheet. This is controlled by the -O/--output-format
|
||||||
option, or by specifying a .csv file extension with -o/--output-file.
|
option, or by specifying a .csv file extension with -o/--output-file.
|
||||||
|
|
||||||
$ hledger balance -O csv # write CSV to stdout
|
$ hledger balance -O csv # write CSV to stdout
|
||||||
@ -1153,11 +1144,20 @@ COMMANDS
|
|||||||
|
|
||||||
--flat show full account names, as a list (default)
|
--flat show full account names, as a list (default)
|
||||||
|
|
||||||
|
-N --no-total
|
||||||
|
don't show the final total row
|
||||||
|
|
||||||
--drop=N
|
--drop=N
|
||||||
in flat mode: omit N leading account name parts
|
in flat mode: omit N leading account name parts
|
||||||
|
|
||||||
This command displays a simple balance sheet. It currently assumes
|
--no-elide
|
||||||
that you have top-level accounts named asset and liability (plural
|
don't squash boring parent accounts (in tree mode)
|
||||||
|
|
||||||
|
--format=LINEFORMAT
|
||||||
|
in single-column balance reports: use this custom line format
|
||||||
|
|
||||||
|
This command displays a simple balance sheet. It currently assumes
|
||||||
|
that you have top-level accounts named asset and liability (plural
|
||||||
forms also allowed.)
|
forms also allowed.)
|
||||||
|
|
||||||
$ hledger balancesheet
|
$ hledger balancesheet
|
||||||
@ -1184,12 +1184,21 @@ COMMANDS
|
|||||||
|
|
||||||
--flat show full account names, as a list (default)
|
--flat show full account names, as a list (default)
|
||||||
|
|
||||||
|
-N --no-total
|
||||||
|
don't show the final total row
|
||||||
|
|
||||||
--drop=N
|
--drop=N
|
||||||
in flat mode: omit N leading account name parts
|
in flat mode: omit N leading account name parts
|
||||||
|
|
||||||
This command displays a simple cashflow statement It shows the change
|
--no-elide
|
||||||
in all "cash" (ie, liquid assets) accounts for the period. It cur-
|
don't squash boring parent accounts (in tree mode)
|
||||||
rently assumes that cash accounts are under a top-level account named
|
|
||||||
|
--format=LINEFORMAT
|
||||||
|
in single-column balance reports: use this custom line format
|
||||||
|
|
||||||
|
This command displays a simple cashflow statement It shows the change
|
||||||
|
in all "cash" (ie, liquid assets) accounts for the period. It cur-
|
||||||
|
rently assumes that cash accounts are under a top-level account named
|
||||||
asset and do not contain receivable or A/R (plural forms also allowed.)
|
asset and do not contain receivable or A/R (plural forms also allowed.)
|
||||||
|
|
||||||
$ hledger cashflow
|
$ hledger cashflow
|
||||||
@ -1239,9 +1248,18 @@ COMMANDS
|
|||||||
|
|
||||||
--flat show full account names, as a list (default)
|
--flat show full account names, as a list (default)
|
||||||
|
|
||||||
|
-N --no-total
|
||||||
|
don't show the final total row
|
||||||
|
|
||||||
--drop=N
|
--drop=N
|
||||||
in flat mode: omit N leading account name parts
|
in flat mode: omit N leading account name parts
|
||||||
|
|
||||||
|
--no-elide
|
||||||
|
don't squash boring parent accounts (in tree mode)
|
||||||
|
|
||||||
|
--format=LINEFORMAT
|
||||||
|
in single-column balance reports: use this custom line format
|
||||||
|
|
||||||
This command displays a simple income statement. It currently assumes
|
This command displays a simple income statement. It currently assumes
|
||||||
that you have top-level accounts named income (or revenue) and expense
|
that you have top-level accounts named income (or revenue) and expense
|
||||||
(plural forms also allowed.)
|
(plural forms also allowed.)
|
||||||
@ -1625,14 +1643,14 @@ ADD-ON COMMANDS
|
|||||||
hledger-dupes.hs checks for account names sharing the same leaf name.
|
hledger-dupes.hs checks for account names sharing the same leaf name.
|
||||||
|
|
||||||
equity
|
equity
|
||||||
hledger-equity.hs prints balance-resetting transactions, useful for
|
hledger-equity.hs prints balance-resetting transactions, useful for
|
||||||
bringing account balances across file boundaries.
|
bringing account balances across file boundaries.
|
||||||
|
|
||||||
prices
|
prices
|
||||||
hledger-prices.hs prints all prices from the journal.
|
hledger-prices.hs prints all prices from the journal.
|
||||||
|
|
||||||
print-unique
|
print-unique
|
||||||
hledger-print-unique.hs prints transactions which do not reuse an
|
hledger-print-unique.hs prints transactions which do not reuse an
|
||||||
already-seen description.
|
already-seen description.
|
||||||
|
|
||||||
register-match
|
register-match
|
||||||
@ -1645,13 +1663,13 @@ ADD-ON COMMANDS
|
|||||||
|
|
||||||
TROUBLESHOOTING
|
TROUBLESHOOTING
|
||||||
Run-time problems
|
Run-time problems
|
||||||
Here are some issues you might encounter when you run hledger (and
|
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):
|
||||||
|
|
||||||
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.
|
||||||
|
|
||||||
I set a custom LEDGER_FILE, but hledger is still using the default file
|
I set a custom LEDGER_FILE, but hledger is still using the default file
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user