;doc: update manuals
This commit is contained in:
parent
04812682e8
commit
d06d4ca080
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
.TH "HLEDGER-UI" "1" "July 2021" "hledger-ui-1.22 " "hledger User Manuals"
|
.TH "HLEDGER-UI" "1" "August 2021" "hledger-ui-1.22.99 " "hledger User Manuals"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -7,7 +7,7 @@
|
|||||||
.PP
|
.PP
|
||||||
hledger-ui is a terminal interface (TUI) for the hledger accounting
|
hledger-ui is a terminal interface (TUI) for the hledger accounting
|
||||||
tool.
|
tool.
|
||||||
This manual is for hledger-ui 1.22.
|
This manual is for hledger-ui 1.22.99.
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.PP
|
.PP
|
||||||
\f[C]hledger-ui [OPTIONS] [QUERYARGS]\f[R]
|
\f[C]hledger-ui [OPTIONS] [QUERYARGS]\f[R]
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
This is hledger-ui/hledger-ui.info, produced by makeinfo version 4.8
|
This is hledger-ui.info, produced by makeinfo version 6.8 from stdin.
|
||||||
from stdin.
|
|
||||||
|
|
||||||
INFO-DIR-SECTION User Applications
|
INFO-DIR-SECTION User Applications
|
||||||
START-INFO-DIR-ENTRY
|
START-INFO-DIR-ENTRY
|
||||||
@ -7,16 +6,16 @@ START-INFO-DIR-ENTRY
|
|||||||
END-INFO-DIR-ENTRY
|
END-INFO-DIR-ENTRY
|
||||||
|
|
||||||
|
|
||||||
File: hledger-ui.info, Node: Top, Up: (dir)
|
File: hledger-ui.info, Node: Top, Next: OPTIONS, Up: (dir)
|
||||||
|
|
||||||
hledger-ui(1)
|
hledger-ui(1)
|
||||||
*************
|
*************
|
||||||
|
|
||||||
hledger-ui is a terminal interface (TUI) for the hledger accounting
|
hledger-ui is a terminal interface (TUI) for the hledger accounting
|
||||||
tool. This manual is for hledger-ui 1.22.
|
tool. This manual is for hledger-ui 1.22.99.
|
||||||
|
|
||||||
`hledger-ui [OPTIONS] [QUERYARGS]'
|
'hledger-ui [OPTIONS] [QUERYARGS]'
|
||||||
`hledger ui -- [OPTIONS] [QUERYARGS]'
|
'hledger ui -- [OPTIONS] [QUERYARGS]'
|
||||||
|
|
||||||
hledger is a reliable, cross-platform set of programs for tracking
|
hledger is a reliable, cross-platform set of programs for tracking
|
||||||
money, time, or any other commodity, using double-entry accounting and a
|
money, time, or any other commodity, using double-entry accounting and a
|
||||||
@ -30,9 +29,9 @@ interface, and sometimes quicker and more convenient than the web
|
|||||||
interface.
|
interface.
|
||||||
|
|
||||||
Like hledger, it reads data from one or more files in hledger
|
Like hledger, it reads data from one or more files in hledger
|
||||||
journal, timeclock, timedot, or CSV format specified with `-f', or
|
journal, timeclock, timedot, or CSV format specified with '-f', or
|
||||||
`$LEDGER_FILE', or `$HOME/.hledger.journal' (on windows, perhaps
|
'$LEDGER_FILE', or '$HOME/.hledger.journal' (on windows, perhaps
|
||||||
`C:/Users/USER/.hledger.journal'). For more about this see hledger(1),
|
'C:/Users/USER/.hledger.journal'). For more about this see hledger(1),
|
||||||
hledger_journal(5) etc.
|
hledger_journal(5) etc.
|
||||||
|
|
||||||
Unlike hledger, hledger-ui hides all future-dated transactions by
|
Unlike hledger, hledger-ui hides all future-dated transactions by
|
||||||
@ -56,139 +55,142 @@ File: hledger-ui.info, Node: OPTIONS, Next: KEYS, Prev: Top, Up: Top
|
|||||||
1 OPTIONS
|
1 OPTIONS
|
||||||
*********
|
*********
|
||||||
|
|
||||||
Note: if invoking hledger-ui as a hledger subcommand, write `--' before
|
Note: if invoking hledger-ui as a hledger subcommand, write '--' before
|
||||||
options as shown above.
|
options as shown above.
|
||||||
|
|
||||||
Any QUERYARGS are interpreted as a hledger search query which filters
|
Any QUERYARGS are interpreted as a hledger search query which filters
|
||||||
the data.
|
the data.
|
||||||
|
|
||||||
`--watch'
|
'--watch'
|
||||||
|
|
||||||
watch for data and date changes and reload automatically
|
watch for data and date changes and reload automatically
|
||||||
|
'--theme=default|terminal|greenterm'
|
||||||
|
|
||||||
`--theme=default|terminal|greenterm'
|
|
||||||
use this custom display theme
|
use this custom display theme
|
||||||
|
'--register=ACCTREGEX'
|
||||||
|
|
||||||
`--register=ACCTREGEX'
|
|
||||||
start in the (first) matched account's register screen
|
start in the (first) matched account's register screen
|
||||||
|
'--change'
|
||||||
|
|
||||||
`--change'
|
|
||||||
show period balances (changes) at startup instead of historical
|
show period balances (changes) at startup instead of historical
|
||||||
balances
|
balances
|
||||||
|
'-l --flat'
|
||||||
|
|
||||||
`-l --flat'
|
|
||||||
show accounts as a flat list (default)
|
show accounts as a flat list (default)
|
||||||
|
'-t --tree'
|
||||||
|
|
||||||
`-t --tree'
|
|
||||||
show accounts as a tree
|
show accounts as a tree
|
||||||
|
|
||||||
hledger input options:
|
hledger input options:
|
||||||
|
|
||||||
`-f FILE --file=FILE'
|
'-f FILE --file=FILE'
|
||||||
|
|
||||||
use a different input file. For stdin, use - (default:
|
use a different input file. For stdin, use - (default:
|
||||||
`$LEDGER_FILE' or `$HOME/.hledger.journal')
|
'$LEDGER_FILE' or '$HOME/.hledger.journal')
|
||||||
|
'--rules-file=RULESFILE'
|
||||||
|
|
||||||
`--rules-file=RULESFILE'
|
|
||||||
Conversion rules file to use when reading CSV (default: FILE.rules)
|
Conversion rules file to use when reading CSV (default: FILE.rules)
|
||||||
|
'--separator=CHAR'
|
||||||
|
|
||||||
`--separator=CHAR'
|
|
||||||
Field separator to expect when reading CSV (default: ',')
|
Field separator to expect when reading CSV (default: ',')
|
||||||
|
'--alias=OLD=NEW'
|
||||||
|
|
||||||
`--alias=OLD=NEW'
|
|
||||||
rename accounts named OLD to NEW
|
rename accounts named OLD to NEW
|
||||||
|
'--anon'
|
||||||
|
|
||||||
`--anon'
|
|
||||||
anonymize accounts and payees
|
anonymize accounts and payees
|
||||||
|
'--pivot FIELDNAME'
|
||||||
|
|
||||||
`--pivot FIELDNAME'
|
|
||||||
use some other field or tag for the account name
|
use some other field or tag for the account name
|
||||||
|
'-I --ignore-assertions'
|
||||||
|
|
||||||
`-I --ignore-assertions'
|
|
||||||
disable balance assertion checks (note: does not disable balance
|
disable balance assertion checks (note: does not disable balance
|
||||||
assignments)
|
assignments)
|
||||||
|
'-s --strict'
|
||||||
|
|
||||||
`-s --strict'
|
|
||||||
do extra error checking (check that all posted accounts are
|
do extra error checking (check that all posted accounts are
|
||||||
declared)
|
declared)
|
||||||
|
|
||||||
hledger reporting options:
|
hledger reporting options:
|
||||||
|
|
||||||
`-b --begin=DATE'
|
'-b --begin=DATE'
|
||||||
|
|
||||||
include postings/txns on or after this date (will be adjusted to
|
include postings/txns on or after this date (will be adjusted to
|
||||||
preceding subperiod start when using a report interval)
|
preceding subperiod start when using a report interval)
|
||||||
|
'-e --end=DATE'
|
||||||
|
|
||||||
`-e --end=DATE'
|
|
||||||
include postings/txns before this date (will be adjusted to
|
include postings/txns before this date (will be adjusted to
|
||||||
following subperiod end when using a report interval)
|
following subperiod end when using a report interval)
|
||||||
|
'-D --daily'
|
||||||
|
|
||||||
`-D --daily'
|
|
||||||
multiperiod/multicolumn report by day
|
multiperiod/multicolumn report by day
|
||||||
|
'-W --weekly'
|
||||||
|
|
||||||
`-W --weekly'
|
|
||||||
multiperiod/multicolumn report by week
|
multiperiod/multicolumn report by week
|
||||||
|
'-M --monthly'
|
||||||
|
|
||||||
`-M --monthly'
|
|
||||||
multiperiod/multicolumn report by month
|
multiperiod/multicolumn report by month
|
||||||
|
'-Q --quarterly'
|
||||||
|
|
||||||
`-Q --quarterly'
|
|
||||||
multiperiod/multicolumn report by quarter
|
multiperiod/multicolumn report by quarter
|
||||||
|
'-Y --yearly'
|
||||||
|
|
||||||
`-Y --yearly'
|
|
||||||
multiperiod/multicolumn report by year
|
multiperiod/multicolumn report by year
|
||||||
|
'-p --period=PERIODEXP'
|
||||||
|
|
||||||
`-p --period=PERIODEXP'
|
|
||||||
set start date, end date, and/or reporting interval all at once
|
set start date, end date, and/or reporting interval all at once
|
||||||
using period expressions syntax
|
using period expressions syntax
|
||||||
|
'--date2'
|
||||||
|
|
||||||
`--date2'
|
|
||||||
match the secondary date instead (see command help for other
|
match the secondary date instead (see command help for other
|
||||||
effects)
|
effects)
|
||||||
|
'-U --unmarked'
|
||||||
|
|
||||||
`-U --unmarked'
|
|
||||||
include only unmarked postings/txns (can combine with -P or -C)
|
include only unmarked postings/txns (can combine with -P or -C)
|
||||||
|
'-P --pending'
|
||||||
|
|
||||||
`-P --pending'
|
|
||||||
include only pending postings/txns
|
include only pending postings/txns
|
||||||
|
'-C --cleared'
|
||||||
|
|
||||||
`-C --cleared'
|
|
||||||
include only cleared postings/txns
|
include only cleared postings/txns
|
||||||
|
'-R --real'
|
||||||
|
|
||||||
`-R --real'
|
|
||||||
include only non-virtual postings
|
include only non-virtual postings
|
||||||
|
'-NUM --depth=NUM'
|
||||||
|
|
||||||
`-NUM --depth=NUM'
|
|
||||||
hide/aggregate accounts or postings more than NUM levels deep
|
hide/aggregate accounts or postings more than NUM levels deep
|
||||||
|
'-E --empty'
|
||||||
|
|
||||||
`-E --empty'
|
|
||||||
show items with zero amount, normally hidden (and vice-versa in
|
show items with zero amount, normally hidden (and vice-versa in
|
||||||
hledger-ui/hledger-web)
|
hledger-ui/hledger-web)
|
||||||
|
'-B --cost'
|
||||||
|
|
||||||
`-B --cost'
|
|
||||||
convert amounts to their cost/selling amount at transaction time
|
convert amounts to their cost/selling amount at transaction time
|
||||||
|
'-V --market'
|
||||||
|
|
||||||
`-V --market'
|
|
||||||
convert amounts to their market value in default valuation
|
convert amounts to their market value in default valuation
|
||||||
commodities
|
commodities
|
||||||
|
'-X --exchange=COMM'
|
||||||
|
|
||||||
`-X --exchange=COMM'
|
|
||||||
convert amounts to their market value in commodity COMM
|
convert amounts to their market value in commodity COMM
|
||||||
|
'--value'
|
||||||
|
|
||||||
`--value'
|
|
||||||
convert amounts to cost or market value, more flexibly than
|
convert amounts to cost or market value, more flexibly than
|
||||||
-B/-V/-X
|
-B/-V/-X
|
||||||
|
'--infer-market-prices'
|
||||||
|
|
||||||
`--infer-market-prices'
|
|
||||||
use transaction prices (recorded with @ or @@) as additional market
|
use transaction prices (recorded with @ or @@) as additional market
|
||||||
prices, as if they were P directives
|
prices, as if they were P directives
|
||||||
|
'--auto'
|
||||||
|
|
||||||
`--auto'
|
|
||||||
apply automated posting rules to modify transactions.
|
apply automated posting rules to modify transactions.
|
||||||
|
'--forecast'
|
||||||
|
|
||||||
`--forecast'
|
|
||||||
generate future transactions from periodic transaction rules, for
|
generate future transactions from periodic transaction rules, for
|
||||||
the next 6 months or till report end date. In hledger-ui, also
|
the next 6 months or till report end date. In hledger-ui, also
|
||||||
make ordinary future transactions visible.
|
make ordinary future transactions visible.
|
||||||
|
'--color=WHEN (or --colour=WHEN)'
|
||||||
|
|
||||||
`--color=WHEN (or --colour=WHEN)'
|
|
||||||
Should color-supporting commands use ANSI color codes in text
|
Should color-supporting commands use ANSI color codes in text
|
||||||
output. 'auto' (default): whenever stdout seems to be a
|
output. 'auto' (default): whenever stdout seems to be a
|
||||||
color-supporting terminal. 'always' or 'yes': always, useful eg
|
color-supporting terminal. 'always' or 'yes': always, useful eg
|
||||||
@ -202,24 +204,25 @@ the last one takes precedence.
|
|||||||
|
|
||||||
hledger help options:
|
hledger help options:
|
||||||
|
|
||||||
`-h --help'
|
'-h --help'
|
||||||
|
|
||||||
show general or COMMAND help
|
show general or COMMAND help
|
||||||
|
'--man'
|
||||||
|
|
||||||
`--man'
|
|
||||||
show general or COMMAND user manual with man
|
show general or COMMAND user manual with man
|
||||||
|
'--info'
|
||||||
|
|
||||||
`--info'
|
|
||||||
show general or COMMAND user manual with info
|
show general or COMMAND user manual with info
|
||||||
|
'--version'
|
||||||
|
|
||||||
`--version'
|
|
||||||
show general or ADDONCMD version
|
show general or ADDONCMD version
|
||||||
|
'--debug[=N]'
|
||||||
|
|
||||||
`--debug[=N]'
|
|
||||||
show debug output (levels 1-9, default: 1)
|
show debug output (levels 1-9, default: 1)
|
||||||
|
|
||||||
A @FILE argument will be expanded to the contents of FILE, which
|
A @FILE argument will be expanded to the contents of FILE, which
|
||||||
should contain one command line option/argument per line. (To prevent
|
should contain one command line option/argument per line. (To prevent
|
||||||
this, insert a `--' argument before.)
|
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
|
||||||
@ -227,15 +230,15 @@ 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
|
'?' shows a help dialog listing all keys. (Some of these also appear in
|
||||||
the quick help at the bottom of each screen.) Press `?' again (or
|
the quick help at the bottom of each screen.) Press '?' again (or
|
||||||
`ESCAPE', or `LEFT', or `q') to close it. The following keys work on
|
'ESCAPE', or 'LEFT', or 'q') to close it. The following keys work on
|
||||||
most screens:
|
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
|
returns to the previous screen, 'up'/'down'/'page up'/'page
|
||||||
down'/`home'/`end' move up and down through lists. Emacs-style
|
down'/'home'/'end' move up and down through lists. Emacs-style
|
||||||
(`ctrl-p'/`ctrl-n'/`ctrl-f'/`ctrl-b') movement keys are also supported
|
('ctrl-p'/'ctrl-n'/'ctrl-f'/'ctrl-b') movement keys are also supported
|
||||||
(but not vi-style keys, since hledger-1.19, sorry!). A tip: movement
|
(but not vi-style keys, since hledger-1.19, sorry!). A tip: movement
|
||||||
speed is limited by your keyboard repeat rate, to move faster you may
|
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
|
want to adjust it. (If you're on a mac, the karabiner app is one way to
|
||||||
@ -243,73 +246,73 @@ 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).
|
limiting the transactions to be shown (by default, all are shown).
|
||||||
`shift-down/up' steps downward and upward through these standard report
|
'shift-down/up' steps downward and upward through these standard report
|
||||||
period durations: year, quarter, month, week, day. Then,
|
period durations: year, quarter, month, week, day. Then,
|
||||||
`shift-left/right' moves to the previous/next period. `T' sets the
|
'shift-left/right' moves to the previous/next period. 'T' sets the
|
||||||
report period to today. With the `--watch' option, when viewing a
|
report period to today. With the '--watch' option, when viewing a
|
||||||
"current" period (the current day, week, month, quarter, or year), the
|
"current" period (the current day, week, month, quarter, or year), the
|
||||||
period will move automatically to track the current date. To set a
|
period will move automatically to track the current date. To set a
|
||||||
non-standard period, you can use `/' and a `date:' query.
|
non-standard period, you can use '/' and a 'date:' query.
|
||||||
|
|
||||||
`/' lets you set a general filter query limiting the data shown,
|
'/' lets you set a general filter query limiting the data shown,
|
||||||
using the same query terms as in hledger and hledger-web. While editing
|
using the same query terms as in hledger and hledger-web. While editing
|
||||||
the query, you can use CTRL-a/e/d/k, BS, cursor keys; press `ENTER' to
|
the query, you can use CTRL-a/e/d/k, BS, cursor keys; press 'ENTER' to
|
||||||
set it, or `ESCAPE'to cancel. There are also keys for quickly adjusting
|
set it, or 'ESCAPE'to cancel. There are also keys for quickly adjusting
|
||||||
some common filters like account depth and transaction status (see
|
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.
|
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
|
both ordinary transactions recorded in the journal, and periodic
|
||||||
transactions generated by rule. `F' toggles forecast mode, in which
|
transactions generated by rule. 'F' toggles forecast mode, in which
|
||||||
future/forecasted transactions are shown.
|
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
|
restoring the app's initial state at startup. Or, it cancels minibuffer
|
||||||
data entry or the help dialog.
|
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
|
(selections near the top won't be centered, since we don't scroll above
|
||||||
the top).
|
the top).
|
||||||
|
|
||||||
`g' reloads from the data file(s) and updates the current screen and
|
'g' reloads from the data file(s) and updates the current screen and
|
||||||
any previous screens. (With large files, this could cause a noticeable
|
any previous screens. (With large files, this could cause a noticeable
|
||||||
pause.)
|
pause.)
|
||||||
|
|
||||||
`I' toggles balance assertion checking. Disabling balance assertions
|
'I' toggles balance assertion checking. Disabling balance assertions
|
||||||
temporarily can be useful for troubleshooting.
|
temporarily can be useful for troubleshooting.
|
||||||
|
|
||||||
`a' runs command-line hledger's add command, and reloads the updated
|
'a' runs command-line hledger's add command, and reloads the updated
|
||||||
file. This allows some basic data entry.
|
file. This allows some basic data entry.
|
||||||
|
|
||||||
`A' is like `a', but runs the hledger-iadd tool, which provides a
|
'A' is like 'a', but runs the hledger-iadd tool, which provides a
|
||||||
terminal interface. This key will be available if `hledger-iadd' is
|
terminal interface. This key will be available if 'hledger-iadd' is
|
||||||
installed in $path.
|
installed in $path.
|
||||||
|
|
||||||
`E' runs $HLEDGER_UI_EDITOR, or $EDITOR, or a default (`emacsclient
|
'E' runs $HLEDGER_UI_EDITOR, or $EDITOR, or a default ('emacsclient
|
||||||
-a "" -nw') on the journal file. With some editors (emacs, vi), the
|
-a "" -nw') on the journal file. With some editors (emacs, vi), the
|
||||||
cursor will be positioned at the current transaction when invoked from
|
cursor will be positioned at the current transaction when invoked from
|
||||||
the register and transaction screens, and at the error location (if
|
the register and transaction screens, and at the error location (if
|
||||||
possible) when invoked from the error screen.
|
possible) when invoked from the error screen.
|
||||||
|
|
||||||
`B' toggles cost mode, showing amounts in their transaction price's
|
'B' toggles cost mode, showing amounts in their transaction price's
|
||||||
commodity (like toggling the `-B/--cost' flag).
|
commodity (like toggling the '-B/--cost' flag).
|
||||||
|
|
||||||
`V' toggles value mode, showing amounts' current market value in
|
'V' toggles value mode, showing amounts' current market value in
|
||||||
their default valuation commodity (like toggling the `-V/--market'
|
their default valuation commodity (like toggling the '-V/--market'
|
||||||
flag). Note, "current market value" means the value on the report end
|
flag). Note, "current market value" means the value on the report end
|
||||||
date if specified, otherwise today. To see the value on another date,
|
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
|
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
|
transaction as it was valued on july 30, go to the accounts or register
|
||||||
screen, press `/', and add `date:-7/30' to the query.
|
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
|
active; for now pressing 'b' 'b' 'v' should reliably reset to normal
|
||||||
mode.
|
mode.
|
||||||
|
|
||||||
`q' quits the application.
|
'q' quits the application.
|
||||||
|
|
||||||
Additional screen-specific keys are described below.
|
Additional screen-specific keys are described below.
|
||||||
|
|
||||||
@ -332,47 +335,48 @@ File: hledger-ui.info, Node: Accounts screen, Next: Register screen, Up: SCRE
|
|||||||
3.1 Accounts screen
|
3.1 Accounts screen
|
||||||
===================
|
===================
|
||||||
|
|
||||||
This is normally the first screen displayed. It lists accounts and their
|
This is normally the first screen displayed. It lists accounts and
|
||||||
balances, like hledger's balance command. By default, it shows all
|
their balances, like hledger's balance command. By default, it shows
|
||||||
accounts and their latest ending balances (including the balances of
|
all accounts and their latest ending balances (including the balances of
|
||||||
subaccounts). If you specify a query on the command line, it shows just
|
subaccounts). If you specify a query on the command line, it shows just
|
||||||
the matched accounts and the balances from matched transactions.
|
the matched accounts and the balances from matched transactions.
|
||||||
|
|
||||||
Account names are shown as a flat list by default; press `t' to
|
Account names are shown as a flat list by default; press 't' to
|
||||||
toggle tree mode. In list mode, account balances are exclusive of
|
toggle tree mode. In list mode, account balances are exclusive of
|
||||||
subaccounts, except where subaccounts are hidden by a depth limit (see
|
subaccounts, except where subaccounts are hidden by a depth limit (see
|
||||||
below). In tree mode, all account balances are inclusive of subaccounts.
|
below). In tree mode, all account balances are inclusive of
|
||||||
|
subaccounts.
|
||||||
|
|
||||||
To see less detail, press a number key, `1' to `9', to set a depth
|
To see less detail, press a number key, '1' to '9', to set a depth
|
||||||
limit. Or use `-' to decrease and `+'/`=' to increase the depth limit.
|
limit. Or use '-' to decrease and '+'/'=' to increase the depth limit.
|
||||||
`0' shows even less detail, collapsing all accounts to a single total.
|
'0' shows even less detail, collapsing all accounts to a single total.
|
||||||
To remove the depth limit, set it higher than the maximum account
|
To remove the depth limit, set it higher than the maximum account depth,
|
||||||
depth, or press `ESCAPE'.
|
or press 'ESCAPE'.
|
||||||
|
|
||||||
`H' toggles between showing historical balances or period balances.
|
'H' toggles between showing historical balances or period balances.
|
||||||
Historical balances (the default) are ending balances at the end of the
|
Historical balances (the default) are ending balances at the end of the
|
||||||
report period, taking into account all transactions before that date
|
report period, taking into account all transactions before that date
|
||||||
(filtered by the filter query if any), including transactions before the
|
(filtered by the filter query if any), including transactions before the
|
||||||
start of the report period. In other words, historical balances are what
|
start of the report period. In other words, historical balances are
|
||||||
you would see on a bank statement for that account (unless disturbed by
|
what you would see on a bank statement for that account (unless
|
||||||
a filter query). Period balances ignore transactions before the report
|
disturbed by a filter query). Period balances ignore transactions
|
||||||
start date, so they show the change in balance during the report period.
|
before the report start date, so they show the change in balance during
|
||||||
They are more useful eg when viewing a time log.
|
the report period. They are more useful eg when viewing a time log.
|
||||||
|
|
||||||
`U' toggles filtering by unmarked status, including or excluding
|
'U' toggles filtering by unmarked status, including or excluding
|
||||||
unmarked postings in the balances. Similarly, `P' toggles pending
|
unmarked postings in the balances. Similarly, 'P' toggles pending
|
||||||
postings, and `C' toggles cleared postings. (By default, balances
|
postings, and 'C' toggles cleared postings. (By default, balances
|
||||||
include all postings; if you activate one or two status filters, only
|
include all postings; if you activate one or two status filters, only
|
||||||
those postings are included; and if you activate all three, the filter
|
those postings are included; and if you activate all three, the filter
|
||||||
is removed.)
|
is removed.)
|
||||||
|
|
||||||
`R' toggles real mode, in which virtual postings are ignored.
|
'R' toggles real mode, in which virtual postings are ignored.
|
||||||
|
|
||||||
`Z' toggles nonzero mode, in which only accounts with nonzero
|
'Z' toggles nonzero mode, in which only accounts with nonzero
|
||||||
balances are shown (hledger-ui shows zero items by default, unlike
|
balances are shown (hledger-ui shows zero items by default, unlike
|
||||||
command-line hledger).
|
command-line hledger).
|
||||||
|
|
||||||
Press `right' or `enter' to view an account's transactions register.
|
Press 'right' or 'enter' to view an account's transactions register.
|
||||||
|
|
||||||
|
|
||||||
File: hledger-ui.info, Node: Register screen, Next: Transaction screen, Prev: Accounts screen, Up: SCREENS
|
File: hledger-ui.info, Node: Register screen, Next: Transaction screen, Prev: Accounts screen, Up: SCREENS
|
||||||
@ -384,43 +388,41 @@ This screen shows the transactions affecting a particular account, like
|
|||||||
a check register. Each line represents one transaction and shows:
|
a check register. Each line represents one transaction and shows:
|
||||||
|
|
||||||
* the other account(s) involved, in abbreviated form. (If there are
|
* the other account(s) involved, in abbreviated form. (If there are
|
||||||
both real and virtual postings, it shows only the accounts
|
both real and virtual postings, it shows only the accounts affected
|
||||||
affected by real postings.)
|
by real postings.)
|
||||||
|
|
||||||
* the overall change to the current account's balance; positive for
|
* the overall change to the current account's balance; positive for
|
||||||
an inflow to this account, negative for an outflow.
|
an inflow to this account, negative for an outflow.
|
||||||
|
|
||||||
* the running historical total or period total for the current
|
* the running historical total or period total for the current
|
||||||
account, after the transaction. This can be toggled with `H'.
|
account, after the transaction. This can be toggled with 'H'.
|
||||||
Similar to the accounts screen, the historical total is affected
|
Similar to the accounts screen, the historical total is affected by
|
||||||
by transactions (filtered by the filter query) before the report
|
transactions (filtered by the filter query) before the report start
|
||||||
start date, while the period total is not. If the historical total
|
date, while the period total is not. If the historical total is
|
||||||
is not disturbed by a filter query, it will be the running
|
not disturbed by a filter query, it will be the running historical
|
||||||
historical balance you would see on a bank register for the
|
balance you would see on a bank register for the current account.
|
||||||
current account.
|
|
||||||
|
|
||||||
|
|
||||||
Transactions affecting this account's subaccounts will be included in
|
Transactions affecting this account's subaccounts will be included in
|
||||||
the register if the accounts screen is in tree mode, or if it's in list
|
the register if the accounts screen is in tree mode, or if it's in list
|
||||||
mode but this account has subaccounts which are not shown due to a depth
|
mode but this account has subaccounts which are not shown due to a depth
|
||||||
limit. In other words, the register always shows the transactions
|
limit. In other words, the register always shows the transactions
|
||||||
contributing to the balance shown on the accounts screen. Tree mode/list
|
contributing to the balance shown on the accounts screen. Tree
|
||||||
mode can be toggled with `t' here also.
|
mode/list mode can be toggled with 't' here also.
|
||||||
|
|
||||||
`U' toggles filtering by unmarked status, showing or hiding unmarked
|
'U' toggles filtering by unmarked status, showing or hiding unmarked
|
||||||
transactions. Similarly, `P' toggles pending transactions, and `C'
|
transactions. Similarly, 'P' toggles pending transactions, and 'C'
|
||||||
toggles cleared transactions. (By default, transactions with all
|
toggles cleared transactions. (By default, transactions with all
|
||||||
statuses are shown; if you activate one or two status filters, only
|
statuses are shown; if you activate one or two status filters, only
|
||||||
those transactions are shown; and if you activate all three, the filter
|
those transactions are shown; and if you activate all three, the filter
|
||||||
is removed.)
|
is removed.)
|
||||||
|
|
||||||
`R' toggles real mode, in which virtual postings are ignored.
|
'R' toggles real mode, in which virtual postings are ignored.
|
||||||
|
|
||||||
`Z' toggles nonzero mode, in which only transactions posting a
|
'Z' toggles nonzero mode, in which only transactions posting a
|
||||||
nonzero change are shown (hledger-ui shows zero items by default, unlike
|
nonzero change are shown (hledger-ui shows zero items by default, unlike
|
||||||
command-line hledger).
|
command-line hledger).
|
||||||
|
|
||||||
Press `right' (or `enter') to view the selected transaction in
|
Press 'right' (or 'enter') to view the selected transaction in
|
||||||
detail.
|
detail.
|
||||||
|
|
||||||
|
|
||||||
@ -438,7 +440,7 @@ description, comments, along with all of its account postings are shown.
|
|||||||
Simple transactions have two postings, but there can be more (or in
|
Simple transactions have two postings, but there can be more (or in
|
||||||
certain cases, fewer).
|
certain cases, fewer).
|
||||||
|
|
||||||
`up' and `down' will step through all transactions listed in the
|
'up' and 'down' will step through all transactions listed in the
|
||||||
previous account register screen. In the title bar, the numbers in
|
previous account register screen. In the title bar, the numbers in
|
||||||
parentheses show your position within that account register. They will
|
parentheses show your position within that account register. They will
|
||||||
vary depending on which account register you came from (remember most
|
vary depending on which account register you came from (remember most
|
||||||
@ -475,16 +477,15 @@ File: hledger-ui.info, Node: Watch mode, Next: Watch mode limitations, Up: TI
|
|||||||
4.1 Watch mode
|
4.1 Watch mode
|
||||||
==============
|
==============
|
||||||
|
|
||||||
One of hledger-ui's best features is the auto-reloading `--watch' mode.
|
One of hledger-ui's best features is the auto-reloading '--watch' mode.
|
||||||
With this flag, it will update the display automatically whenever
|
With this flag, it will update the display automatically whenever
|
||||||
changes are saved to the data files.
|
changes are saved to the data files.
|
||||||
|
|
||||||
This is very useful when reconciling. A good workflow is to have your
|
This is very useful when reconciling. A good workflow is to have
|
||||||
bank's online register open in a browser window, for reference; the
|
your bank's online register open in a browser window, for reference; the
|
||||||
journal file open in an editor window; and hledger-ui in watch mode in a
|
journal file open in an editor window; and hledger-ui in watch mode in a
|
||||||
terminal window, eg:
|
terminal window, eg:
|
||||||
|
|
||||||
|
|
||||||
$ hledger-ui --watch --register checking -C
|
$ hledger-ui --watch --register checking -C
|
||||||
|
|
||||||
As you mark things cleared in the editor, you can see the effect
|
As you mark things cleared in the editor, you can see the effect
|
||||||
@ -500,29 +501,28 @@ File: hledger-ui.info, Node: Watch mode limitations, Prev: Watch mode, Up: TI
|
|||||||
==========================
|
==========================
|
||||||
|
|
||||||
There are situations in which it won't work, ie the display will not
|
There are situations in which it won't work, ie the display will not
|
||||||
update when you save a change (because the underlying `inotify' library
|
update when you save a change (because the underlying 'inotify' library
|
||||||
does not support it). Here are some that we know of:
|
does not support it). Here are some that we know of:
|
||||||
|
|
||||||
* Certain editors: saving with `gedit', and perhaps any Gnome
|
* Certain editors: saving with 'gedit', and perhaps any Gnome
|
||||||
application, won't be detected (#1617). Jetbrains IDEs, such as
|
application, won't be detected (#1617). Jetbrains IDEs, such as
|
||||||
IDEA, also may not work (#911).
|
IDEA, also may not work (#911).
|
||||||
|
|
||||||
* Certain unusual filesystems might not be supported. (All the usual
|
* Certain unusual filesystems might not be supported. (All the usual
|
||||||
ones on unix, mac and windows are supported.)
|
ones on unix, mac and windows are supported.)
|
||||||
|
|
||||||
|
|
||||||
In such cases, the workaround is to switch to the hledger-ui window
|
In such cases, the workaround is to switch to the hledger-ui window
|
||||||
and press `g' each time you want it to reload. (Actually, see #1617 for
|
and press 'g' each time you want it to reload. (Actually, see #1617 for
|
||||||
another workaround, and let us know if it works for you.)
|
another workaround, and let us know if it works for you.)
|
||||||
|
|
||||||
If you leave `hledger-ui --watch' running for days, on certain
|
If you leave 'hledger-ui --watch' running for days, on certain
|
||||||
platforms (?), perhaps with many transactions in your journal (?),
|
platforms (?), perhaps with many transactions in your journal (?),
|
||||||
perhaps with large numbers of other files present (?), you may see it
|
perhaps with large numbers of other files present (?), you may see it
|
||||||
gradually using more and more memory and CPU over time, as seen in
|
gradually using more and more memory and CPU over time, as seen in 'top'
|
||||||
`top' or Activity Monitor or Task Manager.
|
or Activity Monitor or Task Manager.
|
||||||
|
|
||||||
A workaround is to `q'uit and restart it, or to suspend it
|
A workaround is to 'q'uit and restart it, or to suspend it ('CTRL-z')
|
||||||
(`CTRL-z') and restart it (`fg') if your shell supports that.
|
and restart it ('fg') if your shell supports that.
|
||||||
|
|
||||||
|
|
||||||
File: hledger-ui.info, Node: ENVIRONMENT, Next: FILES, Prev: TIPS, Up: Top
|
File: hledger-ui.info, Node: ENVIRONMENT, Next: FILES, Prev: TIPS, Up: Top
|
||||||
@ -532,26 +532,25 @@ File: hledger-ui.info, Node: ENVIRONMENT, Next: FILES, Prev: TIPS, Up: Top
|
|||||||
|
|
||||||
*COLUMNS* The screen width to use. Default: the full terminal width.
|
*COLUMNS* The screen width to use. Default: the full terminal width.
|
||||||
|
|
||||||
*LEDGER_FILE* The journal file path when not specified with `-f'.
|
*LEDGER_FILE* The journal file path when not specified with '-f'.
|
||||||
Default: `~/.hledger.journal' (on windows, perhaps
|
Default: '~/.hledger.journal' (on windows, perhaps
|
||||||
`C:/Users/USER/.hledger.journal').
|
'C:/Users/USER/.hledger.journal').
|
||||||
|
|
||||||
A typical value is `~/DIR/YYYY.journal', where DIR is a
|
A typical value is '~/DIR/YYYY.journal', where DIR is a
|
||||||
version-controlled finance directory and YYYY is the current year. Or
|
version-controlled finance directory and YYYY is the current year. Or
|
||||||
`~/DIR/current.journal', where current.journal is a symbolic link to
|
'~/DIR/current.journal', where current.journal is a symbolic link to
|
||||||
YYYY.journal.
|
YYYY.journal.
|
||||||
|
|
||||||
On Mac computers, you can set this and other environment variables
|
On Mac computers, you can set this and other environment variables in
|
||||||
in a more thorough way that also affects applications started from the
|
a more thorough way that also affects applications started from the GUI
|
||||||
GUI (say, an Emacs dock icon). Eg on MacOS Catalina I have a
|
(say, an Emacs dock icon). Eg on MacOS Catalina I have a
|
||||||
`~/.MacOSX/environment.plist' file containing
|
'~/.MacOSX/environment.plist' file containing
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
"LEDGER_FILE" : "~/finance/current.journal"
|
"LEDGER_FILE" : "~/finance/current.journal"
|
||||||
}
|
}
|
||||||
|
|
||||||
To see the effect you may need to `killall Dock', or reboot.
|
To see the effect you may need to 'killall Dock', or reboot.
|
||||||
|
|
||||||
|
|
||||||
File: hledger-ui.info, Node: FILES, Next: BUGS, Prev: ENVIRONMENT, Up: Top
|
File: hledger-ui.info, Node: FILES, Next: BUGS, Prev: ENVIRONMENT, Up: Top
|
||||||
@ -560,9 +559,9 @@ File: hledger-ui.info, Node: FILES, Next: BUGS, Prev: ENVIRONMENT, Up: Top
|
|||||||
*******
|
*******
|
||||||
|
|
||||||
Reads data from one or more files in hledger journal, timeclock,
|
Reads data from one or more files in hledger journal, timeclock,
|
||||||
timedot, or CSV format specified with `-f', or `$LEDGER_FILE', or
|
timedot, 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').
|
||||||
|
|
||||||
|
|
||||||
File: hledger-ui.info, Node: BUGS, Prev: FILES, Up: Top
|
File: hledger-ui.info, Node: BUGS, Prev: FILES, Up: Top
|
||||||
@ -570,18 +569,18 @@ File: hledger-ui.info, Node: BUGS, Prev: FILES, Up: Top
|
|||||||
7 BUGS
|
7 BUGS
|
||||||
******
|
******
|
||||||
|
|
||||||
The need to precede options with `--' when invoked from hledger is
|
The need to precede options with '--' when invoked from hledger is
|
||||||
awkward.
|
awkward.
|
||||||
|
|
||||||
`-f-' doesn't work (hledger-ui can't read from stdin).
|
'-f-' doesn't work (hledger-ui can't read from stdin).
|
||||||
|
|
||||||
`-V' affects only the accounts screen.
|
'-V' affects only the accounts screen.
|
||||||
|
|
||||||
When you press `g', the current and all previous screens are
|
When you press 'g', the current and all previous screens are
|
||||||
regenerated, which may cause a noticeable pause with large files. Also
|
regenerated, which may cause a noticeable pause with large files. Also
|
||||||
there is no visual indication that this is in progress.
|
there is no visual indication that this is in progress.
|
||||||
|
|
||||||
`--watch' is not yet fully robust. It works well for normal usage,
|
'--watch' is not yet fully robust. It works well for normal usage,
|
||||||
but many file changes in a short time (eg saving the file thousands of
|
but many file changes in a short time (eg saving the file thousands of
|
||||||
times with an editor macro) can cause problems at least on OSX. Symptoms
|
times with an editor macro) can cause problems at least on OSX. Symptoms
|
||||||
include: unresponsive UI, periodic resetting of the cursor position,
|
include: unresponsive UI, periodic resetting of the cursor position,
|
||||||
@ -590,37 +589,41 @@ and possibly a small but persistent build-up of CPU usage until the
|
|||||||
program is restarted.
|
program is restarted.
|
||||||
|
|
||||||
Also, if you are viewing files mounted from another machine,
|
Also, if you are viewing files mounted from another machine,
|
||||||
`--watch' requires that both machine clocks are roughly in step.
|
'--watch' requires that both machine clocks are roughly in step.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Tag Table:
|
Tag Table:
|
||||||
Node: Top232
|
Node: Top221
|
||||||
Node: OPTIONS1634
|
Node: OPTIONS1647
|
||||||
Ref: #options1731
|
Ref: #options1744
|
||||||
Node: KEYS6126
|
Node: KEYS6145
|
||||||
Ref: #keys6221
|
Ref: #keys6240
|
||||||
Node: SCREENS10270
|
Node: SCREENS10311
|
||||||
Ref: #screens10368
|
Ref: #screens10409
|
||||||
Node: Accounts screen10458
|
Node: Accounts screen10499
|
||||||
Ref: #accounts-screen10586
|
Ref: #accounts-screen10627
|
||||||
Node: Register screen12790
|
Node: Register screen12842
|
||||||
Ref: #register-screen12945
|
Ref: #register-screen12997
|
||||||
Node: Transaction screen14940
|
Node: Transaction screen14994
|
||||||
Ref: #transaction-screen15098
|
Ref: #transaction-screen15152
|
||||||
Node: Error screen15965
|
Node: Error screen16022
|
||||||
Ref: #error-screen16087
|
Ref: #error-screen16144
|
||||||
Node: TIPS16329
|
Node: TIPS16388
|
||||||
Ref: #tips16428
|
Ref: #tips16487
|
||||||
Node: Watch mode16480
|
Node: Watch mode16539
|
||||||
Ref: #watch-mode16597
|
Ref: #watch-mode16656
|
||||||
Node: Watch mode limitations17341
|
Node: Watch mode limitations17402
|
||||||
Ref: #watch-mode-limitations17482
|
Ref: #watch-mode-limitations17543
|
||||||
Node: ENVIRONMENT18615
|
Node: ENVIRONMENT18679
|
||||||
Ref: #environment18726
|
Ref: #environment18790
|
||||||
Node: FILES19531
|
Node: FILES19597
|
||||||
Ref: #files19630
|
Ref: #files19696
|
||||||
Node: BUGS19843
|
Node: BUGS19909
|
||||||
Ref: #bugs19920
|
Ref: #bugs19986
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
|
||||||
|
|
||||||
|
Local Variables:
|
||||||
|
coding: utf-8
|
||||||
|
End:
|
||||||
|
|||||||
@ -5,7 +5,7 @@ HLEDGER-UI(1) hledger User Manuals HLEDGER-UI(1)
|
|||||||
|
|
||||||
NAME
|
NAME
|
||||||
hledger-ui is a terminal interface (TUI) for the hledger accounting
|
hledger-ui is a terminal interface (TUI) for the hledger accounting
|
||||||
tool. This manual is for hledger-ui 1.22.
|
tool. This manual is for hledger-ui 1.22.99.
|
||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
hledger-ui [OPTIONS] [QUERYARGS]
|
hledger-ui [OPTIONS] [QUERYARGS]
|
||||||
@ -504,4 +504,4 @@ SEE ALSO
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
hledger-ui-1.22 July 2021 HLEDGER-UI(1)
|
hledger-ui-1.22.99 August 2021 HLEDGER-UI(1)
|
||||||
|
|||||||
@ -1,12 +1,12 @@
|
|||||||
|
|
||||||
.TH "HLEDGER-WEB" "1" "July 2021" "hledger-web-1.22 " "hledger User Manuals"
|
.TH "HLEDGER-WEB" "1" "August 2021" "hledger-web-1.22.99 " "hledger User Manuals"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.SH NAME
|
.SH NAME
|
||||||
.PP
|
.PP
|
||||||
hledger-web is a web interface (WUI) for the hledger accounting tool.
|
hledger-web is a web interface (WUI) for the hledger accounting tool.
|
||||||
This manual is for hledger-web 1.22.
|
This manual is for hledger-web 1.22.99.
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.PP
|
.PP
|
||||||
\f[C]hledger-web [OPTIONS]\f[R]
|
\f[C]hledger-web [OPTIONS]\f[R]
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
This is hledger-web/hledger-web.info, produced by makeinfo version 4.8
|
This is hledger-web.info, produced by makeinfo version 6.8 from stdin.
|
||||||
from stdin.
|
|
||||||
|
|
||||||
INFO-DIR-SECTION User Applications
|
INFO-DIR-SECTION User Applications
|
||||||
START-INFO-DIR-ENTRY
|
START-INFO-DIR-ENTRY
|
||||||
@ -7,16 +6,16 @@ START-INFO-DIR-ENTRY
|
|||||||
END-INFO-DIR-ENTRY
|
END-INFO-DIR-ENTRY
|
||||||
|
|
||||||
|
|
||||||
File: hledger-web.info, Node: Top, Up: (dir)
|
File: hledger-web.info, Node: Top, Next: OPTIONS, Up: (dir)
|
||||||
|
|
||||||
hledger-web(1)
|
hledger-web(1)
|
||||||
**************
|
**************
|
||||||
|
|
||||||
hledger-web is a web interface (WUI) for the hledger accounting tool.
|
hledger-web is a web interface (WUI) for the hledger accounting tool.
|
||||||
This manual is for hledger-web 1.22.
|
This manual is for hledger-web 1.22.99.
|
||||||
|
|
||||||
`hledger-web [OPTIONS]'
|
'hledger-web [OPTIONS]'
|
||||||
`hledger web -- [OPTIONS]'
|
'hledger web -- [OPTIONS]'
|
||||||
|
|
||||||
hledger is a reliable, cross-platform set of programs for tracking
|
hledger is a reliable, cross-platform set of programs for tracking
|
||||||
money, time, or any other commodity, using double-entry accounting and a
|
money, time, or any other commodity, using double-entry accounting and a
|
||||||
@ -25,21 +24,22 @@ compatible with ledger(1).
|
|||||||
|
|
||||||
hledger-web is hledger's web interface. It starts a simple web
|
hledger-web is hledger's web interface. It starts a simple web
|
||||||
application for browsing and adding transactions, and optionally opens
|
application for browsing and adding transactions, and optionally opens
|
||||||
it in a web browser window if possible. It provides a more user-friendly
|
it in a web browser window if possible. It provides a more
|
||||||
UI than the hledger CLI or hledger-ui interface, showing more at once
|
user-friendly UI than the hledger CLI or hledger-ui interface, showing
|
||||||
(accounts, the current account register, balance charts) and allowing
|
more at once (accounts, the current account register, balance charts)
|
||||||
history-aware data entry, interactive searching, and bookmarking.
|
and allowing history-aware data entry, interactive searching, and
|
||||||
|
bookmarking.
|
||||||
|
|
||||||
hledger-web also lets you share a ledger with multiple users, or even
|
hledger-web also lets you share a ledger with multiple users, or even
|
||||||
the public web. There is no access control, so if you need that you
|
the public web. There is no access control, so if you need that you
|
||||||
should put it behind a suitable web proxy. As a small protection against
|
should put it behind a suitable web proxy. As a small protection
|
||||||
data loss when running an unprotected instance, it writes a numbered
|
against data loss when running an unprotected instance, it writes a
|
||||||
backup of the main journal file (only ?) on every edit.
|
numbered backup of the main journal file (only ?) on every edit.
|
||||||
|
|
||||||
Like hledger, it reads data from one or more files in hledger
|
Like hledger, it reads data from one or more files in hledger
|
||||||
journal, timeclock, timedot, or CSV format specified with `-f', or
|
journal, timeclock, timedot, or CSV format specified with '-f', or
|
||||||
`$LEDGER_FILE', or `$HOME/.hledger.journal' (on windows, perhaps
|
'$LEDGER_FILE', or '$HOME/.hledger.journal' (on windows, perhaps
|
||||||
`C:/Users/USER/.hledger.journal'). For more about this see hledger(1).
|
'C:/Users/USER/.hledger.journal'). For more about this see hledger(1).
|
||||||
|
|
||||||
* Menu:
|
* Menu:
|
||||||
|
|
||||||
@ -62,158 +62,161 @@ Command-line options and arguments may be used to set an initial filter
|
|||||||
on the data. These filter options are not shown in the web UI, but it
|
on the data. These filter options are not shown in the web UI, but it
|
||||||
will be applied in addition to any search query entered there.
|
will be applied in addition to any search query entered there.
|
||||||
|
|
||||||
Note: if invoking hledger-web as a hledger subcommand, write `--'
|
Note: if invoking hledger-web as a hledger subcommand, write '--'
|
||||||
before options, as shown in the synopsis above.
|
before options, as shown in the synopsis above.
|
||||||
|
|
||||||
`--serve'
|
'--serve'
|
||||||
serve and log requests, don't browse or auto-exit
|
|
||||||
|
serve and log requests, don't browse or auto-exit
|
||||||
|
'--serve-api'
|
||||||
|
|
||||||
`--serve-api'
|
|
||||||
like -serve, but serve only the JSON web API, without the
|
like -serve, but serve only the JSON web API, without the
|
||||||
server-side web UI
|
server-side web UI
|
||||||
|
'--host=IPADDR'
|
||||||
|
|
||||||
`--host=IPADDR'
|
|
||||||
listen on this IP address (default: 127.0.0.1)
|
listen on this IP address (default: 127.0.0.1)
|
||||||
|
'--port=PORT'
|
||||||
|
|
||||||
`--port=PORT'
|
|
||||||
listen on this TCP port (default: 5000)
|
listen on this TCP port (default: 5000)
|
||||||
|
'--socket=SOCKETFILE'
|
||||||
|
|
||||||
`--socket=SOCKETFILE'
|
|
||||||
use a unix domain socket file to listen for requests instead of a
|
use a unix domain socket file to listen for requests instead of a
|
||||||
TCP socket. Implies `--serve'. It can only be used if the operating
|
TCP socket. Implies '--serve'. It can only be used if the
|
||||||
system can provide this type of socket.
|
operating system can provide this type of socket.
|
||||||
|
'--base-url=URL'
|
||||||
|
|
||||||
`--base-url=URL'
|
|
||||||
set the base url (default: http://IPADDR:PORT). You would change
|
set the base url (default: http://IPADDR:PORT). You would change
|
||||||
this when sharing over the network, or integrating within a larger
|
this when sharing over the network, or integrating within a larger
|
||||||
website.
|
website.
|
||||||
|
'--file-url=URL'
|
||||||
|
|
||||||
`--file-url=URL'
|
|
||||||
set the static files url (default: BASEURL/static). hledger-web
|
set the static files url (default: BASEURL/static). hledger-web
|
||||||
normally serves static files itself, but if you wanted to serve
|
normally serves static files itself, but if you wanted to serve
|
||||||
them from another server for efficiency, you would set the url
|
them from another server for efficiency, you would set the url with
|
||||||
with this.
|
this.
|
||||||
|
'--capabilities=CAP[,CAP..]'
|
||||||
|
|
||||||
`--capabilities=CAP[,CAP..]'
|
|
||||||
enable the view, add, and/or manage capabilities (default:
|
enable the view, add, and/or manage capabilities (default:
|
||||||
view,add)
|
view,add)
|
||||||
|
'--capabilities-header=HTTPHEADER'
|
||||||
|
|
||||||
`--capabilities-header=HTTPHEADER'
|
|
||||||
read capabilities to enable from a HTTP header, like
|
read capabilities to enable from a HTTP header, like
|
||||||
X-Sandstorm-Permissions (default: disabled)
|
X-Sandstorm-Permissions (default: disabled)
|
||||||
|
'--test'
|
||||||
|
|
||||||
`--test'
|
|
||||||
run hledger-web's tests and exit. hspec test runner args may
|
run hledger-web's tests and exit. hspec test runner args may
|
||||||
follow a -, eg: hledger-web -test - -help
|
follow a -, eg: hledger-web -test - -help
|
||||||
|
|
||||||
hledger input options:
|
hledger input options:
|
||||||
|
|
||||||
`-f FILE --file=FILE'
|
'-f FILE --file=FILE'
|
||||||
|
|
||||||
use a different input file. For stdin, use - (default:
|
use a different input file. For stdin, use - (default:
|
||||||
`$LEDGER_FILE' or `$HOME/.hledger.journal')
|
'$LEDGER_FILE' or '$HOME/.hledger.journal')
|
||||||
|
'--rules-file=RULESFILE'
|
||||||
|
|
||||||
`--rules-file=RULESFILE'
|
|
||||||
Conversion rules file to use when reading CSV (default: FILE.rules)
|
Conversion rules file to use when reading CSV (default: FILE.rules)
|
||||||
|
'--separator=CHAR'
|
||||||
|
|
||||||
`--separator=CHAR'
|
|
||||||
Field separator to expect when reading CSV (default: ',')
|
Field separator to expect when reading CSV (default: ',')
|
||||||
|
'--alias=OLD=NEW'
|
||||||
|
|
||||||
`--alias=OLD=NEW'
|
|
||||||
rename accounts named OLD to NEW
|
rename accounts named OLD to NEW
|
||||||
|
'--anon'
|
||||||
|
|
||||||
`--anon'
|
|
||||||
anonymize accounts and payees
|
anonymize accounts and payees
|
||||||
|
'--pivot FIELDNAME'
|
||||||
|
|
||||||
`--pivot FIELDNAME'
|
|
||||||
use some other field or tag for the account name
|
use some other field or tag for the account name
|
||||||
|
'-I --ignore-assertions'
|
||||||
|
|
||||||
`-I --ignore-assertions'
|
|
||||||
disable balance assertion checks (note: does not disable balance
|
disable balance assertion checks (note: does not disable balance
|
||||||
assignments)
|
assignments)
|
||||||
|
'-s --strict'
|
||||||
|
|
||||||
`-s --strict'
|
|
||||||
do extra error checking (check that all posted accounts are
|
do extra error checking (check that all posted accounts are
|
||||||
declared)
|
declared)
|
||||||
|
|
||||||
hledger reporting options:
|
hledger reporting options:
|
||||||
|
|
||||||
`-b --begin=DATE'
|
'-b --begin=DATE'
|
||||||
|
|
||||||
include postings/txns on or after this date (will be adjusted to
|
include postings/txns on or after this date (will be adjusted to
|
||||||
preceding subperiod start when using a report interval)
|
preceding subperiod start when using a report interval)
|
||||||
|
'-e --end=DATE'
|
||||||
|
|
||||||
`-e --end=DATE'
|
|
||||||
include postings/txns before this date (will be adjusted to
|
include postings/txns before this date (will be adjusted to
|
||||||
following subperiod end when using a report interval)
|
following subperiod end when using a report interval)
|
||||||
|
'-D --daily'
|
||||||
|
|
||||||
`-D --daily'
|
|
||||||
multiperiod/multicolumn report by day
|
multiperiod/multicolumn report by day
|
||||||
|
'-W --weekly'
|
||||||
|
|
||||||
`-W --weekly'
|
|
||||||
multiperiod/multicolumn report by week
|
multiperiod/multicolumn report by week
|
||||||
|
'-M --monthly'
|
||||||
|
|
||||||
`-M --monthly'
|
|
||||||
multiperiod/multicolumn report by month
|
multiperiod/multicolumn report by month
|
||||||
|
'-Q --quarterly'
|
||||||
|
|
||||||
`-Q --quarterly'
|
|
||||||
multiperiod/multicolumn report by quarter
|
multiperiod/multicolumn report by quarter
|
||||||
|
'-Y --yearly'
|
||||||
|
|
||||||
`-Y --yearly'
|
|
||||||
multiperiod/multicolumn report by year
|
multiperiod/multicolumn report by year
|
||||||
|
'-p --period=PERIODEXP'
|
||||||
|
|
||||||
`-p --period=PERIODEXP'
|
|
||||||
set start date, end date, and/or reporting interval all at once
|
set start date, end date, and/or reporting interval all at once
|
||||||
using period expressions syntax
|
using period expressions syntax
|
||||||
|
'--date2'
|
||||||
|
|
||||||
`--date2'
|
|
||||||
match the secondary date instead (see command help for other
|
match the secondary date instead (see command help for other
|
||||||
effects)
|
effects)
|
||||||
|
'-U --unmarked'
|
||||||
|
|
||||||
`-U --unmarked'
|
|
||||||
include only unmarked postings/txns (can combine with -P or -C)
|
include only unmarked postings/txns (can combine with -P or -C)
|
||||||
|
'-P --pending'
|
||||||
|
|
||||||
`-P --pending'
|
|
||||||
include only pending postings/txns
|
include only pending postings/txns
|
||||||
|
'-C --cleared'
|
||||||
|
|
||||||
`-C --cleared'
|
|
||||||
include only cleared postings/txns
|
include only cleared postings/txns
|
||||||
|
'-R --real'
|
||||||
|
|
||||||
`-R --real'
|
|
||||||
include only non-virtual postings
|
include only non-virtual postings
|
||||||
|
'-NUM --depth=NUM'
|
||||||
|
|
||||||
`-NUM --depth=NUM'
|
|
||||||
hide/aggregate accounts or postings more than NUM levels deep
|
hide/aggregate accounts or postings more than NUM levels deep
|
||||||
|
'-E --empty'
|
||||||
|
|
||||||
`-E --empty'
|
|
||||||
show items with zero amount, normally hidden (and vice-versa in
|
show items with zero amount, normally hidden (and vice-versa in
|
||||||
hledger-ui/hledger-web)
|
hledger-ui/hledger-web)
|
||||||
|
'-B --cost'
|
||||||
|
|
||||||
`-B --cost'
|
|
||||||
convert amounts to their cost/selling amount at transaction time
|
convert amounts to their cost/selling amount at transaction time
|
||||||
|
'-V --market'
|
||||||
|
|
||||||
`-V --market'
|
|
||||||
convert amounts to their market value in default valuation
|
convert amounts to their market value in default valuation
|
||||||
commodities
|
commodities
|
||||||
|
'-X --exchange=COMM'
|
||||||
|
|
||||||
`-X --exchange=COMM'
|
|
||||||
convert amounts to their market value in commodity COMM
|
convert amounts to their market value in commodity COMM
|
||||||
|
'--value'
|
||||||
|
|
||||||
`--value'
|
|
||||||
convert amounts to cost or market value, more flexibly than
|
convert amounts to cost or market value, more flexibly than
|
||||||
-B/-V/-X
|
-B/-V/-X
|
||||||
|
'--infer-market-prices'
|
||||||
|
|
||||||
`--infer-market-prices'
|
|
||||||
use transaction prices (recorded with @ or @@) as additional market
|
use transaction prices (recorded with @ or @@) as additional market
|
||||||
prices, as if they were P directives
|
prices, as if they were P directives
|
||||||
|
'--auto'
|
||||||
|
|
||||||
`--auto'
|
|
||||||
apply automated posting rules to modify transactions.
|
apply automated posting rules to modify transactions.
|
||||||
|
'--forecast'
|
||||||
|
|
||||||
`--forecast'
|
|
||||||
generate future transactions from periodic transaction rules, for
|
generate future transactions from periodic transaction rules, for
|
||||||
the next 6 months or till report end date. In hledger-ui, also
|
the next 6 months or till report end date. In hledger-ui, also
|
||||||
make ordinary future transactions visible.
|
make ordinary future transactions visible.
|
||||||
|
'--color=WHEN (or --colour=WHEN)'
|
||||||
|
|
||||||
`--color=WHEN (or --colour=WHEN)'
|
|
||||||
Should color-supporting commands use ANSI color codes in text
|
Should color-supporting commands use ANSI color codes in text
|
||||||
output. 'auto' (default): whenever stdout seems to be a
|
output. 'auto' (default): whenever stdout seems to be a
|
||||||
color-supporting terminal. 'always' or 'yes': always, useful eg
|
color-supporting terminal. 'always' or 'yes': always, useful eg
|
||||||
@ -227,62 +230,62 @@ the last one takes precedence.
|
|||||||
|
|
||||||
hledger help options:
|
hledger help options:
|
||||||
|
|
||||||
`-h --help'
|
'-h --help'
|
||||||
|
|
||||||
show general or COMMAND help
|
show general or COMMAND help
|
||||||
|
'--man'
|
||||||
|
|
||||||
`--man'
|
|
||||||
show general or COMMAND user manual with man
|
show general or COMMAND user manual with man
|
||||||
|
'--info'
|
||||||
|
|
||||||
`--info'
|
|
||||||
show general or COMMAND user manual with info
|
show general or COMMAND user manual with info
|
||||||
|
'--version'
|
||||||
|
|
||||||
`--version'
|
|
||||||
show general or ADDONCMD version
|
show general or ADDONCMD version
|
||||||
|
'--debug[=N]'
|
||||||
|
|
||||||
`--debug[=N]'
|
|
||||||
show debug output (levels 1-9, default: 1)
|
show debug output (levels 1-9, default: 1)
|
||||||
|
|
||||||
A @FILE argument will be expanded to the contents of FILE, which
|
A @FILE argument will be expanded to the contents of FILE, which
|
||||||
should contain one command line option/argument per line. (To prevent
|
should contain one command line option/argument per line. (To prevent
|
||||||
this, insert a `--' argument before.)
|
this, insert a '--' argument before.)
|
||||||
|
|
||||||
By default, hledger-web starts the web app in "transient mode" and
|
By default, hledger-web starts the web app in "transient mode" and
|
||||||
also opens it in your default web browser if possible. In this mode the
|
also opens it in your default web browser if possible. In this mode the
|
||||||
web app will keep running for as long as you have it open in a browser
|
web app will keep running for as long as you have it open in a browser
|
||||||
window, and will exit after two minutes of inactivity (no requests and
|
window, and will exit after two minutes of inactivity (no requests and
|
||||||
no browser windows viewing it). With `--serve', it just runs the web
|
no browser windows viewing it). With '--serve', it just runs the web
|
||||||
app without exiting, and logs requests to the console. With
|
app without exiting, and logs requests to the console. With
|
||||||
`--serve-api', only the JSON web api (see below) is served, with the
|
'--serve-api', only the JSON web api (see below) is served, with the
|
||||||
usual HTML server-side web UI disabled.
|
usual HTML server-side web UI disabled.
|
||||||
|
|
||||||
By default the server listens on IP address 127.0.0.1, accessible
|
By default the server listens on IP address 127.0.0.1, accessible
|
||||||
only to local requests. You can use `--host' to change this, eg `--host
|
only to local requests. You can use '--host' to change this, eg '--host
|
||||||
0.0.0.0' to listen on all configured addresses.
|
0.0.0.0' to listen on all configured addresses.
|
||||||
|
|
||||||
Similarly, use `--port' to set a TCP port other than 5000, eg if you
|
Similarly, use '--port' to set a TCP port other than 5000, eg if you
|
||||||
are running multiple hledger-web instances.
|
are running multiple hledger-web instances.
|
||||||
|
|
||||||
Both of these options are ignored when `--socket' is used. In this
|
Both of these options are ignored when '--socket' is used. In this
|
||||||
case, it creates an `AF_UNIX' socket file at the supplied path and uses
|
case, it creates an 'AF_UNIX' socket file at the supplied path and uses
|
||||||
that for communication. This is an alternative way of running multiple
|
that for communication. This is an alternative way of running multiple
|
||||||
hledger-web instances behind a reverse proxy that handles
|
hledger-web instances behind a reverse proxy that handles authentication
|
||||||
authentication for different users. The path can be derived in a
|
for different users. The path can be derived in a predictable way, eg
|
||||||
predictable way, eg by using the username within the path. As an
|
by using the username within the path. As an example, 'nginx' as
|
||||||
example, `nginx' as reverse proxy can use the variable `$remote_user'
|
reverse proxy can use the variable '$remote_user' to derive a path from
|
||||||
to derive a path from the username used in a HTTP basic authentication.
|
the username used in a HTTP basic authentication. The following
|
||||||
The following `proxy_pass' directive allows access to all `hledger-web'
|
'proxy_pass' directive allows access to all 'hledger-web' instances that
|
||||||
instances that created a socket in `/tmp/hledger/':
|
created a socket in '/tmp/hledger/':
|
||||||
|
|
||||||
|
|
||||||
proxy_pass http://unix:/tmp/hledger/${remote_user}.socket;
|
proxy_pass http://unix:/tmp/hledger/${remote_user}.socket;
|
||||||
|
|
||||||
You can use `--base-url' to change the protocol, hostname, port and
|
You can use '--base-url' to change the protocol, hostname, port and
|
||||||
path that appear in hyperlinks, useful eg for integrating hledger-web
|
path that appear in hyperlinks, useful eg for integrating hledger-web
|
||||||
within a larger website. The default is `http://HOST:PORT/' using the
|
within a larger website. The default is 'http://HOST:PORT/' using the
|
||||||
server's configured host address and TCP port (or `http://HOST' if PORT
|
server's configured host address and TCP port (or 'http://HOST' if PORT
|
||||||
is 80).
|
is 80).
|
||||||
|
|
||||||
With `--file-url' you can set a different base url for static files,
|
With '--file-url' you can set a different base url for static files,
|
||||||
eg for better caching or cookie-less serving on high performance
|
eg for better caching or cookie-less serving on high performance
|
||||||
websites.
|
websites.
|
||||||
|
|
||||||
@ -297,29 +300,25 @@ journal and to add new transactions, but not to change existing data.
|
|||||||
|
|
||||||
You can restrict who can reach it by
|
You can restrict who can reach it by
|
||||||
|
|
||||||
* setting the IP address it listens on (see `--host' above). By
|
* setting the IP address it listens on (see '--host' above). By
|
||||||
default it listens on 127.0.0.1, accessible to all users on the
|
default it listens on 127.0.0.1, accessible to all users on the
|
||||||
local machine.
|
local machine.
|
||||||
|
|
||||||
* putting it behind an authenticating proxy, using eg apache or nginx
|
* putting it behind an authenticating proxy, using eg apache or nginx
|
||||||
|
|
||||||
* custom firewall rules
|
* custom firewall rules
|
||||||
|
|
||||||
You can restrict what the users who reach it can do, by
|
You can restrict what the users who reach it can do, by
|
||||||
|
|
||||||
* using the `--capabilities=CAP[,CAP..]' flag when you start it,
|
* using the '--capabilities=CAP[,CAP..]' flag when you start it,
|
||||||
enabling one or more of the following capabilities. The default
|
enabling one or more of the following capabilities. The default
|
||||||
value is `view,add':
|
value is 'view,add':
|
||||||
* `view' - allows viewing the journal file and all included
|
* 'view' - allows viewing the journal file and all included
|
||||||
files
|
files
|
||||||
|
* 'add' - allows adding new transactions to the main journal
|
||||||
* `add' - allows adding new transactions to the main journal
|
|
||||||
file
|
file
|
||||||
|
* 'manage' - allows editing, uploading or downloading the main
|
||||||
* `manage' - allows editing, uploading or downloading the main
|
|
||||||
or included files
|
or included files
|
||||||
|
|
||||||
* using the `--capabilities-header=HTTPHEADER' flag to specify a HTTP
|
* using the '--capabilities-header=HTTPHEADER' flag to specify a HTTP
|
||||||
header from which it will read capabilities to enable. hledger-web
|
header from which it will read capabilities to enable. hledger-web
|
||||||
on Sandstorm uses the X-Sandstorm-Permissions header to integrate
|
on Sandstorm uses the X-Sandstorm-Permissions header to integrate
|
||||||
with Sandstorm's permissions. This is disabled by default.
|
with Sandstorm's permissions. This is disabled by default.
|
||||||
@ -330,7 +329,7 @@ File: hledger-web.info, Node: EDITING UPLOADING DOWNLOADING, Next: RELOADING,
|
|||||||
3 EDITING, UPLOADING, DOWNLOADING
|
3 EDITING, UPLOADING, DOWNLOADING
|
||||||
*********************************
|
*********************************
|
||||||
|
|
||||||
If you enable the `manage' capability mentioned above, you'll see a new
|
If you enable the 'manage' capability mentioned above, you'll see a new
|
||||||
"spanner" button to the right of the search form. Clicking this will
|
"spanner" button to the right of the search form. Clicking this will
|
||||||
let you edit, upload, or download the journal file or any files it
|
let you edit, upload, or download the journal file or any files it
|
||||||
includes.
|
includes.
|
||||||
@ -371,15 +370,13 @@ File: hledger-web.info, Node: JSON API, Next: ENVIRONMENT, Prev: RELOADING,
|
|||||||
|
|
||||||
In addition to the web UI, hledger-web also serves a JSON API that can
|
In addition to the web UI, hledger-web also serves a JSON API that can
|
||||||
be used to get data or add new transactions. If you want the JSON API
|
be used to get data or add new transactions. If you want the JSON API
|
||||||
only, you can use the `--serve-api' flag. Eg:
|
only, you can use the '--serve-api' flag. Eg:
|
||||||
|
|
||||||
|
|
||||||
$ hledger-web -f examples/sample.journal --serve-api
|
$ hledger-web -f examples/sample.journal --serve-api
|
||||||
...
|
...
|
||||||
|
|
||||||
You can get JSON data from these routes:
|
You can get JSON data from these routes:
|
||||||
|
|
||||||
|
|
||||||
/version
|
/version
|
||||||
/accountnames
|
/accountnames
|
||||||
/transactions
|
/transactions
|
||||||
@ -392,7 +389,6 @@ $ hledger-web -f examples/sample.journal --serve-api
|
|||||||
command). (hledger-web's JSON does not include newlines, here we use
|
command). (hledger-web's JSON does not include newlines, here we use
|
||||||
python to prettify it):
|
python to prettify it):
|
||||||
|
|
||||||
|
|
||||||
$ curl -s http://127.0.0.1:5000/accountnames | python -m json.tool
|
$ curl -s http://127.0.0.1:5000/accountnames | python -m json.tool
|
||||||
[
|
[
|
||||||
"assets",
|
"assets",
|
||||||
@ -412,7 +408,6 @@ $ curl -s http://127.0.0.1:5000/accountnames | python -m json.tool
|
|||||||
|
|
||||||
Or all transactions:
|
Or all transactions:
|
||||||
|
|
||||||
|
|
||||||
$ curl -s http://127.0.0.1:5000/transactions | python -m json.tool
|
$ curl -s http://127.0.0.1:5000/transactions | python -m json.tool
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
@ -438,21 +433,20 @@ on the various data types, eg Transaction. And for a higher level
|
|||||||
understanding, see the journal manual.
|
understanding, see the journal manual.
|
||||||
|
|
||||||
In some cases there is outer JSON corresponding to a "Report" type.
|
In some cases there is outer JSON corresponding to a "Report" type.
|
||||||
To understand that, go to the Hledger.Web.Handler.MiscR haddock and
|
To understand that, go to the Hledger.Web.Handler.MiscR haddock and look
|
||||||
look at the source for the appropriate handler to see what it returns.
|
at the source for the appropriate handler to see what it returns. Eg
|
||||||
Eg for `/accounttransactions' it's getAccounttransactionsR, returning a
|
for '/accounttransactions' it's getAccounttransactionsR, returning a
|
||||||
"`accountTransactionsReport ...'". Looking up the haddock for that we
|
"'accountTransactionsReport ...'". Looking up the haddock for that we
|
||||||
can see that /accounttransactions returns an AccountTransactionsReport,
|
can see that /accounttransactions returns an AccountTransactionsReport,
|
||||||
which consists of a report title and a list of
|
which consists of a report title and a list of
|
||||||
AccountTransactionsReportItem (etc).
|
AccountTransactionsReportItem (etc).
|
||||||
|
|
||||||
You can add a new transaction to the journal with a PUT request to
|
You can add a new transaction to the journal with a PUT request to
|
||||||
`/add', if hledger-web was started with the `add' capability (enabled
|
'/add', if hledger-web was started with the 'add' capability (enabled by
|
||||||
by default). The payload must be the full, exact JSON representation of
|
default). The payload must be the full, exact JSON representation of a
|
||||||
a hledger transaction (partial data won't do). You can get sample JSON
|
hledger transaction (partial data won't do). You can get sample JSON
|
||||||
from hledger-web's `/transactions' or `/accounttransactions', or you
|
from hledger-web's '/transactions' or '/accounttransactions', or you can
|
||||||
can export it with hledger-lib, eg like so:
|
export it with hledger-lib, eg like so:
|
||||||
|
|
||||||
|
|
||||||
.../hledger$ stack ghci hledger-lib
|
.../hledger$ stack ghci hledger-lib
|
||||||
>>> writeJsonFile "txn.json" (head $ jtxns samplejournal)
|
>>> writeJsonFile "txn.json" (head $ jtxns samplejournal)
|
||||||
@ -461,7 +455,6 @@ can export it with hledger-lib, eg like so:
|
|||||||
Here's how it looks as of hledger-1.17 (remember, this JSON
|
Here's how it looks as of hledger-1.17 (remember, this JSON
|
||||||
corresponds to hledger's Transaction and related data types):
|
corresponds to hledger's Transaction and related data types):
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
"tcomment": "",
|
"tcomment": "",
|
||||||
"tpostings": [
|
"tpostings": [
|
||||||
@ -551,7 +544,6 @@ corresponds to hledger's Transaction and related data types):
|
|||||||
And here's how to test adding it with curl. This should add a new
|
And here's how to test adding it with curl. This should add a new
|
||||||
entry to your journal:
|
entry to your journal:
|
||||||
|
|
||||||
|
|
||||||
$ curl http://127.0.0.1:5000/add -X PUT -H 'Content-Type: application/json' --data-binary @txn.json
|
$ curl http://127.0.0.1:5000/add -X PUT -H 'Content-Type: application/json' --data-binary @txn.json
|
||||||
|
|
||||||
|
|
||||||
@ -560,26 +552,25 @@ File: hledger-web.info, Node: ENVIRONMENT, Next: FILES, Prev: JSON API, Up:
|
|||||||
6 ENVIRONMENT
|
6 ENVIRONMENT
|
||||||
*************
|
*************
|
||||||
|
|
||||||
*LEDGER_FILE* The journal file path when not specified with `-f'.
|
*LEDGER_FILE* The journal file path when not specified with '-f'.
|
||||||
Default: `~/.hledger.journal' (on windows, perhaps
|
Default: '~/.hledger.journal' (on windows, perhaps
|
||||||
`C:/Users/USER/.hledger.journal').
|
'C:/Users/USER/.hledger.journal').
|
||||||
|
|
||||||
A typical value is `~/DIR/YYYY.journal', where DIR is a
|
A typical value is '~/DIR/YYYY.journal', where DIR is a
|
||||||
version-controlled finance directory and YYYY is the current year. Or
|
version-controlled finance directory and YYYY is the current year. Or
|
||||||
`~/DIR/current.journal', where current.journal is a symbolic link to
|
'~/DIR/current.journal', where current.journal is a symbolic link to
|
||||||
YYYY.journal.
|
YYYY.journal.
|
||||||
|
|
||||||
On Mac computers, you can set this and other environment variables
|
On Mac computers, you can set this and other environment variables in
|
||||||
in a more thorough way that also affects applications started from the
|
a more thorough way that also affects applications started from the GUI
|
||||||
GUI (say, an Emacs dock icon). Eg on MacOS Catalina I have a
|
(say, an Emacs dock icon). Eg on MacOS Catalina I have a
|
||||||
`~/.MacOSX/environment.plist' file containing
|
'~/.MacOSX/environment.plist' file containing
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
"LEDGER_FILE" : "~/finance/current.journal"
|
"LEDGER_FILE" : "~/finance/current.journal"
|
||||||
}
|
}
|
||||||
|
|
||||||
To see the effect you may need to `killall Dock', or reboot.
|
To see the effect you may need to 'killall Dock', or reboot.
|
||||||
|
|
||||||
|
|
||||||
File: hledger-web.info, Node: FILES, Next: BUGS, Prev: ENVIRONMENT, Up: Top
|
File: hledger-web.info, Node: FILES, Next: BUGS, Prev: ENVIRONMENT, Up: Top
|
||||||
@ -588,9 +579,9 @@ File: hledger-web.info, Node: FILES, Next: BUGS, Prev: ENVIRONMENT, Up: Top
|
|||||||
*******
|
*******
|
||||||
|
|
||||||
Reads data from one or more files in hledger journal, timeclock,
|
Reads data from one or more files in hledger journal, timeclock,
|
||||||
timedot, or CSV format specified with `-f', or `$LEDGER_FILE', or
|
timedot, 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').
|
||||||
|
|
||||||
|
|
||||||
File: hledger-web.info, Node: BUGS, Prev: FILES, Up: Top
|
File: hledger-web.info, Node: BUGS, Prev: FILES, Up: Top
|
||||||
@ -598,10 +589,10 @@ File: hledger-web.info, Node: BUGS, Prev: FILES, Up: Top
|
|||||||
8 BUGS
|
8 BUGS
|
||||||
******
|
******
|
||||||
|
|
||||||
The need to precede options with `--' when invoked from hledger is
|
The need to precede options with '--' when invoked from hledger is
|
||||||
awkward.
|
awkward.
|
||||||
|
|
||||||
`-f-' doesn't work (hledger-web can't read from stdin).
|
'-f-' doesn't work (hledger-web can't read from stdin).
|
||||||
|
|
||||||
Query arguments and some hledger options are ignored.
|
Query arguments and some hledger options are ignored.
|
||||||
|
|
||||||
@ -609,25 +600,29 @@ awkward.
|
|||||||
|
|
||||||
Does not work well on small screens.
|
Does not work well on small screens.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Tag Table:
|
Tag Table:
|
||||||
Node: Top235
|
Node: Top223
|
||||||
Node: OPTIONS1875
|
Node: OPTIONS1889
|
||||||
Ref: #options1980
|
Ref: #options1994
|
||||||
Node: PERMISSIONS9393
|
Node: PERMISSIONS9427
|
||||||
Ref: #permissions9532
|
Ref: #permissions9566
|
||||||
Node: EDITING UPLOADING DOWNLOADING10744
|
Node: EDITING UPLOADING DOWNLOADING10778
|
||||||
Ref: #editing-uploading-downloading10925
|
Ref: #editing-uploading-downloading10959
|
||||||
Node: RELOADING11756
|
Node: RELOADING11793
|
||||||
Ref: #reloading11890
|
Ref: #reloading11927
|
||||||
Node: JSON API12322
|
Node: JSON API12360
|
||||||
Ref: #json-api12436
|
Ref: #json-api12474
|
||||||
Node: ENVIRONMENT17925
|
Node: ENVIRONMENT17964
|
||||||
Ref: #environment18041
|
Ref: #environment18080
|
||||||
Node: FILES18773
|
Node: FILES18813
|
||||||
Ref: #files18873
|
Ref: #files18913
|
||||||
Node: BUGS19086
|
Node: BUGS19126
|
||||||
Ref: #bugs19164
|
Ref: #bugs19204
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
|
||||||
|
|
||||||
|
Local Variables:
|
||||||
|
coding: utf-8
|
||||||
|
End:
|
||||||
|
|||||||
@ -5,7 +5,7 @@ HLEDGER-WEB(1) hledger User Manuals HLEDGER-WEB(1)
|
|||||||
|
|
||||||
NAME
|
NAME
|
||||||
hledger-web is a web interface (WUI) for the hledger accounting tool.
|
hledger-web is a web interface (WUI) for the hledger accounting tool.
|
||||||
This manual is for hledger-web 1.22.
|
This manual is for hledger-web 1.22.99.
|
||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
hledger-web [OPTIONS]
|
hledger-web [OPTIONS]
|
||||||
@ -556,4 +556,4 @@ SEE ALSO
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
hledger-web-1.22 July 2021 HLEDGER-WEB(1)
|
hledger-web-1.22.99 August 2021 HLEDGER-WEB(1)
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
.\"t
|
.\"t
|
||||||
|
|
||||||
.TH "HLEDGER" "1" "July 2021" "hledger-1.22 " "hledger User Manuals"
|
.TH "HLEDGER" "1" "August 2021" "hledger-1.22.99 " "hledger User Manuals"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -9,7 +9,7 @@
|
|||||||
This is the command-line interface (CLI) for the hledger accounting
|
This is the command-line interface (CLI) for the hledger accounting
|
||||||
tool.
|
tool.
|
||||||
Here we also describe hledger\[aq]s concepts and file formats.
|
Here we also describe hledger\[aq]s concepts and file formats.
|
||||||
This manual is for hledger 1.22.
|
This manual is for hledger 1.22.99.
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.PP
|
.PP
|
||||||
\f[C]hledger\f[R]
|
\f[C]hledger\f[R]
|
||||||
@ -2511,30 +2511,23 @@ aregister, areg
|
|||||||
.P
|
.P
|
||||||
.PD
|
.PD
|
||||||
.PP
|
.PP
|
||||||
Show the transactions and running historical balance in an account, with
|
Show the transactions and running historical balance of a single
|
||||||
each line item representing one transaction.
|
account, with each transaction displayed as one line.
|
||||||
.PP
|
.PP
|
||||||
\f[C]aregister\f[R] shows the transactions affecting a particular
|
\f[C]aregister\f[R] shows the overall transactions affecting a
|
||||||
account and its subaccounts, with each line item representing a whole
|
particular account (and any subaccounts).
|
||||||
transaction - as in bank statements, hledger-ui, hledger-web and other
|
Each report line represents one transaction in this account.
|
||||||
accounting apps.
|
Transactions before the report start date are always included in the
|
||||||
|
running balance (\f[C]--historical\f[R] mode is always on).
|
||||||
.PP
|
.PP
|
||||||
Note this is unlike the \f[C]register\f[R] command, which shows
|
This is a more \[dq]real world\[dq], bank-like view than the
|
||||||
individual postings and does not always show a single account or a
|
\f[C]register\f[R] command (which shows individual postings, possibly
|
||||||
historical balance.
|
from multiple accounts, not necessarily in historical mode).
|
||||||
|
As a quick rule of thumb: - use \f[C]aregister\f[R] for reviewing and
|
||||||
|
reconciling real-world asset/liability accounts - use \f[C]register\f[R]
|
||||||
|
for reviewing detailed revenues/expenses.
|
||||||
.PP
|
.PP
|
||||||
A reminder, \[dq]historical\[dq] balances include any balance from
|
\f[C]aregister\f[R] requires one argument: the account to report on.
|
||||||
transactions before the report start date, so (if opening balances are
|
|
||||||
recorded correctly) \f[C]aregister\f[R] will show the real-world
|
|
||||||
balances of an account, as you would see in a bank statement.
|
|
||||||
.PP
|
|
||||||
As a quick rule of thumb, use \f[C]aregister\f[R] for reconciling
|
|
||||||
real-world asset/liability accounts and \f[C]register\f[R] for reviewing
|
|
||||||
detailed revenues/expenses.
|
|
||||||
.PP
|
|
||||||
\f[C]aregister\f[R] shows the register for just one account (and its
|
|
||||||
subaccounts).
|
|
||||||
This account must be specified as the first argument.
|
|
||||||
You can write either the full account name, or a case-insensitive
|
You can write either the full account name, or a case-insensitive
|
||||||
regular expression which will select the alphabetically first matched
|
regular expression which will select the alphabetically first matched
|
||||||
account.
|
account.
|
||||||
@ -2542,8 +2535,24 @@ account.
|
|||||||
\f[C]assets:bbb:checking\f[R] accounts, \f[C]hledger areg checking\f[R]
|
\f[C]assets:bbb:checking\f[R] accounts, \f[C]hledger areg checking\f[R]
|
||||||
would select \f[C]assets:aaa:checking\f[R].)
|
would select \f[C]assets:aaa:checking\f[R].)
|
||||||
.PP
|
.PP
|
||||||
|
Transactions involving subaccounts of this account will also be shown.
|
||||||
|
\f[C]aregister\f[R] ignores depth limits, so its final total will always
|
||||||
|
match a balance report with similar arguments.
|
||||||
|
.PP
|
||||||
Any additional arguments form a query which will filter the transactions
|
Any additional arguments form a query which will filter the transactions
|
||||||
shown.
|
shown.
|
||||||
|
Note some queries will disturb the running balance, causing it to be
|
||||||
|
different from the account\[aq]s real-world running balance.
|
||||||
|
.PP
|
||||||
|
An example: this shows the transactions and historical running balance
|
||||||
|
during july, in the first account whose name contains
|
||||||
|
\[dq]checking\[dq]:
|
||||||
|
.IP
|
||||||
|
.nf
|
||||||
|
\f[C]
|
||||||
|
$ hledger areg checking date:jul
|
||||||
|
\f[R]
|
||||||
|
.fi
|
||||||
.PP
|
.PP
|
||||||
Each \f[C]aregister\f[R] line item shows:
|
Each \f[C]aregister\f[R] line item shows:
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
@ -2560,12 +2569,10 @@ the account\[aq]s historical running balance after this transaction.
|
|||||||
Transactions making a net change of zero are not shown by default; add
|
Transactions making a net change of zero are not shown by default; add
|
||||||
the \f[C]-E/--empty\f[R] flag to show them.
|
the \f[C]-E/--empty\f[R] flag to show them.
|
||||||
.PP
|
.PP
|
||||||
\f[C]aregister\f[R] ignores a depth limit, so its final total will
|
|
||||||
always match a balance report with similar arguments.
|
|
||||||
.PP
|
|
||||||
This command also supports the output destination and output format
|
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],
|
options.
|
||||||
and \f[C]json\f[R].
|
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
|
.SS aregister and custom posting dates
|
||||||
.PP
|
.PP
|
||||||
Transactions whose date is outside the report period can still be shown,
|
Transactions whose date is outside the report period can still be shown,
|
||||||
@ -2579,26 +2586,6 @@ To filter strictly by transaction date instead, add the
|
|||||||
\f[C]--txn-dates\f[R] flag.
|
\f[C]--txn-dates\f[R] flag.
|
||||||
If you use this flag and some of your postings have custom dates,
|
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.
|
it\[aq]s probably best to assume the running balance is wrong.
|
||||||
.PP
|
|
||||||
Examples:
|
|
||||||
.PP
|
|
||||||
Show all transactions and historical running balance in the first
|
|
||||||
account whose name contains \[dq]checking\[dq]:
|
|
||||||
.IP
|
|
||||||
.nf
|
|
||||||
\f[C]
|
|
||||||
$ hledger areg checking
|
|
||||||
\f[R]
|
|
||||||
.fi
|
|
||||||
.PP
|
|
||||||
Show transactions and historical running balance in all asset accounts
|
|
||||||
during july:
|
|
||||||
.IP
|
|
||||||
.nf
|
|
||||||
\f[C]
|
|
||||||
$ hledger areg assets date:jul
|
|
||||||
\f[R]
|
|
||||||
.fi
|
|
||||||
.SS balance
|
.SS balance
|
||||||
.PP
|
.PP
|
||||||
balance, bal
|
balance, bal
|
||||||
@ -2680,6 +2667,9 @@ another field used as account name (\f[C]--pivot\f[R])
|
|||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
custom-formatted line items (single-period reports only)
|
custom-formatted line items (single-period reports only)
|
||||||
(\f[C]--format\f[R])
|
(\f[C]--format\f[R])
|
||||||
|
.IP \[bu] 2
|
||||||
|
commodities shown in a separate column, one per row
|
||||||
|
(\f[C]--commodity-column\f[R])
|
||||||
.PP
|
.PP
|
||||||
This command supports the output destination and output format options,
|
This command supports the output destination and output format options,
|
||||||
with output formats \f[C]txt\f[R], \f[C]csv\f[R], \f[C]json\f[R], and
|
with output formats \f[C]txt\f[R], \f[C]csv\f[R], \f[C]json\f[R], and
|
||||||
@ -2898,6 +2888,68 @@ Output as CSV and use a CSV viewer like visidata
|
|||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
Output as HTML and view with a browser:
|
Output as HTML and view with a browser:
|
||||||
\f[C]hledger bal -D -o a.html && open a.html\f[R]
|
\f[C]hledger bal -D -o a.html && open a.html\f[R]
|
||||||
|
.SS Commodity column
|
||||||
|
.PP
|
||||||
|
With \f[C]--commodity-column\f[R], commodity symbols are displayed in a
|
||||||
|
separate column, and amounts are displayed as bare numbers.
|
||||||
|
In this mode, each report row will show amounts for a single commodity,
|
||||||
|
using extra rows when necessary.
|
||||||
|
It can be useful for a cleaner display of reports with many commodities:
|
||||||
|
.IP
|
||||||
|
.nf
|
||||||
|
\f[C]
|
||||||
|
$ hledger bal -T -Y
|
||||||
|
Balance changes in 2012-01-01..2014-12-31:
|
||||||
|
|
||||||
|
|| 2012 2013 2014 Total
|
||||||
|
==================++=============================================================================================================================
|
||||||
|
Assets:US:ETrade || 10.00 ITOT, 337.18 USD, 2 more.. 70.00 GLD, 18.00 ITOT, 3 more.. -11.00 ITOT, 3 more.. 70.00 GLD, 17.00 ITOT, 3 more..
|
||||||
|
------------------++-----------------------------------------------------------------------------------------------------------------------------
|
||||||
|
total || 10.00 ITOT, 337.18 USD, 2 more.. 70.00 GLD, 18.00 ITOT, 3 more.. -11.00 ITOT, 3 more.. 70.00 GLD, 17.00 ITOT, 3 more..
|
||||||
|
|
||||||
|
$ hledger bal -T -Y --commodity-column
|
||||||
|
Balance changes in 2012-01-01..2014-12-31:
|
||||||
|
|
||||||
|
|| Commodity 2012 2013 2014 Total
|
||||||
|
==================++=============================================
|
||||||
|
Assets:US:ETrade || GLD 0 70.00 0 70.00
|
||||||
|
Assets:US:ETrade || ITOT 10.00 18.00 -11.00 17.00
|
||||||
|
Assets:US:ETrade || USD 337.18 -98.12 4881.44 5120.50
|
||||||
|
Assets:US:ETrade || VEA 12.00 10.00 14.00 36.00
|
||||||
|
Assets:US:ETrade || VHT 106.00 18.00 170.00 294.00
|
||||||
|
------------------++---------------------------------------------
|
||||||
|
|| GLD 0 70.00 0 70.00
|
||||||
|
|| ITOT 10.00 18.00 -11.00 17.00
|
||||||
|
|| USD 337.18 -98.12 4881.44 5120.50
|
||||||
|
|| VEA 12.00 10.00 14.00 36.00
|
||||||
|
|| VHT 106.00 18.00 170.00 294.00
|
||||||
|
\f[R]
|
||||||
|
.fi
|
||||||
|
.PP
|
||||||
|
This flag also affects CSV output, which is useful for producing data
|
||||||
|
that is easier to consume, eg when making charts:
|
||||||
|
.IP
|
||||||
|
.nf
|
||||||
|
\f[C]
|
||||||
|
$ hledger bal -T -O csv
|
||||||
|
\[dq]account\[dq],\[dq]balance\[dq]
|
||||||
|
\[dq]Assets:US:ETrade\[dq],\[dq]70.00 GLD, 17.00 ITOT, 5120.50 USD, 36.00 VEA, 294.00 VHT\[dq]
|
||||||
|
\[dq]total\[dq],\[dq]70.00 GLD, 17.00 ITOT, 5120.50 USD, 36.00 VEA, 294.00 VHT\[dq]
|
||||||
|
|
||||||
|
$ hledger bal -T -O csv --commodity-column
|
||||||
|
\[dq]account\[dq],\[dq]commodity\[dq],\[dq]balance\[dq]
|
||||||
|
\[dq]Assets:US:ETrade\[dq],\[dq]GLD\[dq],\[dq]70.00\[dq]
|
||||||
|
\[dq]Assets:US:ETrade\[dq],\[dq]ITOT\[dq],\[dq]17.00\[dq]
|
||||||
|
\[dq]Assets:US:ETrade\[dq],\[dq]USD\[dq],\[dq]5120.50\[dq]
|
||||||
|
\[dq]Assets:US:ETrade\[dq],\[dq]VEA\[dq],\[dq]36.00\[dq]
|
||||||
|
\[dq]Assets:US:ETrade\[dq],\[dq]VHT\[dq],\[dq]294.00\[dq]
|
||||||
|
\[dq]total\[dq],\[dq]GLD\[dq],\[dq]70.00\[dq]
|
||||||
|
\[dq]total\[dq],\[dq]ITOT\[dq],\[dq]17.00\[dq]
|
||||||
|
\[dq]total\[dq],\[dq]USD\[dq],\[dq]5120.50\[dq]
|
||||||
|
\[dq]total\[dq],\[dq]VEA\[dq],\[dq]36.00\[dq]
|
||||||
|
\[dq]total\[dq],\[dq]VHT\[dq],\[dq]294.00\[dq]
|
||||||
|
\f[R]
|
||||||
|
.fi
|
||||||
.SS Sorting by amount
|
.SS Sorting by amount
|
||||||
.PP
|
.PP
|
||||||
With \f[C]-S/--sort-amount\f[R], accounts with the largest (most
|
With \f[C]-S/--sort-amount\f[R], accounts with the largest (most
|
||||||
@ -9017,70 +9069,111 @@ These rely on a \[dq]timeclock\[dq] executable which I think is just the
|
|||||||
ledger 2 executable renamed.
|
ledger 2 executable renamed.
|
||||||
.SH TIMEDOT FORMAT
|
.SH TIMEDOT FORMAT
|
||||||
.PP
|
.PP
|
||||||
hledger\[aq]s human-friendly time logging format.
|
\f[C]timedot\f[R] format is hledger\[aq]s human-friendly time logging
|
||||||
.PP
|
format.
|
||||||
Timedot is a plain text format for logging dated, categorised quantities
|
Compared to \f[C]timeclock\f[R] format, it is
|
||||||
(of time, usually), supported by hledger.
|
|
||||||
It is convenient for approximate and retroactive time logging, eg when
|
|
||||||
the real-time clock-in/out required with a timeclock file is too precise
|
|
||||||
or too interruptive.
|
|
||||||
It can be formatted like a bar chart, making clear at a glance where
|
|
||||||
time was spent.
|
|
||||||
.PP
|
|
||||||
Though called \[dq]timedot\[dq], this format is read by hledger as
|
|
||||||
commodityless quantities, so it could be used to represent dated
|
|
||||||
quantities other than time.
|
|
||||||
In the docs below we\[aq]ll assume it\[aq]s time.
|
|
||||||
.PP
|
|
||||||
A timedot file contains a series of day entries.
|
|
||||||
A day entry begins with a non-indented hledger-style simple date (Y-M-D,
|
|
||||||
Y/M/D, Y.M.D..) Any additional text on the same line is used as a
|
|
||||||
transaction description for this day.
|
|
||||||
.PP
|
|
||||||
This is followed by optionally-indented timelog items for that day, one
|
|
||||||
per line.
|
|
||||||
Each timelog item is a note, usually a hledger:style:account:name
|
|
||||||
representing a time category, followed by two or more spaces, and a
|
|
||||||
quantity.
|
|
||||||
Each timelog item generates a hledger transaction.
|
|
||||||
.PP
|
|
||||||
Quantities can be written as:
|
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
dots: a sequence of dots (.) representing quarter hours.
|
convenient for quick, approximate, and retroactive time logging
|
||||||
Spaces may optionally be used for grouping.
|
|
||||||
Eg: ....
|
|
||||||
\&..
|
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
an integral or decimal number, representing hours.
|
readable: you can see at a glance where time was spent.
|
||||||
Eg: 1.5
|
|
||||||
.IP \[bu] 2
|
|
||||||
an integral or decimal number immediately followed by a unit symbol
|
|
||||||
\f[C]s\f[R], \f[C]m\f[R], \f[C]h\f[R], \f[C]d\f[R], \f[C]w\f[R],
|
|
||||||
\f[C]mo\f[R], or \f[C]y\f[R], representing seconds, minutes, hours, days
|
|
||||||
weeks, months or years respectively.
|
|
||||||
Eg: 90m.
|
|
||||||
The following equivalencies are assumed, currently: 1m = 60s, 1h = 60m,
|
|
||||||
1d = 24h, 1w = 7d, 1mo = 30d, 1y=365d.
|
|
||||||
.PP
|
.PP
|
||||||
There is some flexibility allowing notes and todo lists to be kept right
|
A timedot file contains a series of day entries, which might look like
|
||||||
in the time log, if needed:
|
this:
|
||||||
|
.IP
|
||||||
|
.nf
|
||||||
|
\f[C]
|
||||||
|
2021-08-04
|
||||||
|
hom:errands .... ....
|
||||||
|
fos:hledger:timedot .. ; docs
|
||||||
|
per:admin:finance
|
||||||
|
\f[R]
|
||||||
|
.fi
|
||||||
|
.PP
|
||||||
|
hledger reads this as three time transactions on this day, with each dot
|
||||||
|
representing a quarter-hour spent:
|
||||||
|
.IP
|
||||||
|
.nf
|
||||||
|
\f[C]
|
||||||
|
$ hledger -f a.timedot print # .timedot file extension activates the timedot reader
|
||||||
|
2021-08-04 *
|
||||||
|
(hom:errands) 2.00
|
||||||
|
|
||||||
|
2021-08-04 *
|
||||||
|
(fos:hledger:timedot) 0.50
|
||||||
|
|
||||||
|
2021-08-04 *
|
||||||
|
(per:admin:finance) 0
|
||||||
|
\f[R]
|
||||||
|
.fi
|
||||||
|
.PP
|
||||||
|
A day entry begins with a date line:
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
Blank lines and lines beginning with \f[C]#\f[R] or \f[C];\f[R] are
|
a non-indented \f[B]simple date\f[R] (Y-M-D, Y/M/D, or Y.M.D).
|
||||||
|
.PP
|
||||||
|
Optionally this can be followed on the same line by
|
||||||
|
.IP \[bu] 2
|
||||||
|
a common \f[B]transaction description\f[R] for this day
|
||||||
|
.IP \[bu] 2
|
||||||
|
a common \f[B]transaction comment\f[R] for this day, after a semicolon
|
||||||
|
(\f[C];\f[R]).
|
||||||
|
.PP
|
||||||
|
After the date line are zero or more optionally-indented time
|
||||||
|
transaction lines, consisting of:
|
||||||
|
.IP \[bu] 2
|
||||||
|
an \f[B]account name\f[R] - any word or phrase, usually a hledger-style
|
||||||
|
account name.
|
||||||
|
.IP \[bu] 2
|
||||||
|
\f[B]two or more spaces\f[R] - a field separator, required if there is
|
||||||
|
an amount (as in journal format).
|
||||||
|
.IP \[bu] 2
|
||||||
|
a \f[B]timedot amount\f[R] - dots representing quarter hours, or a
|
||||||
|
number representing hours.
|
||||||
|
.IP \[bu] 2
|
||||||
|
an optional \f[B]comment\f[R] beginning with semicolon.
|
||||||
|
This is ignored.
|
||||||
|
.PP
|
||||||
|
In more detail, timedot amounts can be:
|
||||||
|
.IP \[bu] 2
|
||||||
|
\f[B]dots\f[R]: zero or more period characters, each representing one
|
||||||
|
quarter-hour.
|
||||||
|
Spaces are ignored and can be used for grouping.
|
||||||
|
Eg: \f[C].... ..\f[R]
|
||||||
|
.IP \[bu] 2
|
||||||
|
a \f[B]number\f[R], representing hours.
|
||||||
|
Eg: \f[C]1.5\f[R]
|
||||||
|
.IP \[bu] 2
|
||||||
|
a \f[B]number immediately followed by a unit symbol\f[R] \f[C]s\f[R],
|
||||||
|
\f[C]m\f[R], \f[C]h\f[R], \f[C]d\f[R], \f[C]w\f[R], \f[C]mo\f[R], or
|
||||||
|
\f[C]y\f[R], representing seconds, minutes, hours, days weeks, months or
|
||||||
|
years.
|
||||||
|
Eg \f[C]1.5h\f[R] or \f[C]90m\f[R].
|
||||||
|
The following equivalencies are assumed:
|
||||||
|
.PD 0
|
||||||
|
.P
|
||||||
|
.PD
|
||||||
|
\f[C]60s\f[R] = \f[C]1m\f[R], \f[C]60m\f[R] = \f[C]1h\f[R],
|
||||||
|
\f[C]24h\f[R] = \f[C]1d\f[R], \f[C]7d\f[R] = \f[C]1w\f[R], \f[C]30d\f[R]
|
||||||
|
= \f[C]1mo\f[R], \f[C]365d\f[R] = \f[C]1y\f[R].
|
||||||
|
(This unit will not be visible in the generated transaction amount,
|
||||||
|
which is always in hours.)
|
||||||
|
.PP
|
||||||
|
There is some added flexibility to help with keeping time log data in
|
||||||
|
the same file as your notes, todo lists, etc.:
|
||||||
|
.IP \[bu] 2
|
||||||
|
Lines beginning with \f[C]#\f[R] or \f[C];\f[R], and blank lines, are
|
||||||
ignored.
|
ignored.
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
Lines not ending with a double-space and quantity are parsed as items
|
Lines not ending with a double-space and amount are parsed as
|
||||||
taking no time, which will not appear in balance reports by default.
|
transactions with zero amount.
|
||||||
(Add -E to see them.)
|
(Most hledger reports hide these by default; add -E to see them.)
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
Org mode headlines (lines beginning with one or more \f[C]*\f[R]
|
One or more stars (\f[C]*\f[R]) followed by a space, at the start of a
|
||||||
followed by a space) can be used as date lines or timelog items (the
|
line, is ignored.
|
||||||
stars are ignored).
|
So date lines or time transaction lines can also be Org-mode headlines.
|
||||||
Also all org headlines before the first date line are ignored.
|
.IP \[bu] 2
|
||||||
This means org users can manage their timelog as an org outline (eg
|
All Org-mode headlines before the first date line are ignored.
|
||||||
using org-mode/orgstruct-mode in Emacs), for organisation, faster
|
|
||||||
navigation, controlling visibility etc.
|
|
||||||
.PP
|
.PP
|
||||||
Examples:
|
More examples:
|
||||||
.IP
|
.IP
|
||||||
.nf
|
.nf
|
||||||
\f[C]
|
\f[C]
|
||||||
@ -9138,7 +9231,7 @@ Reporting:
|
|||||||
.IP
|
.IP
|
||||||
.nf
|
.nf
|
||||||
\f[C]
|
\f[C]
|
||||||
$ hledger -f t.timedot print date:2016/2/2
|
$ hledger -f a.timedot print date:2016/2/2
|
||||||
2016-02-02 *
|
2016-02-02 *
|
||||||
(inc:client1) 2.00
|
(inc:client1) 2.00
|
||||||
|
|
||||||
@ -9149,7 +9242,7 @@ $ hledger -f t.timedot print date:2016/2/2
|
|||||||
.IP
|
.IP
|
||||||
.nf
|
.nf
|
||||||
\f[C]
|
\f[C]
|
||||||
$ hledger -f t.timedot bal --daily --tree
|
$ hledger -f a.timedot bal --daily --tree
|
||||||
Balance changes in 2016-02-01-2016-02-03:
|
Balance changes in 2016-02-01-2016-02-03:
|
||||||
|
|
||||||
|| 2016-02-01d 2016-02-02d 2016-02-03d
|
|| 2016-02-01d 2016-02-02d 2016-02-03d
|
||||||
@ -9166,8 +9259,7 @@ Balance changes in 2016-02-01-2016-02-03:
|
|||||||
\f[R]
|
\f[R]
|
||||||
.fi
|
.fi
|
||||||
.PP
|
.PP
|
||||||
I prefer to use period for separating account components.
|
Using period instead of colon as account name separator:
|
||||||
We can make this work with an account alias:
|
|
||||||
.IP
|
.IP
|
||||||
.nf
|
.nf
|
||||||
\f[C]
|
\f[C]
|
||||||
@ -9179,7 +9271,7 @@ fos.ledger ..
|
|||||||
.IP
|
.IP
|
||||||
.nf
|
.nf
|
||||||
\f[C]
|
\f[C]
|
||||||
$ hledger -f t.timedot --alias /\[rs]\[rs]./=: bal date:2016/2/4 --tree
|
$ hledger -f a.timedot --alias /\[rs]\[rs]./=: bal --tree
|
||||||
4.50 fos
|
4.50 fos
|
||||||
4.00 hledger:timedot
|
4.00 hledger:timedot
|
||||||
0.50 ledger
|
0.50 ledger
|
||||||
@ -9188,7 +9280,7 @@ $ hledger -f t.timedot --alias /\[rs]\[rs]./=: bal date:2016/2/4 --tree
|
|||||||
\f[R]
|
\f[R]
|
||||||
.fi
|
.fi
|
||||||
.PP
|
.PP
|
||||||
Here is a sample.timedot.
|
A sample.timedot file.
|
||||||
.SH COMMON TASKS
|
.SH COMMON TASKS
|
||||||
.PP
|
.PP
|
||||||
Here are some quick examples of how to do some basic tasks with hledger.
|
Here are some quick examples of how to do some basic tasks with hledger.
|
||||||
|
|||||||
4189
hledger/hledger.info
4189
hledger/hledger.info
File diff suppressed because it is too large
Load Diff
@ -6,7 +6,7 @@ HLEDGER(1) hledger User Manuals HLEDGER(1)
|
|||||||
NAME
|
NAME
|
||||||
This is the command-line interface (CLI) for the hledger accounting
|
This is the command-line interface (CLI) for the hledger accounting
|
||||||
tool. Here we also describe hledger's concepts and file formats. This
|
tool. Here we also describe hledger's concepts and file formats. This
|
||||||
manual is for hledger 1.22.
|
manual is for hledger 1.22.99.
|
||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
hledger
|
hledger
|
||||||
@ -1677,34 +1677,38 @@ COMMANDS
|
|||||||
aregister
|
aregister
|
||||||
aregister, areg
|
aregister, areg
|
||||||
|
|
||||||
Show the transactions and running historical balance in an account,
|
Show the transactions and running historical balance of a single
|
||||||
with each line item representing one transaction.
|
account, with each transaction displayed as one line.
|
||||||
|
|
||||||
aregister shows the transactions affecting a particular account and its
|
aregister shows the overall transactions affecting a particular account
|
||||||
subaccounts, with each line item representing a whole transaction - as
|
(and any subaccounts). Each report line represents one transaction in
|
||||||
in bank statements, hledger-ui, hledger-web and other accounting apps.
|
this account. Transactions before the report start date are always
|
||||||
|
included in the running balance (--historical mode is always on).
|
||||||
|
|
||||||
Note this is unlike the register command, which shows individual post-
|
This is a more "real world", bank-like view than the register command
|
||||||
ings and does not always show a single account or a historical balance.
|
(which shows individual postings, possibly from multiple accounts, not
|
||||||
|
necessarily in historical mode). As a quick rule of thumb: - use areg-
|
||||||
|
ister for reviewing and reconciling real-world asset/liability accounts
|
||||||
|
- use register for reviewing detailed revenues/expenses.
|
||||||
|
|
||||||
A reminder, "historical" balances include any balance from transactions
|
aregister requires one argument: the account to report on. You can
|
||||||
before the report start date, so (if opening balances are recorded cor-
|
write either the full account name, or a case-insensitive regular
|
||||||
rectly) aregister will show the real-world balances of an account, as
|
|
||||||
you would see in a bank statement.
|
|
||||||
|
|
||||||
As a quick rule of thumb, use aregister for reconciling real-world
|
|
||||||
asset/liability accounts and register for reviewing detailed rev-
|
|
||||||
enues/expenses.
|
|
||||||
|
|
||||||
aregister shows the register for just one account (and its subac-
|
|
||||||
counts). This account must be specified as the first argument. You
|
|
||||||
can write either the full account name, or a case-insensitive regular
|
|
||||||
expression which will select the alphabetically first matched account.
|
expression which will select the alphabetically first matched account.
|
||||||
(Eg if you have assets:aaa:checking and assets:bbb:checking accounts,
|
(Eg if you have assets:aaa:checking and assets:bbb:checking accounts,
|
||||||
hledger areg checking would select assets:aaa:checking.)
|
hledger areg checking would select assets:aaa:checking.)
|
||||||
|
|
||||||
|
Transactions involving subaccounts of this account will also be shown.
|
||||||
|
aregister ignores depth limits, so its final total will always match a
|
||||||
|
balance report with similar arguments.
|
||||||
|
|
||||||
Any additional arguments form a query which will filter the transac-
|
Any additional arguments form a query which will filter the transac-
|
||||||
tions shown.
|
tions shown. Note some queries will disturb the running balance, caus-
|
||||||
|
ing it to be different from the account's real-world running balance.
|
||||||
|
|
||||||
|
An example: this shows the transactions and historical running balance
|
||||||
|
during july, in the first account whose name contains "checking":
|
||||||
|
|
||||||
|
$ hledger areg checking date:jul
|
||||||
|
|
||||||
Each aregister line item shows:
|
Each aregister line item shows:
|
||||||
|
|
||||||
@ -1721,11 +1725,8 @@ COMMANDS
|
|||||||
Transactions making a net change of zero are not shown by default; add
|
Transactions making a net change of zero are not shown by default; add
|
||||||
the -E/--empty flag to show them.
|
the -E/--empty flag to show them.
|
||||||
|
|
||||||
aregister ignores a depth limit, so its final total will always match a
|
|
||||||
balance report with similar arguments.
|
|
||||||
|
|
||||||
This command also supports the output destination and output format
|
This command also supports the output destination and output format
|
||||||
options The output formats supported are txt, csv, and json.
|
options. The output formats supported are txt, csv, and json.
|
||||||
|
|
||||||
aregister and custom posting dates
|
aregister and custom posting dates
|
||||||
Transactions whose date is outside the report period can still be
|
Transactions whose date is outside the report period can still be
|
||||||
@ -1738,18 +1739,6 @@ COMMANDS
|
|||||||
flag. If you use this flag and some of your postings have custom
|
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.
|
dates, it's probably best to assume the running balance is wrong.
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
Show all transactions and historical running balance in the first
|
|
||||||
account whose name contains "checking":
|
|
||||||
|
|
||||||
$ hledger areg checking
|
|
||||||
|
|
||||||
Show transactions and historical running balance in all asset accounts
|
|
||||||
during july:
|
|
||||||
|
|
||||||
$ hledger areg assets date:jul
|
|
||||||
|
|
||||||
balance
|
balance
|
||||||
balance, bal
|
balance, bal
|
||||||
Show accounts and their balances.
|
Show accounts and their balances.
|
||||||
@ -1824,6 +1813,9 @@ COMMANDS
|
|||||||
|
|
||||||
o custom-formatted line items (single-period reports only) (--format)
|
o custom-formatted line items (single-period reports only) (--format)
|
||||||
|
|
||||||
|
o commodities shown in a separate column, one per row (--commodity-col-
|
||||||
|
umn)
|
||||||
|
|
||||||
This command supports the output destination and output format options,
|
This command supports the output destination and output format options,
|
||||||
with output formats txt, csv, json, and (multi-period reports only:)
|
with output formats txt, csv, json, and (multi-period reports only:)
|
||||||
html. In txt output in a colour-supporting terminal, negative amounts
|
html. In txt output in a colour-supporting terminal, negative amounts
|
||||||
@ -2001,6 +1993,60 @@ COMMANDS
|
|||||||
o Output as HTML and view with a browser: hledger bal -D -o a.html &&
|
o Output as HTML and view with a browser: hledger bal -D -o a.html &&
|
||||||
open a.html
|
open a.html
|
||||||
|
|
||||||
|
Commodity column
|
||||||
|
With --commodity-column, commodity symbols are displayed in a separate
|
||||||
|
column, and amounts are displayed as bare numbers. In this mode, each
|
||||||
|
report row will show amounts for a single commodity, using extra rows
|
||||||
|
when necessary. It can be useful for a cleaner display of reports with
|
||||||
|
many commodities:
|
||||||
|
|
||||||
|
$ hledger bal -T -Y
|
||||||
|
Balance changes in 2012-01-01..2014-12-31:
|
||||||
|
|
||||||
|
|| 2012 2013 2014 Total
|
||||||
|
==================++=============================================================================================================================
|
||||||
|
Assets:US:ETrade || 10.00 ITOT, 337.18 USD, 2 more.. 70.00 GLD, 18.00 ITOT, 3 more.. -11.00 ITOT, 3 more.. 70.00 GLD, 17.00 ITOT, 3 more..
|
||||||
|
------------------++-----------------------------------------------------------------------------------------------------------------------------
|
||||||
|
total || 10.00 ITOT, 337.18 USD, 2 more.. 70.00 GLD, 18.00 ITOT, 3 more.. -11.00 ITOT, 3 more.. 70.00 GLD, 17.00 ITOT, 3 more..
|
||||||
|
|
||||||
|
$ hledger bal -T -Y --commodity-column
|
||||||
|
Balance changes in 2012-01-01..2014-12-31:
|
||||||
|
|
||||||
|
|| Commodity 2012 2013 2014 Total
|
||||||
|
==================++=============================================
|
||||||
|
Assets:US:ETrade || GLD 0 70.00 0 70.00
|
||||||
|
Assets:US:ETrade || ITOT 10.00 18.00 -11.00 17.00
|
||||||
|
Assets:US:ETrade || USD 337.18 -98.12 4881.44 5120.50
|
||||||
|
Assets:US:ETrade || VEA 12.00 10.00 14.00 36.00
|
||||||
|
Assets:US:ETrade || VHT 106.00 18.00 170.00 294.00
|
||||||
|
------------------++---------------------------------------------
|
||||||
|
|| GLD 0 70.00 0 70.00
|
||||||
|
|| ITOT 10.00 18.00 -11.00 17.00
|
||||||
|
|| USD 337.18 -98.12 4881.44 5120.50
|
||||||
|
|| VEA 12.00 10.00 14.00 36.00
|
||||||
|
|| VHT 106.00 18.00 170.00 294.00
|
||||||
|
|
||||||
|
This flag also affects CSV output, which is useful for producing data
|
||||||
|
that is easier to consume, eg when making charts:
|
||||||
|
|
||||||
|
$ hledger bal -T -O csv
|
||||||
|
"account","balance"
|
||||||
|
"Assets:US:ETrade","70.00 GLD, 17.00 ITOT, 5120.50 USD, 36.00 VEA, 294.00 VHT"
|
||||||
|
"total","70.00 GLD, 17.00 ITOT, 5120.50 USD, 36.00 VEA, 294.00 VHT"
|
||||||
|
|
||||||
|
$ hledger bal -T -O csv --commodity-column
|
||||||
|
"account","commodity","balance"
|
||||||
|
"Assets:US:ETrade","GLD","70.00"
|
||||||
|
"Assets:US:ETrade","ITOT","17.00"
|
||||||
|
"Assets:US:ETrade","USD","5120.50"
|
||||||
|
"Assets:US:ETrade","VEA","36.00"
|
||||||
|
"Assets:US:ETrade","VHT","294.00"
|
||||||
|
"total","GLD","70.00"
|
||||||
|
"total","ITOT","17.00"
|
||||||
|
"total","USD","5120.50"
|
||||||
|
"total","VEA","36.00"
|
||||||
|
"total","VHT","294.00"
|
||||||
|
|
||||||
Sorting by amount
|
Sorting by amount
|
||||||
With -S/--sort-amount, accounts with the largest (most positive) bal-
|
With -S/--sort-amount, accounts with the largest (most positive) bal-
|
||||||
ances are shown first. Eg: hledger bal expenses -MAS shows your big-
|
ances are shown first. Eg: hledger bal expenses -MAS shows your big-
|
||||||
@ -4601,13 +4647,6 @@ JOURNAL FORMAT
|
|||||||
ment until end of cur-
|
ment until end of cur-
|
||||||
rent file or end
|
rent file or end
|
||||||
directive
|
directive
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
commod- format declare a commodity and its number notation:
|
commod- format declare a commodity and its number notation:
|
||||||
ity number notation & display following entries
|
ity number notation & display following entries
|
||||||
style until end of cur-
|
style until end of cur-
|
||||||
@ -5503,6 +5542,8 @@ CSV FORMAT
|
|||||||
date-format how to parse dates in CSV records
|
date-format how to parse dates in CSV records
|
||||||
decimal-mark the decimal mark used in CSV amounts, if
|
decimal-mark the decimal mark used in CSV amounts, if
|
||||||
ambiguous
|
ambiguous
|
||||||
|
|
||||||
|
|
||||||
newest-first disambiguate record order when there's only
|
newest-first disambiguate record order when there's only
|
||||||
one date
|
one date
|
||||||
include inline another CSV rules file
|
include inline another CSV rules file
|
||||||
@ -6560,60 +6601,88 @@ TIMECLOCK FORMAT
|
|||||||
executable renamed.
|
executable renamed.
|
||||||
|
|
||||||
TIMEDOT FORMAT
|
TIMEDOT FORMAT
|
||||||
hledger's human-friendly time logging format.
|
timedot format is hledger's human-friendly time logging format. Com-
|
||||||
|
pared to timeclock format, it is
|
||||||
|
|
||||||
Timedot is a plain text format for logging dated, categorised quanti-
|
o convenient for quick, approximate, and retroactive time logging
|
||||||
ties (of time, usually), supported by hledger. It is convenient for
|
|
||||||
approximate and retroactive time logging, eg when the real-time clock-
|
|
||||||
in/out required with a timeclock file is too precise or too interrup-
|
|
||||||
tive. It can be formatted like a bar chart, making clear at a glance
|
|
||||||
where time was spent.
|
|
||||||
|
|
||||||
Though called "timedot", this format is read by hledger as commodity-
|
o readable: you can see at a glance where time was spent.
|
||||||
less quantities, so it could be used to represent dated quantities
|
|
||||||
other than time. In the docs below we'll assume it's time.
|
|
||||||
|
|
||||||
A timedot file contains a series of day entries. A day entry begins
|
A timedot file contains a series of day entries, which might look like
|
||||||
with a non-indented hledger-style simple date (Y-M-D, Y/M/D, Y.M.D..)
|
this:
|
||||||
Any additional text on the same line is used as a transaction descrip-
|
|
||||||
tion for this day.
|
|
||||||
|
|
||||||
This is followed by optionally-indented timelog items for that day, one
|
2021-08-04
|
||||||
per line. Each timelog item is a note, usually a
|
hom:errands .... ....
|
||||||
hledger:style:account:name representing a time category, followed by
|
fos:hledger:timedot .. ; docs
|
||||||
two or more spaces, and a quantity. Each timelog item generates a
|
per:admin:finance
|
||||||
hledger transaction.
|
|
||||||
|
|
||||||
Quantities can be written as:
|
hledger reads this as three time transactions on this day, with each
|
||||||
|
dot representing a quarter-hour spent:
|
||||||
|
|
||||||
o dots: a sequence of dots (.) representing quarter hours. Spaces may
|
$ hledger -f a.timedot print # .timedot file extension activates the timedot reader
|
||||||
optionally be used for grouping. Eg: .... ..
|
2021-08-04 *
|
||||||
|
(hom:errands) 2.00
|
||||||
|
|
||||||
o an integral or decimal number, representing hours. Eg: 1.5
|
2021-08-04 *
|
||||||
|
(fos:hledger:timedot) 0.50
|
||||||
|
|
||||||
o an integral or decimal number immediately followed by a unit symbol
|
2021-08-04 *
|
||||||
s, m, h, d, w, mo, or y, representing seconds, minutes, hours, days
|
(per:admin:finance) 0
|
||||||
weeks, months or years respectively. Eg: 90m. The following equiva-
|
|
||||||
lencies are assumed, currently: 1m = 60s, 1h = 60m, 1d = 24h, 1w =
|
|
||||||
7d, 1mo = 30d, 1y=365d.
|
|
||||||
|
|
||||||
There is some flexibility allowing notes and todo lists to be kept
|
A day entry begins with a date line:
|
||||||
right in the time log, if needed:
|
|
||||||
|
|
||||||
o Blank lines and lines beginning with # or ; are ignored.
|
o a non-indented simple date (Y-M-D, Y/M/D, or Y.M.D).
|
||||||
|
|
||||||
o Lines not ending with a double-space and quantity are parsed as items
|
Optionally this can be followed on the same line by
|
||||||
taking no time, which will not appear in balance reports by default.
|
|
||||||
(Add -E to see them.)
|
|
||||||
|
|
||||||
o Org mode headlines (lines beginning with one or more * followed by a
|
o a common transaction description for this day
|
||||||
space) can be used as date lines or timelog items (the stars are
|
|
||||||
ignored). Also all org headlines before the first date line are
|
|
||||||
ignored. This means org users can manage their timelog as an org
|
|
||||||
outline (eg using org-mode/orgstruct-mode in Emacs), for organisa-
|
|
||||||
tion, faster navigation, controlling visibility etc.
|
|
||||||
|
|
||||||
Examples:
|
o a common transaction comment for this day, after a semicolon (;).
|
||||||
|
|
||||||
|
After the date line are zero or more optionally-indented time transac-
|
||||||
|
tion lines, consisting of:
|
||||||
|
|
||||||
|
o an account name - any word or phrase, usually a hledger-style account
|
||||||
|
name.
|
||||||
|
|
||||||
|
o two or more spaces - a field separator, required if there is an
|
||||||
|
amount (as in journal format).
|
||||||
|
|
||||||
|
o a timedot amount - dots representing quarter hours, or a number rep-
|
||||||
|
resenting hours.
|
||||||
|
|
||||||
|
o an optional comment beginning with semicolon. This is ignored.
|
||||||
|
|
||||||
|
In more detail, timedot amounts can be:
|
||||||
|
|
||||||
|
o dots: zero or more period characters, each representing one quarter-
|
||||||
|
hour. Spaces are ignored and can be used for grouping. Eg: .... ..
|
||||||
|
|
||||||
|
o a number, representing hours. Eg: 1.5
|
||||||
|
|
||||||
|
o a number immediately followed by a unit symbol s, m, h, d, w, mo, or
|
||||||
|
y, representing seconds, minutes, hours, days weeks, months or years.
|
||||||
|
Eg 1.5h or 90m. The following equivalencies are assumed:
|
||||||
|
60s = 1m, 60m = 1h, 24h = 1d, 7d = 1w, 30d = 1mo, 365d = 1y. (This
|
||||||
|
unit will not be visible in the generated transaction amount, which is
|
||||||
|
always in hours.)
|
||||||
|
|
||||||
|
There is some added flexibility to help with keeping time log data in
|
||||||
|
the same file as your notes, todo lists, etc.:
|
||||||
|
|
||||||
|
o Lines beginning with # or ;, and blank lines, are ignored.
|
||||||
|
|
||||||
|
o Lines not ending with a double-space and amount are parsed as trans-
|
||||||
|
actions with zero amount. (Most hledger reports hide these by
|
||||||
|
default; add -E to see them.)
|
||||||
|
|
||||||
|
o One or more stars (*) followed by a space, at the start of a line, is
|
||||||
|
ignored. So date lines or time transaction lines can also be Org-
|
||||||
|
mode headlines.
|
||||||
|
|
||||||
|
o All Org-mode headlines before the first date line are ignored.
|
||||||
|
|
||||||
|
More examples:
|
||||||
|
|
||||||
# on this day, 6h was spent on client work, 1.5h on haskell FOSS work, etc.
|
# on this day, 6h was spent on client work, 1.5h on haskell FOSS work, etc.
|
||||||
2016/2/1
|
2016/2/1
|
||||||
@ -6653,14 +6722,14 @@ TIMEDOT FORMAT
|
|||||||
|
|
||||||
Reporting:
|
Reporting:
|
||||||
|
|
||||||
$ hledger -f t.timedot print date:2016/2/2
|
$ hledger -f a.timedot print date:2016/2/2
|
||||||
2016-02-02 *
|
2016-02-02 *
|
||||||
(inc:client1) 2.00
|
(inc:client1) 2.00
|
||||||
|
|
||||||
2016-02-02 *
|
2016-02-02 *
|
||||||
(biz:research) 0.25
|
(biz:research) 0.25
|
||||||
|
|
||||||
$ hledger -f t.timedot bal --daily --tree
|
$ hledger -f a.timedot bal --daily --tree
|
||||||
Balance changes in 2016-02-01-2016-02-03:
|
Balance changes in 2016-02-01-2016-02-03:
|
||||||
|
|
||||||
|| 2016-02-01d 2016-02-02d 2016-02-03d
|
|| 2016-02-01d 2016-02-02d 2016-02-03d
|
||||||
@ -6675,21 +6744,20 @@ TIMEDOT FORMAT
|
|||||||
------------++----------------------------------------
|
------------++----------------------------------------
|
||||||
|| 7.75 2.25 8.00
|
|| 7.75 2.25 8.00
|
||||||
|
|
||||||
I prefer to use period for separating account components. We can make
|
Using period instead of colon as account name separator:
|
||||||
this work with an account alias:
|
|
||||||
|
|
||||||
2016/2/4
|
2016/2/4
|
||||||
fos.hledger.timedot 4
|
fos.hledger.timedot 4
|
||||||
fos.ledger ..
|
fos.ledger ..
|
||||||
|
|
||||||
$ hledger -f t.timedot --alias /\\./=: bal date:2016/2/4 --tree
|
$ hledger -f a.timedot --alias /\\./=: bal --tree
|
||||||
4.50 fos
|
4.50 fos
|
||||||
4.00 hledger:timedot
|
4.00 hledger:timedot
|
||||||
0.50 ledger
|
0.50 ledger
|
||||||
--------------------
|
--------------------
|
||||||
4.50
|
4.50
|
||||||
|
|
||||||
Here is a sample.timedot.
|
A sample.timedot file.
|
||||||
|
|
||||||
COMMON TASKS
|
COMMON TASKS
|
||||||
Here are some quick examples of how to do some basic tasks with
|
Here are some quick examples of how to do some basic tasks with
|
||||||
@ -7173,4 +7241,4 @@ SEE ALSO
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
hledger-1.22 July 2021 HLEDGER(1)
|
hledger-1.22.99 August 2021 HLEDGER(1)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user