368 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			368 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
 | |
| hledger-ui(1)                hledger User Manuals                hledger-ui(1)
 | |
| 
 | |
| 
 | |
| 
 | |
| NAME
 | |
|        hledger-ui - curses-style interface for the hledger accounting tool
 | |
| 
 | |
| SYNOPSIS
 | |
|        hledger-ui [OPTIONS] [QUERYARGS]
 | |
|        hledger ui -- [OPTIONS] [QUERYARGS]
 | |
| 
 | |
| DESCRIPTION
 | |
|        hledger  is  a  cross-platform program for tracking money, time, or any
 | |
|        other commodity, using double-entry accounting and a  simple,  editable
 | |
|        file  format.   hledger  is  inspired  by  and  largely compatible with
 | |
|        ledger(1).
 | |
| 
 | |
|        hledger-ui is hledger's curses-style interface, providing an  efficient
 | |
|        full-window  text  UI  for  viewing accounts and transactions, and some
 | |
|        limited data entry  capability.   It  is  easier  than  hledger's  com-
 | |
|        mand-line interface, and sometimes quicker and more convenient than the
 | |
|        web interface.
 | |
| 
 | |
|        Like hledger, it reads data from one or more files in hledger  journal,
 | |
|        timeclock,  timedot,  or CSV format specified with -f, or $LEDGER_FILE,
 | |
|        or       $HOME/.hledger.journal       (on       windows,        perhaps
 | |
|        C:/Users/USER/.hledger.journal).   For  more about this see hledger(1),
 | |
|        hledger_journal(5) etc.
 | |
| 
 | |
| OPTIONS
 | |
|        Note: if invoking hledger-ui as a hledger subcommand, write  --  before
 | |
|        options as shown above.
 | |
| 
 | |
|        Any  QUERYARGS  are interpreted as a hledger search query which filters
 | |
|        the data.
 | |
| 
 | |
|        --watch
 | |
|               watch for data and date changes and reload automatically
 | |
| 
 | |
|        --theme=default|terminal|greenterm
 | |
|               use this custom display theme
 | |
| 
 | |
|        --register=ACCTREGEX
 | |
|               start in the (first) matched account's register screen
 | |
| 
 | |
|        --change
 | |
|               show period balances (changes) at startup instead of  historical
 | |
|               balances
 | |
| 
 | |
|        --flat show full account names, unindented
 | |
| 
 | |
|        hledger input options:
 | |
| 
 | |
|        -f FILE --file=FILE
 | |
|               use  a  different  input  file.   For  stdin,  use  -  (default:
 | |
|               $LEDGER_FILE or $HOME/.hledger.journal)
 | |
| 
 | |
|        --rules-file=RULESFILE
 | |
|               Conversion  rules  file  to  use  when  reading  CSV   (default:
 | |
|               FILE.rules)
 | |
| 
 | |
|        --alias=OLD=NEW
 | |
|               rename accounts named OLD to NEW
 | |
| 
 | |
|        --anon anonymize accounts and payees
 | |
| 
 | |
|        --pivot TAGNAME
 | |
|               use some other field/tag for account names
 | |
| 
 | |
|        -I --ignore-assertions
 | |
|               ignore any failing balance assertions
 | |
| 
 | |
|        hledger reporting options:
 | |
| 
 | |
|        -b --begin=DATE
 | |
|               include postings/txns on or after this date
 | |
| 
 | |
|        -e --end=DATE
 | |
|               include postings/txns before this date
 | |
| 
 | |
|        -D --daily
 | |
|               multiperiod/multicolumn report by day
 | |
| 
 | |
|        -W --weekly
 | |
|               multiperiod/multicolumn report by week
 | |
| 
 | |
|        -M --monthly
 | |
|               multiperiod/multicolumn report by month
 | |
| 
 | |
|        -Q --quarterly
 | |
|               multiperiod/multicolumn report by quarter
 | |
| 
 | |
|        -Y --yearly
 | |
|               multiperiod/multicolumn report by year
 | |
| 
 | |
|        -p --period=PERIODEXP
 | |
|               set  start date, end date, and/or reporting interval all at once
 | |
|               (overrides the flags above)
 | |
| 
 | |
|        --date2
 | |
|               match the secondary date instead (see  command  help  for  other
 | |
|               effects)
 | |
| 
 | |
|        -U --unmarked
 | |
|               include only unmarked postings/txns (can combine with -P or -C)
 | |
| 
 | |
|        -P --pending
 | |
|               include only pending postings/txns
 | |
| 
 | |
|        -C --cleared
 | |
|               include only cleared postings/txns
 | |
| 
 | |
|        -R --real
 | |
|               include only non-virtual postings
 | |
| 
 | |
|        --depth=N
 | |
|               hide accounts/postings deeper than N
 | |
| 
 | |
|        -E --empty
 | |
|               show items with zero amount, normally hidden
 | |
| 
 | |
|        -B --cost
 | |
|               convert  amounts  to  their  cost at transaction time (using the
 | |
|               transaction price, if any)
 | |
| 
 | |
|        -V --value
 | |
|               convert amounts to their market value on  the  report  end  date
 | |
|               (using the most recent applicable market price, if any)
 | |
| 
 | |
|        hledger help options:
 | |
| 
 | |
|        -h --help
 | |
|               show general usage (or after COMMAND, command usage)
 | |
| 
 | |
|        --version
 | |
|               show version
 | |
| 
 | |
|        --debug[=N]
 | |
|               show debug output (levels 1-9, default: 1)
 | |
| 
 | |
| KEYS
 | |
|        ?  shows a help dialog listing all keys.  (Some of these also appear in
 | |
|        the quick help at the bottom of each screen.) Press ? again (or ESCAPE,
 | |
|        or LEFT) to close it.  The following keys work on most screens:
 | |
| 
 | |
|        The cursor keys navigate: right (or enter) goes deeper, left returns to
 | |
|        the previous screen,  up/down/page up/page down/home/end  move  up  and
 | |
|        down    through    lists.     Vi-style    (h/j/k/l)   and   Emacs-style
 | |
|        (CTRL-p/CTRL-n/CTRL-f/CTRL-b) movement keys are also supported.  A tip:
 | |
|        movement  speed is limited by your keyboard repeat rate, to move faster
 | |
|        you may want to adjust it.  (If you're on a mac, the Karabiner  app  is
 | |
|        one way to do that.)
 | |
| 
 | |
|        With  shift pressed, the cursor keys adjust the report period, limiting
 | |
|        the  transactions  to  be  shown   (by   default,   all   are   shown).
 | |
|        shift-down/up  steps  downward and upward through these standard report
 | |
|        period   durations:   year,   quarter,   month,   week,   day.    Then,
 | |
|        shift-left/right  moves to the previous/next period.  t sets the report
 | |
|        period to today.  With the --watch option,  when  viewing  a  "current"
 | |
|        period  (the  current  day,  week, month, quarter, or year), the period
 | |
|        will move automatically to track the current date.  To set a  non-stan-
 | |
|        dard period, you can use / and a date: query.
 | |
| 
 | |
|        /  lets  you  set a general filter query limiting the data shown, using
 | |
|        the same query terms as in hledger and hledger-web.  While editing  the
 | |
|        query,  you  can  use CTRL-a/e/d/k, BS, cursor keys; press ENTER to set
 | |
|        it, or ESCAPEto cancel.  There are also keys for quickly adjusting some
 | |
|        common  filters  like account depth and transaction status (see below).
 | |
|        BACKSPACE or DELETE removes all filters, showing all transactions.
 | |
| 
 | |
|        ESCAPE removes all filters and jumps back to the top  screen.   Or,  it
 | |
|        cancels a minibuffer edit or help dialog in progress.
 | |
| 
 | |
|        CTRL-l redraws the screen and centers the selection if possible (selec-
 | |
|        tions near the top won't be centered, since we don't scroll  above  the
 | |
|        top).
 | |
| 
 | |
|        g  reloads from the data file(s) and updates the current screen and any
 | |
|        previous screens.  (With large files, this  could  cause  a  noticeable
 | |
|        pause.)
 | |
| 
 | |
|        I  toggles  balance  assertion  checking.  Disabling balance assertions
 | |
|        temporarily can be useful for troubleshooting.
 | |
| 
 | |
|        a runs command-line hledger's add  command,  and  reloads  the  updated
 | |
|        file.  This allows some basic data entry.
 | |
| 
 | |
|        E   runs   $HLEDGER_UI_EDITOR,   or   $EDITOR,   or  a  default  (emac-
 | |
|        sclient -a "" -nw) on the journal file.  With some editors (emacs, vi),
 | |
|        the  cursor  will be positioned at the current transaction when invoked
 | |
|        from the register and transaction screens, and at  the  error  location
 | |
|        (if possible) when invoked from the error screen.
 | |
| 
 | |
|        q quits the application.
 | |
| 
 | |
|        Additional screen-specific keys are described below.
 | |
| 
 | |
| SCREENS
 | |
|    Accounts screen
 | |
|        This  is  normally  the  first screen displayed.  It lists accounts and
 | |
|        their balances, like hledger's balance command.  By default,  it  shows
 | |
|        all  accounts  and their latest ending balances (including the balances
 | |
|        of subaccounts).  if you specify a query on the command line, it  shows
 | |
|        just the matched accounts and the balances from matched transactions.
 | |
| 
 | |
|        Account  names are normally indented to show the hierarchy (tree mode).
 | |
|        To see less detail, set a depth limit by pressing a number key, 1 to 9.
 | |
|        0 shows even less detail, collapsing all accounts to a single total.  -
 | |
|        and + (or =) decrease and increase the  depth  limit.   To  remove  the
 | |
|        depth  limit,  set  it  higher than the maximum account depth, or press
 | |
|        ESCAPE.
 | |
| 
 | |
|        F toggles flat mode, in which accounts are shown as a flat  list,  with
 | |
|        their  full names.  In this mode, account balances exclude subaccounts,
 | |
|        except for accounts at the depth limit (as with hledger's balance  com-
 | |
|        mand).
 | |
| 
 | |
|        H toggles between showing historical balances or period balances.  His-
 | |
|        torical balances (the default) are ending balances at the  end  of  the
 | |
|        report  period,  taking  into account all transactions before that date
 | |
|        (filtered by the filter query if any),  including  transactions  before
 | |
|        the  start  of  the report period.  In other words, historical balances
 | |
|        are what you would see on a bank statement  for  that  account  (unless
 | |
|        disturbed  by  a  filter  query).   Period balances ignore transactions
 | |
|        before the report start date, so they show the change in balance during
 | |
|        the report period.  They are more useful eg when viewing a time log.
 | |
| 
 | |
|        U toggles filtering by unmarked status, including or excluding unmarked
 | |
|        postings in the balances.  Similarly, P toggles pending postings, and C
 | |
|        toggles  cleared postings.  (By default, balances include all postings;
 | |
|        if you activate one or two status  filters,  only  those  postings  are
 | |
|        included; and if you activate all three, the filter is removed.)
 | |
| 
 | |
|        R toggles real mode, in which virtual postings are ignored.
 | |
| 
 | |
|        Z  toggles  nonzero  mode, in which only accounts with nonzero balances
 | |
|        are shown (hledger-ui shows zero items by default, unlike  command-line
 | |
|        hledger).
 | |
| 
 | |
|        Press right or enter to view an account's transactions register.
 | |
| 
 | |
|    Register screen
 | |
|        This screen shows the transactions affecting a particular account, like
 | |
|        a check register.  Each line represents one transaction and shows:
 | |
| 
 | |
|        o the other account(s) involved, in abbreviated form.   (If  there  are
 | |
|          both  real  and virtual postings, it shows only the accounts affected
 | |
|          by real postings.)
 | |
| 
 | |
|        o the overall change to the current account's balance; positive for  an
 | |
|          inflow to this account, negative for an outflow.
 | |
| 
 | |
|        o the running historical total or period total for the current account,
 | |
|          after the transaction.  This can be toggled with H.  Similar  to  the
 | |
|          accounts  screen,  the  historical  total is affected by transactions
 | |
|          (filtered by the filter query) before the report  start  date,  while
 | |
|          the period total is not.  If the historical total is not disturbed by
 | |
|          a filter query, it will be the running historical balance  you  would
 | |
|          see on a bank register for the current account.
 | |
| 
 | |
|        If  the  accounts  screen  was  in  tree mode, the register screen will
 | |
|        include transactions from both the current account and its subaccounts.
 | |
|        If  the  accounts  screen  was  in  flat  mode, and a non-depth-clipped
 | |
|        account was selected, the register  screen  will  exclude  transactions
 | |
|        from subaccounts.  In other words, the register always shows the trans-
 | |
|        actions responsible for  the  period  balance  shown  on  the  accounts
 | |
|        screen.  As on the accounts screen, this can be toggled with F.
 | |
| 
 | |
|        U  toggles  filtering  by  unmarked  status, showing or hiding unmarked
 | |
|        transactions.  Similarly, P toggles pending transactions, and C toggles
 | |
|        cleared  transactions.  (By default, transactions with all statuses are
 | |
|        shown; if you activate one or two status filters, only  those  transac-
 | |
|        tions  are  shown;  and  if  you  activate  all  three,  the  filter is
 | |
|        removed.)q
 | |
| 
 | |
|        R toggles real mode, in which virtual postings are ignored.
 | |
| 
 | |
|        Z toggles nonzero mode, in which only transactions  posting  a  nonzero
 | |
|        change  are  shown (hledger-ui shows zero items by default, unlike com-
 | |
|        mand-line hledger).
 | |
| 
 | |
|        Press right (or enter) to view the selected transaction in detail.
 | |
| 
 | |
|    Transaction screen
 | |
|        This screen shows a single transaction, as  a  general  journal  entry,
 | |
|        similar  to  hledger's  print command and journal format (hledger_jour-
 | |
|        nal(5)).
 | |
| 
 | |
|        The transaction's date(s)  and  any  cleared  flag,  transaction  code,
 | |
|        description,  comments,  along  with  all  of  its account postings are
 | |
|        shown.  Simple transactions have two postings, but there  can  be  more
 | |
|        (or in certain cases, fewer).
 | |
| 
 | |
|        up  and  down will step through all transactions listed in the previous
 | |
|        account register screen.  In the title bar, the numbers in  parentheses
 | |
|        show  your  position  within  that  account  register.   They will vary
 | |
|        depending on which account register you came from (remember most trans-
 | |
|        actions appear in multiple account registers).  The #N number preceding
 | |
|        them is the transaction's position within the complete unfiltered jour-
 | |
|        nal, which is a more stable id (at least until the next reload).
 | |
| 
 | |
|    Error screen
 | |
|        This  screen  will appear if there is a problem, such as a parse error,
 | |
|        when you press g to reload.  Once you have fixed the problem,  press  g
 | |
|        again to reload and resume normal operation.  (Or, you can press escape
 | |
|        to cancel the reload attempt.)
 | |
| 
 | |
| ENVIRONMENT
 | |
|        COLUMNS The screen width to use.  Default: the full terminal width.
 | |
| 
 | |
|        LEDGER_FILE The journal file path when not specified with -f.  Default:
 | |
|        ~/.hledger.journal  (on  windows,  perhaps C:/Users/USER/.hledger.jour-
 | |
|        nal).
 | |
| 
 | |
| FILES
 | |
|        Reads data from one or more files in hledger journal, timeclock,  time-
 | |
|        dot,   or   CSV   format   specified   with  -f,  or  $LEDGER_FILE,  or
 | |
|        $HOME/.hledger.journal          (on          windows,           perhaps
 | |
|        C:/Users/USER/.hledger.journal).
 | |
| 
 | |
| BUGS
 | |
|        The  need  to precede options with -- when invoked from hledger is awk-
 | |
|        ward.
 | |
| 
 | |
|        -f- doesn't work (hledger-ui can't read from stdin).
 | |
| 
 | |
|        -V affects only the accounts screen.
 | |
| 
 | |
|        When you press g, the current and all previous screens are regenerated,
 | |
|        which  may cause a noticeable pause with large files.  Also there is no
 | |
|        visual indication that this is in progress.
 | |
| 
 | |
|        --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
 | |
|        times with an editor macro) can cause problems at least on OSX.   Symp-
 | |
|        toms  include:  unresponsive UI, periodic resetting of the cursor posi-
 | |
|        tion, momentary display of parse errors, high CPU usage eventually sub-
 | |
|        siding, and possibly a small but persistent build-up of CPU usage until
 | |
|        the program is restarted.
 | |
| 
 | |
| 
 | |
| 
 | |
| REPORTING BUGS
 | |
|        Report bugs at http://bugs.hledger.org (or on the #hledger IRC  channel
 | |
|        or hledger mail list)
 | |
| 
 | |
| 
 | |
| AUTHORS
 | |
|        Simon Michael <simon@joyful.com> and contributors
 | |
| 
 | |
| 
 | |
| COPYRIGHT
 | |
|        Copyright (C) 2007-2016 Simon Michael.
 | |
|        Released under GNU GPL v3 or later.
 | |
| 
 | |
| 
 | |
| SEE ALSO
 | |
|        hledger(1),      hledger-ui(1),     hledger-web(1),     hledger-api(1),
 | |
|        hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
 | |
|        dot(5), ledger(1)
 | |
| 
 | |
|        http://hledger.org
 | |
| 
 | |
| 
 | |
| 
 | |
| hledger-ui 1.3.99                  July 2017                     hledger-ui(1)
 |