doc: generate really plain text manuals

Drop the nice ansi highlighting that won't work everywhere,
the unpredictable unicode hyphens, etc.
This commit is contained in:
Simon Michael 2016-06-11 21:34:20 -07:00
parent f2cdceb28e
commit 68a1a8687a
9 changed files with 553 additions and 498 deletions

View File

@ -56,7 +56,8 @@ pandoc = "pandoc" -- pandoc from PATH (faster)
-- "stack exec -- pandoc" -- pandoc from project's stackage snapshot -- "stack exec -- pandoc" -- pandoc from project's stackage snapshot
hakyllstd = "site/hakyll-std/hakyll-std" hakyllstd = "site/hakyll-std/hakyll-std"
makeinfo = "makeinfo" makeinfo = "makeinfo"
nroff = "nroff" -- nroff = "nroff"
groff = "groff"
main = do main = do
@ -164,7 +165,7 @@ main = do
txtmanpages |%> \out -> do -- hledger/doc/hledger.1.txt txtmanpages |%> \out -> do -- hledger/doc/hledger.1.txt
let src = dropExtension out let src = dropExtension out
need [src] need [src]
cmd Shell nroff "-man" src ">" out cmd Shell groff "-t -e -mandoc -Tascii" src "| col -bx >" out -- http://www.tldp.org/HOWTO/Man-Page/q10.html
-- use m4 and pandoc to process macros, filter content, and convert to info, suitable for info viewing -- use m4 and pandoc to process macros, filter content, and convert to info, suitable for info viewing
phony "infomanpages" $ need infomanpages phony "infomanpages" $ need infomanpages

View File

@ -3,15 +3,15 @@ hledger-api(1) hledger User Manuals hledger-api(1)
NNAAMMEE NAME
hledger-api - web API server for the hledger accounting tool hledger-api - web API server for the hledger accounting tool
SSYYNNOOPPSSIISS SYNOPSIS
hledger-api [OPTIONS] hledger-api [OPTIONS]
hledger-api --swagger hledger-api --swagger
hledger api -- [OPTIONS] hledger api -- [OPTIONS]
DDEESSCCRRIIPPTTIIOONN DESCRIPTION
hledger is a cross-platform program for tracking money, time, or any hledger is a cross-platform program for tracking money, time, or any
other commodity, using double-entry accounting and a simple, editable other commodity, using double-entry accounting and a simple, editable
file format. hledger is inspired by and largely compatible with file format. hledger is inspired by and largely compatible with
@ -35,81 +35,81 @@ DDEESSCCRRIIPPTTIIOONN
If invoked as hledger-api --swagger, instead of starting a server the If invoked as hledger-api --swagger, instead of starting a server the
API docs will be printed in Swagger 2.0 format. API docs will be printed in Swagger 2.0 format.
OOPPTTIIOONNSS OPTIONS
Note: if invoking hledger-api as a hledger subcommand, write -- before Note: if invoking hledger-api as a hledger subcommand, write -- before
options as shown above. options as shown above.
--dd ----ssttaattiicc--ddiirr==DDIIRR -d --static-dir=DIR
serve files from a different directory (default: .) serve files from a different directory (default: .)
--pp ----ppoorrtt==PPOORRTT -p --port=PORT
use a different TCP port (default: 8001) use a different TCP port (default: 8001)
----sswwaaggggeerr --swagger
print API docs in Swagger 2.0 format, and exit print API docs in Swagger 2.0 format, and exit
hledger general options: hledger general options:
--hh show general usage (or after COMMAND, the command's usage) -h show general usage (or after COMMAND, the command's usage)
----hheellpp show the current program's manual as plain text (or after an --help show the current program's manual as plain text (or after an
add-on COMMAND, the add-on's manual) add-on COMMAND, the add-on's manual)
----mmaann show the current program's manual with man --man show the current program's manual with man
----iinnffoo show the current program's manual with info --info show the current program's manual with info
----vveerrssiioonn --version
show version show version
----ddeebbuugg==NN --debug=N
show debug output if N is 1-9 (default: 0) show debug output if N is 1-9 (default: 0)
--ff FFIILLEE ----ffiillee==FFIILLEE -f FILE --file=FILE
use a different input file. For stdin, use - use a different input file. For stdin, use -
----rruulleess--ffiillee==RRUULLEESSFFIILLEE --rules-file=RULESFILE
Conversion rules file to use when reading CSV (default: Conversion rules file to use when reading CSV (default:
FILE.rules) FILE.rules)
----aalliiaass==OOLLDD==NNEEWW --alias=OLD=NEW
display accounts named OLD as NEW display accounts named OLD as NEW
----iiggnnoorree--aasssseerrttiioonnss --ignore-assertions
ignore any failing balance assertions in the journal ignore any failing balance assertions in the journal
EENNVVIIRROONNMMEENNTT ENVIRONMENT
LLEEDDGGEERR__FFIILLEE The journal file path when not specified with -f. Default: LEDGER_FILE The journal file path when not specified with -f. Default:
~/.hledger.journal (on windows, perhaps C:/Users/USER/.hledger.jour- ~/.hledger.journal (on windows, perhaps C:/Users/USER/.hledger.jour-
nal). nal).
FFIILLEESS FILES
Reads data from one or more files in hledger journal, timeclock, time- Reads data from one or more files in hledger journal, timeclock, time-
dot, or CSV format specified with -f, or $LEDGER_FILE, or dot, or CSV format specified with -f, or $LEDGER_FILE, or
$HOME/.hledger.journal (on windows, perhaps $HOME/.hledger.journal (on windows, perhaps
C:/Users/USER/.hledger.journal). C:/Users/USER/.hledger.journal).
BBUUGGSS BUGS
The need to precede options with -- when invoked from hledger is awk- The need to precede options with -- when invoked from hledger is awk-
ward. ward.
RREEPPOORRTTIINNGG BBUUGGSS REPORTING BUGS
Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel
or hledger mail list) or hledger mail list)
AAUUTTHHOORRSS AUTHORS
Simon Michael <simon@joyful.com> and contributors Simon Michael <simon@joyful.com> and contributors
CCOOPPYYRRIIGGHHTT COPYRIGHT
Copyright (C) 2007-2016 Simon Michael. Copyright (C) 2007-2016 Simon Michael.
Released under GNU GPL v3 or later. Released under GNU GPL v3 or later.
SSEEEE AALLSSOO SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1), hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time- hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
dot(5), ledger(1) dot(5), ledger(1)

View File

@ -3,10 +3,10 @@ hledger_csv(5) hledger User Manuals hledger_csv(5)
NNAAMMEE NAME
CSV - how hledger reads CSV data, and the CSV rules file format CSV - how hledger reads CSV data, and the CSV rules file format
DDEESSCCRRIIPPTTIIOONN DESCRIPTION
hledger can read CSV files, converting each CSV record into a journal hledger can read CSV files, converting each CSV record into a journal
entry (transaction), if you provide some conversion hints in a "rules entry (transaction), if you provide some conversion hints in a "rules
file". This file should be named like the CSV file with an additional file". This file should be named like the CSV file with an additional
@ -16,14 +16,14 @@ DDEESSCCRRIIPPTTIIOONN
must specify the date and amount fields. For an example, see How to must specify the date and amount fields. For an example, see How to
read CSV files. read CSV files.
To learn about _e_x_p_o_r_t_i_n_g CSV, see CSV output. To learn about exporting CSV, see CSV output.
CCSSVV RRUULLEESS CSV RULES
The following six kinds of rule can appear in the rules file, in any The following six kinds of rule can appear in the rules file, in any
order. Blank lines and lines beginning with # or ; are ignored. order. Blank lines and lines beginning with # or ; are ignored.
sskkiipp skip
skip_N skipN
Skip this number of CSV records at the beginning. You'll need this Skip this number of CSV records at the beginning. You'll need this
whenever your CSV data contains header lines. Eg: whenever your CSV data contains header lines. Eg:
@ -31,8 +31,8 @@ CCSSVV RRUULLEESS
# ignore the first CSV line # ignore the first CSV line
skip 1 skip 1
ddaattee--ffoorrmmaatt date-format
date-format_D_A_T_E_F_M_T date-formatDATEFMT
When your CSV date fields are not formatted like YYYY/MM/DD (or When your CSV date fields are not formatted like YYYY/MM/DD (or
YYYY-MM-DD or YYYY.MM.DD), you'll need to specify the format. DATEFMT YYYY-MM-DD or YYYY.MM.DD), you'll need to specify the format. DATEFMT
@ -51,8 +51,8 @@ CCSSVV RRUULLEESS
# for dates like "11/6/2013 11:32 PM": # for dates like "11/6/2013 11:32 PM":
date-format %-m/%-d/%Y %l:%M %p date-format %-m/%-d/%Y %l:%M %p
ffiieelldd lliisstt field list
fields_F_I_E_L_D_N_A_M_E_1_, _F_I_E_L_D_N_A_M_E_2_._._. fieldsFIELDNAME1, FIELDNAME2...
This (a) names the CSV fields, in order (names may not contain white- This (a) names the CSV fields, in order (names may not contain white-
space, but may be omitted), and (b) assigns them to journal entry space, but may be omitted), and (b) assigns them to journal entry
@ -68,8 +68,8 @@ CCSSVV RRUULLEESS
# entry field: # entry field:
fields date, description, , amount, , , somefield, anotherfield fields date, description, , amount, , , somefield, anotherfield
ffiieelldd aassssiiggnnmmeenntt field assignment
_E_N_T_R_Y_F_I_E_L_D_N_A_M_E _F_I_E_L_D_V_A_L_U_E ENTRYFIELDNAME FIELDVALUE
This sets a journal entry field (one of the standard names above) to This sets a journal entry field (one of the standard names above) to
the given text value, which can include CSV field values interpolated the given text value, which can include CSV field values interpolated
@ -85,14 +85,14 @@ CCSSVV RRUULLEESS
Field assignments can be used instead of or in addition to a field Field assignments can be used instead of or in addition to a field
list. list.
ccoonnddiittiioonnaall bblloocckk conditional block
if _P_A_T_T_E_R_N if PATTERN
_F_I_E_L_D_A_S_S_I_G_N_M_E_N_T_S_._._. FIELDASSIGNMENTS...
if if
_P_A_T_T_E_R_N PATTERN
_P_A_T_T_E_R_N_._._. PATTERN...
_F_I_E_L_D_A_S_S_I_G_N_M_E_N_T_S_._._. FIELDASSIGNMENTS...
This applies one or more field assignments, only to those CSV records This applies one or more field assignments, only to those CSV records
matched by one of the PATTERNs. The patterns are case-insensitive reg- matched by one of the PATTERNs. The patterns are case-insensitive reg-
@ -114,8 +114,8 @@ CCSSVV RRUULLEESS
account2 expenses:business:banking account2 expenses:business:banking
comment XXX deductible ? check it comment XXX deductible ? check it
iinncclluuddee include
include_R_U_L_E_S_F_I_L_E includeRULESFILE
Include another rules file at this point. RULESFILE is either an abso- Include another rules file at this point. RULESFILE is either an abso-
lute file path or a path relative to the current file's directory. Eg: lute file path or a path relative to the current file's directory. Eg:
@ -123,7 +123,7 @@ CCSSVV RRUULLEESS
# rules reused with several CSV files # rules reused with several CSV files
include common.rules include common.rules
TTIIPPSS TIPS
Each generated journal entry will have two postings, to account1 and Each generated journal entry will have two postings, to account1 and
account2 respectively. Currently it's not possible to generate entries account2 respectively. Currently it's not possible to generate entries
with more than two postings. with more than two postings.
@ -143,21 +143,21 @@ TTIIPPSS
RREEPPOORRTTIINNGG BBUUGGSS REPORTING BUGS
Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel
or hledger mail list) or hledger mail list)
AAUUTTHHOORRSS AUTHORS
Simon Michael <simon@joyful.com> and contributors Simon Michael <simon@joyful.com> and contributors
CCOOPPYYRRIIGGHHTT COPYRIGHT
Copyright (C) 2007-2016 Simon Michael. Copyright (C) 2007-2016 Simon Michael.
Released under GNU GPL v3 or later. Released under GNU GPL v3 or later.
SSEEEE AALLSSOO SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1), hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time- hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
dot(5), ledger(1) dot(5), ledger(1)

View File

@ -3,10 +3,10 @@ hledger_journal(5) hledger User Manuals hledger_journal(5)
NNAAMMEE NAME
Journal - hledger's default file format, representing a General Journal Journal - hledger's default file format, representing a General Journal
DDEESSCCRRIIPPTTIIOONN DESCRIPTION
hledger's usual data source is a plain text file containing journal hledger's usual data source is a plain text file containing journal
entries in hledger journal format. This file represents a standard entries in hledger journal format. This file represents a standard
accounting general journal. I use file names ending in .journal, but accounting general journal. I use file names ending in .journal, but
@ -51,37 +51,37 @@ DDEESSCCRRIIPPTTIIOONN
liabilities:debts $1 liabilities:debts $1
assets:bank:checking assets:bank:checking
FFIILLEE FFOORRMMAATT FILE FORMAT
TTrraannssaaccttiioonnss Transactions
Transactions are represented by journal entries. Each begins with a Transactions are represented by journal entries. Each begins with a
simple date in column 0, followed by three optional fields with spaces simple date in column 0, followed by three optional fields with spaces
between them: between them:
+o a status flag, which can be empty or ! or * (meaning "uncleared", o a status flag, which can be empty or ! or * (meaning "uncleared",
"pending" and "cleared", or whatever you want) "pending" and "cleared", or whatever you want)
+o a transaction code (eg a check number), o a transaction code (eg a check number),
+o and/or a description o and/or a description
then some number of postings, of some amount to some account. Each then some number of postings, of some amount to some account. Each
posting is on its own line, consisting of: posting is on its own line, consisting of:
+o indentation of one or more spaces (or tabs) o indentation of one or more spaces (or tabs)
+o optionally, a ! or * status flag followed by a space o optionally, a ! or * status flag followed by a space
+o an account name, optionally containing single spaces o an account name, optionally containing single spaces
+o optionally, two or more spaces or tabs followed by an amount o optionally, two or more spaces or tabs followed by an amount
Usually there are two or more postings, though one or none is also pos- Usually there are two or more postings, though one or none is also pos-
sible. The posting amounts within a transaction must always balance, sible. The posting amounts within a transaction must always balance,
ie add up to 0. Optionally one amount can be left blank, in which case ie add up to 0. Optionally one amount can be left blank, in which case
it will be inferred. it will be inferred.
DDaatteess Dates
SSiimmppllee ddaatteess Simple dates
Within a journal file, transaction dates use Y/M/D (or Y-M-D or Y.M.D) Within a journal file, transaction dates use Y/M/D (or Y-M-D or Y.M.D)
Leading zeros are optional. The year may be omitted, in which case it Leading zeros are optional. The year may be omitted, in which case it
will be inferred from the context - the current transaction, the will be inferred from the context - the current transaction, the
@ -89,7 +89,7 @@ FFIILLEE FFOORRMMAATT
when the command is run. Some examples: 2010/01/31, 1/31, 2010-01-31, when the command is run. Some examples: 2010/01/31, 1/31, 2010-01-31,
2010.1.31. 2010.1.31.
SSeeccoonnddaarryy ddaatteess Secondary dates
Real-life transactions sometimes involve more than one date - eg the Real-life transactions sometimes involve more than one date - eg the
date you write a cheque, and the date it clears in your bank. When you date you write a cheque, and the date it clears in your bank. When you
want to model this, eg for more accurate balances, you can specify want to model this, eg for more accurate balances, you can specify
@ -125,7 +125,7 @@ FFIILLEE FFOORRMMAATT
ibility, but posting dates are a more powerful and less confusing ibility, but posting dates are a more powerful and less confusing
alternative. alternative.
PPoossttiinngg ddaatteess Posting dates
You can give individual postings a different date from their parent You can give individual postings a different date from their parent
transaction, by adding a posting comment containing a tag (see below) transaction, by adding a posting comment containing a tag (see below)
like date:DATE. This is probably the best way to control posting dates like date:DATE. This is probably the best way to control posting dates
@ -155,21 +155,21 @@ FFIILLEE FFOORRMMAATT
With this syntax, DATE infers its year from the transaction and DATE2 With this syntax, DATE infers its year from the transaction and DATE2
infers its year from DATE. infers its year from DATE.
AAccccoouunntt nnaammeess Account names
Account names typically have several parts separated by a full colon, Account names typically have several parts separated by a full colon,
from which hledger derives a hierarchical chart of accounts. They can from which hledger derives a hierarchical chart of accounts. They can
be anything you like, but in finance there are traditionally five be anything you like, but in finance there are traditionally five
top-level accounts: assets, liabilities, income, expenses, and equity. top-level accounts: assets, liabilities, income, expenses, and equity.
Account names may contain single spaces, eg: assets:accounts receiv- Account names may contain single spaces, eg: assets:accounts receiv-
able. Because of this, they must always be followed by ttwwoo oorr mmoorree able. Because of this, they must always be followed by two or more
ssppaacceess (or newline). spaces (or newline).
Account names can be aliased. Account names can be aliased.
AAmmoouunnttss Amounts
After the account name, there is usually an amount. Important: between After the account name, there is usually an amount. Important: between
account name and amount, there must be ttwwoo oorr mmoorree ssppaacceess. account name and amount, there must be two or more spaces.
Amounts consist of a number and (usually) a currency symbol or commod- Amounts consist of a number and (usually) a currency symbol or commod-
ity name. Some examples: ity name. Some examples:
@ -184,16 +184,16 @@ FFIILLEE FFOORRMMAATT
As you can see, the amount format is somewhat flexible: As you can see, the amount format is somewhat flexible:
+o amounts are a number (the "quantity") and optionally a currency sym- o amounts are a number (the "quantity") and optionally a currency sym-
bol/commodity name (the "commodity"). bol/commodity name (the "commodity").
+o the commodity is a symbol, word, or double-quoted phrase, on the left o the commodity is a symbol, word, or double-quoted phrase, on the left
or right, with or without a separating space or right, with or without a separating space
+o negative amounts with a commodity on the left can have the minus sign o negative amounts with a commodity on the left can have the minus sign
before or after it before or after it
+o digit groups (thousands, or any other grouping) can be separated by o digit groups (thousands, or any other grouping) can be separated by
commas (in which case period is used for decimal point) or periods commas (in which case period is used for decimal point) or periods
(in which case comma is used for decimal point) (in which case comma is used for decimal point)
@ -202,14 +202,14 @@ FFIILLEE FFOORRMMAATT
commodity. (Except for price amounts, which are always formatted as commodity. (Except for price amounts, which are always formatted as
written). The display format is chosen as follows: written). The display format is chosen as follows:
+o if there is a commodity directive specifying the format, that is used o if there is a commodity directive specifying the format, that is used
+o otherwise the format is inferred from the first posting amount in o otherwise the format is inferred from the first posting amount in
that commodity in the journal, and the precision (number of decimal that commodity in the journal, and the precision (number of decimal
places) will be the maximum from all posting amounts in that commmod- places) will be the maximum from all posting amounts in that commmod-
ity ity
+o or if there are no such amounts in the journal, a default format is o or if there are no such amounts in the journal, a default format is
used (like $1000.00). used (like $1000.00).
Price amounts and amounts in D directives usually don't affect amount Price amounts and amounts in D directives usually don't affect amount
@ -219,13 +219,13 @@ FFIILLEE FFOORRMMAATT
when -V is used.) If you find this causing problems, set the desired when -V is used.) If you find this causing problems, set the desired
format with a commodity directive. format with a commodity directive.
VViirrttuuaall PPoossttiinnggss Virtual Postings
When you parenthesise the account name in a posting, we call that a When you parenthesise the account name in a posting, we call that a
_v_i_r_t_u_a_l _p_o_s_t_i_n_g, which means: virtual posting, which means:
+o it is ignored when checking that the transaction is balanced o it is ignored when checking that the transaction is balanced
+o it is excluded from reports when the --real/-R flag is used, or the o it is excluded from reports when the --real/-R flag is used, or the
real:1 query. real:1 query.
You could use this, eg, to set an account's opening balance without You could use this, eg, to set an account's opening balance without
@ -234,8 +234,8 @@ FFIILLEE FFOORRMMAATT
1/1 special unbalanced posting to set initial balance 1/1 special unbalanced posting to set initial balance
(assets:checking) $1000 (assets:checking) $1000
When the account name is bracketed, we call it a _b_a_l_a_n_c_e_d _v_i_r_t_u_a_l _p_o_s_t_- When the account name is bracketed, we call it a balanced virtual post-
_i_n_g. This is like an ordinary virtual posting except the balanced vir- ing. This is like an ordinary virtual posting except the balanced vir-
tual postings in a transaction must balance to 0, like the real post- tual postings in a transaction must balance to 0, like the real post-
ings (but separately from them). Balanced virtual postings are also ings (but separately from them). Balanced virtual postings are also
excluded by --real/-R or real:1. excluded by --real/-R or real:1.
@ -250,7 +250,7 @@ FFIILLEE FFOORRMMAATT
usually find an equivalent journal entry using real postings, which is usually find an equivalent journal entry using real postings, which is
more correct and provides better error checking. more correct and provides better error checking.
BBaallaannccee AAsssseerrttiioonnss Balance Assertions
hledger supports ledger-style balance assertions in journal files. hledger supports ledger-style balance assertions in journal files.
These look like =EXPECTEDBALANCE following a posting's amount. Eg in These look like =EXPECTEDBALANCE following a posting's amount. Eg in
this example we assert the expected dollar balance in accounts a and b this example we assert the expected dollar balance in accounts a and b
@ -271,7 +271,7 @@ FFIILLEE FFOORRMMAATT
--ignore-assertions flag, which can be useful for troubleshooting or --ignore-assertions flag, which can be useful for troubleshooting or
for reading Ledger files. for reading Ledger files.
AAsssseerrttiioonnss aanndd oorrddeerriinngg Assertions and ordering
hledger sorts an account's postings and assertions first by date and hledger sorts an account's postings and assertions first by date and
then (for postings on the same day) by parse order. Note this is dif- then (for postings on the same day) by parse order. Note this is dif-
ferent from Ledger, which sorts assertions only by parse order. (Also, ferent from Ledger, which sorts assertions only by parse order. (Also,
@ -291,7 +291,7 @@ FFIILLEE FFOORRMMAATT
files, and you also want to assert the account's balance on the same files, and you also want to assert the account's balance on the same
day, you'll have to put the assertion in the right file. day, you'll have to put the assertion in the right file.
AAsssseerrttiioonnss aanndd ccoommmmooddiittiieess Assertions and commodities
The asserted balance must be a simple single-commodity amount, and in The asserted balance must be a simple single-commodity amount, and in
fact the assertion checks only this commodity's balance within the fact the assertion checks only this commodity's balance within the
(possibly multi-commodity) account balance. We could call this a par- (possibly multi-commodity) account balance. We could call this a par-
@ -305,7 +305,7 @@ FFIILLEE FFOORRMMAATT
account does not contain some unexpected commodity. (We'll add support account does not contain some unexpected commodity. (We'll add support
for this kind of total balance assertion if there's demand.) for this kind of total balance assertion if there's demand.)
AAsssseerrttiioonnss aanndd ssuubbaaccccoouunnttss Assertions and subaccounts
Balance assertions do not count the balance from subaccounts; they Balance assertions do not count the balance from subaccounts; they
check the posted account's exclusive balance. For example: check the posted account's exclusive balance. For example:
@ -323,12 +323,12 @@ FFIILLEE FFOORRMMAATT
-------------------- --------------------
2 2
AAsssseerrttiioonnss aanndd vviirrttuuaall ppoossttiinnggss Assertions and virtual postings
Balance assertions are checked against all postings, both real and vir- Balance assertions are checked against all postings, both real and vir-
tual. They are not affected by the --real/-R flag or real: query. tual. They are not affected by the --real/-R flag or real: query.
PPrriicceess Prices
TTrraannssaaccttiioonn pprriicceess Transaction prices
When recording a transaction, you can also record an amount's price in When recording a transaction, you can also record an amount's price in
another commodity. This documents the exchange rate, cost (of a pur- another commodity. This documents the exchange rate, cost (of a pur-
chase), or selling price (of a sale) that was in effect within this chase), or selling price (of a sale) that was in effect within this
@ -345,13 +345,13 @@ FFIILLEE FFOORRMMAATT
amount: amount:
2009/1/1 2009/1/1
assets:foreign currency ^a~100 @ $1.35 ; one hundred euros at $1.35 each assets:foreign currency 100 @ $1.35 ; one hundred euros at $1.35 each
assets:cash assets:cash
2. Or write the total price, as @@ TOTALPRICE after the amount: 2. Or write the total price, as @@ TOTALPRICE after the amount:
2009/1/1 2009/1/1
assets:foreign currency ^a~100 @@ $135 ; one hundred euros at $135 for the lot assets:foreign currency 100 @@ $135 ; one hundred euros at $135 for the lot
assets:cash assets:cash
3. Or let hledger infer the price so as to balance the transaction. To 3. Or let hledger infer the price so as to balance the transaction. To
@ -359,7 +359,7 @@ FFIILLEE FFOORRMMAATT
sum must have a non-zero amount in exactly two commodities: sum must have a non-zero amount in exactly two commodities:
2009/1/1 2009/1/1
assets:foreign currency ^a~100 ; one hundred euros assets:foreign currency 100 ; one hundred euros
assets:cash $-135 ; exchanged for $135 assets:cash $-135 ; exchanged for $135
With any of the above examples we get: With any of the above examples we get:
@ -372,7 +372,7 @@ FFIILLEE FFOORRMMAATT
Example use for transaction prices: recording the effective conversion Example use for transaction prices: recording the effective conversion
rate of purchases made in a foreign currency. rate of purchases made in a foreign currency.
MMaarrkkeett pprriicceess Market prices
Market prices are not tied to a particular transaction; they represent Market prices are not tied to a particular transaction; they represent
historical exchange rates between two commodities, usually from some historical exchange rates between two commodities, usually from some
public market which publishes such rates. public market which publishes such rates.
@ -392,12 +392,12 @@ FFIILLEE FFOORRMMAATT
was 1.35 US dollars during 2009, and $1.40 from 2010 onward (and was 1.35 US dollars during 2009, and $1.40 from 2010 onward (and
unknown before 2009). unknown before 2009).
P 2009/1/1 ^a~ $1.35 P 2009/1/1 $1.35
P 2010/1/1 ^a~ $1.40 P 2010/1/1 $1.40
Example use for market prices: tracking the value of stocks. Example use for market prices: tracking the value of stocks.
CCoommmmeennttss Comments
Lines in the journal beginning with a semicolon (;) or hash (#) or Lines in the journal beginning with a semicolon (;) or hash (#) or
asterisk (*) are comments, and will be ignored. (Asterisk comments asterisk (*) are comments, and will be ignored. (Asterisk comments
make it easy to treat your journal like an org-mode outline in emacs.) make it easy to treat your journal like an org-mode outline in emacs.)
@ -432,8 +432,8 @@ FFIILLEE FFOORRMMAATT
; another comment line for posting 2 ; another comment line for posting 2
; a journal comment (because not indented) ; a journal comment (because not indented)
TTaaggss Tags
A _t_a_g is a word followed by a full colon inside a transaction or post- A tag is a word followed by a full colon inside a transaction or post-
ing comment. You can write multiple tags, comma separated. Eg: ing comment. You can write multiple tags, comma separated. Eg:
; a comment containing sometag:, anothertag:. You can search for tags ; a comment containing sometag:, anothertag:. You can search for tags
with the tag: query. with the tag: query.
@ -454,25 +454,25 @@ FFIILLEE FFOORRMMAATT
Tags are like Ledger's metadata feature, except hledger's tag values Tags are like Ledger's metadata feature, except hledger's tag values
are simple strings. are simple strings.
DDiirreeccttiivveess Directives
AAccccoouunntt aalliiaasseess Account aliases
You can define aliases which rewrite your account names (after reading You can define aliases which rewrite your account names (after reading
the journal, before generating reports). hledger's account aliases can the journal, before generating reports). hledger's account aliases can
be useful for: be useful for:
+o expanding shorthand account names to their full form, allowing easier o expanding shorthand account names to their full form, allowing easier
data entry and a less verbose journal data entry and a less verbose journal
+o adapting old journals to your current chart of accounts o adapting old journals to your current chart of accounts
+o experimenting with new account organisations, like a new hierarchy or o experimenting with new account organisations, like a new hierarchy or
combining two accounts into one combining two accounts into one
+o customising reports o customising reports
See also How to use account aliases. See also How to use account aliases.
BBaassiicc aalliiaasseess Basic aliases
To set an account alias, use the alias directive in your journal file. To set an account alias, use the alias directive in your journal file.
This affects all subsequent journal entries in the current file or its This affects all subsequent journal entries in the current file or its
included files. The spaces around the = are optional: included files. The spaces around the = are optional:
@ -489,7 +489,7 @@ FFIILLEE FFOORRMMAATT
alias checking = assets:bank:wells fargo:checking alias checking = assets:bank:wells fargo:checking
# rewrites "checking" to "assets:bank:wells fargo:checking", or "checking:a" to "assets:bank:wells fargo:checking:a" # rewrites "checking" to "assets:bank:wells fargo:checking", or "checking:a" to "assets:bank:wells fargo:checking:a"
RReeggeexx aalliiaasseess Regex aliases
There is also a more powerful variant that uses a regular expression, There is also a more powerful variant that uses a regular expression,
indicated by the forward slashes. (This was the default behaviour in indicated by the forward slashes. (This was the default behaviour in
hledger 0.24-0.25): hledger 0.24-0.25):
@ -508,7 +508,7 @@ FFIILLEE FFOORRMMAATT
alias /^(.+):bank:([^:]+)(.*)/ = \1:\2 \3 alias /^(.+):bank:([^:]+)(.*)/ = \1:\2 \3
# rewrites "assets:bank:wells fargo:checking" to "assets:wells fargo checking" # rewrites "assets:bank:wells fargo:checking" to "assets:wells fargo checking"
MMuullttiippllee aalliiaasseess Multiple aliases
You can define as many aliases as you like using directives or com- You can define as many aliases as you like using directives or com-
mand-line options. Aliases are recursive - each alias sees the result mand-line options. Aliases are recursive - each alias sees the result
of applying previous ones. (This is different from Ledger, where of applying previous ones. (This is different from Ledger, where
@ -520,13 +520,13 @@ FFIILLEE FFOORRMMAATT
2. alias options, in the order they appear on the command line 2. alias options, in the order they appear on the command line
eenndd aalliiaasseess end aliases
You can clear (forget) all currently defined aliases with the You can clear (forget) all currently defined aliases with the
end aliases directive: end aliases directive:
end aliases end aliases
aaccccoouunntt ddiirreeccttiivvee account directive
The account directive predefines account names, as in Ledger and Bean- The account directive predefines account names, as in Ledger and Bean-
count. This may be useful for your own documentation; hledger doesn't count. This may be useful for your own documentation; hledger doesn't
make use of it yet. make use of it yet.
@ -542,7 +542,7 @@ FFIILLEE FFOORRMMAATT
; etc. ; etc.
aappppllyy aaccccoouunntt ddiirreeccttiivvee apply account directive
You can specify a parent account which will be prepended to all You can specify a parent account which will be prepended to all
accounts within a section of the journal. Use the apply account and accounts within a section of the journal. Use the apply account and
end apply account directives like so: end apply account directives like so:
@ -573,11 +573,11 @@ FFIILLEE FFOORRMMAATT
Prior to hledger 0.28, legacy account and end spellings were also sup- Prior to hledger 0.28, legacy account and end spellings were also sup-
ported. ported.
MMuullttii--lliinnee ccoommmmeennttss Multi-line comments
A line containing just comment starts a multi-line comment, and a line A line containing just comment starts a multi-line comment, and a line
containing just end comment ends it. See comments. containing just end comment ends it. See comments.
ccoommmmooddiittyy ddiirreeccttiivvee commodity directive
The commodity directive predefines commodities (currently this is just The commodity directive predefines commodities (currently this is just
informational), and also it may define the display format for amounts informational), and also it may define the display format for amounts
in this commodity (overriding the automatically inferred format). in this commodity (overriding the automatically inferred format).
@ -604,14 +604,14 @@ FFIILLEE FFOORRMMAATT
commodity INR commodity INR
format INR 9,99,99,999.00 format INR 9,99,99,999.00
DDeeffaauulltt ccoommmmooddiittyy Default commodity
You can set a default commodity, to be used for amounts without one. You can set a default commodity, to be used for amounts without one.
Use the D directive with a sample amount. The commodity (and the sam- Use the D directive with a sample amount. The commodity (and the sam-
ple amount's display format) will be applied to all subsequent commod- ple amount's display format) will be applied to all subsequent commod-
ity-less amounts, up to the next D directive. (Note this is different ity-less amounts, up to the next D directive. (Note this is different
from Ledger's default commodity directive.) from Ledger's default commodity directive.)
DDeeffaauulltt yyeeaarr Default year
You can set a default year to be used for subsequent dates which don't You can set a default year to be used for subsequent dates which don't
specify a year. This is a line beginning with Y followed by the year. specify a year. This is a line beginning with Y followed by the year.
Eg: Eg:
@ -632,7 +632,7 @@ FFIILLEE FFOORRMMAATT
expenses 1 expenses 1
assets assets
IInncclluuddiinngg ootthheerr ffiilleess Including other files
You can pull in the content of additional journal files by writing an You can pull in the content of additional journal files by writing an
include directive, like this: include directive, like this:
@ -644,7 +644,7 @@ FFIILLEE FFOORRMMAATT
The include directive can only be used in journal files. It can The include directive can only be used in journal files. It can
include journal, timeclock or timedot files, but not CSV files. include journal, timeclock or timedot files, but not CSV files.
EEDDIITTOORR SSUUPPPPOORRTT EDITOR SUPPORT
Add-on modes exist for various text editors, to make working with jour- Add-on modes exist for various text editors, to make working with jour-
nal files easier. They add colour, navigation aids and helpful com- nal files easier. They add colour, navigation aids and helpful com-
mands. For hledger users who edit the journal file directly (the mands. For hledger users who edit the journal file directly (the
@ -654,32 +654,33 @@ EEDDIITTOORR SSUUPPPPOORRTT
files: files:
tab(@); lw(16.5n) lw(51.5n). T{ Emacs T}@T{ Emacs http://www.ledger-cli.org/3.0/doc/ledger-mode.html
http://www.ledger-cli.org/3.0/doc/ledger-mode.html T} T{ Vim T}@T{ Vim https://github.com/ledger/ledger/wiki/Get-
https://github.com/ledger/ledger/wiki/Getting-started T} T{ Sublime ting-started
Text T}@T{ https://github.com/ledger/ledger/wiki/Using-Sublime-Text T} Sublime Text https://github.com/ledger/ledger/wiki/Using-Sub-
T{ Textmate T}@T{ https://github.com/ledger/ledger/wiki/Using-Text- lime-Text
Mate-2 T} T{ Text Wrangler T}@T{ Textmate https://github.com/ledger/ledger/wiki/Using-Text-
https://github.com/ledger/ledger/wiki/Editing-Ledger-files-with-Tex- Mate-2
tWrangler T} Text Wrangler https://github.com/ledger/ledger/wiki/Edit-
ing-Ledger-files-with-TextWrangler
RREEPPOORRTTIINNGG BBUUGGSS REPORTING BUGS
Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel
or hledger mail list) or hledger mail list)
AAUUTTHHOORRSS AUTHORS
Simon Michael <simon@joyful.com> and contributors Simon Michael <simon@joyful.com> and contributors
CCOOPPYYRRIIGGHHTT COPYRIGHT
Copyright (C) 2007-2016 Simon Michael. Copyright (C) 2007-2016 Simon Michael.
Released under GNU GPL v3 or later. Released under GNU GPL v3 or later.
SSEEEE AALLSSOO SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1), hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time- hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
dot(5), ledger(1) dot(5), ledger(1)

View File

@ -3,10 +3,10 @@ hledger_timeclock(5) hledger User Manuals hledger_timeclock(5)
NNAAMMEE NAME
Timeclock - the time logging format of timeclock.el, as read by hledger Timeclock - the time logging format of timeclock.el, as read by hledger
DDEESSCCRRIIPPTTIIOONN DESCRIPTION
hledger can read timeclock files. As with Ledger, these are (a subset hledger can read timeclock files. As with Ledger, these are (a subset
of) timeclock.el's format, containing clock-in and clock-out entries as of) timeclock.el's format, containing clock-in and clock-out entries as
in the example below. The date is a simple date. The time format is in the example below. The date is a simple date. The time format is
@ -42,35 +42,35 @@ DDEESSCCRRIIPPTTIIOONN
To generate time logs, ie to clock in and clock out, you could: To generate time logs, ie to clock in and clock out, you could:
+o use emacs and the built-in timeclock.el, or the extended time- o use emacs and the built-in timeclock.el, or the extended time-
clock-x.el and perhaps the extras in ledgerutils.el clock-x.el and perhaps the extras in ledgerutils.el
+o at the command line, use these bash aliases: o at the command line, use these bash aliases:
alias ti="echo i `date '+%Y-%m-%d %H:%M:%S'` \$* >>$TIMELOG" alias ti="echo i `date '+%Y-%m-%d %H:%M:%S'` \$* >>$TIMELOG"
alias to="echo o `date '+%Y-%m-%d %H:%M:%S'` >>$TIMELOG" alias to="echo o `date '+%Y-%m-%d %H:%M:%S'` >>$TIMELOG"
+o or use the old ti and to scripts in the ledger 2.x repository. These o or use the old ti and to scripts in the ledger 2.x repository. These
rely on a "timeclock" executable which I think is just the ledger 2 rely on a "timeclock" executable which I think is just the ledger 2
executable renamed. executable renamed.
RREEPPOORRTTIINNGG BBUUGGSS REPORTING BUGS
Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel
or hledger mail list) or hledger mail list)
AAUUTTHHOORRSS AUTHORS
Simon Michael <simon@joyful.com> and contributors Simon Michael <simon@joyful.com> and contributors
CCOOPPYYRRIIGGHHTT COPYRIGHT
Copyright (C) 2007-2016 Simon Michael. Copyright (C) 2007-2016 Simon Michael.
Released under GNU GPL v3 or later. Released under GNU GPL v3 or later.
SSEEEE AALLSSOO SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1), hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time- hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
dot(5), ledger(1) dot(5), ledger(1)

View File

@ -3,10 +3,10 @@ hledger_timedot(5) hledger User Manuals hledger_timedot(5)
NNAAMMEE NAME
Timedot - hledger's human-friendly time logging format Timedot - hledger's human-friendly time logging format
DDEESSCCRRIIPPTTIIOONN DESCRIPTION
Timedot is a plain text format for logging dated, categorised quanti- Timedot is a plain text format for logging dated, categorised quanti-
ties (eg time), supported by hledger. It is convenient for approximate ties (eg time), supported by hledger. It is convenient for approximate
and retroactive time logging, eg when the real-time clock-in/out and retroactive time logging, eg when the real-time clock-in/out
@ -19,7 +19,7 @@ DDEESSCCRRIIPPTTIIOONN
you could record a single-entry journal of financial transactions, per- you could record a single-entry journal of financial transactions, per-
haps slightly more conveniently than with hledger_journal(5) format. haps slightly more conveniently than with hledger_journal(5) format.
FFIILLEE FFOORRMMAATT FILE FORMAT
A timedot file contains a series of day entries. A day entry begins A timedot file contains a series of day entries. A day entry begins
with a date, and is followed by category/quantity pairs, one per line. with a date, and is followed by category/quantity pairs, one per line.
Dates are hledger-style simple dates (see hledger_journal(5)). Cate- Dates are hledger-style simple dates (see hledger_journal(5)). Cate-
@ -97,21 +97,21 @@ FFIILLEE FFOORRMMAATT
RREEPPOORRTTIINNGG BBUUGGSS REPORTING BUGS
Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel
or hledger mail list) or hledger mail list)
AAUUTTHHOORRSS AUTHORS
Simon Michael <simon@joyful.com> and contributors Simon Michael <simon@joyful.com> and contributors
CCOOPPYYRRIIGGHHTT COPYRIGHT
Copyright (C) 2007-2016 Simon Michael. Copyright (C) 2007-2016 Simon Michael.
Released under GNU GPL v3 or later. Released under GNU GPL v3 or later.
SSEEEE AALLSSOO SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1), hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time- hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
dot(5), ledger(1) dot(5), ledger(1)

View File

@ -3,14 +3,14 @@ hledger-ui(1) hledger User Manuals hledger-ui(1)
NNAAMMEE NAME
hledger-ui - curses-style interface for the hledger accounting tool hledger-ui - curses-style interface for the hledger accounting tool
SSYYNNOOPPSSIISS SYNOPSIS
hledger-ui [OPTIONS] [QUERYARGS] hledger-ui [OPTIONS] [QUERYARGS]
hledger ui -- [OPTIONS] [QUERYARGS] hledger ui -- [OPTIONS] [QUERYARGS]
DDEESSCCRRIIPPTTIIOONN DESCRIPTION
hledger is a cross-platform program for tracking money, time, or any hledger is a cross-platform program for tracking money, time, or any
other commodity, using double-entry accounting and a simple, editable other commodity, using double-entry accounting and a simple, editable
file format. hledger is inspired by and largely compatible with file format. hledger is inspired by and largely compatible with
@ -28,110 +28,110 @@ DDEESSCCRRIIPPTTIIOONN
C:/Users/USER/.hledger.journal). For more about this see hledger(1), C:/Users/USER/.hledger.journal). For more about this see hledger(1),
hledger_journal(5) etc. hledger_journal(5) etc.
OOPPTTIIOONNSS OPTIONS
Note: if invoking hledger-ui as a hledger subcommand, write -- before Note: if invoking hledger-ui as a hledger subcommand, write -- before
options as shown above. options as shown above.
Any QUERYARGS are interpreted as a hledger search query which filters Any QUERYARGS are interpreted as a hledger search query which filters
the data. the data.
----ffllaatt show full account names, unindented --flat show full account names, unindented
----nnoo--eelliiddee --no-elide
don't compress empty parent accounts on one line don't compress empty parent accounts on one line
----rreeggiisstteerr==AACCCCTTRREEGGEEXX --register=ACCTREGEX
start in the (first) matched account's register screen start in the (first) matched account's register screen
----tthheemmee==ddeeffaauulltt||tteerrmmiinnaall||ggrreeeenntteerrmm --theme=default|terminal|greenterm
use this custom display theme use this custom display theme
--VV ----vvaalluuee -V --value
show amounts as their current market value in their default val- show amounts as their current market value in their default val-
uation commodity (accounts screen only) uation commodity (accounts screen only)
hledger general options: hledger general options:
--hh show general usage (or after COMMAND, the command's usage) -h show general usage (or after COMMAND, the command's usage)
----hheellpp show the current program's manual as plain text (or after an --help show the current program's manual as plain text (or after an
add-on COMMAND, the add-on's manual) add-on COMMAND, the add-on's manual)
----mmaann show the current program's manual with man --man show the current program's manual with man
----iinnffoo show the current program's manual with info --info show the current program's manual with info
----vveerrssiioonn --version
show version show version
----ddeebbuugg==NN --debug=N
show debug output if N is 1-9 (default: 0) show debug output if N is 1-9 (default: 0)
--ff FFIILLEE ----ffiillee==FFIILLEE -f FILE --file=FILE
use a different input file. For stdin, use - use a different input file. For stdin, use -
----rruulleess--ffiillee==RRUULLEESSFFIILLEE --rules-file=RULESFILE
Conversion rules file to use when reading CSV (default: Conversion rules file to use when reading CSV (default:
FILE.rules) FILE.rules)
----aalliiaass==OOLLDD==NNEEWW --alias=OLD=NEW
display accounts named OLD as NEW display accounts named OLD as NEW
----iiggnnoorree--aasssseerrttiioonnss --ignore-assertions
ignore any failing balance assertions in the journal ignore any failing balance assertions in the journal
hledger reporting options: hledger reporting options:
--bb ----bbeeggiinn==DDAATTEE -b --begin=DATE
include postings/txns on or after this date include postings/txns on or after this date
--ee ----eenndd==DDAATTEE -e --end=DATE
include postings/txns before this date include postings/txns before this date
--DD ----ddaaiillyy -D --daily
multiperiod/multicolumn report by day multiperiod/multicolumn report by day
--WW ----wweeeekkllyy -W --weekly
multiperiod/multicolumn report by week multiperiod/multicolumn report by week
--MM ----mmoonntthhllyy -M --monthly
multiperiod/multicolumn report by month multiperiod/multicolumn report by month
--QQ ----qquuaarrtteerrllyy -Q --quarterly
multiperiod/multicolumn report by quarter multiperiod/multicolumn report by quarter
--YY ----yyeeaarrllyy -Y --yearly
multiperiod/multicolumn report by year multiperiod/multicolumn report by year
--pp ----ppeerriioodd==PPEERRIIOODDEEXXPP -p --period=PERIODEXP
set start date, end date, and/or reporting interval all at once set start date, end date, and/or reporting interval all at once
(overrides the flags above) (overrides the flags above)
----ddaattee22 --date2
show, and match with -b/-e/-p/date:, secondary dates instead show, and match with -b/-e/-p/date:, secondary dates instead
--CC ----cclleeaarreedd -C --cleared
include only cleared postings/txns include only cleared postings/txns
----ppeennddiinngg --pending
include only pending postings/txns include only pending postings/txns
--UU ----uunncclleeaarreedd -U --uncleared
include only uncleared (and pending) postings/txns include only uncleared (and pending) postings/txns
--RR ----rreeaall -R --real
include only non-virtual postings include only non-virtual postings
----ddeepptthh==NN --depth=N
hide accounts/postings deeper than N hide accounts/postings deeper than N
--EE ----eemmppttyy -E --empty
show items with zero amount, normally hidden show items with zero amount, normally hidden
--BB ----ccoosstt -B --cost
show amounts in their cost price's commodity show amounts in their cost price's commodity
----ppiivvoott TTAAGG --pivot TAG
will transform the journal before any other processing by will transform the journal before any other processing by
replacing the account name of every posting having the tag TAG replacing the account name of every posting having the tag TAG
with content VALUE by the account name "TAG:VALUE". with content VALUE by the account name "TAG:VALUE".
@ -140,7 +140,7 @@ OOPPTTIIOONNSS
tion. If the tag value is a multi:level:account:name the new account tion. If the tag value is a multi:level:account:name the new account
name will be "TAG:multi:level:account:name". name will be "TAG:multi:level:account:name".
KKEEYYSS KEYS
h shows a help dialog listing all keys. (Some but not all of these h shows a help dialog listing all keys. (Some but not all of these
also appear in the quick help at the bottom of each screen.) Press h also appear in the quick help at the bottom of each screen.) Press h
again (or ESCAPE) to close it. again (or ESCAPE) to close it.
@ -171,8 +171,8 @@ KKEEYYSS
Additional screen-specific keys are described below. Additional screen-specific keys are described below.
SSCCRREEEENNSS SCREENS
AAccccoouunnttss ssccrreeeenn Accounts screen
This is normally the first screen displayed. It lists accounts and This is normally the first screen displayed. It lists accounts and
their balances, like hledger's balance command. By default, it shows their balances, like hledger's balance command. By default, it shows
all accounts and their latest ending balances. if you specify a query all accounts and their latest ending balances. if you specify a query
@ -200,22 +200,22 @@ SSCCRREEEENNSS
Press right or enter to view an account's transactions register. Press right or enter to view an account's transactions register.
RReeggiisstteerr ssccrreeeenn Register screen
This screen lists all transactions affecting a particular account, like This screen lists all transactions affecting a particular account, like
a check register. Unlike hledger's register command (which lists indi- a check register. Unlike hledger's register command (which lists indi-
vidual postings), in hledger-ui's register: vidual postings), in hledger-ui's register:
+o Each line represents a whole transaction. o Each line represents a whole transaction.
+o For each transaction, it shows the other account(s) involved, in o For each transaction, it shows the other account(s) involved, in
abbreviated form. (If there are both real and virtual postings, it abbreviated form. (If there are both real and virtual postings, it
shows only the accounts affected by real postings.) shows only the accounts affected by real postings.)
+o It shows the overall change to the current account's balance from o It shows the overall change to the current account's balance from
each transaction; positive for an inflow to this account, negative each transaction; positive for an inflow to this account, negative
for an outflow. for an outflow.
+o When no query other than a date limit is in effect, it shows the cur- o When no query other than a date limit is in effect, it shows the cur-
rent account's historic balance as of the transaction date. Other- rent account's historic balance as of the transaction date. Other-
wise it shows a running total starting from zero. Eg, these will wise it shows a running total starting from zero. Eg, these will
show historic balances: show historic balances:
@ -231,6 +231,8 @@ SSCCRREEEENNSS
$ hledger-ui --begin 'this month' desc:market $ hledger-ui --begin 'this month' desc:market
$ hledger-ui --register checking --cleared $ hledger-ui --register checking --cleared
Filtering by account name is not very useful on this screen yet.
C toggles cleared mode, in which uncleared transactions and postings C toggles cleared mode, in which uncleared transactions and postings
are not shown. U toggles uncleared mode, in which only uncleared are not shown. U toggles uncleared mode, in which only uncleared
transactions/postings are shown. transactions/postings are shown.
@ -241,12 +243,9 @@ SSCCRREEEENNSS
change are shown (hledger-ui shows zero items by default, unlike com- change are shown (hledger-ui shows zero items by default, unlike com-
mand-line hledger). mand-line hledger).
Press right (or enter) to view the selected transaction in full detail. Press right (or enter) to view the selected transaction in detail.
Note, filter queries which filter by account name are not very useful Transaction screen
on this screen yet.
TTrraannssaaccttiioonn ssccrreeeenn
This screen shows a single transaction, as a general journal entry, This screen shows a single transaction, as a general journal entry,
similar to hledger's print command and journal format (hledger_jour- similar to hledger's print command and journal format (hledger_jour-
nal(5)). nal(5)).
@ -264,26 +263,26 @@ SSCCRREEEENNSS
them is the transaction's position within the complete unfiltered jour- them is the transaction's position within the complete unfiltered jour-
nal, which is a more stable id (at least until the next reload). nal, which is a more stable id (at least until the next reload).
EErrrroorr ssccrreeeenn Error screen
This screen will appear if there is a problem, such as a parse error, This screen will appear if there is a problem, such as a parse error,
when you press g to reload. Once you have fixed the problem, press g when you press g to reload. Once you have fixed the problem, press g
again to reload and resume normal operation. (Or, you can press escape again to reload and resume normal operation. (Or, you can press escape
to cancel the reload attempt.) to cancel the reload attempt.)
EENNVVIIRROONNMMEENNTT ENVIRONMENT
CCOOLLUUMMNNSS The screen width to use. Default: the full terminal width. COLUMNS The screen width to use. Default: the full terminal width.
LLEEDDGGEERR__FFIILLEE The journal file path when not specified with -f. Default: LEDGER_FILE The journal file path when not specified with -f. Default:
~/.hledger.journal (on windows, perhaps C:/Users/USER/.hledger.jour- ~/.hledger.journal (on windows, perhaps C:/Users/USER/.hledger.jour-
nal). nal).
FFIILLEESS FILES
Reads data from one or more files in hledger journal, timeclock, time- Reads data from one or more files in hledger journal, timeclock, time-
dot, or CSV format specified with -f, or $LEDGER_FILE, or dot, or CSV format specified with -f, or $LEDGER_FILE, or
$HOME/.hledger.journal (on windows, perhaps $HOME/.hledger.journal (on windows, perhaps
C:/Users/USER/.hledger.journal). C:/Users/USER/.hledger.journal).
BBUUGGSS BUGS
The need to precede options with -- when invoked from hledger is awk- The need to precede options with -- when invoked from hledger is awk-
ward. ward.
@ -301,21 +300,21 @@ BBUUGGSS
RREEPPOORRTTIINNGG BBUUGGSS REPORTING BUGS
Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel
or hledger mail list) or hledger mail list)
AAUUTTHHOORRSS AUTHORS
Simon Michael <simon@joyful.com> and contributors Simon Michael <simon@joyful.com> and contributors
CCOOPPYYRRIIGGHHTT COPYRIGHT
Copyright (C) 2007-2016 Simon Michael. Copyright (C) 2007-2016 Simon Michael.
Released under GNU GPL v3 or later. Released under GNU GPL v3 or later.
SSEEEE AALLSSOO SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1), hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time- hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
dot(5), ledger(1) dot(5), ledger(1)

View File

@ -3,16 +3,16 @@ hledger-web(1) hledger User Manuals hledger-web(1)
NNAAMMEE NAME
hledger-web - web interface for the hledger accounting tool hledger-web - web interface for the hledger accounting tool
SSYYNNOOPPSSIISS SYNOPSIS
hledger-web [OPTIONS] hledger-web [OPTIONS]
hledger web -- [OPTIONS] hledger web -- [OPTIONS]
DDEESSCCRRIIPPTTIIOONN DESCRIPTION
hledger is a cross-platform program for tracking money, time, or any hledger is a cross-platform program for tracking money, time, or any
other commodity, using double-entry accounting and a simple, editable other commodity, using double-entry accounting and a simple, editable
file format. hledger is inspired by and largely compatible with file format. hledger is inspired by and largely compatible with
@ -72,23 +72,23 @@ DDEESSCCRRIIPPTTIIOONN
the next request. If a change makes the file unparseable, hledger-web the next request. If a change makes the file unparseable, hledger-web
will show an error until the file has been fixed. will show an error until the file has been fixed.
OOPPTTIIOONNSS OPTIONS
Note: if invoking hledger-web as a hledger subcommand, write -- before Note: if invoking hledger-web as a hledger subcommand, write -- before
options as shown above. options as shown above.
----sseerrvveerr --server
disable browser-opening and auto-exit-on-idle, and log all disable browser-opening and auto-exit-on-idle, and log all
requests to stdout requests to stdout
----ppoorrtt==PPOORRTT --port=PORT
set the TCP port to listen on (default: 5000) set the TCP port to listen on (default: 5000)
----bbaassee--uurrll==UURRLL --base-url=URL
set the base url (default: http://localhost:PORT). You would set the base url (default: http://localhost:PORT). You would
change this when sharing over the network, or integrating within change this when sharing over the network, or integrating within
a larger website. a larger website.
----ffiillee--uurrll==UURRLL --file-url=URL
set the static files url (default: BASEURL/static). hledger-web set the static files url (default: BASEURL/static). hledger-web
normally serves static files itself, but if you wanted to serve normally serves static files itself, but if you wanted to serve
them from another server for efficiency, you would set the url them from another server for efficiency, you would set the url
@ -96,86 +96,86 @@ OOPPTTIIOONNSS
hledger general options: hledger general options:
--hh show general usage (or after COMMAND, the command's usage) -h show general usage (or after COMMAND, the command's usage)
----hheellpp show the current program's manual as plain text (or after an --help show the current program's manual as plain text (or after an
add-on COMMAND, the add-on's manual) add-on COMMAND, the add-on's manual)
----mmaann show the current program's manual with man --man show the current program's manual with man
----iinnffoo show the current program's manual with info --info show the current program's manual with info
----vveerrssiioonn --version
show version show version
----ddeebbuugg==NN --debug=N
show debug output if N is 1-9 (default: 0) show debug output if N is 1-9 (default: 0)
--ff FFIILLEE ----ffiillee==FFIILLEE -f FILE --file=FILE
use a different input file. For stdin, use - use a different input file. For stdin, use -
----rruulleess--ffiillee==RRUULLEESSFFIILLEE --rules-file=RULESFILE
Conversion rules file to use when reading CSV (default: Conversion rules file to use when reading CSV (default:
FILE.rules) FILE.rules)
----aalliiaass==OOLLDD==NNEEWW --alias=OLD=NEW
display accounts named OLD as NEW display accounts named OLD as NEW
----iiggnnoorree--aasssseerrttiioonnss --ignore-assertions
ignore any failing balance assertions in the journal ignore any failing balance assertions in the journal
hledger reporting options: hledger reporting options:
--bb ----bbeeggiinn==DDAATTEE -b --begin=DATE
include postings/txns on or after this date include postings/txns on or after this date
--ee ----eenndd==DDAATTEE -e --end=DATE
include postings/txns before this date include postings/txns before this date
--DD ----ddaaiillyy -D --daily
multiperiod/multicolumn report by day multiperiod/multicolumn report by day
--WW ----wweeeekkllyy -W --weekly
multiperiod/multicolumn report by week multiperiod/multicolumn report by week
--MM ----mmoonntthhllyy -M --monthly
multiperiod/multicolumn report by month multiperiod/multicolumn report by month
--QQ ----qquuaarrtteerrllyy -Q --quarterly
multiperiod/multicolumn report by quarter multiperiod/multicolumn report by quarter
--YY ----yyeeaarrllyy -Y --yearly
multiperiod/multicolumn report by year multiperiod/multicolumn report by year
--pp ----ppeerriioodd==PPEERRIIOODDEEXXPP -p --period=PERIODEXP
set start date, end date, and/or reporting interval all at once set start date, end date, and/or reporting interval all at once
(overrides the flags above) (overrides the flags above)
----ddaattee22 --date2
show, and match with -b/-e/-p/date:, secondary dates instead show, and match with -b/-e/-p/date:, secondary dates instead
--CC ----cclleeaarreedd -C --cleared
include only cleared postings/txns include only cleared postings/txns
----ppeennddiinngg --pending
include only pending postings/txns include only pending postings/txns
--UU ----uunncclleeaarreedd -U --uncleared
include only uncleared (and pending) postings/txns include only uncleared (and pending) postings/txns
--RR ----rreeaall -R --real
include only non-virtual postings include only non-virtual postings
----ddeepptthh==NN --depth=N
hide accounts/postings deeper than N hide accounts/postings deeper than N
--EE ----eemmppttyy -E --empty
show items with zero amount, normally hidden show items with zero amount, normally hidden
--BB ----ccoosstt -B --cost
show amounts in their cost price's commodity show amounts in their cost price's commodity
----ppiivvoott TTAAGG --pivot TAG
will transform the journal before any other processing by will transform the journal before any other processing by
replacing the account name of every posting having the tag TAG replacing the account name of every posting having the tag TAG
with content VALUE by the account name "TAG:VALUE". with content VALUE by the account name "TAG:VALUE".
@ -184,18 +184,18 @@ OOPPTTIIOONNSS
tion. If the tag value is a multi:level:account:name the new account tion. If the tag value is a multi:level:account:name the new account
name will be "TAG:multi:level:account:name". name will be "TAG:multi:level:account:name".
EENNVVIIRROONNMMEENNTT ENVIRONMENT
LLEEDDGGEERR__FFIILLEE The journal file path when not specified with -f. Default: LEDGER_FILE The journal file path when not specified with -f. Default:
~/.hledger.journal (on windows, perhaps C:/Users/USER/.hledger.jour- ~/.hledger.journal (on windows, perhaps C:/Users/USER/.hledger.jour-
nal). nal).
FFIILLEESS FILES
Reads data from one or more files in hledger journal, timeclock, time- Reads data from one or more files in hledger journal, timeclock, time-
dot, or CSV format specified with -f, or $LEDGER_FILE, or dot, or CSV format specified with -f, or $LEDGER_FILE, or
$HOME/.hledger.journal (on windows, perhaps $HOME/.hledger.journal (on windows, perhaps
C:/Users/USER/.hledger.journal). C:/Users/USER/.hledger.journal).
BBUUGGSS BUGS
The need to precede options with -- when invoked from hledger is awk- The need to precede options with -- when invoked from hledger is awk-
ward. ward.
@ -209,21 +209,21 @@ BBUUGGSS
RREEPPOORRTTIINNGG BBUUGGSS REPORTING BUGS
Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel Report bugs at http://bugs.hledger.org (or on the #hledger IRC channel
or hledger mail list) or hledger mail list)
AAUUTTHHOORRSS AUTHORS
Simon Michael <simon@joyful.com> and contributors Simon Michael <simon@joyful.com> and contributors
CCOOPPYYRRIIGGHHTT COPYRIGHT
Copyright (C) 2007-2016 Simon Michael. Copyright (C) 2007-2016 Simon Michael.
Released under GNU GPL v3 or later. Released under GNU GPL v3 or later.
SSEEEE AALLSSOO SEE ALSO
hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1), hledger(1), hledger-ui(1), hledger-web(1), hledger-api(1),
hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time- hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
dot(5), ledger(1) dot(5), ledger(1)

File diff suppressed because it is too large Load Diff