;update manuals

This commit is contained in:
Simon Michael 2020-12-23 14:23:33 -08:00
parent 589aa267d8
commit 2002557e50
21 changed files with 2024 additions and 2830 deletions

View File

@ -1,12 +1,12 @@
.\"t
.TH "hledger_csv" "5" "December 2020" "hledger 1.20.1" "hledger User Manuals"
.TH "HLEDGER_CSV" "5" "December 2020" "hledger-lib-1.20.1 " "hledger User Manuals"
.SH NAME
.PP
CSV - how hledger reads CSV data, and the CSV rules file format
How hledger reads CSV data, and the CSV rules file format.
.SH DESCRIPTION
.PP
hledger can read CSV files (Character Separated Value - usually comma,
@ -1295,6 +1295,6 @@ Copyright (C) 2007-2020 Simon Michael.
Released under GNU GPL v3 or later.
.SH SEE ALSO
hledger(1), hledger\-ui(1), hledger\-web(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5),
ledger(1)
hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5)

View File

@ -3,10 +3,10 @@ This is hledger_csv.info, produced by makeinfo version 6.7 from stdin.

File: hledger_csv.info, Node: Top, Next: EXAMPLES, Up: (dir)
hledger_csv(5) hledger 1.20.1
*****************************
hledger_csv(5)
**************
CSV - how hledger reads CSV data, and the CSV rules file format
How hledger reads CSV data, and the CSV rules file format.
hledger can read CSV files (Character Separated Value - usually
comma, semicolon, or tab) containing dated records as if they were
@ -60,37 +60,11 @@ below.
* Menu:
* EXAMPLES::
* Basic::
* Bank of Ireland::
* Amazon::
* Paypal::
* CSV RULES::
* skip::
* fields::
* field assignment::
* separator::
* if block::
* if table::
* end::
* date-format::
* decimal-mark::
* newest-first::
* include::
* balance-type::
* TIPS::
* Rapid feedback::
* Valid CSV::
* File Extension::
* Reading multiple CSV files::
* Valid transactions::
* Deduplicating importing::
* Setting amounts::
* Setting currency/commodity::
* Referencing other fields::
* How CSV rules are evaluated::

File: hledger_csv.info, Node: EXAMPLES, Next: Basic, Prev: Top, Up: Top
File: hledger_csv.info, Node: EXAMPLES, Next: CSV RULES, Prev: Top, Up: Top
1 EXAMPLES
**********
@ -99,11 +73,18 @@ Here are some sample hledger CSV rules files. See also the full
collection at:
https://github.com/simonmichael/hledger/tree/master/examples/csv

File: hledger_csv.info, Node: Basic, Next: Bank of Ireland, Prev: EXAMPLES, Up: Top
* Menu:
2 Basic
*******
* Basic::
* Bank of Ireland::
* Amazon::
* Paypal::

File: hledger_csv.info, Node: Basic, Next: Bank of Ireland, Up: EXAMPLES
1.1 Basic
=========
At minimum, the rules file must identify the date and amount fields, and
often it also specifies the date format and how many header lines there
@ -125,10 +106,10 @@ $ hledger print -f basic.csv
Default account names are chosen, since we didn't set them.

File: hledger_csv.info, Node: Bank of Ireland, Next: Amazon, Prev: Basic, Up: Top
File: hledger_csv.info, Node: Bank of Ireland, Next: Amazon, Prev: Basic, Up: EXAMPLES
3 Bank of Ireland
*****************
1.2 Bank of Ireland
===================
Here's a CSV with two amount fields (Debit and Credit), and a balance
field, which we can use to add balance assertions, which is not
@ -178,10 +159,10 @@ reading directly from CSV, but they will be checked if these entries are
imported into a journal file.

File: hledger_csv.info, Node: Amazon, Next: Paypal, Prev: Bank of Ireland, Up: Top
File: hledger_csv.info, Node: Amazon, Next: Paypal, Prev: Bank of Ireland, Up: EXAMPLES
4 Amazon
********
1.3 Amazon
==========
Here we convert amazon.com order history, and use an if block to
generate a third posting if there's a fee. (In practice you'd probably
@ -236,10 +217,10 @@ $ hledger -f amazon-orders.csv print
expenses:fees $1.00

File: hledger_csv.info, Node: Paypal, Next: CSV RULES, Prev: Amazon, Up: Top
File: hledger_csv.info, Node: Paypal, Prev: Amazon, Up: EXAMPLES
5 Paypal
********
1.4 Paypal
==========
Here's a real-world rules file for (customised) Paypal CSV, with some
Paypal-specific rules, and a second rules file included:
@ -390,19 +371,34 @@ $ hledger -f paypal-custom.csv print
expenses:banking:paypal $0.59 ; business:

File: hledger_csv.info, Node: CSV RULES, Next: skip, Prev: Paypal, Up: Top
File: hledger_csv.info, Node: CSV RULES, Next: TIPS, Prev: EXAMPLES, Up: Top
6 CSV RULES
2 CSV RULES
***********
The following kinds of rule can appear in the rules file, in any order.
Blank lines and lines beginning with '#' or ';' are ignored.

File: hledger_csv.info, Node: skip, Next: fields, Prev: CSV RULES, Up: Top
* Menu:
7 'skip'
********
* skip::
* fields::
* field assignment::
* separator::
* if block::
* if table::
* end::
* date-format::
* decimal-mark::
* newest-first::
* include::
* balance-type::

File: hledger_csv.info, Node: skip, Next: fields, Up: CSV RULES
2.1 'skip'
==========
skip N
@ -415,10 +411,10 @@ whenever your CSV data contains header lines.
ignore certain CSV records (described below).

File: hledger_csv.info, Node: fields, Next: field assignment, Prev: skip, Up: Top
File: hledger_csv.info, Node: fields, Next: field assignment, Prev: skip, Up: CSV RULES
8 'fields'
**********
2.2 'fields'
============
fields FIELDNAME1, FIELDNAME2, ...
@ -457,8 +453,8 @@ journal format.

File: hledger_csv.info, Node: Transaction field names, Next: Posting field names, Up: fields
8.1 Transaction field names
===========================
2.2.1 Transaction field names
-----------------------------
'date', 'date2', 'status', 'code', 'description', 'comment' can be used
to form the transaction's first line.
@ -466,8 +462,8 @@ to form the transaction's first line.

File: hledger_csv.info, Node: Posting field names, Prev: Transaction field names, Up: fields
8.2 Posting field names
=======================
2.2.2 Posting field names
-------------------------
* Menu:
@ -480,8 +476,8 @@ File: hledger_csv.info, Node: Posting field names, Prev: Transaction field nam

File: hledger_csv.info, Node: account, Next: amount, Up: Posting field names
8.2.1 account
-------------
2.2.2.1 account
...............
'accountN', where N is 1 to 99, causes a posting to be generated, with
that account name.
@ -498,8 +494,8 @@ or "income:unknown").

File: hledger_csv.info, Node: amount, Next: currency, Prev: account, Up: Posting field names
8.2.2 amount
------------
2.2.2.2 amount
..............
'amountN' sets posting N's amount. If the CSV uses separate fields for
inflows and outflows, you can use 'amountN-in' and 'amountN-out'
@ -525,8 +521,8 @@ avoiding conflicts.

File: hledger_csv.info, Node: currency, Next: balance, Prev: amount, Up: Posting field names
8.2.3 currency
--------------
2.2.2.3 currency
................
If the CSV has the currency symbol in a separate field (ie, not part of
the amount field), you can use 'currencyN' to prepend it to posting N's
@ -535,8 +531,8 @@ amount. Or, 'currency' with no number affects all postings.

File: hledger_csv.info, Node: balance, Next: comment, Prev: currency, Up: Posting field names
8.2.4 balance
-------------
2.2.2.4 balance
...............
'balanceN' sets a balance assertion amount (or if the posting amount is
left empty, a balance assignment) on posting N.
@ -550,8 +546,8 @@ is equivalent to 'balance1'.

File: hledger_csv.info, Node: comment, Prev: balance, Up: Posting field names
8.2.5 comment
-------------
2.2.2.5 comment
...............
Finally, 'commentN' sets a comment on the Nth posting. Comments can
also contain tags, as usual.
@ -559,10 +555,10 @@ also contain tags, as usual.
See TIPS below for more about setting amounts and currency.

File: hledger_csv.info, Node: field assignment, Next: separator, Prev: fields, Up: Top
File: hledger_csv.info, Node: field assignment, Next: separator, Prev: fields, Up: CSV RULES
9 field assignment
******************
2.3 field assignment
====================
HLEDGERFIELDNAME FIELDVALUE
@ -584,10 +580,10 @@ becomes '1' when interpolated) (#1051). See TIPS below for more about
referencing other fields.

File: hledger_csv.info, Node: separator, Next: if block, Prev: field assignment, Up: Top
File: hledger_csv.info, Node: separator, Next: if block, Prev: field assignment, Up: CSV RULES
10 'separator'
**************
2.4 'separator'
===============
You can use the 'separator' rule to read other kinds of
character-separated data. The argument is any single separator
@ -609,10 +605,10 @@ separator TAB
inferred automatically, and you won't need this rule.

File: hledger_csv.info, Node: if block, Next: if table, Prev: separator, Up: Top
File: hledger_csv.info, Node: if block, Next: if table, Prev: separator, Up: CSV RULES
11 'if' block
*************
2.5 'if' block
==============
if MATCHER
RULE
@ -639,8 +635,8 @@ descriptions.

File: hledger_csv.info, Node: Matching the whole record, Next: Matching individual fields, Up: if block
11.1 Matching the whole record
==============================
2.5.1 Matching the whole record
-------------------------------
Each MATCHER can be a record matcher, which looks like this:
@ -662,8 +658,8 @@ actually see '2020-01-01,Acme, Inc., 1,000').

File: hledger_csv.info, Node: Matching individual fields, Next: Combining matchers, Prev: Matching the whole record, Up: if block
11.2 Matching individual fields
===============================
2.5.2 Matching individual fields
--------------------------------
Or, MATCHER can be a field matcher, like this:
@ -676,8 +672,8 @@ is a percent sign followed by the field's name or column number, like

File: hledger_csv.info, Node: Combining matchers, Next: Rules applied on successful match, Prev: Matching individual fields, Up: if block
11.3 Combining matchers
=======================
2.5.3 Combining matchers
------------------------
A single matcher can be written on the same line as the "if"; or
multiple matchers can be written on the following lines, non-indented.
@ -693,8 +689,8 @@ MATCHER

File: hledger_csv.info, Node: Rules applied on successful match, Prev: Combining matchers, Up: if block
11.4 Rules applied on successful match
======================================
2.5.4 Rules applied on successful match
---------------------------------------
After the patterns there should be one or more rules to apply, all
indented by at least one space. Three kinds of rule are allowed in
@ -719,10 +715,10 @@ banking thru software
comment XXX deductible ? check it

File: hledger_csv.info, Node: if table, Next: end, Prev: if block, Up: Top
File: hledger_csv.info, Node: if table, Next: end, Prev: if block, Up: CSV RULES
12 'if' table
*************
2.6 'if' table
==============
if,CSVFIELDNAME1,CSVFIELDNAME2,...,CSVFIELDNAMEn
MATCHER1,VALUE11,VALUE12,...,VALUE1n
@ -780,10 +776,10 @@ atm transaction fee,expenses:business:banking,deductible? check it
2020/01/12.*Plumbing LLC,expenses:house:upkeep,emergency plumbing call-out

File: hledger_csv.info, Node: end, Next: date-format, Prev: if table, Up: Top
File: hledger_csv.info, Node: end, Next: date-format, Prev: if table, Up: CSV RULES
13 'end'
********
2.7 'end'
=========
This rule can be used inside if blocks (only), to make hledger stop
reading this CSV file and move on to the next input file, or to command
@ -794,10 +790,10 @@ if ,,,,
end

File: hledger_csv.info, Node: date-format, Next: decimal-mark, Prev: end, Up: Top
File: hledger_csv.info, Node: date-format, Next: decimal-mark, Prev: end, Up: CSV RULES
14 'date-format'
****************
2.8 'date-format'
=================
date-format DATEFMT
@ -825,10 +821,10 @@ date-format %-m/%-d/%Y %l:%M %p some other junk
https://hackage.haskell.org/package/time/docs/Data-Time-Format.html#v:formatTime

File: hledger_csv.info, Node: decimal-mark, Next: newest-first, Prev: date-format, Up: Top
File: hledger_csv.info, Node: decimal-mark, Next: newest-first, Prev: date-format, Up: CSV RULES
15 'decimal-mark'
*****************
2.9 'decimal-mark'
==================
decimal-mark .
@ -843,10 +839,10 @@ should declare the decimal mark explicitly with this rule, to avoid
misparsed numbers.

File: hledger_csv.info, Node: newest-first, Next: include, Prev: decimal-mark, Up: Top
File: hledger_csv.info, Node: newest-first, Next: include, Prev: decimal-mark, Up: CSV RULES
16 'newest-first'
*****************
2.10 'newest-first'
===================
hledger always sorts the generated transactions by date. Transactions
on the same date should appear in the same order as their CSV records,
@ -865,10 +861,10 @@ oldest first or newest first. But if all of the following are true:
newest-first

File: hledger_csv.info, Node: include, Next: balance-type, Prev: newest-first, Up: Top
File: hledger_csv.info, Node: include, Next: balance-type, Prev: newest-first, Up: CSV RULES
17 'include'
************
2.11 'include'
==============
include RULESFILE
@ -879,19 +875,19 @@ several rules files, eg:
# someaccount.csv.rules
# someaccount-specific rules
## someaccount-specific rules
fields date,description,amount
account1 assets:someaccount
account2 expenses:misc
# common rules
## common rules
include categorisation.rules

File: hledger_csv.info, Node: balance-type, Next: TIPS, Prev: include, Up: Top
File: hledger_csv.info, Node: balance-type, Prev: include, Up: CSV RULES
18 'balance-type'
*****************
2.12 'balance-type'
===================
Balance assertions generated by assigning to balanceN are of the simple
'=' type by default, which is a single-commodity, subaccount-excluding
@ -911,16 +907,29 @@ balance-type ==*
==* multi commodity, include subaccounts

File: hledger_csv.info, Node: TIPS, Next: Rapid feedback, Prev: balance-type, Up: Top
File: hledger_csv.info, Node: TIPS, Prev: CSV RULES, Up: Top
19 TIPS
*******
3 TIPS
******
* Menu:
* Rapid feedback::
* Valid CSV::
* File Extension::
* Reading multiple CSV files::
* Valid transactions::
* Deduplicating importing::
* Setting amounts::
* Setting currency/commodity::
* Referencing other fields::
* How CSV rules are evaluated::

File: hledger_csv.info, Node: Rapid feedback, Next: Valid CSV, Prev: TIPS, Up: Top
File: hledger_csv.info, Node: Rapid feedback, Next: Valid CSV, Up: TIPS
20 Rapid feedback
*****************
3.1 Rapid feedback
==================
It's a good idea to get rapid feedback while creating/troubleshooting
CSV rules. Here's a good way, using entr from
@ -934,10 +943,10 @@ a separator each time the command re-runs, making it easier to read the
output.

File: hledger_csv.info, Node: Valid CSV, Next: File Extension, Prev: Rapid feedback, Up: Top
File: hledger_csv.info, Node: Valid CSV, Next: File Extension, Prev: Rapid feedback, Up: TIPS
21 Valid CSV
************
3.2 Valid CSV
=============
hledger accepts CSV conforming to RFC 4180. When CSV values are
enclosed in quotes, note:
@ -946,10 +955,10 @@ enclosed in quotes, note:
* spaces outside the quotes are not allowed

File: hledger_csv.info, Node: File Extension, Next: Reading multiple CSV files, Prev: Valid CSV, Up: Top
File: hledger_csv.info, Node: File Extension, Next: Reading multiple CSV files, Prev: Valid CSV, Up: TIPS
22 File Extension
*****************
3.3 File Extension
==================
To help hledger identify the format and show the right error messages,
CSV/SSV/TSV files should normally be named with a '.csv', '.ssv' or
@ -966,10 +975,10 @@ $ cat foo | hledger -f ssv:- foo
See also: Input files in the hledger manual.

File: hledger_csv.info, Node: Reading multiple CSV files, Next: Valid transactions, Prev: File Extension, Up: Top
File: hledger_csv.info, Node: Reading multiple CSV files, Next: Valid transactions, Prev: File Extension, Up: TIPS
23 Reading multiple CSV files
*****************************
3.4 Reading multiple CSV files
==============================
If you use multiple '-f' options to read multiple CSV files at once,
hledger will look for a correspondingly-named rules file for each CSV
@ -977,10 +986,10 @@ file. But if you use the '--rules-file' option, that rules file will be
used for all the CSV files.

File: hledger_csv.info, Node: Valid transactions, Next: Deduplicating importing, Prev: Reading multiple CSV files, Up: Top
File: hledger_csv.info, Node: Valid transactions, Next: Deduplicating importing, Prev: Reading multiple CSV files, Up: TIPS
24 Valid transactions
*********************
3.5 Valid transactions
======================
After reading a CSV file, hledger post-processes and validates the
generated journal entries as it would for a journal file - balancing
@ -996,10 +1005,10 @@ assertions generated from CSV right away, pipe into another hledger:
$ hledger -f file.csv print | hledger -f- print

File: hledger_csv.info, Node: Deduplicating importing, Next: Setting amounts, Prev: Valid transactions, Up: Top
File: hledger_csv.info, Node: Deduplicating importing, Next: Setting amounts, Prev: Valid transactions, Up: TIPS
25 Deduplicating, importing
***************************
3.6 Deduplicating, importing
============================
When you download a CSV file periodically, eg to get your latest bank
transactions, the new file may overlap with the old one, containing some
@ -1026,10 +1035,10 @@ CSV data. See:
* https://plaintextaccounting.org -> data import/conversion

File: hledger_csv.info, Node: Setting amounts, Next: Setting currency/commodity, Prev: Deduplicating importing, Up: Top
File: hledger_csv.info, Node: Setting amounts, Next: Setting currency/commodity, Prev: Deduplicating importing, Up: TIPS
26 Setting amounts
******************
3.7 Setting amounts
===================
A posting amount can be set in one of these ways:
@ -1055,10 +1064,10 @@ A posting amount can be set in one of these ways:
* If an amount value begins with a plus sign, that will be removed

File: hledger_csv.info, Node: Setting currency/commodity, Next: Referencing other fields, Prev: Setting amounts, Up: Top
File: hledger_csv.info, Node: Setting currency/commodity, Next: Referencing other fields, Prev: Setting amounts, Up: TIPS
27 Setting currency/commodity
*****************************
3.8 Setting currency/commodity
==============================
If the currency/commodity symbol is included in the CSV's amount
field(s):
@ -1103,10 +1112,10 @@ amount %amt %cur
that would trigger the prepending effect, which we don't want here.

File: hledger_csv.info, Node: Referencing other fields, Next: How CSV rules are evaluated, Prev: Setting currency/commodity, Up: Top
File: hledger_csv.info, Node: Referencing other fields, Next: How CSV rules are evaluated, Prev: Setting currency/commodity, Up: TIPS
28 Referencing other fields
***************************
3.9 Referencing other fields
============================
In field assignments, you can interpolate only CSV fields, not hledger
fields. In the example below, there's both a CSV field and a hledger
@ -1140,10 +1149,10 @@ if something
comment C

File: hledger_csv.info, Node: How CSV rules are evaluated, Prev: Referencing other fields, Up: Top
File: hledger_csv.info, Node: How CSV rules are evaluated, Prev: Referencing other fields, Up: TIPS
29 How CSV rules are evaluated
******************************
3.10 How CSV rules are evaluated
================================
Here's how to think of CSV rules being evaluated (if you really need
to). First,
@ -1183,90 +1192,85 @@ command the user specified.

Tag Table:
Node: Top72
Node: EXAMPLES3257
Ref: #examples3359
Node: Basic3505
Ref: #basic3613
Node: Bank of Ireland4155
Ref: #bank-of-ireland4281
Node: Amazon5743
Ref: #amazon5852
Node: Paypal7571
Ref: #paypal7674
Node: CSV RULES15318
Ref: #csv-rules15425
Node: skip15559
Ref: #skip15660
Node: fields16035
Ref: #fields16147
Node: Transaction field names17312
Ref: #transaction-field-names17468
Node: Posting field names17579
Ref: #posting-field-names17727
Node: account17797
Ref: #account17909
Node: amount18446
Ref: #amount18573
Node: currency19680
Ref: #currency19811
Node: balance20017
Ref: #balance20147
Node: comment20464
Ref: #comment20577
Node: field assignment20740
Ref: #field-assignment20873
Node: separator21691
Ref: #separator21818
Node: if block22358
Ref: #if-block22475
Node: Matching the whole record22876
Ref: #matching-the-whole-record23049
Node: Matching individual fields23853
Ref: #matching-individual-fields24055
Node: Combining matchers24279
Ref: #combining-matchers24473
Node: Rules applied on successful match24786
Ref: #rules-applied-on-successful-match24975
Node: if table25629
Ref: #if-table25740
Node: end27478
Ref: #end27582
Node: date-format27806
Ref: #date-format27930
Node: decimal-mark28679
Ref: #decimal-mark28814
Node: newest-first29153
Ref: #newest-first29284
Node: include29967
Ref: #include30088
Node: balance-type30530
Ref: #balance-type30653
Node: TIPS31353
Ref: #tips31463
Node: Rapid feedback31463
Ref: #rapid-feedback31590
Node: Valid CSV32050
Ref: #valid-csv32177
Node: File Extension32369
Ref: #file-extension32518
Node: Reading multiple CSV files32947
Ref: #reading-multiple-csv-files33129
Node: Valid transactions33370
Ref: #valid-transactions33545
Node: Deduplicating importing34173
Ref: #deduplicating-importing34349
Node: Setting amounts35382
Ref: #setting-amounts35548
Node: Setting currency/commodity36535
Ref: #setting-currencycommodity36724
Node: Referencing other fields37898
Ref: #referencing-other-fields38095
Node: How CSV rules are evaluated38992
Ref: #how-csv-rules-are-evaluated39160
Node: EXAMPLES2756
Ref: #examples2862
Node: Basic3070
Ref: #basic3170
Node: Bank of Ireland3712
Ref: #bank-of-ireland3847
Node: Amazon5309
Ref: #amazon5427
Node: Paypal7146
Ref: #paypal7240
Node: CSV RULES14884
Ref: #csv-rules14993
Node: skip15305
Ref: #skip15398
Node: fields15773
Ref: #fields15895
Node: Transaction field names17060
Ref: #transaction-field-names17220
Node: Posting field names17331
Ref: #posting-field-names17483
Node: account17553
Ref: #account17669
Node: amount18206
Ref: #amount18337
Node: currency19444
Ref: #currency19579
Node: balance19785
Ref: #balance19919
Node: comment20236
Ref: #comment20353
Node: field assignment20516
Ref: #field-assignment20659
Node: separator21477
Ref: #separator21612
Node: if block22152
Ref: #if-block22277
Node: Matching the whole record22678
Ref: #matching-the-whole-record22853
Node: Matching individual fields23657
Ref: #matching-individual-fields23861
Node: Combining matchers24085
Ref: #combining-matchers24281
Node: Rules applied on successful match24594
Ref: #rules-applied-on-successful-match24785
Node: if table25439
Ref: #if-table25558
Node: end27296
Ref: #end27408
Node: date-format27632
Ref: #date-format27764
Node: decimal-mark28513
Ref: #decimal-mark28656
Node: newest-first28995
Ref: #newest-first29136
Node: include29819
Ref: #include29950
Node: balance-type30394
Ref: #balance-type30514
Node: TIPS31214
Ref: #tips31296
Node: Rapid feedback31552
Ref: #rapid-feedback31669
Node: Valid CSV32129
Ref: #valid-csv32259
Node: File Extension32451
Ref: #file-extension32603
Node: Reading multiple CSV files33032
Ref: #reading-multiple-csv-files33217
Node: Valid transactions33458
Ref: #valid-transactions33636
Node: Deduplicating importing34264
Ref: #deduplicating-importing34443
Node: Setting amounts35476
Ref: #setting-amounts35645
Node: Setting currency/commodity36632
Ref: #setting-currencycommodity36824
Node: Referencing other fields37998
Ref: #referencing-other-fields38198
Node: How CSV rules are evaluated39095
Ref: #how-csv-rules-are-evaluated39268

End Tag Table

Local Variables:
coding: utf-8
End:

View File

@ -1,10 +1,10 @@
hledger_csv(5) hledger User Manuals hledger_csv(5)
HLEDGER_CSV(5) hledger User Manuals HLEDGER_CSV(5)
NAME
CSV - how hledger reads CSV data, and the CSV rules file format
How hledger reads CSV data, and the CSV rules file format.
DESCRIPTION
hledger can read CSV files (Character Separated Value - usually comma,
@ -951,9 +951,11 @@ COPYRIGHT
SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger_csv(5),
hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1)
hledger(1), hledger-ui(1), hledger-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time-
dot(5)
hledger 1.20.1 December 2020 hledger_csv(5)
hledger-lib-1.20.1 December 2020 HLEDGER_CSV(5)

View File

@ -1,13 +1,12 @@
.\"t
.TH "hledger_journal" "5" "December 2020" "hledger 1.20.1" "hledger User Manuals"
.TH "HLEDGER_JOURNAL" "5" "December 2020" "hledger-lib-1.20.1 " "hledger User Manuals"
.SH NAME
.PP
Journal - hledger\[aq]s default file format, representing a General
Journal
hledger\[aq]s default file format, representing a General Journal.
.SH DESCRIPTION
.PP
hledger\[aq]s usual data source is a plain text file containing journal
@ -34,7 +33,6 @@ Editor addons such as ledger-mode or hledger-mode for Emacs, vim-ledger
for Vim, and hledger-vscode for Visual Studio Code, make this easier,
adding colour, formatting, tab completion, and useful commands.
See Editor configuration at hledger.org for the full list.
.SH FILE FORMAT
.PP
Here\[aq]s a description of each part of the file format (and
hledger\[aq]s data model).
@ -42,7 +40,7 @@ These are mostly in the order you\[aq]ll use them, but in some cases
related concepts have been grouped together for easy reference, or
linked before they are introduced, so feel free to skip over anything
that looks unnecessary right now.
.SS Transactions
.SH TRANSACTIONS
.PP
Transactions are the main unit of information in a journal file.
They represent events, typically a movement of some quantity of
@ -75,7 +73,7 @@ Here\[aq]s a simple journal file containing one transaction:
income:salary $-1
\f[R]
.fi
.SS Dates
.SH DATES
.SS Simple dates
.PP
Dates in the journal file use \f[I]simple dates\f[R] format:
@ -181,7 +179,7 @@ hledger will attempt to parse any square-bracketed sequence of the
\f[C]0123456789/-.=\f[R] characters in this way.
With this syntax, DATE infers its year from the transaction and DATE2
infers its year from DATE.
.SS Status
.SH STATUS
.PP
Transactions, or individual postings within a transaction, can have a
status mark, which is a single character before the transaction
@ -268,7 +266,7 @@ With this scheme, you would use \f[C]-PC\f[R] to see the current balance
at your bank, \f[C]-U\f[R] to see things which will probably hit your
bank soon (like uncashed checks), and no flags to see the most
up-to-date state of your finances.
.SS Description
.SH DESCRIPTION
.PP
A transaction\[aq]s description is the rest of the line following the
date and status mark (or until a comment begins).
@ -283,7 +281,7 @@ payee/payer name on the left (up to the first \f[C]|\f[R]) and an
additional note field on the right (after the first \f[C]|\f[R]).
This may be worthwhile if you need to do more precise querying and
pivoting by payee or by note.
.SS Comments
.SH COMMENTS
.PP
Lines in the journal beginning with a semicolon (\f[C];\f[R]) or hash
(\f[C]#\f[R]) or star (\f[C]*\f[R]) are comments, and will be ignored.
@ -324,7 +322,7 @@ end comment
.PP
You can also comment larger regions of a file using \f[C]comment\f[R]
and \f[C]end comment\f[R] directives.
.SS Tags
.SH TAGS
.PP
Tags are a way to add extra labels or labelled data to postings and
transactions, which you can then search or pivot on.
@ -383,7 +381,7 @@ plus \f[C]posting-tag\f[R]):
.PP
Tags are like Ledger\[aq]s metadata feature, except hledger\[aq]s tag
values are simple strings.
.SS Postings
.SH POSTINGS
.PP
A posting is an addition of some amount to, or removal of some amount
from, an account.
@ -454,7 +452,7 @@ Ordinary non-parenthesised, non-bracketed postings are called \f[I]real
postings\f[R].
You can exclude virtual postings from reports with the
\f[C]-R/--real\f[R] flag or \f[C]real:1\f[R] query.
.SS Account names
.SH ACCOUNT NAMES
.PP
Account names typically have several parts separated by a full colon,
from which hledger derives a hierarchical chart of accounts.
@ -468,7 +466,7 @@ Because of this, they must always be followed by \f[B]two or more
spaces\f[R] (or newline).
.PP
Account names can be aliased.
.SS Amounts
.SH AMOUNTS
.PP
After the account name, there is usually an amount.
(Important: between account name and amount, there must be \f[B]two or
@ -637,7 +635,7 @@ Note, hledger uses banker\[aq]s rounding: it rounds to the nearest even
number, eg 0.5 displayed with zero decimal places is \[dq]0\[dq]).
(Guaranteed since hledger 1.17.1; in older versions this could vary if
hledger was built with Decimal < 0.5.1.)
.SS Transaction prices
.SH TRANSACTION PRICES
.PP
Within a transaction, you can note an amount\[aq]s price in another
commodity.
@ -734,7 +732,7 @@ $ hledger bal -N --flat -B
\[Eu]100 assets:euros
\f[R]
.fi
.SS Lot prices and lot dates
.SH LOT PRICES, LOT DATES
.PP
Ledger allows another kind of price, lot price (four variants:
\f[C]{UNITPRICE}\f[R], \f[C]{{TOTALPRICE}}\f[R],
@ -745,7 +743,7 @@ hledger will parse these, for compatibility with Ledger journals, but
currently ignores them.
A transaction price, lot price and/or lot date may appear in any order,
after the posting amount and before the balance assertion if any.
.SS Balance assertions
.SH BALANCE ASSERTIONS
.PP
hledger supports Ledger-style balance assertions in journal files.
These look like, for example, \f[C]= EXPECTEDBALANCE\f[R] following a
@ -901,7 +899,7 @@ always what is shown by reports.
Eg a commodity directive may limit the display precision, but this will
not affect balance assertions.
Balance assertion failure messages show exact amounts.
.SS Balance assignments
.SH BALANCE ASSIGNMENTS
.PP
Ledger-style balance assignments are also supported.
These are like balance assertions, but with no posting amount on the
@ -958,7 +956,7 @@ $ hledger print --explicit
(a) $1 \[at] \[Eu]2 = $1 \[at] \[Eu]2
\f[R]
.fi
.SS Directives
.SH DIRECTIVES
.PP
A directive is a line in the journal beginning with a special keyword,
that influences how the journal is processed.
@ -1850,7 +1848,7 @@ It does not affect account names being entered via hledger add or
hledger-web.
If account aliases are present, they are applied after the default
parent account.
.SS Periodic transactions
.SH PERIODIC TRANSACTIONS
.PP
Periodic transaction rules describe transactions that recur.
They allow hledger to generate temporary future transactions to help
@ -2004,7 +2002,7 @@ Goals and actual performance can then be compared in budget reports.
.PP
See also: Budgeting and Forecasting.
.PP
.SS Auto postings
.SH AUTO POSTINGS
.PP
\[dq]Automated postings\[dq] or \[dq]auto postings\[dq] are extra
postings which get added automatically to transactions which match
@ -2150,6 +2148,6 @@ Copyright (C) 2007-2020 Simon Michael.
Released under GNU GPL v3 or later.
.SH SEE ALSO
hledger(1), hledger\-ui(1), hledger\-web(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5),
ledger(1)
hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5)

View File

@ -2,12 +2,12 @@ This is hledger_journal.info, produced by makeinfo version 6.7 from
stdin.

File: hledger_journal.info, Node: Top, Next: Transactions, Up: (dir)
File: hledger_journal.info, Node: Top, Next: TRANSACTIONS, Up: (dir)
hledger_journal(5) hledger 1.20.1
*********************************
hledger_journal(5)
******************
Journal - hledger's default file format, representing a General Journal
hledger's default file format, representing a General Journal.
hledger's usual data source is a plain text file containing journal
entries in hledger journal format. This file represents a standard
@ -40,27 +40,27 @@ that looks unnecessary right now.
* Menu:
* Transactions::
* Dates::
* Status::
* Description::
* Comments::
* Tags::
* Postings::
* Account names::
* Amounts::
* Transaction prices::
* Lot prices and lot dates::
* Balance assertions::
* Balance assignments::
* Directives::
* Periodic transactions::
* Auto postings::
* TRANSACTIONS::
* DATES::
* STATUS::
* DESCRIPTION::
* COMMENTS::
* TAGS::
* POSTINGS::
* ACCOUNT NAMES::
* AMOUNTS::
* TRANSACTION PRICES::
* LOT PRICES LOT DATES::
* BALANCE ASSERTIONS::
* BALANCE ASSIGNMENTS::
* DIRECTIVES::
* PERIODIC TRANSACTIONS::
* AUTO POSTINGS::

File: hledger_journal.info, Node: Transactions, Next: Dates, Prev: Top, Up: Top
File: hledger_journal.info, Node: TRANSACTIONS, Next: DATES, Prev: Top, Up: Top
1 Transactions
1 TRANSACTIONS
**************
Transactions are the main unit of information in a journal file. They
@ -87,9 +87,9 @@ optional fields, separated by spaces:
income:salary $-1

File: hledger_journal.info, Node: Dates, Next: Status, Prev: Transactions, Up: Top
File: hledger_journal.info, Node: DATES, Next: STATUS, Prev: TRANSACTIONS, Up: Top
2 Dates
2 DATES
*******
* Menu:
@ -99,7 +99,7 @@ File: hledger_journal.info, Node: Dates, Next: Status, Prev: Transactions, U
* Posting dates::

File: hledger_journal.info, Node: Simple dates, Next: Secondary dates, Up: Dates
File: hledger_journal.info, Node: Simple dates, Next: Secondary dates, Up: DATES
2.1 Simple dates
================
@ -115,7 +115,7 @@ or the current date when the command is run. Some examples:
dates documented in the hledger manual.)

File: hledger_journal.info, Node: Secondary dates, Next: Posting dates, Prev: Simple dates, Up: Dates
File: hledger_journal.info, Node: Secondary dates, Next: Posting dates, Prev: Simple dates, Up: DATES
2.2 Secondary dates
===================
@ -151,7 +151,7 @@ $ hledger register checking --date2
2010-02-19 movie ticket assets:checking $-10 $-10

File: hledger_journal.info, Node: Posting dates, Prev: Secondary dates, Up: Dates
File: hledger_journal.info, Node: Posting dates, Prev: Secondary dates, Up: DATES
2.3 Posting dates
=================
@ -186,9 +186,9 @@ characters in this way. With this syntax, DATE infers its year from the
transaction and DATE2 infers its year from DATE.

File: hledger_journal.info, Node: Status, Next: Description, Prev: Dates, Up: Top
File: hledger_journal.info, Node: STATUS, Next: DESCRIPTION, Prev: DATES, Up: Top
3 Status
3 STATUS
********
Transactions, or individual postings within a transaction, can have a
@ -236,9 +236,9 @@ your bank, '-U' to see things which will probably hit your bank soon
your finances.

File: hledger_journal.info, Node: Description, Next: Comments, Prev: Status, Up: Top
File: hledger_journal.info, Node: DESCRIPTION, Next: COMMENTS, Prev: STATUS, Up: Top
4 Description
4 DESCRIPTION
*************
A transaction's description is the rest of the line following the date
@ -252,7 +252,7 @@ comments.
* Payee and note::

File: hledger_journal.info, Node: Payee and note, Up: Description
File: hledger_journal.info, Node: Payee and note, Up: DESCRIPTION
4.1 Payee and note
==================
@ -264,9 +264,9 @@ the left (up to the first '|') and an additional note field on the right
precise querying and pivoting by payee or by note.

File: hledger_journal.info, Node: Comments, Next: Tags, Prev: Description, Up: Top
File: hledger_journal.info, Node: COMMENTS, Next: TAGS, Prev: DESCRIPTION, Up: Top
5 Comments
5 COMMENTS
**********
Lines in the journal beginning with a semicolon (';') or hash ('#') or
@ -304,9 +304,9 @@ end comment
'end comment' directives.

File: hledger_journal.info, Node: Tags, Next: Postings, Prev: Comments, Up: Top
File: hledger_journal.info, Node: TAGS, Next: POSTINGS, Prev: COMMENTS, Up: Top
6 Tags
6 TAGS
******
Tags are a way to add extra labels or labelled data to postings and
@ -347,9 +347,9 @@ example, the following transaction has three tags ('A', 'TAG2',
are simple strings.

File: hledger_journal.info, Node: Postings, Next: Account names, Prev: Tags, Up: Top
File: hledger_journal.info, Node: POSTINGS, Next: ACCOUNT NAMES, Prev: TAGS, Up: Top
7 Postings
7 POSTINGS
**********
A posting is an addition of some amount to, or removal of some amount
@ -379,7 +379,7 @@ the amount, the amount will be considered part of the account name.
* Virtual postings::

File: hledger_journal.info, Node: Virtual postings, Up: Postings
File: hledger_journal.info, Node: Virtual postings, Up: POSTINGS
7.1 Virtual postings
====================
@ -414,9 +414,9 @@ postings_. You can exclude virtual postings from reports with the
'-R/--real' flag or 'real:1' query.

File: hledger_journal.info, Node: Account names, Next: Amounts, Prev: Postings, Up: Top
File: hledger_journal.info, Node: ACCOUNT NAMES, Next: AMOUNTS, Prev: POSTINGS, Up: Top
8 Account names
8 ACCOUNT NAMES
***************
Account names typically have several parts separated by a full colon,
@ -432,9 +432,9 @@ more spaces* (or newline).
Account names can be aliased.

File: hledger_journal.info, Node: Amounts, Next: Transaction prices, Prev: Account names, Up: Top
File: hledger_journal.info, Node: AMOUNTS, Next: TRANSACTION PRICES, Prev: ACCOUNT NAMES, Up: Top
9 Amounts
9 AMOUNTS
*********
After the account name, there is usually an amount. (Important: between
@ -488,7 +488,7 @@ EUR 1E3
* Rounding::

File: hledger_journal.info, Node: Digit group marks, Next: Commodity display style, Up: Amounts
File: hledger_journal.info, Node: Digit group marks, Next: Commodity display style, Up: AMOUNTS
9.1 Digit group marks
=====================
@ -521,7 +521,7 @@ commodity INR 9,99,99,999.00
commodity 1 000 000.9455

File: hledger_journal.info, Node: Commodity display style, Next: Rounding, Prev: Digit group marks, Up: Amounts
File: hledger_journal.info, Node: Commodity display style, Next: Rounding, Prev: Digit group marks, Up: AMOUNTS
9.2 Commodity display style
===========================
@ -566,7 +566,7 @@ many decimal places), use a commodity directive to set your preferred
style.

File: hledger_journal.info, Node: Rounding, Prev: Commodity display style, Up: Amounts
File: hledger_journal.info, Node: Rounding, Prev: Commodity display style, Up: AMOUNTS
9.3 Rounding
============
@ -579,9 +579,9 @@ places is "0"). (Guaranteed since hledger 1.17.1; in older versions
this could vary if hledger was built with Decimal < 0.5.1.)

File: hledger_journal.info, Node: Transaction prices, Next: Lot prices and lot dates, Prev: Amounts, Up: Top
File: hledger_journal.info, Node: TRANSACTION PRICES, Next: LOT PRICES LOT DATES, Prev: AMOUNTS, Up: Top
10 Transaction prices
10 TRANSACTION PRICES
*********************
Within a transaction, you can note an amount's price in another
@ -646,10 +646,10 @@ $ hledger bal -N --flat -B
€100 assets:euros

File: hledger_journal.info, Node: Lot prices and lot dates, Next: Balance assertions, Prev: Transaction prices, Up: Top
File: hledger_journal.info, Node: LOT PRICES LOT DATES, Next: BALANCE ASSERTIONS, Prev: TRANSACTION PRICES, Up: Top
11 Lot prices and lot dates
***************************
11 LOT PRICES, LOT DATES
************************
Ledger allows another kind of price, lot price (four variants:
'{UNITPRICE}', '{{TOTALPRICE}}', '{=FIXEDUNITPRICE}',
@ -661,9 +661,9 @@ may appear in any order, after the posting amount and before the balance
assertion if any.

File: hledger_journal.info, Node: Balance assertions, Next: Balance assignments, Prev: Lot prices and lot dates, Up: Top
File: hledger_journal.info, Node: BALANCE ASSERTIONS, Next: BALANCE ASSIGNMENTS, Prev: LOT PRICES LOT DATES, Up: Top
12 Balance assertions
12 BALANCE ASSERTIONS
*********************
hledger supports Ledger-style balance assertions in journal files.
@ -699,7 +699,7 @@ does not disable balance assignments, below).
* Assertions and precision::

File: hledger_journal.info, Node: Assertions and ordering, Next: Assertions and included files, Up: Balance assertions
File: hledger_journal.info, Node: Assertions and ordering, Next: Assertions and included files, Up: BALANCE ASSERTIONS
12.1 Assertions and ordering
============================
@ -718,7 +718,7 @@ control over the order of postings and assertions within a day, so you
can assert intra-day balances.

File: hledger_journal.info, Node: Assertions and included files, Next: Assertions and multiple -f options, Prev: Assertions and ordering, Up: Balance assertions
File: hledger_journal.info, Node: Assertions and included files, Next: Assertions and multiple -f options, Prev: Assertions and ordering, Up: BALANCE ASSERTIONS
12.2 Assertions and included files
==================================
@ -730,7 +730,7 @@ and you also want to assert the account's balance on the same day,
you'll have to put the assertion in the right file.

File: hledger_journal.info, Node: Assertions and multiple -f options, Next: Assertions and commodities, Prev: Assertions and included files, Up: Balance assertions
File: hledger_journal.info, Node: Assertions and multiple -f options, Next: Assertions and commodities, Prev: Assertions and included files, Up: BALANCE ASSERTIONS
12.3 Assertions and multiple -f options
=======================================
@ -739,7 +739,7 @@ Balance assertions don't work well across files specified with multiple
-f options. Use include or concatenate the files instead.

File: hledger_journal.info, Node: Assertions and commodities, Next: Assertions and prices, Prev: Assertions and multiple -f options, Up: Balance assertions
File: hledger_journal.info, Node: Assertions and commodities, Next: Assertions and prices, Prev: Assertions and multiple -f options, Up: BALANCE ASSERTIONS
12.4 Assertions and commodities
===============================
@ -787,7 +787,7 @@ commodity into its own subaccount:
a:euro 0 == 1€

File: hledger_journal.info, Node: Assertions and prices, Next: Assertions and subaccounts, Prev: Assertions and commodities, Up: Balance assertions
File: hledger_journal.info, Node: Assertions and prices, Next: Assertions and subaccounts, Prev: Assertions and commodities, Up: BALANCE ASSERTIONS
12.5 Assertions and prices
==========================
@ -805,7 +805,7 @@ to generate balance assertions with prices), and because balance
_assignments_ do use them (see below).

File: hledger_journal.info, Node: Assertions and subaccounts, Next: Assertions and virtual postings, Prev: Assertions and prices, Up: Balance assertions
File: hledger_journal.info, Node: Assertions and subaccounts, Next: Assertions and virtual postings, Prev: Assertions and prices, Up: BALANCE ASSERTIONS
12.6 Assertions and subaccounts
===============================
@ -822,7 +822,7 @@ eg:
checking 1 ==* 11

File: hledger_journal.info, Node: Assertions and virtual postings, Next: Assertions and precision, Prev: Assertions and subaccounts, Up: Balance assertions
File: hledger_journal.info, Node: Assertions and virtual postings, Next: Assertions and precision, Prev: Assertions and subaccounts, Up: BALANCE ASSERTIONS
12.7 Assertions and virtual postings
====================================
@ -832,7 +832,7 @@ virtual. They are not affected by the '--real/-R' flag or 'real:'
query.

File: hledger_journal.info, Node: Assertions and precision, Prev: Assertions and virtual postings, Up: Balance assertions
File: hledger_journal.info, Node: Assertions and precision, Prev: Assertions and virtual postings, Up: BALANCE ASSERTIONS
12.8 Assertions and precision
=============================
@ -843,9 +843,9 @@ display precision, but this will not affect balance assertions. Balance
assertion failure messages show exact amounts.

File: hledger_journal.info, Node: Balance assignments, Next: Directives, Prev: Balance assertions, Up: Top
File: hledger_journal.info, Node: BALANCE ASSIGNMENTS, Next: DIRECTIVES, Prev: BALANCE ASSERTIONS, Up: Top
13 Balance assignments
13 BALANCE ASSIGNMENTS
**********************
Ledger-style balance assignments are also supported. These are like
@ -880,7 +880,7 @@ hledger or do the calculations yourself, instead of just reading it.
* Balance assignments and prices::

File: hledger_journal.info, Node: Balance assignments and prices, Up: Balance assignments
File: hledger_journal.info, Node: Balance assignments and prices, Up: BALANCE ASSIGNMENTS
13.1 Balance assignments and prices
===================================
@ -896,9 +896,9 @@ $ hledger print --explicit
(a) $1 @ €2 = $1 @ €2

File: hledger_journal.info, Node: Directives, Next: Periodic transactions, Prev: Balance assignments, Up: Top
File: hledger_journal.info, Node: DIRECTIVES, Next: PERIODIC TRANSACTIONS, Prev: BALANCE ASSIGNMENTS, Up: Top
14 Directives
14 DIRECTIVES
*************
A directive is a line in the journal beginning with a special keyword,
@ -997,7 +997,7 @@ they affect, and whether they are focussed on input (parsing) or output
* Default parent account::

File: hledger_journal.info, Node: Directives and multiple files, Next: Comment blocks, Up: Directives
File: hledger_journal.info, Node: Directives and multiple files, Next: Comment blocks, Up: DIRECTIVES
14.1 Directives and multiple files
==================================
@ -1017,7 +1017,7 @@ files.
directives do not affect parent or sibling files (see below).

File: hledger_journal.info, Node: Comment blocks, Next: Including other files, Prev: Directives and multiple files, Up: Directives
File: hledger_journal.info, Node: Comment blocks, Next: Including other files, Prev: Directives and multiple files, Up: DIRECTIVES
14.2 Comment blocks
===================
@ -1027,7 +1027,7 @@ and a line containing just 'end comment' (or the end of the current
file) ends it. See also comments.

File: hledger_journal.info, Node: Including other files, Next: Default year, Prev: Comment blocks, Up: Directives
File: hledger_journal.info, Node: Including other files, Next: Default year, Prev: Comment blocks, Up: DIRECTIVES
14.3 Including other files
==========================
@ -1058,7 +1058,7 @@ overriding the file extension (as described in hledger.1 -> Input
files): 'include timedot:~/notes/2020*.md'.

File: hledger_journal.info, Node: Default year, Next: Declaring commodities, Prev: Including other files, Up: Directives
File: hledger_journal.info, Node: Default year, Next: Declaring commodities, Prev: Including other files, Up: DIRECTIVES
14.4 Default year
=================
@ -1084,7 +1084,7 @@ Y2010 ; change default year to 2010
assets

File: hledger_journal.info, Node: Declaring commodities, Next: Default commodity, Prev: Default year, Up: Directives
File: hledger_journal.info, Node: Declaring commodities, Next: Default commodity, Prev: Default year, Up: DIRECTIVES
14.5 Declaring commodities
==========================
@ -1152,7 +1152,7 @@ by a 'commodity' directive. This works similarly to account error
checking, see the notes there for more details.

File: hledger_journal.info, Node: Default commodity, Next: Declaring market prices, Prev: Declaring commodities, Up: Directives
File: hledger_journal.info, Node: Default commodity, Next: Declaring market prices, Prev: Declaring commodities, Up: DIRECTIVES
14.6 Default commodity
======================
@ -1179,7 +1179,7 @@ D $1,000.00
b

File: hledger_journal.info, Node: Declaring market prices, Next: Declaring accounts, Prev: Default commodity, Up: Directives
File: hledger_journal.info, Node: Declaring market prices, Next: Declaring accounts, Prev: Default commodity, Up: DIRECTIVES
14.7 Declaring market prices
============================
@ -1209,7 +1209,7 @@ P 2010/1/1 € $1.40
amount values in another commodity. See Valuation.

File: hledger_journal.info, Node: Declaring accounts, Next: Rewriting accounts, Prev: Declaring market prices, Up: Directives
File: hledger_journal.info, Node: Declaring accounts, Next: Rewriting accounts, Prev: Declaring market prices, Up: DIRECTIVES
14.8 Declaring accounts
=======================
@ -1471,7 +1471,7 @@ means:
between 'a:b' and 'a:c').

File: hledger_journal.info, Node: Rewriting accounts, Next: Default parent account, Prev: Declaring accounts, Up: Directives
File: hledger_journal.info, Node: Rewriting accounts, Next: Default parent account, Prev: Declaring accounts, Up: DIRECTIVES
14.9 Rewriting accounts
=======================
@ -1629,7 +1629,7 @@ aliases' directive:
end aliases

File: hledger_journal.info, Node: Default parent account, Prev: Rewriting accounts, Up: Directives
File: hledger_journal.info, Node: Default parent account, Prev: Rewriting accounts, Up: DIRECTIVES
14.10 Default parent account
============================
@ -1670,9 +1670,9 @@ If account aliases are present, they are applied after the default
parent account.

File: hledger_journal.info, Node: Periodic transactions, Next: Auto postings, Prev: Directives, Up: Top
File: hledger_journal.info, Node: PERIODIC TRANSACTIONS, Next: AUTO POSTINGS, Prev: DIRECTIVES, Up: Top
15 Periodic transactions
15 PERIODIC TRANSACTIONS
************************
Periodic transaction rules describe transactions that recur. They allow
@ -1717,7 +1717,7 @@ to define budget goals, shown in budget reports.
* Budgeting with periodic transactions::

File: hledger_journal.info, Node: Periodic rule syntax, Next: Two spaces between period expression and description!, Up: Periodic transactions
File: hledger_journal.info, Node: Periodic rule syntax, Next: Two spaces between period expression and description!, Up: PERIODIC TRANSACTIONS
15.1 Periodic rule syntax
=========================
@ -1740,7 +1740,7 @@ date, unless a Y default year directive is in effect, in which case they
will be relative to Y/1/1.

File: hledger_journal.info, Node: Two spaces between period expression and description!, Next: Forecasting with periodic transactions, Prev: Periodic rule syntax, Up: Periodic transactions
File: hledger_journal.info, Node: Two spaces between period expression and description!, Next: Forecasting with periodic transactions, Prev: Periodic rule syntax, Up: PERIODIC TRANSACTIONS
15.2 Two spaces between period expression and description!
==========================================================
@ -1765,7 +1765,7 @@ accidentally alter their meaning, as in this example:
expression.

File: hledger_journal.info, Node: Forecasting with periodic transactions, Next: Budgeting with periodic transactions, Prev: Two spaces between period expression and description!, Up: Periodic transactions
File: hledger_journal.info, Node: Forecasting with periodic transactions, Next: Budgeting with periodic transactions, Prev: Two spaces between period expression and description!, Up: PERIODIC TRANSACTIONS
15.3 Forecasting with periodic transactions
===========================================
@ -1811,7 +1811,7 @@ examples: '--forecast=202001-202004', '--forecast=jan-',
'--forecast=2020'.

File: hledger_journal.info, Node: Budgeting with periodic transactions, Prev: Forecasting with periodic transactions, Up: Periodic transactions
File: hledger_journal.info, Node: Budgeting with periodic transactions, Prev: Forecasting with periodic transactions, Up: PERIODIC TRANSACTIONS
15.4 Budgeting with periodic transactions
=========================================
@ -1826,9 +1826,9 @@ compared in budget reports.
See also: Budgeting and Forecasting.

File: hledger_journal.info, Node: Auto postings, Prev: Periodic transactions, Up: Top
File: hledger_journal.info, Node: AUTO POSTINGS, Prev: PERIODIC TRANSACTIONS, Up: Top
16 Auto postings
16 AUTO POSTINGS
****************
"Automated postings" or "auto postings" are extra postings which get
@ -1904,7 +1904,7 @@ $ hledger print --auto
* Auto posting tags::

File: hledger_journal.info, Node: Auto postings and multiple files, Next: Auto postings and dates, Up: Auto postings
File: hledger_journal.info, Node: Auto postings and multiple files, Next: Auto postings and dates, Up: AUTO POSTINGS
16.1 Auto postings and multiple files
=====================================
@ -1914,7 +1914,7 @@ in any parent file or child file. Note, currently it will not affect
sibling files (when multiple '-f'/'--file' are used - see #1212).

File: hledger_journal.info, Node: Auto postings and dates, Next: Auto postings and transaction balancing / inferred amounts / balance assertions, Prev: Auto postings and multiple files, Up: Auto postings
File: hledger_journal.info, Node: Auto postings and dates, Next: Auto postings and transaction balancing / inferred amounts / balance assertions, Prev: Auto postings and multiple files, Up: AUTO POSTINGS
16.2 Auto postings and dates
============================
@ -1924,7 +1924,7 @@ precedence) a posting date in the auto posting rule itself, will also be
used in the generated posting.

File: hledger_journal.info, Node: Auto postings and transaction balancing / inferred amounts / balance assertions, Next: Auto posting tags, Prev: Auto postings and dates, Up: Auto postings
File: hledger_journal.info, Node: Auto postings and transaction balancing / inferred amounts / balance assertions, Next: Auto posting tags, Prev: Auto postings and dates, Up: AUTO POSTINGS
16.3 Auto postings and transaction balancing / inferred amounts /
=================================================================
@ -1940,7 +1940,7 @@ after auto postings are added. This changed in hledger 1.12+; see #893
for background.

File: hledger_journal.info, Node: Auto posting tags, Prev: Auto postings and transaction balancing / inferred amounts / balance assertions, Up: Auto postings
File: hledger_journal.info, Node: Auto posting tags, Prev: Auto postings and transaction balancing / inferred amounts / balance assertions, Up: AUTO POSTINGS
16.4 Auto posting tags
======================
@ -1964,142 +1964,137 @@ will have these tags added:

Tag Table:
Node: Top76
Node: Transactions2154
Ref: #transactions2272
Node: Dates3286
Ref: #dates3393
Node: Simple dates3458
Ref: #simple-dates3580
Node: Secondary dates4089
Ref: #secondary-dates4239
Node: Posting dates5575
Ref: #posting-dates5700
Node: Status7072
Ref: #status7180
Node: Description8888
Ref: #description9009
Node: Payee and note9329
Ref: #payee-and-note9439
Node: Comments9774
Ref: #comments9887
Node: Tags11081
Ref: #tags11183
Node: Postings12576
Ref: #postings12691
Node: Virtual postings13717
Ref: #virtual-postings13830
Node: Account names15135
Ref: #account-names15263
Node: Amounts15750
Ref: #amounts15876
Node: Digit group marks17000
Ref: #digit-group-marks17147
Node: Commodity display style18085
Ref: #commodity-display-style18261
Node: Rounding19804
Ref: #rounding19924
Node: Transaction prices20336
Ref: #transaction-prices20497
Node: Lot prices and lot dates22928
Ref: #lot-prices-and-lot-dates23112
Node: Balance assertions23600
Ref: #balance-assertions23773
Node: Assertions and ordering24806
Ref: #assertions-and-ordering24990
Node: Assertions and included files25690
Ref: #assertions-and-included-files25929
Node: Assertions and multiple -f options26262
Ref: #assertions-and-multiple--f-options26514
Node: Assertions and commodities26646
Ref: #assertions-and-commodities26874
Node: Assertions and prices28031
Ref: #assertions-and-prices28241
Node: Assertions and subaccounts28681
Ref: #assertions-and-subaccounts28906
Node: Assertions and virtual postings29230
Ref: #assertions-and-virtual-postings29468
Node: Assertions and precision29610
Ref: #assertions-and-precision29799
Node: Balance assignments30066
Ref: #balance-assignments30227
Node: Balance assignments and prices31391
Ref: #balance-assignments-and-prices31559
Node: Directives31783
Ref: #directives31929
Node: Directives and multiple files37427
Ref: #directives-and-multiple-files37606
Node: Comment blocks38270
Ref: #comment-blocks38449
Node: Including other files38625
Ref: #including-other-files38801
Node: Default year39725
Ref: #default-year39890
Node: Declaring commodities40297
Ref: #declaring-commodities40476
Node: Commodity error checking42320
Ref: #commodity-error-checking42476
Node: Default commodity42733
Ref: #default-commodity42915
Node: Declaring market prices43804
Ref: #declaring-market-prices43995
Node: Declaring accounts44852
Ref: #declaring-accounts45034
Node: Account error checking46236
Ref: #account-error-checking46408
Node: Account comments47587
Ref: #account-comments47777
Node: Account subdirectives48201
Ref: #account-subdirectives48392
Node: Account types48705
Ref: #account-types48885
Node: Declaring account types49621
Ref: #declaring-account-types49806
Node: Auto-detected account types50456
Ref: #auto-detected-account-types50703
Node: Interference from auto-detected account types51600
Ref: #interference-from-auto-detected-account-types51883
Node: Old account type syntax52366
Ref: #old-account-type-syntax52569
Node: Account display order52869
Ref: #account-display-order53035
Node: Rewriting accounts54186
Ref: #rewriting-accounts54367
Node: Basic aliases55124
Ref: #basic-aliases55266
Node: Regex aliases55970
Ref: #regex-aliases56138
Node: Combining aliases56857
Ref: #combining-aliases57046
Node: Aliases and multiple files58322
Ref: #aliases-and-multiple-files58527
Node: end aliases59106
Ref: #end-aliases59259
Node: Default parent account59360
Ref: #default-parent-account59524
Node: Periodic transactions60408
Ref: #periodic-transactions60570
Node: Periodic rule syntax62487
Ref: #periodic-rule-syntax62689
Node: Two spaces between period expression and description!63393
Ref: #two-spaces-between-period-expression-and-description63708
Node: Forecasting with periodic transactions64392
Ref: #forecasting-with-periodic-transactions64693
Node: Budgeting with periodic transactions66748
Ref: #budgeting-with-periodic-transactions66983
Node: Auto postings67392
Ref: #auto-postings67519
Node: Auto postings and multiple files69698
Ref: #auto-postings-and-multiple-files69898
Node: Auto postings and dates70107
Ref: #auto-postings-and-dates70377
Node: Auto postings and transaction balancing / inferred amounts / balance assertions70552
Ref: #auto-postings-and-transaction-balancing-inferred-amounts-balance-assertions70899
Node: Auto posting tags71241
Ref: #auto-posting-tags71452
Node: TRANSACTIONS2111
Ref: #transactions2229
Node: DATES3243
Ref: #dates3350
Node: Simple dates3415
Ref: #simple-dates3537
Node: Secondary dates4046
Ref: #secondary-dates4196
Node: Posting dates5532
Ref: #posting-dates5657
Node: STATUS7029
Ref: #status7137
Node: DESCRIPTION8845
Ref: #description8966
Node: Payee and note9286
Ref: #payee-and-note9396
Node: COMMENTS9731
Ref: #comments9844
Node: TAGS11038
Ref: #tags11140
Node: POSTINGS12533
Ref: #postings12648
Node: Virtual postings13674
Ref: #virtual-postings13787
Node: ACCOUNT NAMES15092
Ref: #account-names15220
Node: AMOUNTS15707
Ref: #amounts15833
Node: Digit group marks16957
Ref: #digit-group-marks17104
Node: Commodity display style18042
Ref: #commodity-display-style18218
Node: Rounding19761
Ref: #rounding19881
Node: TRANSACTION PRICES20293
Ref: #transaction-prices20450
Node: LOT PRICES LOT DATES22881
Ref: #lot-prices-lot-dates23055
Node: BALANCE ASSERTIONS23543
Ref: #balance-assertions23712
Node: Assertions and ordering24745
Ref: #assertions-and-ordering24929
Node: Assertions and included files25629
Ref: #assertions-and-included-files25868
Node: Assertions and multiple -f options26201
Ref: #assertions-and-multiple--f-options26453
Node: Assertions and commodities26585
Ref: #assertions-and-commodities26813
Node: Assertions and prices27970
Ref: #assertions-and-prices28180
Node: Assertions and subaccounts28620
Ref: #assertions-and-subaccounts28845
Node: Assertions and virtual postings29169
Ref: #assertions-and-virtual-postings29407
Node: Assertions and precision29549
Ref: #assertions-and-precision29738
Node: BALANCE ASSIGNMENTS30005
Ref: #balance-assignments30166
Node: Balance assignments and prices31330
Ref: #balance-assignments-and-prices31498
Node: DIRECTIVES31722
Ref: #directives31868
Node: Directives and multiple files37366
Ref: #directives-and-multiple-files37545
Node: Comment blocks38209
Ref: #comment-blocks38388
Node: Including other files38564
Ref: #including-other-files38740
Node: Default year39664
Ref: #default-year39829
Node: Declaring commodities40236
Ref: #declaring-commodities40415
Node: Commodity error checking42259
Ref: #commodity-error-checking42415
Node: Default commodity42672
Ref: #default-commodity42854
Node: Declaring market prices43743
Ref: #declaring-market-prices43934
Node: Declaring accounts44791
Ref: #declaring-accounts44973
Node: Account error checking46175
Ref: #account-error-checking46347
Node: Account comments47526
Ref: #account-comments47716
Node: Account subdirectives48140
Ref: #account-subdirectives48331
Node: Account types48644
Ref: #account-types48824
Node: Declaring account types49560
Ref: #declaring-account-types49745
Node: Auto-detected account types50395
Ref: #auto-detected-account-types50642
Node: Interference from auto-detected account types51539
Ref: #interference-from-auto-detected-account-types51822
Node: Old account type syntax52305
Ref: #old-account-type-syntax52508
Node: Account display order52808
Ref: #account-display-order52974
Node: Rewriting accounts54125
Ref: #rewriting-accounts54306
Node: Basic aliases55063
Ref: #basic-aliases55205
Node: Regex aliases55909
Ref: #regex-aliases56077
Node: Combining aliases56796
Ref: #combining-aliases56985
Node: Aliases and multiple files58261
Ref: #aliases-and-multiple-files58466
Node: end aliases59045
Ref: #end-aliases59198
Node: Default parent account59299
Ref: #default-parent-account59463
Node: PERIODIC TRANSACTIONS60347
Ref: #periodic-transactions60509
Node: Periodic rule syntax62426
Ref: #periodic-rule-syntax62628
Node: Two spaces between period expression and description!63332
Ref: #two-spaces-between-period-expression-and-description63647
Node: Forecasting with periodic transactions64331
Ref: #forecasting-with-periodic-transactions64632
Node: Budgeting with periodic transactions66687
Ref: #budgeting-with-periodic-transactions66922
Node: AUTO POSTINGS67331
Ref: #auto-postings67458
Node: Auto postings and multiple files69637
Ref: #auto-postings-and-multiple-files69837
Node: Auto postings and dates70046
Ref: #auto-postings-and-dates70316
Node: Auto postings and transaction balancing / inferred amounts / balance assertions70491
Ref: #auto-postings-and-transaction-balancing-inferred-amounts-balance-assertions70838
Node: Auto posting tags71180
Ref: #auto-posting-tags71391

End Tag Table

Local Variables:
coding: utf-8
End:

View File

@ -1,10 +1,10 @@
hledger_journal(5) hledger User Manuals hledger_journal(5)
HLEDGER_JOURNAL(5) hledger User Manuals HLEDGER_JOURNAL(5)
NAME
Journal - hledger's default file format, representing a General Journal
hledger's default file format, representing a General Journal.
DESCRIPTION
hledger's usual data source is a plain text file containing journal en-
@ -31,14 +31,13 @@ DESCRIPTION
formatting, tab completion, and useful commands. See Editor configura-
tion at hledger.org for the full list.
FILE FORMAT
Here's a description of each part of the file format (and hledger's
data model). These are mostly in the order you'll use them, but in
some cases related concepts have been grouped together for easy refer-
ence, or linked before they are introduced, so feel free to skip over
anything that looks unnecessary right now.
Transactions
TRANSACTIONS
Transactions are the main unit of information in a journal file. They
represent events, typically a movement of some quantity of commodities
between two or more named accounts.
@ -66,7 +65,7 @@ FILE FORMAT
assets:bank:checking $1
income:salary $-1
Dates
DATES
Simple dates
Dates in the journal file use simple dates format: YYYY-MM-DD or
YYYY/MM/DD or YYYY.MM.DD, with leading zeros optional. The year may be
@ -139,7 +138,7 @@ FILE FORMAT
With this syntax, DATE infers its year from the transaction and DATE2
infers its year from DATE.
Status
STATUS
Transactions, or individual postings within a transaction, can have a
status mark, which is a single character before the transaction de-
scription or posting account name, separated from it by a space, indi-
@ -183,7 +182,7 @@ FILE FORMAT
cashed checks), and no flags to see the most up-to-date state of your
finances.
Description
DESCRIPTION
A transaction's description is the rest of the line following the date
and status mark (or until a comment begins). Sometimes called the
"narration" in traditional bookkeeping, it can be used for whatever you
@ -197,7 +196,7 @@ FILE FORMAT
ter the first |). This may be worthwhile if you need to do more pre-
cise querying and pivoting by payee or by note.
Comments
COMMENTS
Lines in the journal beginning with a semicolon (;) or hash (#) or star
(*) are comments, and will be ignored. (Star comments cause org-mode
nodes to be ignored, allowing emacs users to fold and navigate their
@ -232,7 +231,7 @@ FILE FORMAT
You can also comment larger regions of a file using comment and end
comment directives.
Tags
TAGS
Tags are a way to add extra labels or labelled data to postings and
transactions, which you can then search or pivot on.
@ -272,7 +271,7 @@ FILE FORMAT
Tags are like Ledger's metadata feature, except hledger's tag values
are simple strings.
Postings
POSTINGS
A posting is an addition of some amount to, or removal of some amount
from, an account. Each posting line begins with at least one space or
tab (2 or 4 spaces is common), followed by:
@ -326,7 +325,7 @@ FILE FORMAT
postings. You can exclude virtual postings from reports with the
-R/--real flag or real:1 query.
Account names
ACCOUNT NAMES
Account names typically have several parts separated by a full colon,
from which hledger derives a hierarchical chart of accounts. They can
be anything you like, but in finance there are traditionally five top-
@ -338,7 +337,7 @@ FILE FORMAT
Account names can be aliased.
Amounts
AMOUNTS
After the account name, there is usually an amount. (Important: be-
tween account name and amount, there must be two or more spaces.)
@ -460,7 +459,7 @@ FILE FORMAT
places is "0"). (Guaranteed since hledger 1.17.1; in older versions
this could vary if hledger was built with Decimal < 0.5.1.)
Transaction prices
TRANSACTION PRICES
Within a transaction, you can note an amount's price in another commod-
ity. This can be used to document the cost (in a purchase) or selling
price (in a sale). For example, transaction prices are useful to
@ -521,7 +520,7 @@ FILE FORMAT
EUR-100 assets:dollars # <- the dollars' selling price
EUR100 assets:euros
Lot prices and lot dates
LOT PRICES, LOT DATES
Ledger allows another kind of price, lot price (four variants: {UNIT-
PRICE}, {{TOTALPRICE}}, {=FIXEDUNITPRICE}, {{=FIXEDTOTALPRICE}}),
and/or a lot date ([DATE]) to be specified. These are normally used to
@ -530,7 +529,7 @@ FILE FORMAT
transaction price, lot price and/or lot date may appear in any order,
after the posting amount and before the balance assertion if any.
Balance assertions
BALANCE ASSERTIONS
hledger supports Ledger-style balance assertions in journal files.
These look like, for example, = EXPECTEDBALANCE following a posting's
amount. Eg here we assert the expected dollar balance in accounts a
@ -653,7 +652,7 @@ FILE FORMAT
limit the display precision, but this will not affect balance asser-
tions. Balance assertion failure messages show exact amounts.
Balance assignments
BALANCE ASSIGNMENTS
Ledger-style balance assignments are also supported. These are like
balance assertions, but with no posting amount on the left side of the
equals sign; instead it is calculated automatically so as to satisfy
@ -692,7 +691,7 @@ FILE FORMAT
2019-01-01
(a) $1 @ EUR2 = $1 @ EUR2
Directives
DIRECTIVES
A directive is a line in the journal beginning with a special keyword,
that influences how the journal is processed. hledger's directives are
based on a subset of Ledger's, but there are many differences (and also
@ -729,8 +728,6 @@ FILE FORMAT
play style: amounts
of that commodity
in reports
D declare a commodity to be default commodity:
used for commodityless following commod-
amounts, and its number no- ityless entries un-
@ -743,6 +740,8 @@ FILE FORMAT
play style: amounts
of that commodity
in reports
include include entries/directives what the included
from another file directives affect
P declare a market price for a amounts of that
@ -1075,7 +1074,6 @@ FILE FORMAT
^(debts?|lia- Liability
bilit(y|ies))(:|$)
^equity(:|$) Equity
^(income|revenue)s?(:|$) Revenue
^expenses?(:|$) Expense
@ -1312,7 +1310,7 @@ FILE FORMAT
account aliases are present, they are applied after the default parent
account.
Periodic transactions
PERIODIC TRANSACTIONS
Periodic transaction rules describe transactions that recur. They al-
low hledger to generate temporary future transactions to help with
forecasting, so you don't have to write out each one in the journal,
@ -1443,7 +1441,7 @@ FILE FORMAT
See also: Budgeting and Forecasting.
Auto postings
AUTO POSTINGS
"Automated postings" or "auto postings" are extra postings which get
added automatically to transactions which match certain queries, de-
fined by "auto posting rules", when you use the --auto flag.
@ -1570,9 +1568,11 @@ COPYRIGHT
SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger_csv(5),
hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1)
hledger(1), hledger-ui(1), hledger-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time-
dot(5)
hledger 1.20.1 December 2020 hledger_journal(5)
hledger-lib-1.20.1 December 2020 HLEDGER_JOURNAL(5)

View File

@ -1,11 +1,11 @@
.TH "hledger_timeclock" "5" "December 2020" "hledger 1.20.1" "hledger User Manuals"
.TH "HLEDGER_TIMECLOCK" "5" "December 2020" "hledger-lib-1.20.1 " "hledger User Manuals"
.SH NAME
.PP
Timeclock - the time logging format of timeclock.el, as read by hledger
The time logging format of timeclock.el, as read by hledger.
.SH DESCRIPTION
.PP
hledger can read timeclock files.
@ -85,6 +85,6 @@ Copyright (C) 2007-2020 Simon Michael.
Released under GNU GPL v3 or later.
.SH SEE ALSO
hledger(1), hledger\-ui(1), hledger\-web(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5),
ledger(1)
hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5)

View File

@ -4,10 +4,10 @@ stdin.

File: hledger_timeclock.info, Node: Top, Up: (dir)
hledger_timeclock(5) hledger 1.20.1
***********************************
hledger_timeclock(5)
********************
Timeclock - the time logging format of timeclock.el, as read by hledger
The time logging format of timeclock.el, as read by hledger.
hledger can read timeclock files. As with Ledger, these are (a
subset of) timeclock.el's format, containing clock-in and clock-out
@ -61,8 +61,3 @@ Tag Table:
Node: Top78

End Tag Table

Local Variables:
coding: utf-8
End:

View File

@ -1,10 +1,10 @@
hledger_timeclock(5) hledger User Manuals hledger_timeclock(5)
HLEDGER_TIMECLOCK(5) hledger User Manuals HLEDGER_TIMECLOCK(5)
NAME
Timeclock - the time logging format of timeclock.el, as read by hledger
The time logging format of timeclock.el, as read by hledger.
DESCRIPTION
hledger can read timeclock files. As with Ledger, these are (a subset
@ -70,9 +70,11 @@ COPYRIGHT
SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger_csv(5),
hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1)
hledger(1), hledger-ui(1), hledger-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time-
dot(5)
hledger 1.20.1 December 2020 hledger_timeclock(5)
hledger-lib-1.20.1 December 2020 HLEDGER_TIMECLOCK(5)

View File

@ -1,11 +1,11 @@
.TH "hledger_timedot" "5" "December 2020" "hledger 1.20.1" "hledger User Manuals"
.TH "HLEDGER_TIMEDOT" "5" "December 2020" "hledger-lib-1.20.1 " "hledger User Manuals"
.SH NAME
.PP
Timedot - hledger\[aq]s human-friendly time logging format
hledger\[aq]s human-friendly time logging format.
.SH DESCRIPTION
.PP
Timedot is a plain text format for logging dated, categorised quantities
@ -194,6 +194,6 @@ Copyright (C) 2007-2020 Simon Michael.
Released under GNU GPL v3 or later.
.SH SEE ALSO
hledger(1), hledger\-ui(1), hledger\-web(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5),
ledger(1)
hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5)

View File

@ -4,10 +4,10 @@ stdin.

File: hledger_timedot.info, Node: Top, Up: (dir)
hledger_timedot(5) hledger 1.20.1
*********************************
hledger_timedot(5)
******************
Timedot - hledger's human-friendly time logging format
hledger's human-friendly time logging format.
Timedot is a plain text format for logging dated, categorised
quantities (of time, usually), supported by hledger. It is convenient
@ -143,8 +143,3 @@ Tag Table:
Node: Top76

End Tag Table

Local Variables:
coding: utf-8
End:

View File

@ -1,10 +1,10 @@
hledger_timedot(5) hledger User Manuals hledger_timedot(5)
HLEDGER_TIMEDOT(5) hledger User Manuals HLEDGER_TIMEDOT(5)
NAME
Timedot - hledger's human-friendly time logging format
hledger's human-friendly time logging format.
DESCRIPTION
Timedot is a plain text format for logging dated, categorised quanti-
@ -153,9 +153,11 @@ COPYRIGHT
SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger_csv(5),
hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1)
hledger(1), hledger-ui(1), hledger-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time-
dot(5)
hledger 1.20.1 December 2020 hledger_timedot(5)
hledger-lib-1.20.1 December 2020 HLEDGER_TIMEDOT(5)

View File

@ -1,11 +1,11 @@
.TH "hledger-ui" "1" "December 2020" "hledger-ui 1.20.1" "hledger User Manuals"
.TH "HLEDGER-UI" "1" "December 2020" "hledger-ui-1.20.1 " "hledger User Manuals"
.SH NAME
.PP
hledger-ui - terminal interface for the hledger accounting tool
A terminal interface (TUI) for the hledger accounting tool.
.SH SYNOPSIS
.PP
\f[C]hledger-ui [OPTIONS] [QUERYARGS]\f[R]
@ -189,18 +189,18 @@ show version
\f[B]\f[CB]--debug[=N]\f[B]\f[R]
show debug output (levels 1-9, default: 1)
.PP
a \[at]file argument will be expanded to the contents of file, which
A \[at]FILE argument will be expanded to the contents of FILE, which
should contain one command line option/argument per line.
(to prevent this, insert a \f[C]--\f[R] argument before.)
.SH keys
(To prevent this, insert a \f[C]--\f[R] argument before.)
.SH KEYS
.PP
\f[C]?\f[R] shows a help dialog listing all keys.
(some of these also appear in the quick help at the bottom of each
screen.) press \f[C]?\f[R] again (or \f[C]escape\f[R], or
\f[C]left\f[R], or \f[C]q\f[R]) to close it.
the following keys work on most screens:
(Some of these also appear in the quick help at the bottom of each
screen.) Press \f[C]?\f[R] again (or \f[C]ESCAPE\f[R], or
\f[C]LEFT\f[R], or \f[C]q\f[R]) to close it.
The following keys work on most screens:
.PP
the cursor keys navigate: \f[C]right\f[R] (or \f[C]enter\f[R]) goes
The cursor keys navigate: \f[C]right\f[R] (or \f[C]enter\f[R]) goes
deeper, \f[C]left\f[R] returns to the previous screen,
\f[C]up\f[R]/\f[C]down\f[R]/\f[C]page up\f[R]/\f[C]page down\f[R]/\f[C]home\f[R]/\f[C]end\f[R]
move up and down through lists.
@ -212,104 +212,103 @@ A tip: movement speed is limited by your keyboard repeat rate, to move
faster you may want to adjust it.
(If you\[aq]re on a mac, the karabiner app is one way to do that.)
.PP
with shift pressed, the cursor keys adjust the report period, limiting
With shift pressed, the cursor keys adjust the report period, limiting
the transactions to be shown (by default, all are shown).
\f[C]shift-down/up\f[R] steps downward and upward through these standard
report period durations: year, quarter, month, week, day.
then, \f[C]shift-left/right\f[R] moves to the previous/next period.
Then, \f[C]shift-left/right\f[R] moves to the previous/next period.
\f[C]T\f[R] sets the report period to today.
with the \f[C]--watch\f[R] option, when viewing a \[dq]current\[dq]
With the \f[C]--watch\f[R] option, when viewing a \[dq]current\[dq]
period (the current day, week, month, quarter, or year), the period will
move automatically to track the current date.
to set a non-standard period, you can use \f[C]/\f[R] and a
To set a non-standard period, you can use \f[C]/\f[R] and a
\f[C]date:\f[R] query.
.PP
\f[C]/\f[R] lets you set a general filter query limiting the data shown,
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 \f[C]enter\f[R] to set it, or \f[C]escape\f[R]to cancel.
there are also keys for quickly adjusting some common filters like
While editing the query, you can use CTRL-a/e/d/k, BS, cursor keys;
press \f[C]ENTER\f[R] to set it, or \f[C]ESCAPE\f[R]to cancel.
There are also keys for quickly adjusting some common filters like
account depth and transaction status (see below).
\f[C]backspace\f[R] or \f[C]delete\f[R] removes all filters, showing all
\f[C]BACKSPACE\f[R] or \f[C]DELETE\f[R] removes all filters, showing all
transactions.
.PP
as mentioned above, by default hledger-ui hides future transactions -
As mentioned above, by default hledger-ui hides future transactions -
both ordinary transactions recorded in the journal, and periodic
transactions generated by rule.
\f[C]f\f[R] toggles forecast mode, in which future/forecasted
\f[C]F\f[R] toggles forecast mode, in which future/forecasted
transactions are shown.
\f[I](experimental)\f[R]
.PP
\f[C]escape\f[R] resets the UI state and jumps back to the top screen,
\f[C]ESCAPE\f[R] resets the UI state and jumps back to the top screen,
restoring the app\[aq]s initial state at startup.
Or, it cancels minibuffer data entry or the help dialog.
.PP
\f[C]ctrl-l\f[R] redraws the screen and centers the selection if
\f[C]CTRL-l\f[R] redraws the screen and centers the selection if
possible (selections near the top won\[aq]t be centered, since we
don\[aq]t scroll above the top).
.PP
\f[C]g\f[R] reloads from the data file(s) and updates the current screen
and any previous screens.
(with large files, this could cause a noticeable pause.)
(With large files, this could cause a noticeable pause.)
.PP
\f[C]i\f[R] toggles balance assertion checking.
disabling balance assertions temporarily can be useful for
\f[C]I\f[R] toggles balance assertion checking.
Disabling balance assertions temporarily can be useful for
troubleshooting.
.PP
\f[C]a\f[R] runs command-line hledger\[aq]s add command, and reloads the
updated file.
this allows some basic data entry.
This allows some basic data entry.
.PP
\f[C]a\f[R] is like \f[C]a\f[R], but runs the hledger-iadd tool, which
\f[C]A\f[R] is like \f[C]a\f[R], but runs the hledger-iadd tool, which
provides a terminal interface.
this key will be available if \f[C]hledger-iadd\f[R] is installed in
This key will be available if \f[C]hledger-iadd\f[R] is installed in
$path.
.PP
\f[C]e\f[R] runs $hledger_ui_editor, or $editor, or a default
\f[C]E\f[R] runs $HLEDGER_UI_EDITOR, or $EDITOR, or a default
(\f[C]emacsclient -a \[dq]\[dq] -nw\f[R]) on the journal file.
with some editors (emacs, vi), the cursor will be positioned at the
With some editors (emacs, vi), the cursor will be positioned at the
current transaction when invoked from the register and transaction
screens, and at the error location (if possible) when invoked from the
error screen.
.PP
\f[C]b\f[R] toggles cost mode, showing amounts in their transaction
price\[aq]s commodity (like toggling the \f[C]-b/--cost\f[R] flag).
\f[C]B\f[R] toggles cost mode, showing amounts in their transaction
price\[aq]s commodity (like toggling the \f[C]-B/--cost\f[R] flag).
.PP
\f[C]v\f[R] toggles value mode, showing amounts\[aq] current market
\f[C]V\f[R] toggles value mode, showing amounts\[aq] current market
value in their default valuation commodity (like toggling the
\f[C]-v/--market\f[R] flag).
note, \[dq]current market value\[dq] means the value on the report end
\f[C]-V/--market\f[R] flag).
Note, \[dq]current market value\[dq] means the value on the report end
date if specified, otherwise today.
to see the value on another date, you can temporarily set that as the
To see the value on another date, you can temporarily set that as the
report end date.
eg: to see a transaction as it was valued on july 30, go to the accounts
Eg: to see a transaction as it was valued on july 30, go to the accounts
or register screen, press \f[C]/\f[R], and add \f[C]date:-7/30\f[R] to
the query.
.PP
at most one of cost or value mode can be active at once.
At most one of cost or value mode can be active at once.
.PP
there\[aq]s not yet any visual reminder when cost or value mode is
There\[aq]s not yet any visual reminder when cost or value mode is
active; for now pressing \f[C]b\f[R] \f[C]b\f[R] \f[C]v\f[R] should
reliably reset to normal mode.
.PP
with --watch active, if you save an edit to the journal file while
viewing the transaction screen in cost or value mode, the
\f[C]b\f[R]/\f[C]v\f[R] keys will stop working.
to work around, press g to force a manual reload, or exit the
With \f[C]--watch\f[R] active, if you save an edit to the journal file
while viewing the transaction screen in cost or value mode, the
\f[C]B\f[R]/\f[C]V\f[R] keys will stop working.
To work around, press \f[C]g\f[R] to force a manual reload, or exit the
transaction screen.
.PP
\f[C]q\f[R] quits the application.
.PP
additional screen-specific keys are described below.
.SH screens
.SS accounts screen
Additional screen-specific keys are described below.
.SH SCREENS
.SS Accounts screen
.PP
this is normally the first screen displayed.
it lists accounts and their balances, like hledger\[aq]s balance
This is normally the first screen displayed.
It lists accounts and their balances, like hledger\[aq]s balance
command.
by default, it shows all accounts and their latest ending balances
By default, it shows all accounts and their latest ending balances
(including the balances of subaccounts).
if you specify a query on the command line, it shows just the matched
If you specify a query on the command line, it shows just the matched
accounts and the balances from matched transactions.
.PP
Account names are shown as a flat list by default; press \f[C]t\f[R] to
@ -505,6 +504,6 @@ Copyright (C) 2007-2020 Simon Michael.
Released under GNU GPL v3 or later.
.SH SEE ALSO
hledger(1), hledger\-ui(1), hledger\-web(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5),
ledger(1)
hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5)

View File

@ -3,10 +3,10 @@ This is hledger-ui.info, produced by makeinfo version 6.7 from stdin.

File: hledger-ui.info, Node: Top, Next: OPTIONS, Up: (dir)
hledger-ui(1) hledger-ui 1.20.1
*******************************
hledger-ui(1)
*************
hledger-ui - terminal interface for the hledger accounting tool
A terminal interface (TUI) for the hledger accounting tool.
'hledger-ui [OPTIONS] [QUERYARGS]'
'hledger ui -- [OPTIONS] [QUERYARGS]'
@ -36,18 +36,14 @@ enable "forecast mode".
* Menu:
* OPTIONS::
* keys::
* screens::
* accounts screen::
* Register screen::
* Transaction screen::
* Error screen::
* KEYS::
* SCREENS::
* ENVIRONMENT::
* FILES::
* BUGS::

File: hledger-ui.info, Node: OPTIONS, Next: keys, Prev: Top, Up: Top
File: hledger-ui.info, Node: OPTIONS, Next: KEYS, Prev: Top, Up: Top
1 OPTIONS
*********
@ -208,22 +204,22 @@ the last one takes precedence.
show debug output (levels 1-9, default: 1)
a @file argument will be expanded to the contents of file, which
should contain one command line option/argument per line. (to prevent
A @FILE argument will be expanded to the contents of FILE, which
should contain one command line option/argument per line. (To prevent
this, insert a '--' argument before.)

File: hledger-ui.info, Node: keys, Next: screens, Prev: OPTIONS, Up: Top
File: hledger-ui.info, Node: KEYS, Next: SCREENS, Prev: OPTIONS, Up: Top
2 keys
2 KEYS
******
'?' 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
'escape', or 'left', or 'q') to close it. the following keys work on
'?' 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
'ESCAPE', or 'LEFT', or 'q') to close it. The following keys work on
most 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
down'/'home'/'end' move up and down through lists. Emacs-style
('ctrl-p'/'ctrl-n'/'ctrl-f'/'ctrl-b') movement keys are also supported
@ -232,99 +228,106 @@ speed 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 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).
'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
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
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.
'/' lets you set a general filter query limiting the data shown,
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
set it, or 'escape'to cancel. there are also keys for quickly adjusting
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
set it, or 'ESCAPE'to cancel. There are also keys for quickly adjusting
some common filters like account depth and transaction status (see
below). 'backspace' or 'delete' removes all filters, showing all
below). 'BACKSPACE' or 'DELETE' removes all filters, showing all
transactions.
as mentioned above, by default hledger-ui hides future transactions -
As mentioned above, by default hledger-ui hides future transactions -
both ordinary transactions recorded in the journal, and periodic
transactions generated by rule. 'f' toggles forecast mode, in which
future/forecasted transactions are shown. _(experimental)_
transactions generated by rule. 'F' toggles forecast mode, in which
future/forecasted transactions are shown.
'escape' resets the UI state and jumps back to the top screen,
'ESCAPE' resets the UI state and jumps back to the top screen,
restoring the app's initial state at startup. Or, it cancels minibuffer
data entry or the help dialog.
'ctrl-l' redraws the screen and centers the selection if possible
'CTRL-l' redraws the screen and centers the selection if possible
(selections near the top won't be centered, since we don't scroll above
the top).
'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.)
'i' toggles balance assertion checking. disabling balance assertions
'I' toggles balance assertion checking. Disabling balance assertions
temporarily can be useful for troubleshooting.
'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.
'a' is like 'a', but runs the hledger-iadd tool, which provides a
terminal interface. this key will be available if 'hledger-iadd' is
'A' is like 'a', but runs the hledger-iadd tool, which provides a
terminal interface. This key will be available if 'hledger-iadd' is
installed in $path.
'e' runs $hledger_ui_editor, or $editor, or a default ('emacsclient
-a "" -nw') on the journal file. with some editors (emacs, vi), the
'E' runs $HLEDGER_UI_EDITOR, or $EDITOR, or a default ('emacsclient
-a "" -nw') on the journal file. With some editors (emacs, vi), the
cursor will be positioned at the current transaction when invoked from
the register and transaction screens, and at the error location (if
possible) when invoked from the error screen.
'b' toggles cost mode, showing amounts in their transaction price's
commodity (like toggling the '-b/--cost' flag).
'B' toggles cost mode, showing amounts in their transaction price's
commodity (like toggling the '-B/--cost' flag).
'v' toggles value mode, showing amounts' current market value in
their default valuation commodity (like toggling the '-v/--market'
flag). note, "current market value" means the value on the report end
date if specified, otherwise today. to see the value on another date,
you can temporarily set that as the report end date. eg: to see a
'V' toggles value mode, showing amounts' current market value in
their default valuation commodity (like toggling the '-V/--market'
flag). Note, "current market value" means the value on the report end
date if specified, otherwise today. To see the value on another date,
you can temporarily set that as the report end date. Eg: to see a
transaction as it was valued on july 30, go to the accounts or register
screen, press '/', and add 'date:-7/30' to the query.
at most one of cost or value mode can be active at once.
At most one of cost or value mode can be active at once.
there's not yet any visual reminder when cost or value mode is
There's not yet any visual reminder when cost or value mode is
active; for now pressing 'b' 'b' 'v' should reliably reset to normal
mode.
with -watch active, if you save an edit to the journal file while
viewing the transaction screen in cost or value mode, the 'b'/'v' keys
will stop working. to work around, press g to force a manual reload, or
exit the transaction screen.
With '--watch' active, if you save an edit to the journal file while
viewing the transaction screen in cost or value mode, the 'B'/'V' keys
will stop working. To work around, press 'g' to force a manual reload,
or exit the transaction screen.
'q' quits the application.
additional screen-specific keys are described below.
Additional screen-specific keys are described below.

File: hledger-ui.info, Node: screens, Next: accounts screen, Prev: keys, Up: Top
File: hledger-ui.info, Node: SCREENS, Next: ENVIRONMENT, Prev: KEYS, Up: Top
3 screens
3 SCREENS
*********
* Menu:
* Accounts screen::
* Register screen::
* Transaction screen::
* Error screen::

File: hledger-ui.info, Node: accounts screen, Next: Register screen, Prev: screens, Up: Top
File: hledger-ui.info, Node: Accounts screen, Next: Register screen, Up: SCREENS
4 accounts screen
*****************
3.1 Accounts screen
===================
this is normally the first screen displayed. it lists accounts and
their balances, like hledger's balance command. by default, it shows
This is normally the first screen displayed. It lists accounts and
their balances, like hledger's balance command. By default, it shows
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.
Account names are shown as a flat list by default; press 't' to
@ -365,10 +368,10 @@ command-line hledger).
Press 'right' or 'enter' to view an account's transactions register.

File: hledger-ui.info, Node: Register screen, Next: Transaction screen, Prev: accounts screen, Up: Top
File: hledger-ui.info, Node: Register screen, Next: Transaction screen, Prev: Accounts screen, Up: SCREENS
5 Register screen
*****************
3.2 Register screen
===================
This screen shows the transactions affecting a particular account, like
a check register. Each line represents one transaction and shows:
@ -412,10 +415,10 @@ command-line hledger).
detail.

File: hledger-ui.info, Node: Transaction screen, Next: Error screen, Prev: Register screen, Up: Top
File: hledger-ui.info, Node: Transaction screen, Next: Error screen, Prev: Register screen, Up: SCREENS
6 Transaction screen
********************
3.3 Transaction screen
======================
This screen shows a single transaction, as a general journal entry,
similar to hledger's print command and journal format
@ -436,10 +439,10 @@ unfiltered journal, which is a more stable id (at least until the next
reload).

File: hledger-ui.info, Node: Error screen, Next: ENVIRONMENT, Prev: Transaction screen, Up: Top
File: hledger-ui.info, Node: Error screen, Prev: Transaction screen, Up: SCREENS
7 Error screen
**************
3.4 Error screen
================
This screen will appear if there is a problem, such as a parse error,
when you press g to reload. Once you have fixed the problem, press g
@ -447,9 +450,9 @@ again to reload and resume normal operation. (Or, you can press escape
to cancel the reload attempt.)

File: hledger-ui.info, Node: ENVIRONMENT, Next: FILES, Prev: Error screen, Up: Top
File: hledger-ui.info, Node: ENVIRONMENT, Next: FILES, Prev: SCREENS, Up: Top
8 ENVIRONMENT
4 ENVIRONMENT
*************
*COLUMNS* The screen width to use. Default: the full terminal width.
@ -477,7 +480,7 @@ a more thorough way that also affects applications started from the GUI

File: hledger-ui.info, Node: FILES, Next: BUGS, Prev: ENVIRONMENT, Up: Top
9 FILES
5 FILES
*******
Reads data from one or more files in hledger journal, timeclock,
@ -488,8 +491,8 @@ timedot, or CSV format specified with '-f', or '$LEDGER_FILE', or

File: hledger-ui.info, Node: BUGS, Prev: FILES, Up: Top
10 BUGS
*******
6 BUGS
******
The need to precede options with '--' when invoked from hledger is
awkward.
@ -516,30 +519,25 @@ program is restarted.

Tag Table:
Node: Top71
Node: OPTIONS1554
Ref: #options1651
Node: keys5718
Ref: #keys5813
Node: screens10145
Ref: #screens10254
Node: accounts screen10254
Ref: #accounts-screen10390
Node: Register screen12605
Ref: #register-screen12752
Node: Transaction screen14749
Ref: #transaction-screen14899
Node: Error screen15769
Ref: #error-screen15903
Node: ENVIRONMENT16147
Ref: #environment16266
Node: FILES17073
Ref: #files17172
Node: BUGS17385
Ref: #bugs17464
Node: OPTIONS1434
Ref: #options1531
Node: KEYS5598
Ref: #keys5693
Node: SCREENS10012
Ref: #screens10117
Node: Accounts screen10207
Ref: #accounts-screen10335
Node: Register screen12550
Ref: #register-screen12705
Node: Transaction screen14702
Ref: #transaction-screen14860
Node: Error screen15730
Ref: #error-screen15852
Node: ENVIRONMENT16096
Ref: #environment16210
Node: FILES17017
Ref: #files17116
Node: BUGS17329
Ref: #bugs17406

End Tag Table

Local Variables:
coding: utf-8
End:

View File

@ -1,10 +1,10 @@
hledger-ui(1) hledger User Manuals hledger-ui(1)
HLEDGER-UI(1) hledger User Manuals HLEDGER-UI(1)
NAME
hledger-ui - terminal interface for the hledger accounting tool
A terminal interface (TUI) for the hledger accounting tool.
SYNOPSIS
hledger-ui [OPTIONS] [QUERYARGS]
@ -185,16 +185,16 @@ OPTIONS
--debug[=N]
show debug output (levels 1-9, default: 1)
a @file argument will be expanded to the contents of file, which should
contain one command line option/argument per line. (to prevent this,
A @FILE argument will be expanded to the contents of FILE, which should
contain one command line option/argument per line. (To prevent this,
insert a -- argument before.)
keys
? 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 escape,
or left, or q) to close it. the following keys work on most screens:
KEYS
? 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 ESCAPE,
or LEFT, or q) to close it. The following keys work on most screens:
the cursor keys navigate: right (or enter) goes deeper, left returns to
The cursor keys navigate: right (or enter) goes deeper, left returns to
the previous screen, up/down/page up/page down/home/end move up and
down through lists. Emacs-style (ctrl-p/ctrl-n/ctrl-f/ctrl-b) movement
keys are also supported (but not vi-style keys, since hledger-1.19,
@ -202,87 +202,87 @@ keys
rate, to move faster you may want to adjust it. (If you're on a mac,
the karabiner app is one way to do that.)
with shift pressed, the cursor keys adjust the report period, limiting
With shift pressed, the cursor keys adjust the report period, limiting
the transactions to be shown (by default, all are shown). shift-
down/up steps downward and upward through these standard report period
durations: year, quarter, month, week, day. then, shift-left/right
durations: year, quarter, month, week, day. Then, shift-left/right
moves to the previous/next period. T sets the report period to today.
with the --watch option, when viewing a "current" period (the current
With the --watch option, when viewing a "current" period (the current
day, week, month, quarter, or year), the period will move automatically
to track the current date. to set a non-standard period, you can use /
to track the current date. To set a non-standard period, you can use /
and a date: query.
/ lets you set a general filter query limiting the data shown, 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 set
it, or escapeto cancel. there are also keys for quickly adjusting some
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 set
it, or ESCAPEto cancel. There are also keys for quickly adjusting some
common filters like account depth and transaction status (see below).
backspace or delete removes all filters, showing all transactions.
BACKSPACE or DELETE removes all filters, showing all transactions.
as mentioned above, by default hledger-ui hides future transactions -
As mentioned above, by default hledger-ui hides future transactions -
both ordinary transactions recorded in the journal, and periodic trans-
actions generated by rule. f toggles forecast mode, in which fu-
ture/forecasted transactions are shown. (experimental)
actions generated by rule. F toggles forecast mode, in which fu-
ture/forecasted transactions are shown.
escape resets the UI state and jumps back to the top screen, restoring
ESCAPE resets the UI state and jumps back to the top screen, restoring
the app's initial state at startup. Or, it cancels minibuffer data en-
try or the help dialog.
ctrl-l redraws the screen and centers the selection if possible (selec-
CTRL-l redraws the screen and centers the selection if possible (selec-
tions near the top won't be centered, since we don't scroll above the
top).
g reloads from the data file(s) and updates the current screen and any
previous screens. (with large files, this could cause a noticeable
previous screens. (With large files, this could cause a noticeable
pause.)
i toggles balance assertion checking. disabling balance assertions
I toggles balance assertion checking. Disabling balance assertions
temporarily can be useful for troubleshooting.
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.
a is like a, but runs the hledger-iadd tool, which provides a terminal
interface. this key will be available if hledger-iadd is installed in
A is like a, but runs the hledger-iadd tool, which provides a terminal
interface. This key will be available if hledger-iadd is installed in
$path.
e runs $hledger_ui_editor, or $editor, or a default (emacsclient -a ""
-nw) on the journal file. with some editors (emacs, vi), the cursor
E runs $HLEDGER_UI_EDITOR, or $EDITOR, or a default (emacsclient -a ""
-nw) on the journal file. With some editors (emacs, vi), the cursor
will be positioned at the current transaction when invoked from the
register and transaction screens, and at the error location (if possi-
ble) when invoked from the error screen.
b toggles cost mode, showing amounts in their transaction price's com-
modity (like toggling the -b/--cost flag).
B toggles cost mode, showing amounts in their transaction price's com-
modity (like toggling the -B/--cost flag).
v toggles value mode, showing amounts' current market value in their
default valuation commodity (like toggling the -v/--market flag).
note, "current market value" means the value on the report end date if
specified, otherwise today. to see the value on another date, you can
temporarily set that as the report end date. eg: to see a transaction
V toggles value mode, showing amounts' current market value in their
default valuation commodity (like toggling the -V/--market flag).
Note, "current market value" means the value on the report end date if
specified, otherwise today. To see the value on another date, you can
temporarily set that as the report end date. Eg: to see a transaction
as it was valued on july 30, go to the accounts or register screen,
press /, and add date:-7/30 to the query.
at most one of cost or value mode can be active at once.
At most one of cost or value mode can be active at once.
there's not yet any visual reminder when cost or value mode is active;
There's not yet any visual reminder when cost or value mode is active;
for now pressing b b v should reliably reset to normal mode.
with --watch active, if you save an edit to the journal file while
viewing the transaction screen in cost or value mode, the b/v keys will
stop working. to work around, press g to force a manual reload, or
With --watch active, if you save an edit to the journal file while
viewing the transaction screen in cost or value mode, the B/V keys will
stop working. To work around, press g to force a manual reload, or
exit the transaction screen.
q quits the application.
additional screen-specific keys are described below.
Additional screen-specific keys are described below.
screens
accounts screen
this is normally the first screen displayed. it lists accounts and
their balances, like hledger's balance command. by default, it shows
SCREENS
Accounts screen
This is normally the first screen displayed. It lists accounts and
their balances, like hledger's balance command. By default, it shows
all accounts and their latest ending balances (including the balances
of subaccounts). if you specify a query on the command line, it shows
of subaccounts). If you specify a query on the command line, it shows
just the matched accounts and the balances from matched transactions.
Account names are shown as a flat list by default; press t to toggle
@ -452,9 +452,11 @@ COPYRIGHT
SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger_csv(5),
hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1)
hledger(1), hledger-ui(1), hledger-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time-
dot(5)
hledger-ui 1.20.1 December 2020 hledger-ui(1)
hledger-ui-1.20.1 December 2020 HLEDGER-UI(1)

View File

@ -1,11 +1,11 @@
.TH "hledger-web" "1" "December 2020" "hledger-web 1.20.1" "hledger User Manuals"
.TH "HLEDGER-WEB" "1" "December 2020" "hledger-web-1.20.1 " "hledger User Manuals"
.SH NAME
.PP
hledger-web - web interface for the hledger accounting tool
A web interface (WUI) for the hledger accounting tool.
.SH SYNOPSIS
.PP
\f[C]hledger-web [OPTIONS]\f[R]
@ -610,6 +610,6 @@ Copyright (C) 2007-2020 Simon Michael.
Released under GNU GPL v3 or later.
.SH SEE ALSO
hledger(1), hledger\-ui(1), hledger\-web(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5),
ledger(1)
hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5)

View File

@ -3,10 +3,10 @@ This is hledger-web.info, produced by makeinfo version 6.7 from stdin.

File: hledger-web.info, Node: Top, Next: OPTIONS, Up: (dir)
hledger-web(1) hledger-web 1.20.1
*********************************
hledger-web(1)
**************
hledger-web - web interface for the hledger accounting tool
A web interface (WUI) for the hledger accounting tool.
'hledger-web [OPTIONS]'
'hledger web -- [OPTIONS]'
@ -589,26 +589,21 @@ awkward.

Tag Table:
Node: Top72
Node: OPTIONS1750
Ref: #options1855
Node: PERMISSIONS8954
Ref: #permissions9093
Node: EDITING UPLOADING DOWNLOADING10305
Ref: #editing-uploading-downloading10486
Node: RELOADING11320
Ref: #reloading11454
Node: JSON API11887
Ref: #json-api12001
Node: ENVIRONMENT17491
Ref: #environment17607
Node: FILES18340
Ref: #files18440
Node: BUGS18653
Ref: #bugs18731
Node: OPTIONS1707
Ref: #options1812
Node: PERMISSIONS8911
Ref: #permissions9050
Node: EDITING UPLOADING DOWNLOADING10262
Ref: #editing-uploading-downloading10443
Node: RELOADING11277
Ref: #reloading11411
Node: JSON API11844
Ref: #json-api11958
Node: ENVIRONMENT17448
Ref: #environment17564
Node: FILES18297
Ref: #files18397
Node: BUGS18610
Ref: #bugs18688

End Tag Table

Local Variables:
coding: utf-8
End:

View File

@ -1,10 +1,10 @@
hledger-web(1) hledger User Manuals hledger-web(1)
HLEDGER-WEB(1) hledger User Manuals HLEDGER-WEB(1)
NAME
hledger-web - web interface for the hledger accounting tool
A web interface (WUI) for the hledger accounting tool.
SYNOPSIS
hledger-web [OPTIONS]
@ -545,9 +545,11 @@ COPYRIGHT
SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger_csv(5),
hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1)
hledger(1), hledger-ui(1), hledger-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time-
dot(5)
hledger-web 1.20.1 December 2020 hledger-web(1)
hledger-web-1.20.1 December 2020 HLEDGER-WEB(1)

View File

@ -1,23 +1,20 @@
.\"t
.TH "hledger" "1" "December 2020" "hledger 1.20.1" "hledger User Manuals"
.TH "HLEDGER" "1" "December 2020" "hledger-1.20.1 " "hledger User Manuals"
.SH NAME
.PP
hledger - a command-line accounting tool
A command-line accounting tool for both power users and folks new to
accounting.
.SH SYNOPSIS
.PP
\f[C]hledger [-f FILE] COMMAND [OPTIONS] [ARGS]\f[R]
.PD 0
.P
.PD
\f[C]hledger [-f FILE] ADDONCMD -- [OPTIONS] [ARGS]\f[R]
.PD 0
.P
.PD
\f[C]hledger\f[R]
.PP
\f[C]hledger [-f FILE] COMMAND [OPTIONS] [ARGS]\f[R]
.PP
\f[C]hledger [-f FILE] ADDONCMD -- [OPTIONS] [ARGS]\f[R]
.SH DESCRIPTION
.PP
hledger is a reliable, cross-platform set of programs for tracking
@ -2466,22 +2463,85 @@ a flag (-D/-W/-M/-Q/-Y) or period expression that activates the
report\[aq]s multi-period mode (whether showing one or many subperiods).
.SH COMMANDS
.PP
hledger provides a number of subcommands; \f[C]hledger\f[R] with no
arguments shows a list.
hledger provides a number of commands for producing reports and managing
your data.
Run \f[C]hledger\f[R] with no arguments to list the commands available.
.PP
If you install additional \f[C]hledger-*\f[R] packages, or if you put
programs or scripts named \f[C]hledger-NAME\f[R] in your PATH, these
will also be listed as subcommands.
To run a command, write its name (or its abbreviation shown in the
commands list, or any unambiguous prefix of the name) as hledger\[aq]s
first argument.
Eg: \f[C]hledger balance\f[R] or \f[C]hledger bal\f[R].
.PP
Run a subcommand by writing its name as first argument (eg
\f[C]hledger incomestatement\f[R]).
You can also write one of the standard short aliases displayed in
parentheses in the command list (\f[C]hledger b\f[R]), or any any
unambiguous prefix of a command name (\f[C]hledger inc\f[R]).
Here are the built-in commands:
.PP
Here are all the builtin commands in alphabetical order.
See also \f[C]hledger\f[R] for a more organised command list, and
\f[C]hledger CMD -h\f[R] for detailed command help.
\f[B]Data entry (these modify the journal file):\f[R]
.IP \[bu] 2
add - add transactions using guided prompts
.IP \[bu] 2
import - add any new transactions from other files (eg csv)
.PP
\f[B]Data management\f[R]:
.IP \[bu] 2
check - check for various kinds of issue in the data
.IP \[bu] 2
close (equity) - generate balance-resetting transactions
.IP \[bu] 2
diff - compare account transactions in two journal files
.IP \[bu] 2
rewrite - generate extra postings, similar to print --auto
.PP
\f[B]Financial statements:\f[R]
.IP \[bu] 2
aregister (areg) - show transactions in a particular account
.IP \[bu] 2
balancesheet (bs) - show assets, liabilities and net worth
.IP \[bu] 2
balancesheetequity (bse) - show assets, liabilities and equity
.IP \[bu] 2
cashflow (cf) - show changes in liquid assets
.IP \[bu] 2
incomestatement (is) - show revenues and expenses
.IP \[bu] 2
roi - show return on investments
.PP
\f[B]Miscellaneous reports:\f[R]
.IP \[bu] 2
accounts (a) - show account names
.IP \[bu] 2
activity - show postings-per-interval bar charts
.IP \[bu] 2
balance (b, bal) - show balance changes/end balances/budgets in accounts
.IP \[bu] 2
codes - show transaction codes
.IP \[bu] 2
commodities - show commodity/currency symbols
.IP \[bu] 2
descriptions - show unique transaction descriptions
.IP \[bu] 2
files - show input file paths
.IP \[bu] 2
notes - show unique note segments of transaction descriptions
.IP \[bu] 2
payees - show unique payee segments of transaction descriptions
.IP \[bu] 2
prices - show market price records
.IP \[bu] 2
print (p, txns) - show transactions (journal entries)
.IP \[bu] 2
print-unique - show only transactions with unique descriptions
.IP \[bu] 2
register (r, reg) - show postings in one or more accounts & running
total
.IP \[bu] 2
register-match - show a recent posting that best matches a description
.IP \[bu] 2
stats - show journal statistics
.IP \[bu] 2
tags - show tag names
.IP \[bu] 2
test - run self tests
.PP
Next, the detailed command docs, in alphabetical order.
.SS accounts
.PP
accounts, a
@ -2664,6 +2724,10 @@ shown.
.PP
Transactions making a net change of zero are not shown by default; add
the \f[C]-E/--empty\f[R] flag to show them.
.PP
This command also supports the output destination and output format
options The output formats supported are \f[C]txt\f[R], \f[C]csv\f[R],
and \f[C]json\f[R].
.SS aregister and custom posting dates
.PP
Transactions whose date is outside the report period can still be shown,
@ -2677,11 +2741,6 @@ To filter strictly by transaction date instead, add the
\f[C]--txn-dates\f[R] flag.
If you use this flag and some of your postings have custom dates,
it\[aq]s probably best to assume the running balance is wrong.
.SS Output format
.PP
This command also supports the output destination and output format
options The output formats supported are \f[C]txt\f[R], \f[C]csv\f[R],
and \f[C]json\f[R].
.PP
Examples:
.PP
@ -2734,6 +2793,10 @@ Then the balance command will show real-world account balances.
In some cases the -H/--historical flag is used to ensure this (more
below).
.PP
This command also supports the output destination and output format
options The output formats supported are (in most modes): \f[C]txt\f[R],
\f[C]csv\f[R], \f[C]html\f[R], and \f[C]json\f[R].
.PP
The balance command can produce several styles of report:
.SS Classic balance report
.PP
@ -3378,11 +3441,6 @@ Budget performance in 2019/01:
|| 0 [ 0]
\f[R]
.fi
.SS Output format
.PP
This command also supports the output destination and output format
options The output formats supported are (in most modes): \f[C]txt\f[R],
\f[C]csv\f[R], \f[C]html\f[R], and \f[C]json\f[R].
.SS balancesheet
.PP
balancesheet, bs
@ -4047,371 +4105,6 @@ Petrol
Snacks
\f[R]
.fi
.SS payees
.PP
payees
.PD 0
.P
.PD
List the unique payee/payer names that appear in transactions.
.PP
This command lists the unique payee/payer names that appear in
transactions, in alphabetic order.
You can add a query to select a subset of transactions.
The payee/payer is the part of the transaction description before a |
character (or if there is no |, the whole description).
.PP
Example:
.IP
.nf
\f[C]
$ hledger payees
Store Name
Gas Station
Person A
\f[R]
.fi
.SS prices
.PP
prices
.PD 0
.P
.PD
Print market price directives from the journal.
With --costs, also print synthetic market prices based on transaction
prices.
With --inverted-costs, also print inverse prices based on transaction
prices.
Prices (and postings providing prices) can be filtered by a query.
Price amounts are always displayed with their full precision.
.SS print
.PP
print, txns, p
.PD 0
.P
.PD
Show transaction journal entries, sorted by date.
.PP
The print command displays full journal entries (transactions) from the
journal file in date order, tidily formatted.
With --date2, transactions are sorted by secondary date instead.
.PP
print\[aq]s output is always a valid hledger journal.
.PD 0
.P
.PD
It preserves all transaction information, but it does not preserve
directives or inter-transaction comments
.IP
.nf
\f[C]
$ hledger print
2008/01/01 income
assets:bank:checking $1
income:salary $-1
2008/06/01 gift
assets:bank:checking $1
income:gifts $-1
2008/06/02 save
assets:bank:saving $1
assets:bank:checking $-1
2008/06/03 * eat & shop
expenses:food $1
expenses:supplies $1
assets:cash $-2
2008/12/31 * pay off
liabilities:debts $1
assets:bank:checking $-1
\f[R]
.fi
.PP
Normally, the journal entry\[aq]s explicit or implicit amount style is
preserved.
For example, when an amount is omitted in the journal, it will not
appear in the output.
Similarly, when a transaction price is implied but not written, it will
not appear in the output.
You can use the \f[C]-x\f[R]/\f[C]--explicit\f[R] flag to make all
amounts and transaction prices explicit, which can be useful for
troubleshooting or for making your journal more readable and robust
against data entry errors.
\f[C]-x\f[R] is also implied by using any of
\f[C]-B\f[R],\f[C]-V\f[R],\f[C]-X\f[R],\f[C]--value\f[R].
.PP
Note, \f[C]-x\f[R]/\f[C]--explicit\f[R] will cause postings with a
multi-commodity amount (these can arise when a multi-commodity
transaction has an implicit amount) to be split into multiple
single-commodity postings, keeping the output parseable.
.PP
With \f[C]-B\f[R]/\f[C]--cost\f[R], amounts with transaction prices are
converted to cost using that price.
This can be used for troubleshooting.
.PP
With \f[C]-m\f[R]/\f[C]--match\f[R] and a STR argument, print will show
at most one transaction: the one one whose description is most similar
to STR, and is most recent.
STR should contain at least two characters.
If there is no similar-enough match, no transaction will be shown.
.PP
With \f[C]--new\f[R], for each FILE being read, hledger reads (and
writes) a special state file (\f[C].latest.FILE\f[R] in the same
directory), containing the latest transaction date(s) that were seen
last time FILE was read.
When this file is found, only transactions with newer dates (and new
transactions on the latest date) are printed.
This is useful for ignoring already-seen entries in import data, such as
downloaded CSV files.
Eg:
.IP
.nf
\f[C]
$ hledger -f bank1.csv print --new
(shows transactions added since last print --new on this file)
\f[R]
.fi
.PP
This assumes that transactions added to FILE always have same or
increasing dates, and that transactions on the same day do not get
reordered.
See also the import command.
.PP
This command also supports the output destination and output format
options The output formats supported are \f[C]txt\f[R], \f[C]csv\f[R],
and (experimental) \f[C]json\f[R] and \f[C]sql\f[R].
.PP
Here\[aq]s an example of print\[aq]s CSV output:
.IP
.nf
\f[C]
$ hledger print -Ocsv
\[dq]txnidx\[dq],\[dq]date\[dq],\[dq]date2\[dq],\[dq]status\[dq],\[dq]code\[dq],\[dq]description\[dq],\[dq]comment\[dq],\[dq]account\[dq],\[dq]amount\[dq],\[dq]commodity\[dq],\[dq]credit\[dq],\[dq]debit\[dq],\[dq]posting-status\[dq],\[dq]posting-comment\[dq]
\[dq]1\[dq],\[dq]2008/01/01\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]income\[dq],\[dq]\[dq],\[dq]assets:bank:checking\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq]
\[dq]1\[dq],\[dq]2008/01/01\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]income\[dq],\[dq]\[dq],\[dq]income:salary\[dq],\[dq]-1\[dq],\[dq]$\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq]
\[dq]2\[dq],\[dq]2008/06/01\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]gift\[dq],\[dq]\[dq],\[dq]assets:bank:checking\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq]
\[dq]2\[dq],\[dq]2008/06/01\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]gift\[dq],\[dq]\[dq],\[dq]income:gifts\[dq],\[dq]-1\[dq],\[dq]$\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq]
\[dq]3\[dq],\[dq]2008/06/02\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]save\[dq],\[dq]\[dq],\[dq]assets:bank:saving\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq]
\[dq]3\[dq],\[dq]2008/06/02\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]save\[dq],\[dq]\[dq],\[dq]assets:bank:checking\[dq],\[dq]-1\[dq],\[dq]$\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq]
\[dq]4\[dq],\[dq]2008/06/03\[dq],\[dq]\[dq],\[dq]*\[dq],\[dq]\[dq],\[dq]eat & shop\[dq],\[dq]\[dq],\[dq]expenses:food\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq]
\[dq]4\[dq],\[dq]2008/06/03\[dq],\[dq]\[dq],\[dq]*\[dq],\[dq]\[dq],\[dq]eat & shop\[dq],\[dq]\[dq],\[dq]expenses:supplies\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq]
\[dq]4\[dq],\[dq]2008/06/03\[dq],\[dq]\[dq],\[dq]*\[dq],\[dq]\[dq],\[dq]eat & shop\[dq],\[dq]\[dq],\[dq]assets:cash\[dq],\[dq]-2\[dq],\[dq]$\[dq],\[dq]2\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq]
\[dq]5\[dq],\[dq]2008/12/31\[dq],\[dq]\[dq],\[dq]*\[dq],\[dq]\[dq],\[dq]pay off\[dq],\[dq]\[dq],\[dq]liabilities:debts\[dq],\[dq]1\[dq],\[dq]$\[dq],\[dq]\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq]
\[dq]5\[dq],\[dq]2008/12/31\[dq],\[dq]\[dq],\[dq]*\[dq],\[dq]\[dq],\[dq]pay off\[dq],\[dq]\[dq],\[dq]assets:bank:checking\[dq],\[dq]-1\[dq],\[dq]$\[dq],\[dq]1\[dq],\[dq]\[dq],\[dq]\[dq],\[dq]\[dq]
\f[R]
.fi
.IP \[bu] 2
There is one CSV record per posting, with the parent transaction\[aq]s
fields repeated.
.IP \[bu] 2
The \[dq]txnidx\[dq] (transaction index) field shows which postings
belong to the same transaction.
(This number might change if transactions are reordered within the file,
files are parsed/included in a different order, etc.)
.IP \[bu] 2
The amount is separated into \[dq]commodity\[dq] (the symbol) and
\[dq]amount\[dq] (numeric quantity) fields.
.IP \[bu] 2
The numeric amount is repeated in either the \[dq]credit\[dq] or
\[dq]debit\[dq] column, for convenience.
(Those names are not accurate in the accounting sense; it just puts
negative amounts under credit and zero or greater amounts under debit.)
.SS print-unique
.PP
print-unique
.PD 0
.P
.PD
Print transactions which do not reuse an already-seen description.
.PP
Example:
.IP
.nf
\f[C]
$ cat unique.journal
1/1 test
(acct:one) 1
2/2 test
(acct:two) 2
$ LEDGER_FILE=unique.journal hledger print-unique
(-f option not supported)
2015/01/01 test
(acct:one) 1
\f[R]
.fi
.SS register
.PP
register, reg, r
.PD 0
.P
.PD
Show postings and their running total.
.PP
The register command displays matched postings, across all accounts, in
date order, with their running total or running historical balance.
(See also the \f[C]aregister\f[R] command, which shows matched
transactions in a specific account.)
.PP
register normally shows line per posting, but note that multi-commodity
amounts will occupy multiple lines (one line per commodity).
.PP
It is typically used with a query selecting a particular account, to see
that account\[aq]s activity:
.IP
.nf
\f[C]
$ hledger register checking
2008/01/01 income assets:bank:checking $1 $1
2008/06/01 gift assets:bank:checking $1 $2
2008/06/02 save assets:bank:checking $-1 $1
2008/12/31 pay off assets:bank:checking $-1 0
\f[R]
.fi
.PP
With --date2, it shows and sorts by secondary date instead.
.PP
The \f[C]--historical\f[R]/\f[C]-H\f[R] flag adds the balance from any
undisplayed prior postings to the running total.
This is useful when you want to see only recent activity, with a
historically accurate running balance:
.IP
.nf
\f[C]
$ hledger register checking -b 2008/6 --historical
2008/06/01 gift assets:bank:checking $1 $2
2008/06/02 save assets:bank:checking $-1 $1
2008/12/31 pay off assets:bank:checking $-1 0
\f[R]
.fi
.PP
The \f[C]--depth\f[R] option limits the amount of sub-account detail
displayed.
.PP
The \f[C]--average\f[R]/\f[C]-A\f[R] flag shows the running average
posting amount instead of the running total (so, the final number
displayed is the average for the whole report period).
This flag implies \f[C]--empty\f[R] (see below).
It is affected by \f[C]--historical\f[R].
It works best when showing just one account and one commodity.
.PP
The \f[C]--related\f[R]/\f[C]-r\f[R] flag shows the \f[I]other\f[R]
postings in the transactions of the postings which would normally be
shown.
.PP
The \f[C]--invert\f[R] flag negates all amounts.
For example, it can be used on an income account where amounts are
normally displayed as negative numbers.
It\[aq]s also useful to show postings on the checking account together
with the related account:
.IP
.nf
\f[C]
$ hledger register --related --invert assets:checking
\f[R]
.fi
.PP
With a reporting interval, register shows summary postings, one per
interval, aggregating the postings to each account:
.IP
.nf
\f[C]
$ hledger register --monthly income
2008/01 income:salary $-1 $-1
2008/06 income:gifts $-1 $-2
\f[R]
.fi
.PP
Periods with no activity, and summary postings with a zero amount, are
not shown by default; use the \f[C]--empty\f[R]/\f[C]-E\f[R] flag to see
them:
.IP
.nf
\f[C]
$ hledger register --monthly income -E
2008/01 income:salary $-1 $-1
2008/02 0 $-1
2008/03 0 $-1
2008/04 0 $-1
2008/05 0 $-1
2008/06 income:gifts $-1 $-2
2008/07 0 $-2
2008/08 0 $-2
2008/09 0 $-2
2008/10 0 $-2
2008/11 0 $-2
2008/12 0 $-2
\f[R]
.fi
.PP
Often, you\[aq]ll want to see just one line per interval.
The \f[C]--depth\f[R] option helps with this, causing subaccounts to be
aggregated:
.IP
.nf
\f[C]
$ hledger register --monthly assets --depth 1h
2008/01 assets $1 $1
2008/06 assets $-1 0
2008/12 assets $-1 $-1
\f[R]
.fi
.PP
Note when using report intervals, if you specify start/end dates these
will be adjusted outward if necessary to contain a whole number of
intervals.
This ensures that the first and last intervals are full length and
comparable to the others in the report.
.SS Custom register output
.PP
register uses the full terminal width by default, except on windows.
You can override this by setting the \f[C]COLUMNS\f[R] environment
variable (not a bash shell variable) or by using the
\f[C]--width\f[R]/\f[C]-w\f[R] option.
.PP
The description and account columns normally share the space equally
(about half of (width - 40) each).
You can adjust this by adding a description width as part of
--width\[aq]s argument, comma-separated: \f[C]--width W,D\f[R] .
Here\[aq]s a diagram (won\[aq]t display correctly in --help):
.IP
.nf
\f[C]
<--------------------------------- width (W) ---------------------------------->
date (10) description (D) account (W-41-D) amount (12) balance (12)
DDDDDDDDDD dddddddddddddddddddd aaaaaaaaaaaaaaaaaaa AAAAAAAAAAAA AAAAAAAAAAAA
\f[R]
.fi
.PP
and some examples:
.IP
.nf
\f[C]
$ hledger reg # use terminal width (or 80 on windows)
$ hledger reg -w 100 # use width 100
$ COLUMNS=100 hledger reg # set with one-time environment variable
$ export COLUMNS=100; hledger reg # set till session end (or window resize)
$ hledger reg -w 100,40 # set overall width 100, description width 40
$ hledger reg -w $COLUMNS,40 # use terminal width, & description width 40
\f[R]
.fi
.PP
This command also supports the output destination and output format
options The output formats supported are \f[C]txt\f[R], \f[C]csv\f[R],
and (experimental) \f[C]json\f[R].
.SS register-match
.PP
register-match
.PD 0
.P
.PD
Print the one posting whose transaction description is closest to DESC,
in the style of the register command.
If there are multiple equally good matches, it shows the most recent.
Query options (options, not arguments) can be used to restrict the
search space.
Helps ledger-autosync detect already-seen transactions when importing.
.SS rewrite
.PP
rewrite
@ -4979,62 +4672,82 @@ For help on these, see https://github.com/feuerbach/tasty#options
(\f[C]-- --help\f[R] currently doesn\[aq]t show them).
.SS Add-on commands
.PP
hledger also searches for external add-on commands, and will include
these in the commands list.
These are programs or scripts in your PATH whose name starts with
\f[C]hledger-\f[R] and ends with a recognised file extension (currently:
no extension, \f[C]bat\f[R],\f[C]com\f[R],\f[C]exe\f[R],
\f[C]hs\f[R],\f[C]lhs\f[R],\f[C]pl\f[R],\f[C]py\f[R],\f[C]rb\f[R],\f[C]rkt\f[R],\f[C]sh\f[R]).
Any programs or scripts in your PATH named named
\f[C]hledger-SOMETHING\f[R] will also appear in the commands list (with
a \f[C]+\f[R] mark).
These are called add-on commands.
.PP
Add-ons can be invoked like any hledger command, but there are a few
things to be aware of.
Eg if the \f[C]hledger-web\f[R] add-on is installed,
These offical add-ons are maintained and released along with hledger:
.IP \[bu] 2
\f[C]hledger -h web\f[R] shows hledger\[aq]s help, while
ui an efficient terminal interface for hledger (TUI)
.IP \[bu] 2
web a simple web interface for hledger (WUI)
.PP
These add-ons are maintained separately:
.IP \[bu] 2
iadd a more interactive alternative for the add command
.IP \[bu] 2
interest generates interest transactions according to various schemes
.IP \[bu] 2
stockquotes downloads market prices for your commodities from
AlphaVantage \f[I](experimental)\f[R]
.PP
Additional experimental add-ons, which may not be in a working state,
can be found in the bin/ directory in the hledger repo.
.SS Add-on command flags
.PP
In a hledger command line, add-on command flags must have a double dash
(\f[C]--\f[R]) preceding them.
Eg you must write:
.IP
.nf
\f[C]
$ hledger web -- --serve
\f[R]
.fi
.PP
and not:
.IP
.nf
\f[C]
$ hledger web --serve
\f[R]
.fi
.PP
(because the \f[C]--serve\f[R] flag belongs to \f[C]hledger-web\f[R],
not \f[C]hledger\f[R]).
.PP
The \f[C]-h/--help\f[R] and \f[C]--version\f[R] flags work without
\f[C]--\f[R], with their position deciding which program they refer to.
Eg \f[C]hledger -h web\f[R] shows hledger\[aq]s help,
\f[C]hledger web -h\f[R] shows hledger-web\[aq]s help.
.PP
If you have any trouble with this, remember you can always run the
add-on program directly, eg:
.IP
.nf
\f[C]
$ hledger-web --serve
\f[R]
.fi
.SS Making add-on commands
.PP
Add-on commands are programs or scripts in your PATH
.IP \[bu] 2
Flags specific to the add-on must have a preceding \f[C]--\f[R] to hide
them from hledger.
So \f[C]hledger web --serve --port 9000\f[R] will be rejected; you must
use \f[C]hledger web -- --serve --port 9000\f[R].
whose name starts with \f[C]hledger-\f[R]
.IP \[bu] 2
You can always run add-ons directly if preferred:
\f[C]hledger-web --serve --port 9000\f[R].
whose name ends with a recognised file extension:
\f[C].bat\f[R],\f[C].com\f[R],\f[C].exe\f[R],
\f[C].hs\f[R],\f[C].lhs\f[R],\f[C].pl\f[R],\f[C].py\f[R],\f[C].rb\f[R],\f[C].rkt\f[R],\f[C].sh\f[R]
or none
.IP \[bu] 2
and (on unix, mac) which are executable by the current user.
.PP
Add-ons are a relatively easy way to add local features or experiment
with new ideas.
They can be written in any language, but haskell scripts have a big
advantage: they can use the same hledger (and haskell) library functions
that built-in commands do, for command-line options, journal parsing,
reporting, etc.
.PP
Two important add-ons are the hledger-ui and hledger-web user
interfaces.
These are maintained and released along with hledger:
.SS ui
.PP
hledger-ui provides an efficient terminal interface.
.SS web
.PP
hledger-web provides a simple web interface.
.PP
Third party add-ons, maintained separately from hledger, include:
.SS iadd
.PP
hledger-iadd is a more interactive, terminal UI replacement for the add
command.
.SS interest
.PP
hledger-interest generates interest transactions for an account
according to various schemes.
.SS stockquotes
.PP
hledger-stockquotes downloads market prices for the commodities in your
journal from AlphaVantage.
.PP
A few more experimental or old add-ons can be found in hledger\[aq]s
bin/ directory.
These are typically prototypes and not guaranteed to work.
advantage: they can use the same hledger library functions that built-in
commands use for command-line options, parsing and reporting.
.SH ENVIRONMENT
.PP
\f[B]LEDGER_FILE\f[R] The journal file path when not specified with
@ -5214,6 +4927,6 @@ Copyright (C) 2007-2020 Simon Michael.
Released under GNU GPL v3 or later.
.SH SEE ALSO
hledger(1), hledger\-ui(1), hledger\-web(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_timedot(5),
ledger(1)
hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5)

File diff suppressed because it is too large Load Diff

View File

@ -1,16 +1,19 @@
hledger(1) hledger User Manuals hledger(1)
HLEDGER(1) hledger User Manuals HLEDGER(1)
NAME
hledger - a command-line accounting tool
A command-line accounting tool for both power users and folks new to
accounting.
SYNOPSIS
hledger [-f FILE] COMMAND [OPTIONS] [ARGS]
hledger [-f FILE] ADDONCMD -- [OPTIONS] [ARGS]
hledger
hledger [-f FILE] COMMAND [OPTIONS] [ARGS]
hledger [-f FILE] ADDONCMD -- [OPTIONS] [ARGS]
DESCRIPTION
hledger is a reliable, cross-platform set of programs for tracking
money, time, or any other commodity, using double-entry accounting and
@ -1003,7 +1006,6 @@ OPTIONS
10/1 month and day in current year
21 day in current month
october, oct start of month in current year
yesterday, today, tomor- -1, 0, 1 days from today
row
last/this/next -1, 0, 1 periods from the current period
@ -1621,9 +1623,6 @@ OPTIONS
balance sums of costs same as not sup- balance value at
changes of postings --value=end ported change in DATE/today of
(bal, is, in period each period, sums of post-
@ -1684,21 +1683,86 @@ OPTIONS
ods).
COMMANDS
hledger provides a number of subcommands; hledger with no arguments
shows a list.
hledger provides a number of commands for producing reports and manag-
ing your data. Run hledger with no arguments to list the commands
available.
If you install additional hledger-* packages, or if you put programs or
scripts named hledger-NAME in your PATH, these will also be listed as
subcommands.
To run a command, write its name (or its abbreviation shown in the com-
mands list, or any unambiguous prefix of the name) as hledger's first
argument. Eg: hledger balance or hledger bal.
Run a subcommand by writing its name as first argument (eg hledger in-
comestatement). You can also write one of the standard short aliases
displayed in parentheses in the command list (hledger b), or any any
unambiguous prefix of a command name (hledger inc).
Here are the built-in commands:
Here are all the builtin commands in alphabetical order. See also
hledger for a more organised command list, and hledger CMD -h for de-
tailed command help.
Data entry (these modify the journal file):
o add - add transactions using guided prompts
o import - add any new transactions from other files (eg csv)
Data management:
o check - check for various kinds of issue in the data
o close (equity) - generate balance-resetting transactions
o diff - compare account transactions in two journal files
o rewrite - generate extra postings, similar to print --auto
Financial statements:
o aregister (areg) - show transactions in a particular account
o balancesheet (bs) - show assets, liabilities and net worth
o balancesheetequity (bse) - show assets, liabilities and equity
o cashflow (cf) - show changes in liquid assets
o incomestatement (is) - show revenues and expenses
o roi - show return on investments
Miscellaneous reports:
o accounts (a) - show account names
o activity - show postings-per-interval bar charts
o balance (b, bal) - show balance changes/end balances/budgets in ac-
counts
o codes - show transaction codes
o commodities - show commodity/currency symbols
o descriptions - show unique transaction descriptions
o files - show input file paths
o notes - show unique note segments of transaction descriptions
o payees - show unique payee segments of transaction descriptions
o prices - show market price records
o print (p, txns) - show transactions (journal entries)
o print-unique - show only transactions with unique descriptions
o register (r, reg) - show postings in one or more accounts & running
total
o register-match - show a recent posting that best matches a descrip-
tion
o stats - show journal statistics
o tags - show tag names
o test - run self tests
Next, the detailed command docs, in alphabetical order.
accounts
accounts, a
@ -1849,6 +1913,9 @@ COMMANDS
Transactions making a net change of zero are not shown by default; add
the -E/--empty flag to show them.
This command also supports the output destination and output format op-
tions The output formats supported are txt, csv, and json.
aregister and custom posting dates
Transactions whose date is outside the report period can still be
shown, if they have a posting to this account dated inside the report
@ -1860,10 +1927,6 @@ COMMANDS
flag. If you use this flag and some of your postings have custom
dates, it's probably best to assume the running balance is wrong.
Output format
This command also supports the output destination and output format op-
tions The output formats supported are txt, csv, and json.
Examples:
Show all transactions and historical running balance in the first ac-
@ -1900,6 +1963,10 @@ COMMANDS
real-world account balances. In some cases the -H/--historical flag is
used to ensure this (more below).
This command also supports the output destination and output format op-
tions The output formats supported are (in most modes): txt, csv, html,
and json.
The balance command can produce several styles of report:
Classic balance report
@ -2426,11 +2493,6 @@ COMMANDS
----------------------------------------++-------------------------------
|| 0 [ 0]
Output format
This command also supports the output destination and output format op-
tions The output formats supported are (in most modes): txt, csv, html,
and json.
balancesheet
balancesheet, bs
This command displays a balance sheet, showing historical ending bal-
@ -2936,275 +2998,6 @@ COMMANDS
Petrol
Snacks
payees
payees
List the unique payee/payer names that appear in transactions.
This command lists the unique payee/payer names that appear in transac-
tions, in alphabetic order. You can add a query to select a subset of
transactions. The payee/payer is the part of the transaction descrip-
tion before a | character (or if there is no |, the whole description).
Example:
$ hledger payees
Store Name
Gas Station
Person A
prices
prices
Print market price directives from the journal. With --costs, also
print synthetic market prices based on transaction prices. With --in-
verted-costs, also print inverse prices based on transaction prices.
Prices (and postings providing prices) can be filtered by a query.
Price amounts are always displayed with their full precision.
print
print, txns, p
Show transaction journal entries, sorted by date.
The print command displays full journal entries (transactions) from the
journal file in date order, tidily formatted. With --date2, transac-
tions are sorted by secondary date instead.
print's output is always a valid hledger journal.
It preserves all transaction information, but it does not preserve di-
rectives or inter-transaction comments
$ hledger print
2008/01/01 income
assets:bank:checking $1
income:salary $-1
2008/06/01 gift
assets:bank:checking $1
income:gifts $-1
2008/06/02 save
assets:bank:saving $1
assets:bank:checking $-1
2008/06/03 * eat & shop
expenses:food $1
expenses:supplies $1
assets:cash $-2
2008/12/31 * pay off
liabilities:debts $1
assets:bank:checking $-1
Normally, the journal entry's explicit or implicit amount style is pre-
served. For example, when an amount is omitted in the journal, it will
not appear in the output. Similarly, when a transaction price is im-
plied but not written, it will not appear in the output. You can use
the -x/--explicit flag to make all amounts and transaction prices ex-
plicit, which can be useful for troubleshooting or for making your
journal more readable and robust against data entry errors. -x is also
implied by using any of -B,-V,-X,--value.
Note, -x/--explicit will cause postings with a multi-commodity amount
(these can arise when a multi-commodity transaction has an implicit
amount) to be split into multiple single-commodity postings, keeping
the output parseable.
With -B/--cost, amounts with transaction prices are converted to cost
using that price. This can be used for troubleshooting.
With -m/--match and a STR argument, print will show at most one trans-
action: the one one whose description is most similar to STR, and is
most recent. STR should contain at least two characters. If there is
no similar-enough match, no transaction will be shown.
With --new, for each FILE being read, hledger reads (and writes) a spe-
cial state file (.latest.FILE in the same directory), containing the
latest transaction date(s) that were seen last time FILE was read.
When this file is found, only transactions with newer dates (and new
transactions on the latest date) are printed. This is useful for ig-
noring already-seen entries in import data, such as downloaded CSV
files. Eg:
$ hledger -f bank1.csv print --new
(shows transactions added since last print --new on this file)
This assumes that transactions added to FILE always have same or in-
creasing dates, and that transactions on the same day do not get re-
ordered. See also the import command.
This command also supports the output destination and output format op-
tions The output formats supported are txt, csv, and (experimental)
json and sql.
Here's an example of print's CSV output:
$ hledger print -Ocsv
"txnidx","date","date2","status","code","description","comment","account","amount","commodity","credit","debit","posting-status","posting-comment"
"1","2008/01/01","","","","income","","assets:bank:checking","1","$","","1","",""
"1","2008/01/01","","","","income","","income:salary","-1","$","1","","",""
"2","2008/06/01","","","","gift","","assets:bank:checking","1","$","","1","",""
"2","2008/06/01","","","","gift","","income:gifts","-1","$","1","","",""
"3","2008/06/02","","","","save","","assets:bank:saving","1","$","","1","",""
"3","2008/06/02","","","","save","","assets:bank:checking","-1","$","1","","",""
"4","2008/06/03","","*","","eat & shop","","expenses:food","1","$","","1","",""
"4","2008/06/03","","*","","eat & shop","","expenses:supplies","1","$","","1","",""
"4","2008/06/03","","*","","eat & shop","","assets:cash","-2","$","2","","",""
"5","2008/12/31","","*","","pay off","","liabilities:debts","1","$","","1","",""
"5","2008/12/31","","*","","pay off","","assets:bank:checking","-1","$","1","","",""
o There is one CSV record per posting, with the parent transaction's
fields repeated.
o The "txnidx" (transaction index) field shows which postings belong to
the same transaction. (This number might change if transactions are
reordered within the file, files are parsed/included in a different
order, etc.)
o The amount is separated into "commodity" (the symbol) and "amount"
(numeric quantity) fields.
o The numeric amount is repeated in either the "credit" or "debit" col-
umn, for convenience. (Those names are not accurate in the account-
ing sense; it just puts negative amounts under credit and zero or
greater amounts under debit.)
print-unique
print-unique
Print transactions which do not reuse an already-seen description.
Example:
$ cat unique.journal
1/1 test
(acct:one) 1
2/2 test
(acct:two) 2
$ LEDGER_FILE=unique.journal hledger print-unique
(-f option not supported)
2015/01/01 test
(acct:one) 1
register
register, reg, r
Show postings and their running total.
The register command displays matched postings, across all accounts, in
date order, with their running total or running historical balance.
(See also the aregister command, which shows matched transactions in a
specific account.)
register normally shows line per posting, but note that multi-commodity
amounts will occupy multiple lines (one line per commodity).
It is typically used with a query selecting a particular account, to
see that account's activity:
$ hledger register checking
2008/01/01 income assets:bank:checking $1 $1
2008/06/01 gift assets:bank:checking $1 $2
2008/06/02 save assets:bank:checking $-1 $1
2008/12/31 pay off assets:bank:checking $-1 0
With --date2, it shows and sorts by secondary date instead.
The --historical/-H flag adds the balance from any undisplayed prior
postings to the running total. This is useful when you want to see
only recent activity, with a historically accurate running balance:
$ hledger register checking -b 2008/6 --historical
2008/06/01 gift assets:bank:checking $1 $2
2008/06/02 save assets:bank:checking $-1 $1
2008/12/31 pay off assets:bank:checking $-1 0
The --depth option limits the amount of sub-account detail displayed.
The --average/-A flag shows the running average posting amount instead
of the running total (so, the final number displayed is the average for
the whole report period). This flag implies --empty (see below). It
is affected by --historical. It works best when showing just one ac-
count and one commodity.
The --related/-r flag shows the other postings in the transactions of
the postings which would normally be shown.
The --invert flag negates all amounts. For example, it can be used on
an income account where amounts are normally displayed as negative num-
bers. It's also useful to show postings on the checking account to-
gether with the related account:
$ hledger register --related --invert assets:checking
With a reporting interval, register shows summary postings, one per in-
terval, aggregating the postings to each account:
$ hledger register --monthly income
2008/01 income:salary $-1 $-1
2008/06 income:gifts $-1 $-2
Periods with no activity, and summary postings with a zero amount, are
not shown by default; use the --empty/-E flag to see them:
$ hledger register --monthly income -E
2008/01 income:salary $-1 $-1
2008/02 0 $-1
2008/03 0 $-1
2008/04 0 $-1
2008/05 0 $-1
2008/06 income:gifts $-1 $-2
2008/07 0 $-2
2008/08 0 $-2
2008/09 0 $-2
2008/10 0 $-2
2008/11 0 $-2
2008/12 0 $-2
Often, you'll want to see just one line per interval. The --depth op-
tion helps with this, causing subaccounts to be aggregated:
$ hledger register --monthly assets --depth 1h
2008/01 assets $1 $1
2008/06 assets $-1 0
2008/12 assets $-1 $-1
Note when using report intervals, if you specify start/end dates these
will be adjusted outward if necessary to contain a whole number of in-
tervals. This ensures that the first and last intervals are full
length and comparable to the others in the report.
Custom register output
register uses the full terminal width by default, except on windows.
You can override this by setting the COLUMNS environment variable (not
a bash shell variable) or by using the --width/-w option.
The description and account columns normally share the space equally
(about half of (width - 40) each). You can adjust this by adding a de-
scription width as part of --width's argument, comma-separated: --width
W,D . Here's a diagram (won't display correctly in --help):
<--------------------------------- width (W) ---------------------------------->
date (10) description (D) account (W-41-D) amount (12) balance (12)
DDDDDDDDDD dddddddddddddddddddd aaaaaaaaaaaaaaaaaaa AAAAAAAAAAAA AAAAAAAAAAAA
and some examples:
$ hledger reg # use terminal width (or 80 on windows)
$ hledger reg -w 100 # use width 100
$ COLUMNS=100 hledger reg # set with one-time environment variable
$ export COLUMNS=100; hledger reg # set till session end (or window resize)
$ hledger reg -w 100,40 # set overall width 100, description width 40
$ hledger reg -w $COLUMNS,40 # use terminal width, & description width 40
This command also supports the output destination and output format op-
tions The output formats supported are txt, csv, and (experimental)
json.
register-match
register-match
Print the one posting whose transaction description is closest to DESC,
in the style of the register command. If there are multiple equally
good matches, it shows the most recent. Query options (options, not
arguments) can be used to restrict the search space. Helps ledger-au-
tosync detect already-seen transactions when importing.
rewrite
rewrite
Print all transactions, rewriting the postings of matched transactions.
@ -3647,55 +3440,64 @@ COMMANDS
--help currently doesn't show them).
Add-on commands
hledger also searches for external add-on commands, and will include
these in the commands list. These are programs or scripts in your PATH
whose name starts with hledger- and ends with a recognised file exten-
sion (currently: no extension, bat,com,exe, hs,lhs,pl,py,rb,rkt,sh).
Any programs or scripts in your PATH named named hledger-SOMETHING will
also appear in the commands list (with a + mark). These are called
add-on commands.
Add-ons can be invoked like any hledger command, but there are a few
things to be aware of. Eg if the hledger-web add-on is installed,
These offical add-ons are maintained and released along with hledger:
o hledger -h web shows hledger's help, while hledger web -h shows
hledger-web's help.
o ui an efficient terminal interface for hledger (TUI)
o Flags specific to the add-on must have a preceding -- to hide them
from hledger. So hledger web --serve --port 9000 will be rejected;
you must use hledger web -- --serve --port 9000.
o web a simple web interface for hledger (WUI)
o You can always run add-ons directly if preferred: hledger-web --serve
--port 9000.
These add-ons are maintained separately:
o iadd a more interactive alternative for the add command
o interest generates interest transactions according to various schemes
o stockquotes downloads market prices for your commodities from Alpha-
Vantage (experimental)
Additional experimental add-ons, which may not be in a working state,
can be found in the bin/ directory in the hledger repo.
Add-on command flags
In a hledger command line, add-on command flags must have a double dash
(--) preceding them. Eg you must write:
$ hledger web -- --serve
and not:
$ hledger web --serve
(because the --serve flag belongs to hledger-web, not hledger).
The -h/--help and --version flags work without --, with their position
deciding which program they refer to. Eg hledger -h web shows
hledger's help, hledger web -h shows hledger-web's help.
If you have any trouble with this, remember you can always run the add-
on program directly, eg:
$ hledger-web --serve
Making add-on commands
Add-on commands are programs or scripts in your PATH
o whose name starts with hledger-
o whose name ends with a recognised file extension: .bat,.com,.exe,
.hs,.lhs,.pl,.py,.rb,.rkt,.sh or none
o and (on unix, mac) which are executable by the current user.
Add-ons are a relatively easy way to add local features or experiment
with new ideas. They can be written in any language, but haskell
scripts have a big advantage: they can use the same hledger (and
haskell) library functions that built-in commands do, for command-line
options, journal parsing, reporting, etc.
Two important add-ons are the hledger-ui and hledger-web user inter-
faces. These are maintained and released along with hledger:
ui
hledger-ui provides an efficient terminal interface.
web
hledger-web provides a simple web interface.
Third party add-ons, maintained separately from hledger, include:
iadd
hledger-iadd is a more interactive, terminal UI replacement for the add
command.
interest
hledger-interest generates interest transactions for an account accord-
ing to various schemes.
stockquotes
hledger-stockquotes downloads market prices for the commodities in your
journal from AlphaVantage.
A few more experimental or old add-ons can be found in hledger's bin/
directory. These are typically prototypes and not guaranteed to work.
scripts have a big advantage: they can use the same hledger library
functions that built-in commands use for command-line options, parsing
and reporting.
ENVIRONMENT
LEDGER_FILE The journal file path when not specified with -f. Default:
@ -3837,9 +3639,11 @@ COPYRIGHT
SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger_csv(5),
hledger_journal(5), hledger_timeclock(5), hledger_timedot(5), ledger(1)
hledger(1), hledger-ui(1), hledger-web(1), ledger(1)
hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time-
dot(5)
hledger 1.20.1 December 2020 hledger(1)
hledger-1.20.1 December 2020 HLEDGER(1)