documentation changed to reflect new bs/is/cf and -V behavior
This commit is contained in:
parent
b41d11c6e9
commit
600132445c
@ -1,8 +1,7 @@
|
|||||||
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
|
||||||
******************************
|
******************************
|
||||||
@ -12,21 +11,20 @@ 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,8 +1,7 @@
|
|||||||
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
|
||||||
**************************
|
**************************
|
||||||
@ -10,14 +9,13 @@ 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,12 +44,11 @@ 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
|
Skip this number of CSV records at the beginning. You'll need this
|
||||||
whenever your CSV data contains header lines. Eg:
|
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,15 +175,15 @@ 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
|
||||||
@ -207,25 +192,24 @@ 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
|
||||||
|
|||||||
@ -1,15 +1,15 @@
|
|||||||
This is hledger-lib/doc/hledger_journal.5.info, produced by makeinfo
|
This is hledger_journal.5.info, produced by makeinfo version 5.2 from
|
||||||
version 4.8 from stdin.
|
stdin.
|
||||||
|
|
||||||
|
|
||||||
File: hledger_journal.5.info, Node: Top, Up: (dir)
|
File: hledger_journal.5.info, Node: Top, Next: FILE FORMAT, Up: (dir)
|
||||||
|
|
||||||
hledger_journal(5) hledger dev
|
hledger_journal(5) hledger dev
|
||||||
******************************
|
******************************
|
||||||
|
|
||||||
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
|
||||||
@ -21,13 +21,12 @@ 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 getting.
|
the same journal file, eg to validate the results you're getting.
|
||||||
|
|
||||||
You can use hledger without learning any more about this file; just
|
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,
|
use the add or web commands to create and update it. Many users,
|
||||||
also edit the journal file directly with a text editor, perhaps assisted
|
though, also edit the journal file directly with a text editor, perhaps
|
||||||
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:
|
||||||
|
|
||||||
|
|
||||||
; A sample journal file. This is a comment.
|
; A sample journal file. This is a comment.
|
||||||
|
|
||||||
2008/01/01 income ; <- transaction's first line starts in column 0, contains date and description
|
2008/01/01 income ; <- transaction's first line starts in column 0, contains date and description
|
||||||
@ -86,22 +85,17 @@ 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:
|
||||||
|
|
||||||
* a status flag, which can be empty or `!' or `*' (meaning
|
* a status flag, which can be empty or '!' or '*' (meaning
|
||||||
"uncleared", "pending" and "cleared", or whatever you want)
|
"uncleared", "pending" and "cleared", or whatever you want)
|
||||||
|
|
||||||
* a transaction code (eg a check number),
|
* a transaction code (eg a check number),
|
||||||
|
|
||||||
* and/or a description
|
* 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:
|
||||||
|
|
||||||
* indentation of one or more spaces (or tabs)
|
* indentation of one or more spaces (or tabs)
|
||||||
|
* optionally, a '!' or '*' status flag followed by a space
|
||||||
* optionally, a `!' or `*' status flag followed by a space
|
|
||||||
|
|
||||||
* an account name, optionally containing single spaces
|
* an account name, optionally containing single spaces
|
||||||
|
|
||||||
* optionally, two or more spaces or tabs followed by an amount
|
* optionally, two or more spaces or tabs followed by an amount
|
||||||
|
|
||||||
Usually there are two or more postings, though one or none is also
|
Usually there are two or more postings, though one or none is also
|
||||||
@ -131,8 +125,8 @@ 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 default
|
will be inferred from the context - the current transaction, the default
|
||||||
year set with a default year directive, or the current date when the
|
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',
|
command is run. Some examples: '2010/01/31', '1/31', '2010-01-31',
|
||||||
`2010.1.31'.
|
'2010.1.31'.
|
||||||
|
|
||||||
|
|
||||||
File: hledger_journal.5.info, Node: Secondary dates, Next: Posting dates, Prev: Simple dates, Up: Dates
|
File: hledger_journal.5.info, Node: Secondary dates, Next: Posting dates, Prev: Simple dates, Up: Dates
|
||||||
@ -149,8 +143,8 @@ compatibility with Ledger.
|
|||||||
|
|
||||||
A secondary date can be written after the primary date, separated by
|
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
|
an 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
|
secondary date, on the right, is used when the '--date2' flag is
|
||||||
specified (`--aux-date' or `--effective' also work).
|
specified ('--aux-date' or '--effective' also work).
|
||||||
|
|
||||||
The meaning of secondary dates is up to you, but it's best to follow
|
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
|
a consistent rule. Eg write the bank's clearing date as primary, and
|
||||||
@ -159,22 +153,19 @@ when needed, the date the transaction was initiated as secondary.
|
|||||||
Here's an example. Note that a secondary date will use the year of
|
Here's an example. Note that a secondary date will use the year of
|
||||||
the primary date if unspecified.
|
the primary date if unspecified.
|
||||||
|
|
||||||
|
|
||||||
2010/2/23=2/19 movie ticket
|
2010/2/23=2/19 movie ticket
|
||||||
expenses:cinema $10
|
expenses:cinema $10
|
||||||
assets:checking
|
assets:checking
|
||||||
|
|
||||||
|
|
||||||
$ hledger register checking
|
$ hledger register checking
|
||||||
2010/02/23 movie ticket assets:checking $-10 $-10
|
2010/02/23 movie ticket assets:checking $-10 $-10
|
||||||
|
|
||||||
|
|
||||||
$ 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
|
Secondary dates require some effort; you must use them consistently
|
||||||
in your journal entries and remember whether to use or not use the
|
in your journal entries and remember whether to use or not use the
|
||||||
`--date2' flag for your reports. They are included in hledger for
|
'--date2' flag for your reports. They are included in hledger for
|
||||||
Ledger compatibility, but posting dates are a more powerful and less
|
Ledger compatibility, but posting dates are a more powerful and less
|
||||||
confusing alternative.
|
confusing alternative.
|
||||||
|
|
||||||
@ -186,33 +177,30 @@ File: hledger_journal.5.info, Node: Posting dates, Prev: Secondary dates, Up:
|
|||||||
|
|
||||||
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
|
like 'date:DATE'. This is probably the best way to control posting
|
||||||
dates precisely. Eg in this example the expense should appear in May
|
dates 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
|
||||||
expenses:food $10 ; food purchased on saturday 5/30
|
expenses:food $10 ; food purchased on saturday 5/30
|
||||||
assets:checking ; bank cleared it on monday, date:6/1
|
assets:checking ; bank cleared it on monday, date:6/1
|
||||||
|
|
||||||
|
|
||||||
$ hledger -f t.j register food
|
$ hledger -f t.j register food
|
||||||
2015/05/30 expenses:food $10 $10
|
2015/05/30 expenses:food $10 $10
|
||||||
|
|
||||||
|
|
||||||
$ 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
|
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
|
use 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
|
Ledger's earlier, more compact bracketed date syntax is also
|
||||||
supported: `[DATE]', `[DATE=DATE2]' or `[=DATE2]'. hledger will attempt
|
supported: '[DATE]', '[DATE=DATE2]' or '[=DATE2]'. hledger will attempt
|
||||||
to parse any square-bracketed sequence of the `0123456789/-.='
|
to parse any square-bracketed sequence of the '0123456789/-.='
|
||||||
characters in this way. With this syntax, DATE infers its year from the
|
characters in this way. With this syntax, DATE infers its year from the
|
||||||
transaction and DATE2 infers its year from DATE.
|
transaction and DATE2 infers its year from DATE.
|
||||||
|
|
||||||
@ -223,11 +211,12 @@ File: hledger_journal.5.info, Node: Account names, Next: Amounts, Prev: Dates
|
|||||||
=================
|
=================
|
||||||
|
|
||||||
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 be
|
from which hledger derives a hierarchical chart of accounts. They can
|
||||||
anything you like, but in finance there are traditionally five top-level
|
be anything you like, but in finance there are traditionally five
|
||||||
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
|
Account names may contain single spaces, eg: 'assets:accounts
|
||||||
receivable'. Because of this, they must always be followed by *two or
|
receivable'. Because of this, they must always be followed by *two or
|
||||||
more spaces* (or newline).
|
more spaces* (or newline).
|
||||||
|
|
||||||
@ -245,27 +234,24 @@ account name and amount, there must be *two or more spaces*.
|
|||||||
Amounts consist of a number and (usually) a currency symbol or
|
Amounts consist of a number and (usually) a currency symbol or
|
||||||
commodity name. Some examples:
|
commodity name. Some examples:
|
||||||
|
|
||||||
`2.00001'
|
'2.00001'
|
||||||
`$1'
|
'$1'
|
||||||
`4000 AAPL'
|
'4000 AAPL'
|
||||||
`3 "green apples"'
|
'3 "green apples"'
|
||||||
`-$1,000,000.00'
|
'-$1,000,000.00'
|
||||||
`INR 9,99,99,999.00'
|
'INR 9,99,99,999.00'
|
||||||
`EUR -2.000.000,00'
|
'EUR -2.000.000,00'
|
||||||
|
|
||||||
As you can see, the amount format is somewhat flexible:
|
As you can see, the amount format is somewhat flexible:
|
||||||
|
|
||||||
* amounts are a number (the "quantity") and optionally a currency
|
* amounts are a number (the "quantity") and optionally a currency
|
||||||
symbol/commodity name (the "commodity").
|
symbol/commodity name (the "commodity").
|
||||||
|
|
||||||
* the commodity is a symbol, word, or phrase, on the left or right,
|
* the commodity is a symbol, word, or phrase, on the left or right,
|
||||||
with or without a separating space. If the commodity contains
|
with or without a separating space. If the commodity contains
|
||||||
numbers, spaces or non-word punctuation it must be enclosed in
|
numbers, spaces or non-word punctuation it must be enclosed in
|
||||||
double quotes.
|
double quotes.
|
||||||
|
|
||||||
* negative amounts with a commodity on the left can have the minus
|
* negative amounts with a commodity on the left can have the minus
|
||||||
sign before or after it
|
sign before or after it
|
||||||
|
|
||||||
* digit groups (thousands, or any other grouping) can be separated by
|
* digit groups (thousands, or any other grouping) can be separated by
|
||||||
commas (in which case period is used for decimal point) or periods
|
commas (in which case period is used for decimal point) or periods
|
||||||
(in which case comma is used for decimal point)
|
(in which case comma is used for decimal point)
|
||||||
@ -277,14 +263,12 @@ written). The display format is chosen as follows:
|
|||||||
|
|
||||||
* if there is a commodity directive specifying the format, that is
|
* if there is a commodity directive specifying the format, that is
|
||||||
used
|
used
|
||||||
|
|
||||||
* otherwise the format is inferred from the first posting amount in
|
* otherwise the format is inferred from the first posting amount in
|
||||||
that commodity in the journal, and the precision (number of
|
that commodity in the journal, and the precision (number of decimal
|
||||||
decimal places) will be the maximum from all posting amounts in
|
places) will be the maximum from all posting amounts in that
|
||||||
that commmodity
|
commmodity
|
||||||
|
* or if there are no such amounts in the journal, a default format is
|
||||||
* or if there are no such amounts in the journal, a default format
|
used (like '$1000.00').
|
||||||
is 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. (Eg
|
format inference, but in some situations they can do so indirectly. (Eg
|
||||||
@ -303,13 +287,11 @@ When you parenthesise the account name in a posting, we call that a
|
|||||||
_virtual posting_, which means:
|
_virtual posting_, which means:
|
||||||
|
|
||||||
* it is ignored when checking that the transaction is balanced
|
* it is ignored when checking that the transaction is balanced
|
||||||
|
* it is excluded from reports when the '--real/-R' flag is used, or
|
||||||
* it is excluded from reports when the `--real/-R' flag is used, or
|
the 'real:1' query.
|
||||||
the `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
|
||||||
(assets:checking) $1000
|
(assets:checking) $1000
|
||||||
@ -318,8 +300,7 @@ needing to use the `equity:opening balances' account:
|
|||||||
posting_. This is like an ordinary virtual posting except the balanced
|
posting_. This is like an ordinary virtual posting except the balanced
|
||||||
virtual postings in a transaction must balance to 0, like the real
|
virtual postings in a transaction must balance to 0, like the real
|
||||||
postings (but separately from them). Balanced virtual postings are also
|
postings (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
|
||||||
expenses:food $10
|
expenses:food $10
|
||||||
@ -337,11 +318,10 @@ File: hledger_journal.5.info, Node: Balance Assertions, Next: Balance Assignme
|
|||||||
1.6 Balance Assertions
|
1.6 Balance Assertions
|
||||||
======================
|
======================
|
||||||
|
|
||||||
hledger supports Ledger-style balance assertions in journal files. These
|
hledger supports Ledger-style balance assertions in journal files.
|
||||||
look like `=EXPECTEDBALANCE' following a posting's amount. Eg in this
|
These look like '=EXPECTEDBALANCE' following a posting's amount. Eg in
|
||||||
example we assert the expected dollar balance in accounts a and b after
|
this example we assert the expected dollar balance in accounts a and b
|
||||||
each posting:
|
after each posting:
|
||||||
|
|
||||||
|
|
||||||
2013/1/1
|
2013/1/1
|
||||||
a $1 =$1
|
a $1 =$1
|
||||||
@ -354,10 +334,9 @@ each posting:
|
|||||||
After reading a journal file, hledger will check all balance
|
After reading a journal file, hledger will check all balance
|
||||||
assertions and report an error if any of them fail. Balance assertions
|
assertions and report an error if any of them fail. Balance assertions
|
||||||
can protect you from, eg, inadvertently disrupting reconciled balances
|
can protect you from, eg, inadvertently disrupting reconciled balances
|
||||||
while cleaning up old entries. You can disable them temporarily with the
|
while cleaning up old entries. You can disable them temporarily with
|
||||||
`--ignore-assertions' flag, which can be useful for troubleshooting or
|
the '--ignore-assertions' flag, which can be useful for troubleshooting
|
||||||
for reading Ledger files.
|
or for reading Ledger files.
|
||||||
|
|
||||||
* Menu:
|
* Menu:
|
||||||
|
|
||||||
* Assertions and ordering::
|
* Assertions and ordering::
|
||||||
@ -382,9 +361,9 @@ postings to the same account within a transaction.)
|
|||||||
So, hledger balance assertions keep working if you reorder
|
So, hledger balance assertions keep working if you reorder
|
||||||
differently-dated transactions within the journal. But if you reorder
|
differently-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 control
|
updating. This order dependence does bring an advantage: precise
|
||||||
over the order of postings and assertions within a day, so you can
|
control over the order of postings and assertions within a day, so you
|
||||||
assert intra-day balances.
|
can assert intra-day balances.
|
||||||
|
|
||||||
|
|
||||||
File: hledger_journal.5.info, Node: Assertions and included files, Next: Assertions and multiple -f options, Prev: Assertions and ordering, Up: Balance Assertions
|
File: hledger_journal.5.info, Node: Assertions and included files, Next: Assertions and multiple -f options, Prev: Assertions and ordering, Up: Balance Assertions
|
||||||
@ -415,9 +394,10 @@ File: hledger_journal.5.info, Node: Assertions and commodities, Next: Assertio
|
|||||||
|
|
||||||
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 partial
|
(possibly multi-commodity) account balance. We could call this a
|
||||||
balance assertion. This is compatible with Ledger, and makes it possible
|
partial balance assertion. This is compatible with Ledger, and makes it
|
||||||
to make assertions about accounts containing multiple commodities.
|
possible to make assertions about accounts containing multiple
|
||||||
|
commodities.
|
||||||
|
|
||||||
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
|
||||||
@ -434,7 +414,6 @@ File: hledger_journal.5.info, Node: Assertions and subaccounts, Next: Assertio
|
|||||||
Balance assertions do not count the balance from subaccounts; they check
|
Balance assertions do not count the balance from subaccounts; they check
|
||||||
the posted account's exclusive balance. For example:
|
the posted account's exclusive balance. For example:
|
||||||
|
|
||||||
|
|
||||||
1/1
|
1/1
|
||||||
checking:fund 1 = 1 ; post to this subaccount, its balance is now 1
|
checking:fund 1 = 1 ; post to this subaccount, its balance is now 1
|
||||||
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
|
||||||
@ -443,7 +422,6 @@ the posted account's exclusive balance. For example:
|
|||||||
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
|
||||||
1 checking
|
1 checking
|
||||||
1 checking:fund
|
1 checking:fund
|
||||||
@ -457,7 +435,8 @@ File: hledger_journal.5.info, Node: Assertions and virtual postings, Prev: Ass
|
|||||||
-------------------------------------
|
-------------------------------------
|
||||||
|
|
||||||
Balance assertions are checked against all postings, both real and
|
Balance assertions are checked against all postings, both real and
|
||||||
virtual. They are not affected by the `--real/-R' flag or `real:' query.
|
virtual. They are not affected by the '--real/-R' flag or 'real:'
|
||||||
|
query.
|
||||||
|
|
||||||
|
|
||||||
File: hledger_journal.5.info, Node: Balance Assignments, Next: Prices, Prev: Balance Assertions, Up: FILE FORMAT
|
File: hledger_journal.5.info, Node: Balance Assignments, Next: Prices, Prev: Balance Assertions, Up: FILE FORMAT
|
||||||
@ -471,7 +450,6 @@ equals sign; instead it is calculated automatically so as to satisfy the
|
|||||||
assertion. This can be a convenience during data entry, eg when setting
|
assertion. This can be a convenience during data entry, eg when setting
|
||||||
opening balances:
|
opening balances:
|
||||||
|
|
||||||
|
|
||||||
; starting a new journal, set asset account balances
|
; starting a new journal, set asset account balances
|
||||||
2016/1/1 opening balances
|
2016/1/1 opening balances
|
||||||
assets:checking = $409.32
|
assets:checking = $409.32
|
||||||
@ -481,7 +459,6 @@ opening balances:
|
|||||||
|
|
||||||
or when adjusting a balance to reality:
|
or when adjusting a balance to reality:
|
||||||
|
|
||||||
|
|
||||||
; no cash left; update balance, record any untracked spending as a generic expense
|
; no cash left; update balance, record any untracked spending as a generic expense
|
||||||
2016/1/15
|
2016/1/15
|
||||||
assets:cash = $0
|
assets:cash = $0
|
||||||
@ -518,39 +495,34 @@ 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
|
1. Write the unit price (aka exchange rate), as '@ UNITPRICE' after
|
||||||
the amount:
|
the amount:
|
||||||
|
|
||||||
|
|
||||||
2009/1/1
|
2009/1/1
|
||||||
assets:foreign currency €100 @ $1.35 ; one hundred euros at $1.35 each
|
assets:foreign currency €100 @ $1.35 ; one hundred euros at $1.35 each
|
||||||
assets:cash
|
assets:cash
|
||||||
|
|
||||||
2. Or write the total price, as `@@ TOTALPRICE' after the amount:
|
2. Or write the total price, as '@@ TOTALPRICE' after the amount:
|
||||||
|
|
||||||
|
|
||||||
2009/1/1
|
2009/1/1
|
||||||
assets:foreign currency €100 @@ $135 ; one hundred euros at $135 for the lot
|
assets:foreign currency €100 @@ $135 ; one hundred euros at $135 for the lot
|
||||||
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.
|
||||||
permit this, you must fully specify all posting amounts, and their
|
To permit this, you must fully specify all posting amounts, and
|
||||||
sum must have a non-zero amount in exactly two commodities:
|
their sum must have a non-zero amount in exactly two commodities:
|
||||||
|
|
||||||
|
|
||||||
2009/1/1
|
2009/1/1
|
||||||
assets:foreign currency €100 ; one hundred euros
|
assets:foreign currency €100 ; one hundred euros
|
||||||
assets:cash $-135 ; exchanged for $135
|
assets:cash $-135 ; exchanged for $135
|
||||||
|
|
||||||
|
|
||||||
With any of the above examples we get:
|
With any of the above examples we get:
|
||||||
|
|
||||||
|
|
||||||
$ hledger print -B
|
$ hledger print -B
|
||||||
2009/01/01
|
2009/01/01
|
||||||
assets:foreign currency $135.00
|
assets:foreign currency $135.00
|
||||||
@ -575,18 +547,17 @@ at a given date.
|
|||||||
To record market prices, use P directives in the main journal or in
|
To record market prices, use P directives in the main journal or in
|
||||||
an included file. Their format is:
|
an 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
|
||||||
the commodity being priced. UNITPRICE is an ordinary amount (symbol and
|
of the commodity being priced. UNITPRICE is an ordinary amount (symbol
|
||||||
quantity) in a second commodity, specifying the unit price or conversion
|
and quantity) in a second commodity, specifying the unit price or
|
||||||
rate for the first commodity in terms of the second, on the given date.
|
conversion rate for the first commodity in terms of the second, on the
|
||||||
|
given date.
|
||||||
|
|
||||||
For example, the following directives say that one euro was worth
|
For example, the following directives say that one euro was worth
|
||||||
1.35 US dollars during 2009, and $1.40 from 2010 onward:
|
1.35 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
|
||||||
|
|
||||||
@ -596,12 +567,12 @@ File: hledger_journal.5.info, Node: Comments, Next: Tags, Prev: Prices, Up:
|
|||||||
1.9 Comments
|
1.9 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
|
||||||
to the end of the file.
|
to the end of the file.
|
||||||
|
|
||||||
You can attach comments to a transaction by writing them after the
|
You can attach comments to a transaction by writing them after the
|
||||||
@ -611,7 +582,6 @@ by writing them after the amount and/or indented on the following lines.
|
|||||||
|
|
||||||
Some examples:
|
Some examples:
|
||||||
|
|
||||||
|
|
||||||
# a journal comment
|
# a journal comment
|
||||||
|
|
||||||
; also a journal comment
|
; also a journal comment
|
||||||
@ -643,35 +613,29 @@ transactions, which you can then search or pivot on.
|
|||||||
A simple tag is a word (which may contain hyphens) followed by a full
|
A simple tag is a word (which may contain hyphens) followed by a full
|
||||||
colon, written inside a transaction or posting comment line:
|
colon, written inside a transaction or posting comment line:
|
||||||
|
|
||||||
|
|
||||||
2017/1/16 bought groceries ; sometag:
|
2017/1/16 bought groceries ; sometag:
|
||||||
|
|
||||||
Tags can have a value, which is the text after the colon, up to the
|
Tags can have a value, which is the text after the colon, up to the
|
||||||
next comma or end of line, with leading/trailing whitespace removed:
|
next comma or end of line, with leading/trailing whitespace removed:
|
||||||
|
|
||||||
|
|
||||||
expenses:food $10 ; a-posting-tag: the tag value
|
expenses:food $10 ; a-posting-tag: the tag value
|
||||||
|
|
||||||
Note this means hledger's tag values can not contain commas or
|
Note this means hledger's tag values can not contain commas or
|
||||||
newlines. Ending at commas means you can write multiple short tags on
|
newlines. Ending at commas means you can write multiple short tags on
|
||||||
one line, comma separated:
|
one line, comma separated:
|
||||||
|
|
||||||
|
|
||||||
assets:checking ; a comment containing tag1:, tag2: some value ...
|
assets:checking ; a comment containing tag1:, tag2: some value ...
|
||||||
|
|
||||||
Here,
|
Here,
|
||||||
|
|
||||||
* "`a comment containing'" is just comment text, not a tag
|
* "'a comment containing'" is just comment text, not a tag
|
||||||
|
* "'tag1'" is a tag with no value
|
||||||
* "`tag1'" is a tag with no value
|
* "'tag2'" is another tag, whose value is "'some value ...'"
|
||||||
|
|
||||||
* "`tag2'" is another tag, whose value is "`some value ...'"
|
|
||||||
|
|
||||||
Tags in a transaction comment affect the transaction and all of its
|
Tags in a transaction comment affect the transaction and all of its
|
||||||
postings, while tags in a posting comment affect only that posting. For
|
postings, while tags in a posting comment affect only that posting. For
|
||||||
example, the following transaction has three tags (`A', `TAG2',
|
example, the following transaction has three tags ('A', 'TAG2',
|
||||||
`third-tag') and the posting has four (those plus `posting-tag'):
|
'third-tag') and the posting has four (those plus 'posting-tag'):
|
||||||
|
|
||||||
|
|
||||||
1/1 a transaction ; A:, TAG2:
|
1/1 a transaction ; A:, TAG2:
|
||||||
; third-tag: a third transaction tag, <- with a value
|
; third-tag: a third transaction tag, <- with a value
|
||||||
@ -679,7 +643,6 @@ example, the following transaction has three tags (`A', `TAG2',
|
|||||||
|
|
||||||
Tags are like Ledger's metadata feature, except hledger's tag values
|
Tags are like Ledger's metadata feature, except hledger's tag values
|
||||||
are simple strings.
|
are simple strings.
|
||||||
|
|
||||||
* Menu:
|
* Menu:
|
||||||
|
|
||||||
* Implicit tags::
|
* Implicit tags::
|
||||||
@ -692,18 +655,15 @@ File: hledger_journal.5.info, Node: Implicit tags, Up: Tags
|
|||||||
|
|
||||||
Some predefined "implicit" tags are also provided:
|
Some predefined "implicit" tags are also provided:
|
||||||
|
|
||||||
* `code' - the transaction's code field
|
* 'code' - the transaction's code field
|
||||||
|
* 'description' - the transaction's description
|
||||||
|
* 'payee' - the part of description before '|', or all of it
|
||||||
|
* 'note' - the part of description after '|', or all of it
|
||||||
|
|
||||||
* `description' - the transaction's description
|
'payee' and 'note' support descriptions written in a special 'PAYEE |
|
||||||
|
NOTE' format, accessing the parts before and after the pipe character
|
||||||
* `payee' - the part of description before `|', or all of it
|
|
||||||
|
|
||||||
* `note' - the part of description after `|', or all of it
|
|
||||||
|
|
||||||
`payee' and `note' support descriptions written in a special `PAYEE
|
|
||||||
| NOTE' format, accessing the parts before and after the pipe character
|
|
||||||
respectively. For descriptions not containing a pipe character they are
|
respectively. For descriptions not containing a pipe character they are
|
||||||
the same as `description'.
|
the same as 'description'.
|
||||||
|
|
||||||
|
|
||||||
File: hledger_journal.5.info, Node: Directives, Prev: Tags, Up: FILE FORMAT
|
File: hledger_journal.5.info, Node: Directives, Prev: Tags, Up: FILE FORMAT
|
||||||
@ -734,16 +694,12 @@ be useful for:
|
|||||||
|
|
||||||
* expanding shorthand account names to their full form, allowing
|
* expanding shorthand account names to their full form, allowing
|
||||||
easier data entry and a less verbose journal
|
easier data entry and a less verbose journal
|
||||||
|
|
||||||
* adapting old journals to your current chart of accounts
|
* adapting old journals to your current chart of accounts
|
||||||
|
|
||||||
* experimenting with new account organisations, like a new hierarchy
|
* experimenting with new account organisations, like a new hierarchy
|
||||||
or combining two accounts into one
|
or combining two accounts into one
|
||||||
|
|
||||||
* customising reports
|
* customising reports
|
||||||
|
|
||||||
See also How to use account aliases.
|
See also How to use account aliases.
|
||||||
|
|
||||||
* Menu:
|
* Menu:
|
||||||
|
|
||||||
* Basic aliases::
|
* Basic aliases::
|
||||||
@ -757,14 +713,13 @@ File: hledger_journal.5.info, Node: Basic aliases, Next: Regex aliases, Up: A
|
|||||||
1.11.1.1 Basic aliases
|
1.11.1.1 Basic aliases
|
||||||
......................
|
......................
|
||||||
|
|
||||||
To set an account alias, use the `alias' directive in your journal
|
To set an account alias, use the 'alias' directive in your journal file.
|
||||||
file. This affects all subsequent journal entries in the current file or
|
This affects all subsequent journal entries in the current file or its
|
||||||
its included files. The spaces around the = are optional:
|
included files. The spaces around the = are optional:
|
||||||
|
|
||||||
|
|
||||||
alias OLD = NEW
|
alias OLD = NEW
|
||||||
|
|
||||||
Or, you can use the `--alias 'OLD=NEW'' option on the command line.
|
Or, you can use the '--alias 'OLD=NEW'' option on the command line.
|
||||||
This affects all entries. It's useful for trying out aliases
|
This affects all entries. It's useful for trying out aliases
|
||||||
interactively.
|
interactively.
|
||||||
|
|
||||||
@ -772,7 +727,6 @@ interactively.
|
|||||||
occurrence of the old account name with the new one. Subaccounts are
|
occurrence of the old account name with the new one. Subaccounts are
|
||||||
also affected. Eg:
|
also 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"
|
||||||
|
|
||||||
@ -786,10 +740,9 @@ 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
|
inside an account name, the matched part will be replaced by
|
||||||
@ -798,7 +751,6 @@ referenced by the usual numeric backreferences in REPLACEMENT. Note,
|
|||||||
currently regular expression aliases may cause noticeable slow-downs.
|
currently 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
|
||||||
# rewrites "assets:bank:wells fargo:checking" to "assets:wells fargo checking"
|
# rewrites "assets:bank:wells fargo:checking" to "assets:wells fargo checking"
|
||||||
|
|
||||||
@ -809,14 +761,13 @@ File: hledger_journal.5.info, Node: Multiple aliases, Next: end aliases, Prev
|
|||||||
.........................
|
.........................
|
||||||
|
|
||||||
You can define as many aliases as you like using directives or
|
You can define as many aliases as you like using directives or
|
||||||
command-line options. Aliases are recursive - each alias sees the result
|
command-line options. Aliases are recursive - each alias sees the
|
||||||
of applying previous ones. (This is different from Ledger, where aliases
|
result of applying previous ones. (This is different from Ledger, where
|
||||||
are non-recursive by default). Aliases are applied in the following
|
aliases are non-recursive by default). Aliases are applied in the
|
||||||
order:
|
following order:
|
||||||
|
|
||||||
1. alias directives, most recently seen first (recent directives take
|
1. alias directives, most recently seen first (recent directives take
|
||||||
precedence over earlier ones; directives not yet seen are ignored)
|
precedence over earlier ones; directives not yet seen are ignored)
|
||||||
|
|
||||||
2. alias options, in the order they appear on the command line
|
2. alias options, in the order they appear on the command line
|
||||||
|
|
||||||
|
|
||||||
@ -825,10 +776,9 @@ File: hledger_journal.5.info, Node: end aliases, Prev: Multiple aliases, Up:
|
|||||||
1.11.1.4 end aliases
|
1.11.1.4 end aliases
|
||||||
....................
|
....................
|
||||||
|
|
||||||
You can clear (forget) all currently defined aliases with the `end
|
You can clear (forget) all currently defined aliases with the 'end
|
||||||
aliases' directive:
|
aliases' directive:
|
||||||
|
|
||||||
|
|
||||||
end aliases
|
end aliases
|
||||||
|
|
||||||
|
|
||||||
@ -837,11 +787,10 @@ File: hledger_journal.5.info, Node: account directive, Next: apply account dir
|
|||||||
1.11.2 account directive
|
1.11.2 account directive
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
The `account' directive predefines account names, as in Ledger and
|
The 'account' directive predefines account names, as in Ledger and
|
||||||
Beancount. This may be useful for your own documentation; hledger
|
Beancount. This may be useful for your own documentation; hledger
|
||||||
doesn't make use of it yet.
|
doesn't make use of it yet.
|
||||||
|
|
||||||
|
|
||||||
; account ACCT
|
; account ACCT
|
||||||
; OPTIONAL COMMENTS/TAGS...
|
; OPTIONAL COMMENTS/TAGS...
|
||||||
|
|
||||||
@ -860,10 +809,9 @@ File: hledger_journal.5.info, Node: apply account directive, Next: Multi-line
|
|||||||
------------------------------
|
------------------------------
|
||||||
|
|
||||||
You can specify a parent account which will be prepended to all accounts
|
You can specify a parent account which will be prepended to all accounts
|
||||||
within a section of the journal. Use the `apply account' and `end apply
|
within a section of the journal. Use the 'apply account' and 'end apply
|
||||||
account' directives like so:
|
account' directives like so:
|
||||||
|
|
||||||
|
|
||||||
apply account home
|
apply account home
|
||||||
|
|
||||||
2010/1/1
|
2010/1/1
|
||||||
@ -874,14 +822,12 @@ end apply account
|
|||||||
|
|
||||||
which is equivalent to:
|
which is equivalent to:
|
||||||
|
|
||||||
|
|
||||||
2010/01/01
|
2010/01/01
|
||||||
home:food $10
|
home:food $10
|
||||||
home:cash $-10
|
home:cash $-10
|
||||||
|
|
||||||
If `end apply account' is omitted, the effect lasts to the end of
|
If 'end apply account' is omitted, the effect lasts to the end of the
|
||||||
the file. Included files are also affected, eg:
|
file. Included files are also affected, eg:
|
||||||
|
|
||||||
|
|
||||||
apply account business
|
apply account business
|
||||||
include biz.journal
|
include biz.journal
|
||||||
@ -889,7 +835,7 @@ end apply account
|
|||||||
apply account personal
|
apply account personal
|
||||||
include personal.journal
|
include personal.journal
|
||||||
|
|
||||||
Prior to hledger 1.0, legacy `account' and `end' spellings were also
|
Prior to hledger 1.0, legacy 'account' and 'end' spellings were also
|
||||||
supported.
|
supported.
|
||||||
|
|
||||||
|
|
||||||
@ -898,8 +844,8 @@ File: hledger_journal.5.info, Node: Multi-line comments, Next: commodity direc
|
|||||||
1.11.4 Multi-line comments
|
1.11.4 Multi-line comments
|
||||||
--------------------------
|
--------------------------
|
||||||
|
|
||||||
A line containing just `comment' starts a multi-line comment, and a
|
A line containing just 'comment' starts a multi-line comment, and a line
|
||||||
line containing just `end comment' ends it. See comments.
|
containing just 'end comment' ends it. See comments.
|
||||||
|
|
||||||
|
|
||||||
File: hledger_journal.5.info, Node: commodity directive, Next: Default commodity, Prev: Multi-line comments, Up: Directives
|
File: hledger_journal.5.info, Node: commodity directive, Next: Default commodity, Prev: Multi-line comments, Up: Directives
|
||||||
@ -907,14 +853,12 @@ File: hledger_journal.5.info, Node: commodity directive, Next: Default commodi
|
|||||||
1.11.5 commodity directive
|
1.11.5 commodity directive
|
||||||
--------------------------
|
--------------------------
|
||||||
|
|
||||||
The `commodity' directive predefines commodities (currently this is
|
The 'commodity' directive predefines commodities (currently this is just
|
||||||
just informational), and also it may define the display format for
|
informational), and also it may define the display format for amounts in
|
||||||
amounts in this commodity (overriding the automatically inferred
|
this commodity (overriding the automatically inferred format).
|
||||||
format).
|
|
||||||
|
|
||||||
It may be written on a single line, like this:
|
It may be written on a single line, like this:
|
||||||
|
|
||||||
|
|
||||||
; commodity EXAMPLEAMOUNT
|
; commodity EXAMPLEAMOUNT
|
||||||
|
|
||||||
; display AAAA amounts with the symbol on the right, space-separated,
|
; display AAAA amounts with the symbol on the right, space-separated,
|
||||||
@ -926,7 +870,6 @@ commodity 1,000.0000 AAAA
|
|||||||
the commodity symbol appears twice and should be the same in both
|
the commodity symbol appears twice and should be the same in both
|
||||||
places:
|
places:
|
||||||
|
|
||||||
|
|
||||||
; commodity SYMBOL
|
; commodity SYMBOL
|
||||||
; format EXAMPLEAMOUNT
|
; format EXAMPLEAMOUNT
|
||||||
|
|
||||||
@ -948,7 +891,6 @@ this differs from Ledger's default commodity directive.) The commodity
|
|||||||
and display format will be applied to all subsequent commodity-less
|
and display format will be applied to all subsequent commodity-less
|
||||||
amounts, or until the next D directive.
|
amounts, or until the next D directive.
|
||||||
|
|
||||||
|
|
||||||
# commodity-less amounts should be treated as dollars
|
# commodity-less amounts should be treated as dollars
|
||||||
# (and displayed with symbol on the left, thousands separators and two decimal places)
|
# (and displayed with symbol on the left, thousands separators and two decimal places)
|
||||||
D $1,000.00
|
D $1,000.00
|
||||||
@ -964,10 +906,9 @@ File: hledger_journal.5.info, Node: Default year, Next: Including other files,
|
|||||||
-------------------
|
-------------------
|
||||||
|
|
||||||
You can set a default year to be used for subsequent dates which don't
|
You can set a default year to be used for subsequent dates which don't
|
||||||
specify a year. This is a line beginning with `Y' followed by the year.
|
specify a year. This is a line beginning with 'Y' followed by the year.
|
||||||
Eg:
|
Eg:
|
||||||
|
|
||||||
|
|
||||||
Y2009 ; set default year to 2009
|
Y2009 ; set default year to 2009
|
||||||
|
|
||||||
12/15 ; equivalent to 2009/12/15
|
12/15 ; equivalent to 2009/12/15
|
||||||
@ -993,13 +934,12 @@ File: hledger_journal.5.info, Node: Including other files, Prev: Default year,
|
|||||||
You can pull in the content of additional journal files by writing an
|
You can pull in the content of additional journal files by writing an
|
||||||
include directive, like this:
|
include directive, like this:
|
||||||
|
|
||||||
|
|
||||||
include path/to/file.journal
|
include path/to/file.journal
|
||||||
|
|
||||||
If the path does not begin with a slash, it is relative to the
|
If the path does not begin with a slash, it is relative to the
|
||||||
current file. Glob patterns (`*') are not currently supported.
|
current file. Glob patterns ('*') are not currently supported.
|
||||||
|
|
||||||
The `include' directive can only be used in journal files. It can
|
The 'include' directive can only be used in journal files. It can
|
||||||
include journal, timeclock or timedot files, but not CSV files.
|
include journal, timeclock or timedot files, but not CSV files.
|
||||||
|
|
||||||
|
|
||||||
@ -1022,83 +962,82 @@ Sublime Text https://github.com/ledger/ledger/wiki/Using-Sublime-Text
|
|||||||
Textmate https://github.com/ledger/ledger/wiki/Using-TextMate-2
|
Textmate https://github.com/ledger/ledger/wiki/Using-TextMate-2
|
||||||
Text Wrangler https://github.com/ledger/ledger/wiki/Editing-Ledger-files-with-TextWrangler
|
Text Wrangler https://github.com/ledger/ledger/wiki/Editing-Ledger-files-with-TextWrangler
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Tag Table:
|
Tag Table:
|
||||||
Node: Top94
|
Node: Top78
|
||||||
Node: FILE FORMAT2284
|
Node: FILE FORMAT2292
|
||||||
Ref: #file-format2410
|
Ref: #file-format2418
|
||||||
Node: Transactions2593
|
Node: Transactions2601
|
||||||
Ref: #transactions2713
|
Ref: #transactions2721
|
||||||
Node: Dates3656
|
Node: Dates3663
|
||||||
Ref: #dates3784
|
Ref: #dates3791
|
||||||
Node: Simple dates3849
|
Node: Simple dates3856
|
||||||
Ref: #simple-dates3977
|
Ref: #simple-dates3984
|
||||||
Node: Secondary dates4341
|
Node: Secondary dates4350
|
||||||
Ref: #secondary-dates4497
|
Ref: #secondary-dates4506
|
||||||
Node: Posting dates6057
|
Node: Posting dates6069
|
||||||
Ref: #posting-dates6188
|
Ref: #posting-dates6200
|
||||||
Node: Account names7559
|
Node: Account names7574
|
||||||
Ref: #account-names7698
|
Ref: #account-names7713
|
||||||
Node: Amounts8183
|
Node: Amounts8200
|
||||||
Ref: #amounts8321
|
Ref: #amounts8338
|
||||||
Node: Virtual Postings10420
|
Node: Virtual Postings10439
|
||||||
Ref: #virtual-postings10581
|
Ref: #virtual-postings10600
|
||||||
Node: Balance Assertions11801
|
Node: Balance Assertions11820
|
||||||
Ref: #balance-assertions11978
|
Ref: #balance-assertions11997
|
||||||
Node: Assertions and ordering12873
|
Node: Assertions and ordering12893
|
||||||
Ref: #assertions-and-ordering13061
|
Ref: #assertions-and-ordering13081
|
||||||
Node: Assertions and included files13758
|
Node: Assertions and included files13781
|
||||||
Ref: #assertions-and-included-files14001
|
Ref: #assertions-and-included-files14024
|
||||||
Node: Assertions and multiple -f options14332
|
Node: Assertions and multiple -f options14357
|
||||||
Ref: #assertions-and-multiple--f-options14588
|
Ref: #assertions-and-multiple--f-options14613
|
||||||
Node: Assertions and commodities14719
|
Node: Assertions and commodities14745
|
||||||
Ref: #assertions-and-commodities14956
|
Ref: #assertions-and-commodities14982
|
||||||
Node: Assertions and subaccounts15648
|
Node: Assertions and subaccounts15678
|
||||||
Ref: #assertions-and-subaccounts15882
|
Ref: #assertions-and-subaccounts15912
|
||||||
Node: Assertions and virtual postings16404
|
Node: Assertions and virtual postings16433
|
||||||
Ref: #assertions-and-virtual-postings16613
|
Ref: #assertions-and-virtual-postings16642
|
||||||
Node: Balance Assignments16754
|
Node: Balance Assignments16784
|
||||||
Ref: #balance-assignments16923
|
Ref: #balance-assignments16953
|
||||||
Node: Prices18041
|
Node: Prices18072
|
||||||
Ref: #prices18174
|
Ref: #prices18205
|
||||||
Node: Transaction prices18225
|
Node: Transaction prices18256
|
||||||
Ref: #transaction-prices18370
|
Ref: #transaction-prices18401
|
||||||
Node: Market prices19950
|
Node: Market prices19978
|
||||||
Ref: #market-prices20085
|
Ref: #market-prices20113
|
||||||
Node: Comments21054
|
Node: Comments21086
|
||||||
Ref: #comments21176
|
Ref: #comments21208
|
||||||
Node: Tags22288
|
Node: Tags22321
|
||||||
Ref: #tags22408
|
Ref: #tags22441
|
||||||
Node: Implicit tags23843
|
Node: Implicit tags23870
|
||||||
Ref: #implicit-tags23951
|
Ref: #implicit-tags23978
|
||||||
Node: Directives24470
|
Node: Directives24495
|
||||||
Ref: #directives24585
|
Ref: #directives24610
|
||||||
Node: Account aliases24778
|
Node: Account aliases24803
|
||||||
Ref: #account-aliases24924
|
Ref: #account-aliases24949
|
||||||
Node: Basic aliases25526
|
Node: Basic aliases25548
|
||||||
Ref: #basic-aliases25671
|
Ref: #basic-aliases25693
|
||||||
Node: Regex aliases26359
|
Node: Regex aliases26383
|
||||||
Ref: #regex-aliases26529
|
Ref: #regex-aliases26553
|
||||||
Node: Multiple aliases27299
|
Node: Multiple aliases27324
|
||||||
Ref: #multiple-aliases27473
|
Ref: #multiple-aliases27498
|
||||||
Node: end aliases27969
|
Node: end aliases27996
|
||||||
Ref: #end-aliases28111
|
Ref: #end-aliases28138
|
||||||
Node: account directive28213
|
Node: account directive28239
|
||||||
Ref: #account-directive28395
|
Ref: #account-directive28421
|
||||||
Node: apply account directive28691
|
Node: apply account directive28717
|
||||||
Ref: #apply-account-directive28889
|
Ref: #apply-account-directive28915
|
||||||
Node: Multi-line comments29549
|
Node: Multi-line comments29574
|
||||||
Ref: #multi-line-comments29741
|
Ref: #multi-line-comments29766
|
||||||
Node: commodity directive29868
|
Node: commodity directive29894
|
||||||
Ref: #commodity-directive30054
|
Ref: #commodity-directive30080
|
||||||
Node: Default commodity30927
|
Node: Default commodity30952
|
||||||
Ref: #default-commodity31102
|
Ref: #default-commodity31127
|
||||||
Node: Default year31638
|
Node: Default year31664
|
||||||
Ref: #default-year31805
|
Ref: #default-year31831
|
||||||
Node: Including other files32228
|
Node: Including other files32254
|
||||||
Ref: #including-other-files32387
|
Ref: #including-other-files32413
|
||||||
Node: EDITOR SUPPORT32783
|
Node: EDITOR SUPPORT32810
|
||||||
Ref: #editor-support32903
|
Ref: #editor-support32930
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
|||||||
@ -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)
|
||||||
@ -14,7 +14,6 @@ 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
|
||||||
@ -23,8 +22,7 @@ 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
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
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
|
||||||
******************************
|
******************************
|
||||||
@ -18,7 +18,6 @@ spent.
|
|||||||
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,12 +28,12 @@ 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
|
||||||
@ -44,11 +43,9 @@ written in two ways:
|
|||||||
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,8 +1,7 @@
|
|||||||
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
|
||||||
****************************
|
****************************
|
||||||
@ -14,11 +13,10 @@ 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
|
||||||
@ -277,21 +278,19 @@ 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.
|
||||||
@ -299,19 +298,19 @@ 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,7 +328,7 @@ 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
|
||||||
@ -349,23 +348,22 @@ 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,10 +50,6 @@ 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)
|
||||||
@ -136,6 +132,10 @@ OPTIONS
|
|||||||
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,52 +1,52 @@
|
|||||||
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.
|
||||||
|
|
||||||
@ -61,9 +61,8 @@ 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
|
||||||
|
|||||||
@ -177,6 +177,10 @@ OPTIONS
|
|||||||
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
@ -248,6 +248,10 @@ OPTIONS
|
|||||||
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,7 +319,6 @@ 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
|
||||||
@ -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-
|
||||||
@ -388,7 +390,6 @@ OPTIONS
|
|||||||
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
|
||||||
@ -396,7 +397,6 @@ OPTIONS
|
|||||||
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,8 +404,6 @@ 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
|
||||||
@ -416,7 +414,6 @@ OPTIONS
|
|||||||
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-
|
||||||
@ -431,7 +428,6 @@ OPTIONS
|
|||||||
-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"
|
||||||
@ -442,7 +438,6 @@ OPTIONS
|
|||||||
|
|
||||||
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"
|
||||||
@ -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)
|
||||||
|
|
||||||
@ -1153,9 +1144,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 balance sheet. It currently assumes
|
This command displays a simple balance sheet. It currently assumes
|
||||||
that you have top-level accounts named asset and liability (plural
|
that you have top-level accounts named asset and liability (plural
|
||||||
forms also allowed.)
|
forms also allowed.)
|
||||||
@ -1184,9 +1184,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 cashflow statement It shows the change
|
This command displays a simple cashflow statement It shows the change
|
||||||
in all "cash" (ie, liquid assets) accounts for the period. It cur-
|
in all "cash" (ie, liquid assets) accounts for the period. It cur-
|
||||||
rently assumes that cash accounts are under a top-level account named
|
rently assumes that cash accounts are under a top-level account named
|
||||||
@ -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.)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user