diff --git a/hledger-api/doc/hledger-api.1.info b/hledger-api/doc/hledger-api.1.info
index 83bed145c..a04ec7bfd 100644
--- a/hledger-api/doc/hledger-api.1.info
+++ b/hledger-api/doc/hledger-api.1.info
@@ -1,4 +1,4 @@
-This is hledger-api.1.info, produced by makeinfo version 5.2 from stdin.
+This is hledger-api.1.info, produced by makeinfo version 6.0 from stdin.
 
 
 File: hledger-api.1.info,  Node: Top,  Next: OPTIONS,  Up: (dir)
diff --git a/hledger-lib/doc/hledger_csv.5.info b/hledger-lib/doc/hledger_csv.5.info
index 4f01dc2d8..ff908ed77 100644
--- a/hledger-lib/doc/hledger_csv.5.info
+++ b/hledger-lib/doc/hledger_csv.5.info
@@ -1,4 +1,4 @@
-This is hledger_csv.5.info, produced by makeinfo version 5.2 from stdin.
+This is hledger_csv.5.info, produced by makeinfo version 6.0 from stdin.
 
 
 File: hledger_csv.5.info,  Node: Top,  Next: CSV RULES,  Up: (dir)
diff --git a/hledger-lib/doc/hledger_csv.5.txt b/hledger-lib/doc/hledger_csv.5.txt
index 82b8600cc..c5cafd118 100644
--- a/hledger-lib/doc/hledger_csv.5.txt
+++ b/hledger-lib/doc/hledger_csv.5.txt
@@ -124,27 +124,27 @@ CSV RULES
               include common.rules
 
 TIPS
-       Each  generated  journal  entry will have two postings, to account1 and
+       Each generated journal entry will have two postings,  to  account1  and
        account2 respectively.  Currently it's not possible to generate entries
        with more than two postings.
 
-       If  the  CSV has debit/credit amounts in separate fields, assign to the
+       If the CSV has debit/credit amounts in separate fields, assign  to  the
        amount-in and amount-out pseudo fields instead of amount.
 
-       If the CSV has the currency in a separate field,  assign  that  to  the
-       currency  pseudo  field  which  will  be automatically prepended to the
+       If  the  CSV  has  the currency in a separate field, assign that to the
+       currency pseudo field which will  be  automatically  prepended  to  the
        amount.  (Or you can do the same thing with a field assignment.)
 
-       If an amount value is parenthesised, it will  be  de-parenthesised  and
+       If  an  amount  value is parenthesised, it will be de-parenthesised and
        sign-flipped automatically.
 
-       The  generated  journal  entries  will be sorted by date.  The original
+       The generated journal entries will be sorted  by  date.   The  original
        order of same-day entries will be preserved, usually.
 
 
 
 REPORTING BUGS
-       Report bugs at http://bugs.hledger.org (or on the #hledger IRC  channel
+       Report  bugs at http://bugs.hledger.org (or on the #hledger IRC channel
        or hledger mail list)
 
 
@@ -158,7 +158,7 @@ COPYRIGHT
 
 
 SEE ALSO
-       hledger(1),      hledger-ui(1),     hledger-web(1),     hledger-api(1),
+       hledger(1),     hledger-ui(1),     hledger-web(1),      hledger-api(1),
        hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
        dot(5), ledger(1)
 
diff --git a/hledger-lib/doc/hledger_journal.5.info b/hledger-lib/doc/hledger_journal.5.info
index 4ac12be95..ac48dd0c2 100644
--- a/hledger-lib/doc/hledger_journal.5.info
+++ b/hledger-lib/doc/hledger_journal.5.info
@@ -1,4 +1,4 @@
-This is hledger_journal.5.info, produced by makeinfo version 5.2 from
+This is hledger_journal.5.info, produced by makeinfo version 6.0 from
 stdin.
 
 
diff --git a/hledger-lib/doc/hledger_journal.5.txt b/hledger-lib/doc/hledger_journal.5.txt
index 57ca44372..3c0bbaadb 100644
--- a/hledger-lib/doc/hledger_journal.5.txt
+++ b/hledger-lib/doc/hledger_journal.5.txt
@@ -7,23 +7,23 @@ NAME
        Journal - hledger's default file format, representing a General Journal
 
 DESCRIPTION
-       hledger's  usual  data  source  is a plain text file containing journal
-       entries in hledger journal format.  This  file  represents  a  standard
-       accounting  general  journal.  I use file names ending in .journal, but
+       hledger's usual data source is a plain  text  file  containing  journal
+       entries  in  hledger  journal  format.  This file represents a standard
+       accounting general journal.  I use file names ending in  .journal,  but
        that's not required.  The journal file contains a number of transaction
        entries, each describing a transfer of money (or any commodity) between
        two or more named accounts, in a simple format readable by both hledger
        and humans.
 
-       hledger's  journal  format  is a compatible subset, mostly, of ledger's
-       journal format, so hledger can  work  with  compatible  ledger  journal
-       files  as  well.   It's  safe,  and encouraged, to run both hledger and
+       hledger's journal format is a compatible subset,  mostly,  of  ledger's
+       journal  format,  so  hledger  can  work with compatible ledger journal
+       files as well.  It's safe, and encouraged,  to  run  both  hledger  and
        ledger on the same journal file, eg to validate the results you're get-
        ting.
 
        You can use hledger without learning any more about this file; just use
-       the add or web commands to create and update it.  Many  users,  though,
-       also  edit  the  journal  file  directly  with  a  text editor, perhaps
+       the  add  or web commands to create and update it.  Many users, though,
+       also edit the  journal  file  directly  with  a  text  editor,  perhaps
        assisted by the helper modes for emacs or vim.
 
        Here's an example:
@@ -53,18 +53,18 @@ DESCRIPTION
 
 FILE FORMAT
    Transactions
-       Transactions are represented by journal entries.  Each  begins  with  a
-       simple  date in column 0, followed by three optional fields with spaces
+       Transactions  are  represented  by journal entries.  Each begins with a
+       simple date in column 0, followed by three optional fields with  spaces
        between them:
 
-       o a status flag, which can be empty or !  or  *  (meaning  "uncleared",
+       o a  status  flag,  which  can be empty or ! or * (meaning "uncleared",
          "pending" and "cleared", or whatever you want)
 
        o a transaction code (eg a check number),
 
        o and/or a description
 
-       then  some  number  of  postings, of some amount to some account.  Each
+       then some number of postings, of some amount  to  some  account.   Each
        posting is on its own line, consisting of:
 
        o indentation of one or more spaces (or tabs)
@@ -76,34 +76,34 @@ FILE FORMAT
        o optionally, two or more spaces or tabs followed by an amount
 
        Usually there are two or more postings, though one or none is also pos-
-       sible.   The  posting amounts within a transaction must always balance,
+       sible.  The posting amounts within a transaction must  always  balance,
        ie add up to 0.  Optionally one amount can be left blank, in which case
        it will be inferred.
 
    Dates
    Simple dates
-       Within  a journal file, transaction dates use Y/M/D (or Y-M-D or Y.M.D)
-       Leading zeros are optional.  The year may be omitted, in which case  it
-       will  be  inferred  from  the  context  -  the current transaction, the
-       default year set with a default year directive,  or  the  current  date
-       when  the command is run.  Some examples: 2010/01/31, 1/31, 2010-01-31,
+       Within a journal file, transaction dates use Y/M/D (or Y-M-D or  Y.M.D)
+       Leading  zeros are optional.  The year may be omitted, in which case it
+       will be inferred from  the  context  -  the  current  transaction,  the
+       default  year  set  with  a default year directive, or the current date
+       when the command is run.  Some examples: 2010/01/31, 1/31,  2010-01-31,
        2010.1.31.
 
    Secondary dates
-       Real-life transactions sometimes involve more than one date  -  eg  the
+       Real-life  transactions  sometimes  involve more than one date - eg the
        date you write a cheque, and the date it clears in your bank.  When you
-       want to model this, eg for more  accurate  balances,  you  can  specify
-       individual  posting dates, which I recommend.  Or, you can use the sec-
-       ondary dates (aka auxiliary/effective  dates)  feature,  supported  for
+       want  to  model  this,  eg  for more accurate balances, you can specify
+       individual posting dates, which I recommend.  Or, you can use the  sec-
+       ondary  dates  (aka  auxiliary/effective  dates) feature, supported for
        compatibility with Ledger.
 
        A secondary date can be written after the primary date, separated by an
-       equals sign.  The primary date, on the left, is used  by  default;  the
-       secondary  date,  on the right, is used when the --date2 flag is speci-
+       equals  sign.   The  primary date, on the left, is used by default; the
+       secondary date, on the right, is used when the --date2 flag  is  speci-
        fied (--aux-date or --effective also work).
 
-       The meaning of secondary dates is up to you, but it's best to follow  a
-       consistent  rule.   Eg  write  the bank's clearing date as primary, and
+       The  meaning of secondary dates is up to you, but it's best to follow a
+       consistent rule.  Eg write the bank's clearing  date  as  primary,  and
        when needed, the date the transaction was initiated as secondary.
 
        Here's an example.  Note that a secondary date will use the year of the
@@ -119,18 +119,18 @@ FILE FORMAT
               $ hledger register checking --date2
               2010/02/19 movie ticket         assets:checking                $-10         $-10
 
-       Secondary  dates require some effort; you must use them consistently in
+       Secondary dates require some effort; you must use them consistently  in
        your journal entries and remember whether to use or not use the --date2
        flag for your reports.  They are included in hledger for Ledger compat-
-       ibility, but posting dates are  a  more  powerful  and  less  confusing
+       ibility,  but  posting  dates  are  a  more powerful and less confusing
        alternative.
 
    Posting dates
-       You  can  give  individual  postings a different date from their parent
-       transaction, by adding a posting comment containing a tag  (see  below)
+       You can give individual postings a different  date  from  their  parent
+       transaction,  by  adding a posting comment containing a tag (see below)
        like date:DATE.  This is probably the best way to control posting dates
-       precisely.  Eg in  this  example  the  expense  should  appear  in  May
-       reports,  and the deduction from checking should be reported on 6/1 for
+       precisely.   Eg  in  this  example  the  expense  should  appear in May
+       reports, and the deduction from checking should be reported on 6/1  for
        easy bank reconciliation:
 
               2015/5/30
@@ -143,23 +143,23 @@ FILE FORMAT
               $ hledger -f t.j register checking
               2015/06/01                      assets:checking               $-10          $-10
 
-       DATE should be a simple date; if the year is not specified it will  use
-       the  year  of  the  transaction's date.  You can set the secondary date
-       similarly, with date2:DATE2.  The date: or  date2:  tags  must  have  a
-       valid  simple  date  value  if they are present, eg a date: tag with no
+       DATE  should be a simple date; if the year is not specified it will use
+       the year of the transaction's date.  You can  set  the  secondary  date
+       similarly,  with  date2:DATE2.   The  date:  or date2: tags must have a
+       valid simple date value if they are present, eg a  date:  tag  with  no
        value is not allowed.
 
        Ledger's earlier, more compact bracketed date syntax is also supported:
-       [DATE],  [DATE=DATE2]  or  [=DATE2].  hledger will attempt to parse any
+       [DATE], [DATE=DATE2] or [=DATE2].  hledger will attempt  to  parse  any
        square-bracketed sequence of the 0123456789/-.= characters in this way.
-       With  this  syntax, DATE infers its year from the transaction and DATE2
+       With this syntax, DATE infers its year from the transaction  and  DATE2
        infers its year from DATE.
 
    Account names
-       Account names typically have several parts separated by a  full  colon,
-       from  which hledger derives a hierarchical chart of accounts.  They can
-       be anything you like, but  in  finance  there  are  traditionally  five
-       top-level accounts: assets, liabilities, income, expenses, and equity.
+       Account  names  typically have several parts separated by a full colon,
+       from which hledger derives a hierarchical chart of accounts.  They  can
+       be  anything  you  like,  but  in  finance there are traditionally five
+       top-level accounts: assets, liabilities, income, expenses, and  equity.
 
        Account  names  may  contain single spaces, eg: assets:accounts receiv-
        able.  Because of this, they must always be followed  by  two  or  more
@@ -206,31 +206,31 @@ FILE FORMAT
 
        o if there is a commodity directive specifying the format, that is used
 
-       o otherwise  the  format  is  inferred from the first posting amount in
-         that commodity in the journal, and the precision (number  of  decimal
+       o otherwise the format is inferred from the  first  posting  amount  in
+         that  commodity  in the journal, and the precision (number of decimal
          places) will be the maximum from all posting amounts in that commmod-
          ity
 
-       o or if there are no such amounts in the journal, a default  format  is
+       o or  if  there are no such amounts in the journal, a default format is
          used (like $1000.00).
 
-       Price  amounts  and amounts in D directives usually don't affect amount
-       format inference, but in some situations they  can  do  so  indirectly.
-       (Eg  when  D's default commodity is applied to a commodity-less amount,
+       Price amounts and amounts in D directives usually don't  affect  amount
+       format  inference,  but  in  some situations they can do so indirectly.
+       (Eg when D's default commodity is applied to a  commodity-less  amount,
        or when an amountless posting is balanced using a price's commodity, or
-       when  -V  is  used.) If you find this causing problems, set the desired
+       when -V is used.) If you find this causing problems,  set  the  desired
        format with a commodity directive.
 
    Virtual Postings
-       When you parenthesise the account name in a posting,  we  call  that  a
+       When  you  parenthesise  the  account name in a posting, we call that a
        virtual posting, which means:
 
        o it is ignored when checking that the transaction is balanced
 
-       o it  is  excluded from reports when the --real/-R flag is used, or the
+       o it is excluded from reports when the --real/-R flag is used,  or  the
          real:1 query.
 
-       You could use this, eg, to set an  account's  opening  balance  without
+       You  could  use  this,  eg, to set an account's opening balance without
        needing to use the equity:opening balances account:
 
               1/1 special unbalanced posting to set initial balance
@@ -238,8 +238,8 @@ FILE FORMAT
 
        When the account name is bracketed, we call it a balanced virtual post-
        ing.  This is like an ordinary virtual posting except the balanced vir-
-       tual  postings  in a transaction must balance to 0, like the real post-
-       ings (but separately from them).  Balanced virtual  postings  are  also
+       tual postings in a transaction must balance to 0, like the  real  post-
+       ings  (but  separately  from them).  Balanced virtual postings are also
        excluded by --real/-R or real:1.
 
               1/1 buy food with cash, and update some budget-tracking subaccounts elsewhere
@@ -249,13 +249,13 @@ FILE FORMAT
                 [assets:checking:budget:food]  $-10
 
        Virtual postings have some legitimate uses, but those are few.  You can
-       usually find an equivalent journal entry using real postings, which  is
+       usually  find an equivalent journal entry using real postings, which is
        more correct and provides better error checking.
 
    Balance Assertions
-       hledger  supports  Ledger-style  balance  assertions  in journal files.
-       These look like =EXPECTEDBALANCE following a posting's amount.   Eg  in
-       this  example we assert the expected dollar balance in accounts a and b
+       hledger supports Ledger-style  balance  assertions  in  journal  files.
+       These  look  like =EXPECTEDBALANCE following a posting's amount.  Eg in
+       this example we assert the expected dollar balance in accounts a and  b
        after each posting:
 
               2013/1/1
@@ -267,31 +267,31 @@ FILE FORMAT
                 b  $-1  =$-2
 
        After reading a journal file, hledger will check all balance assertions
-       and  report  an error if any of them fail.  Balance assertions can pro-
-       tect you from, eg, inadvertently disrupting reconciled  balances  while
-       cleaning  up  old  entries.   You can disable them temporarily with the
-       --ignore-assertions flag, which can be useful  for  troubleshooting  or
+       and report an error if any of them fail.  Balance assertions  can  pro-
+       tect  you  from, eg, inadvertently disrupting reconciled balances while
+       cleaning up old entries.  You can disable  them  temporarily  with  the
+       --ignore-assertions  flag,  which  can be useful for troubleshooting or
        for reading Ledger files.
 
    Assertions and ordering
-       hledger  sorts  an  account's postings and assertions first by date and
-       then (for postings on the same day) by parse order.  Note this is  dif-
+       hledger sorts an account's postings and assertions first  by  date  and
+       then  (for postings on the same day) by parse order.  Note this is dif-
        ferent from Ledger, which sorts assertions only by parse order.  (Also,
-       Ledger assertions do not see the accumulated effect of  repeated  post-
+       Ledger  assertions  do not see the accumulated effect of repeated post-
        ings to the same account within a transaction.)
 
-       So,  hledger  balance  assertions  keep  working if you reorder differ-
-       ently-dated transactions  within  the  journal.   But  if  you  reorder
+       So, hledger balance assertions keep  working  if  you  reorder  differ-
+       ently-dated  transactions  within  the  journal.   But  if  you reorder
        same-dated transactions or postings, assertions might break and require
-       updating.  This order dependence does bring an advantage: precise  con-
+       updating.   This order dependence does bring an advantage: precise con-
        trol over the order of postings and assertions within a day, so you can
        assert intra-day balances.
 
    Assertions and included files
-       With included files, things are a little more  complicated.   Including
-       preserves  the ordering of postings and assertions.  If you have multi-
-       ple postings to an account on the  same  day,  split  across  different
-       files,  and  you  also want to assert the account's balance on the same
+       With  included  files, things are a little more complicated.  Including
+       preserves the ordering of postings and assertions.  If you have  multi-
+       ple  postings  to  an  account  on the same day, split across different
+       files, and you also want to assert the account's balance  on  the  same
        day, you'll have to put the assertion in the right file.
 
    Assertions and multiple -f options
@@ -299,21 +299,21 @@ FILE FORMAT
        -f options.  Use include or concatenate the files instead.
 
    Assertions and commodities
-       The  asserted  balance must be a simple single-commodity amount, and in
-       fact the assertion checks only  this  commodity's  balance  within  the
-       (possibly  multi-commodity) account balance.  We could call this a par-
-       tial balance assertion.  This is compatible with Ledger, and  makes  it
+       The asserted balance must be a simple single-commodity amount,  and  in
+       fact  the  assertion  checks  only  this commodity's balance within the
+       (possibly multi-commodity) account balance.  We could call this a  par-
+       tial  balance  assertion.  This is compatible with Ledger, and makes it
        possible to make assertions about accounts containing multiple commodi-
        ties.
 
-       To assert each commodity's balance in such a  multi-commodity  account,
-       you  can  add multiple postings (with amount 0 if necessary).  But note
-       that no matter how many assertions you  add,  you  can't  be  sure  the
+       To  assert  each commodity's balance in such a multi-commodity account,
+       you can add multiple postings (with amount 0 if necessary).   But  note
+       that  no  matter  how  many  assertions  you add, you can't be sure the
        account does not contain some unexpected commodity.  (We'll add support
        for this kind of total balance assertion if there's demand.)
 
    Assertions and subaccounts
-       Balance assertions do not count  the  balance  from  subaccounts;  they
+       Balance  assertions  do  not  count  the balance from subaccounts; they
        check the posted account's exclusive balance.  For example:
 
               1/1
@@ -321,7 +321,7 @@ FILE FORMAT
                 checking        1 = 1  ; post to the parent account, its exclusive balance is now 1
                 equity
 
-       The  balance  report's  flat  mode  shows these exclusive balances more
+       The balance report's flat mode  shows  these  exclusive  balances  more
        clearly:
 
               $ hledger bal checking --flat
@@ -335,10 +335,10 @@ FILE FORMAT
        tual.  They are not affected by the --real/-R flag or real: query.
 
    Balance Assignments
-       Ledger-style  balance  assignments  are also supported.  These are like
-       balance assertions, but with no posting amount on the left side of  the
-       equals  sign;  instead  it is calculated automatically so as to satisfy
-       the assertion.  This can be a convenience during data  entry,  eg  when
+       Ledger-style balance assignments are also supported.   These  are  like
+       balance  assertions, but with no posting amount on the left side of the
+       equals sign; instead it is calculated automatically so  as  to  satisfy
+       the  assertion.   This  can be a convenience during data entry, eg when
        setting opening balances:
 
               ; starting a new journal, set asset account balances
@@ -356,27 +356,27 @@ FILE FORMAT
                 expenses:misc
 
        The calculated amount depends on the account's balance in the commodity
-       at that point (which depends on the previously-dated  postings  of  the
-       commodity  to  that account since the last balance assertion or assign-
+       at  that  point  (which depends on the previously-dated postings of the
+       commodity to that account since the last balance assertion  or  assign-
        ment).  Note that using balance assignments makes your journal a little
        less explicit; to know the exact amount posted, you have to run hledger
        or do the calculations yourself, instead of just reading it.
 
    Prices
    Transaction prices
-       Within a transaction posting, you  can  record  an  amount's  price  in
-       another  commodity.   This can be used to document the cost (for a pur-
-       chase), or selling price (for a sale), or the exchange  rate  that  was
+       Within  a  transaction  posting,  you  can  record an amount's price in
+       another commodity.  This can be used to document the cost (for  a  pur-
+       chase),  or  selling  price (for a sale), or the exchange rate that was
        used, for this transaction.  These transaction prices are fixed, and do
        not change over time.
 
-       Amounts with transaction prices can be  displayed  in  the  transaction
-       price's  commodity,  by  using  the  --cost/-B  flag  supported by most
+       Amounts  with  transaction  prices  can be displayed in the transaction
+       price's commodity, by  using  the  --cost/-B  flag  supported  by  most
        hledger commands (mnemonic: "cost Basis").
 
        There are several ways to record a transaction price:
 
-       1. Write the unit price (aka exchange rate), as @ UNITPRICE  after  the
+       1. Write  the  unit price (aka exchange rate), as @ UNITPRICE after the
           amount:
 
                   2009/1/1
@@ -390,7 +390,7 @@ FILE FORMAT
                     assets:cash
 
        3. Or let hledger infer the price so as to balance the transaction.  To
-          permit this, you must fully specify all posting amounts,  and  their
+          permit  this,  you must fully specify all posting amounts, and their
           sum must have a non-zero amount in exactly two commodities:
 
                   2009/1/1
@@ -404,38 +404,38 @@ FILE FORMAT
                   assets:foreign currency       $135.00
                   assets:cash                  $-135.00
 
-       Example  use for transaction prices: recording the effective conversion
+       Example use for transaction prices: recording the effective  conversion
        rate of purchases made in a foreign currency.
 
    Market prices
-       Market prices are not tied to a particular transaction; they  represent
-       historical  exchange rates between two commodities.  (Ledger calls them
-       historical prices.) For  example,  the  prices  published  by  a  stock
-       exchange  or the foreign exchange market.  Some commands (balance, cur-
-       rently) can use this information to show the market value of things  at
+       Market  prices are not tied to a particular transaction; they represent
+       historical exchange rates between two commodities.  (Ledger calls  them
+       historical  prices.)  For  example,  the  prices  published  by a stock
+       exchange or the foreign exchange market.  Some commands (balance,  cur-
+       rently)  can use this information to show the market value of things at
        a given date.
 
-       To  record market prices, use P directives in the main journal or in an
+       To record market prices, use P directives in the main journal or in  an
        included file.  Their format is:
 
               P DATE COMMODITYBEINGPRICED UNITPRICE
 
-       DATE is a simple date as usual.  COMMODITYBEINGPRICED is the symbol  of
-       the  commodity  being  priced.  UNITPRICE is an ordinary amount (symbol
-       and quantity) in a second commodity, specifying the unit price or  con-
-       version  rate  for  the  first commodity in terms of the second, on the
+       DATE  is a simple date as usual.  COMMODITYBEINGPRICED is the symbol of
+       the commodity being priced.  UNITPRICE is an  ordinary  amount  (symbol
+       and  quantity) in a second commodity, specifying the unit price or con-
+       version rate for the first commodity in terms of  the  second,  on  the
        given date.
 
-       For example, the following directives say that one euro was worth  1.35
+       For  example, the following directives say that one euro was worth 1.35
        US dollars during 2009, and $1.40 from 2010 onward:
 
               P 2009/1/1  $1.35
               P 2010/1/1  $1.40
 
    Comments
-       Lines  in  the  journal  beginning  with a semicolon (;) or hash (#) or
-       asterisk (*) are comments, and will  be  ignored.   (Asterisk  comments
-       make it easy to treat your journal like an org-mode outline in emacs.)
+       Lines in the journal beginning with a semicolon  (;)  or  hash  (#)  or
+       asterisk  (*)  are  comments,  and will be ignored.  (Asterisk comments
+       make it easy to treat your journal like an org-mode outline in  emacs.)
 
        Also,   anything  between  comment  and  end comment  directives  is  a
        (multi-line) comment.  If there is no end comment, the comment  extends
@@ -551,27 +551,27 @@ FILE FORMAT
        Or, you can use the --alias 'OLD=NEW' option on the command line.  This
        affects all entries.  It's useful for trying out aliases interactively.
 
-       OLD  and  NEW  are full account names.  hledger will replace any occur-
-       rence of the old account name with the new one.  Subaccounts  are  also
+       OLD and NEW are full account names.  hledger will  replace  any  occur-
+       rence  of  the old account name with the new one.  Subaccounts are also
        affected.  Eg:
 
               alias checking = assets:bank:wells fargo:checking
               # rewrites "checking" to "assets:bank:wells fargo:checking", or "checking:a" to "assets:bank:wells fargo:checking:a"
 
    Regex aliases
-       There  is  also a more powerful variant that uses a regular expression,
-       indicated by the forward slashes.  (This was the default  behaviour  in
+       There is also a more powerful variant that uses a  regular  expression,
+       indicated  by  the forward slashes.  (This was the default behaviour in
        hledger 0.24-0.25):
 
               alias /REGEX/ = REPLACEMENT
 
        or --alias '/REGEX/=REPLACEMENT'.
 
-       REGEX  is  a  case-insensitive regular expression.  Anywhere it matches
-       inside an account name, the matched part will be replaced  by  REPLACE-
-       MENT.   If REGEX contains parenthesised match groups, these can be ref-
+       REGEX is a case-insensitive regular expression.   Anywhere  it  matches
+       inside  an  account name, the matched part will be replaced by REPLACE-
+       MENT.  If REGEX contains parenthesised match groups, these can be  ref-
        erenced by the usual numeric backreferences in REPLACEMENT.  Note, cur-
-       rently  regular  expression  aliases  may  cause noticeable slow-downs.
+       rently regular expression  aliases  may  cause  noticeable  slow-downs.
        (And if you use Ledger on your hledger file, they will be ignored.) Eg:
 
               alias /^(.+):bank:([^:]+)(.*)/ = \1:\2 \3
@@ -730,6 +730,7 @@ EDITOR SUPPORT
        These  were  written  with  Ledger  in mind, but also work with hledger
        files:
 
+
        Emacs              http://www.ledger-cli.org/3.0/doc/ledger-mode.html
        Vim                https://github.com/ledger/ledger/wiki/Get-
                           ting-started
diff --git a/hledger-lib/doc/hledger_timeclock.5.info b/hledger-lib/doc/hledger_timeclock.5.info
index d2e505ce7..b20f02448 100644
--- a/hledger-lib/doc/hledger_timeclock.5.info
+++ b/hledger-lib/doc/hledger_timeclock.5.info
@@ -1,4 +1,4 @@
-This is hledger_timeclock.5.info, produced by makeinfo version 5.2 from
+This is hledger_timeclock.5.info, produced by makeinfo version 6.0 from
 stdin.
 
 
diff --git a/hledger-lib/doc/hledger_timeclock.5.txt b/hledger-lib/doc/hledger_timeclock.5.txt
index 0c7f258e5..f93663377 100644
--- a/hledger-lib/doc/hledger_timeclock.5.txt
+++ b/hledger-lib/doc/hledger_timeclock.5.txt
@@ -7,11 +7,11 @@ NAME
        Timeclock - the time logging format of timeclock.el, as read by hledger
 
 DESCRIPTION
-       hledger  can read timeclock files.  As with Ledger, these are (a subset
+       hledger can read timeclock files.  As with Ledger, these are (a  subset
        of) timeclock.el's format, containing clock-in and clock-out entries as
-       in  the  example below.  The date is a simple date.  The time format is
-       HH:MM[:SS][+-ZZZZ].  Seconds and timezone are optional.  The  timezone,
-       if  present,  must be four digits and is ignored (currently the time is
+       in the example below.  The date is a simple date.  The time  format  is
+       HH:MM[:SS][+-ZZZZ].   Seconds and timezone are optional.  The timezone,
+       if present, must be four digits and is ignored (currently the  time  is
        always interpreted as a local time).
 
               i 2015/03/30 09:00:00 some:account name  optional description after two spaces
@@ -19,9 +19,9 @@ DESCRIPTION
               i 2015/03/31 22:21:45 another account
               o 2015/04/01 02:00:34
 
-       hledger treats each clock-in/clock-out pair as  a  transaction  posting
-       some  number of hours to an account.  Or if the session spans more than
-       one day, it is split into several transactions, one for each day.   For
+       hledger  treats  each  clock-in/clock-out pair as a transaction posting
+       some number of hours to an account.  Or if the session spans more  than
+       one  day, it is split into several transactions, one for each day.  For
        the above time log, hledger print generates these journal entries:
 
               $ hledger -f t.timeclock print
@@ -42,7 +42,7 @@ DESCRIPTION
 
        To generate time logs, ie to clock in and clock out, you could:
 
-       o use  emacs  and  the  built-in  timeclock.el,  or  the extended time-
+       o use emacs and  the  built-in  timeclock.el,  or  the  extended  time-
          clock-x.el and perhaps the extras in ledgerutils.el
 
        o at the command line, use these bash aliases:
@@ -51,13 +51,13 @@ DESCRIPTION
                 alias to="echo o `date '+%Y-%m-%d %H:%M:%S'` >>$TIMELOG"
 
        o or use the old ti and to scripts in the ledger 2.x repository.  These
-         rely  on  a "timeclock" executable which I think is just the ledger 2
+         rely on a "timeclock" executable which I think is just the  ledger  2
          executable renamed.
 
 
 
 REPORTING BUGS
-       Report bugs at http://bugs.hledger.org (or on the #hledger IRC  channel
+       Report  bugs at http://bugs.hledger.org (or on the #hledger IRC channel
        or hledger mail list)
 
 
@@ -71,7 +71,7 @@ COPYRIGHT
 
 
 SEE ALSO
-       hledger(1),      hledger-ui(1),     hledger-web(1),     hledger-api(1),
+       hledger(1),     hledger-ui(1),     hledger-web(1),      hledger-api(1),
        hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
        dot(5), ledger(1)
 
diff --git a/hledger-lib/doc/hledger_timedot.5.info b/hledger-lib/doc/hledger_timedot.5.info
index 961e57718..0c51c154b 100644
--- a/hledger-lib/doc/hledger_timedot.5.info
+++ b/hledger-lib/doc/hledger_timedot.5.info
@@ -1,4 +1,4 @@
-This is hledger_timedot.5.info, produced by makeinfo version 5.2 from
+This is hledger_timedot.5.info, produced by makeinfo version 6.0 from
 stdin.
 
 
diff --git a/hledger-ui/doc/hledger-ui.1.info b/hledger-ui/doc/hledger-ui.1.info
index b1a5865ad..b2a898818 100644
--- a/hledger-ui/doc/hledger-ui.1.info
+++ b/hledger-ui/doc/hledger-ui.1.info
@@ -1,4 +1,4 @@
-This is hledger-ui.1.info, produced by makeinfo version 5.2 from stdin.
+This is hledger-ui.1.info, produced by makeinfo version 6.0 from stdin.
 
 
 File: hledger-ui.1.info,  Node: Top,  Next: OPTIONS,  Up: (dir)
diff --git a/hledger-web/doc/hledger-web.1.info b/hledger-web/doc/hledger-web.1.info
index f1d327975..fdd9f4e1d 100644
--- a/hledger-web/doc/hledger-web.1.info
+++ b/hledger-web/doc/hledger-web.1.info
@@ -1,4 +1,4 @@
-This is hledger-web.1.info, produced by makeinfo version 5.2 from stdin.
+This is hledger-web.1.info, produced by makeinfo version 6.0 from stdin.
 
 
 File: hledger-web.1.info,  Node: Top,  Next: OPTIONS,  Up: (dir)
diff --git a/hledger-web/doc/hledger-web.1.txt b/hledger-web/doc/hledger-web.1.txt
index 285609c2c..3e8a73793 100644
--- a/hledger-web/doc/hledger-web.1.txt
+++ b/hledger-web/doc/hledger-web.1.txt
@@ -57,22 +57,22 @@ DESCRIPTION
        With --file-url you can set a different base url for static  files,  eg
        for better caching or cookie-less serving on high performance websites.
 
-       Note  there  is  no  built-in  access  control (aside from listening on
-       127.0.0.1 by default).  So you will need to hide hledger-web behind  an
-       authenticating  proxy (such as apache or nginx) if you want to restrict
+       Note there is no built-in  access  control  (aside  from  listening  on
+       127.0.0.1  by default).  So you will need to hide hledger-web behind an
+       authenticating proxy (such as apache or nginx) if you want to  restrict
        who can see and add entries to your journal.
 
        Command-line options and arguments may be used to set an initial filter
-       on  the  data.  This is not shown in the web UI, but it will be applied
+       on the data.  This is not shown in the web UI, but it will  be  applied
        in addition to any search query entered there.
 
        With journal and timeclock files (but not CSV files, currently) the web
-       app  detects  changes made by other means and will show the new data on
-       the next request.  If a change makes the file unparseable,  hledger-web
+       app detects changes made by other means and will show the new  data  on
+       the  next request.  If a change makes the file unparseable, hledger-web
        will show an error until the file has been fixed.
 
 OPTIONS
-       Note:  if invoking hledger-web as a hledger subcommand, write -- before
+       Note: if invoking hledger-web as a hledger subcommand, write --  before
        options as shown above.
 
        --serve
@@ -85,21 +85,21 @@ OPTIONS
               listen on this TCP port (default: 5000)
 
        --base-url=URL
-              set the  base  url  (default:  http://IPADDR:PORT).   You  would
+              set  the  base  url  (default:  http://IPADDR:PORT).   You would
               change this when sharing over the network, or integrating within
               a larger website.
 
        --file-url=URL
               set the static files url (default: BASEURL/static).  hledger-web
-              normally  serves static files itself, but if you wanted to serve
-              them from another server for efficiency, you would set  the  url
+              normally serves static files itself, but if you wanted to  serve
+              them  from  another server for efficiency, you would set the url
               with this.
 
        hledger general options:
 
        -h     show general usage (or after COMMAND, the command's usage)
 
-       --help show  the  current  program's  manual as plain text (or after an
+       --help show the current program's manual as plain  text  (or  after  an
               add-on COMMAND, the add-on's manual)
 
        --man  show the current program's manual with man
@@ -116,7 +116,7 @@ OPTIONS
               use a different input file.  For stdin, use -
 
        --rules-file=RULESFILE
-              Conversion  rules  file  to  use  when  reading  CSV   (default:
+              Conversion   rules  file  to  use  when  reading  CSV  (default:
               FILE.rules)
 
        --alias=OLD=NEW
@@ -149,7 +149,7 @@ OPTIONS
               multiperiod/multicolumn report by year
 
        -p --period=PERIODEXP
-              set  start date, end date, and/or reporting interval all at once
+              set start date, end date, and/or reporting interval all at  once
               (overrides the flags above)
 
        --date2
@@ -174,11 +174,11 @@ OPTIONS
               show items with zero amount, normally hidden
 
        -B --cost
-              convert amounts to their cost at  transaction  time  (using  the
+              convert  amounts  to  their  cost at transaction time (using the
               transaction price, if any)
 
        -V --value
-              convert  amounts  to  their  market value on the report end date
+              convert amounts to their market value on  the  report  end  date
               (using the most recent applicable market price, if any)
 
        --pivot TAGNAME
@@ -188,17 +188,17 @@ OPTIONS
 
 ENVIRONMENT
        LEDGER_FILE The journal file path when not specified with -f.  Default:
-       ~/.hledger.journal  (on  windows,  perhaps C:/Users/USER/.hledger.jour-
+       ~/.hledger.journal (on  windows,  perhaps  C:/Users/USER/.hledger.jour-
        nal).
 
 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
+       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-
+       The need to precede options with -- when invoked from hledger  is  awk-
        ward.
 
        -f- doesn't work (hledger-web can't read from stdin).
@@ -212,7 +212,7 @@ BUGS
 
 
 REPORTING BUGS
-       Report bugs at http://bugs.hledger.org (or on the #hledger IRC  channel
+       Report  bugs at http://bugs.hledger.org (or on the #hledger IRC channel
        or hledger mail list)
 
 
@@ -226,7 +226,7 @@ COPYRIGHT
 
 
 SEE ALSO
-       hledger(1),      hledger-ui(1),     hledger-web(1),     hledger-api(1),
+       hledger(1),     hledger-ui(1),     hledger-web(1),      hledger-api(1),
        hledger_csv(5), hledger_journal(5), hledger_timeclock(5), hledger_time-
        dot(5), ledger(1)
 
diff --git a/hledger/doc/hledger.1.info b/hledger/doc/hledger.1.info
index f9876d6b0..44395383e 100644
--- a/hledger/doc/hledger.1.info
+++ b/hledger/doc/hledger.1.info
@@ -1,4 +1,4 @@
-This is hledger.1.info, produced by makeinfo version 5.2 from stdin.
+This is hledger.1.info, produced by makeinfo version 6.0 from stdin.
 
 
 File: hledger.1.info,  Node: Top,  Next: EXAMPLES,  Up: (dir)
diff --git a/hledger/doc/hledger.1.txt b/hledger/doc/hledger.1.txt
index 48ce819ab..b0a5c457d 100644
--- a/hledger/doc/hledger.1.txt
+++ b/hledger/doc/hledger.1.txt
@@ -121,33 +121,33 @@ OPTIONS
          hledger COMMAND -h shows these.  Eg: hledger register --cleared.
 
        o Command-specific  options  are  also  provided  by   some   commands.
-         hledger COMMAND -h shows these too.  Eg: hledger register --average.
+         hledger COMMAND -h  shows these too.  Eg: hledger register --average.
 
-       o Some  hledger  commands  come from separate add-on executables, which
-         have their own options.  hledger COMMAND -h shows  these,  as  usual.
-         Such  options,  if  not  also supported by hledger, should be written
-         following a double hyphen argument  (--)  so  that  hledger's  option
-         parser  does  not  complain.   Eg: hledger ui -- --register=checking.
+       o Some hledger commands come from separate  add-on  executables,  which
+         have  their  own  options.  hledger COMMAND -h shows these, as usual.
+         Such options, if not also supported by  hledger,  should  be  written
+         following  a  double  hyphen  argument  (--) so that hledger's option
+         parser does  not  complain.   Eg:  hledger ui -- --register=checking.
          Or,  you  can  just  run  the  add-on  directly:  hledger-ui --regis-
          ter=checking.
 
-       Command  arguments  may  also  follow  the command name.  In most cases
-       these specify a query which filters  the  data.   Command  options  and
+       Command arguments may also follow the  command  name.   In  most  cases
+       these  specify  a  query  which  filters the data.  Command options and
        arguments can be intermixed.
 
-       Option  and argument values containing problematic characters should be
+       Option and argument values containing problematic characters should  be
        escaped with double quotes, backslashes, or (best) single quotes.  This
        means spaces, but also characters which are significant to your command
-       shell,   such   as    less-than/greater-than.     Eg:    hledger regis-
+       shell,    such    as    less-than/greater-than.    Eg:   hledger regis-
        ter -p 'last year' "accounts receivable (receiv-
        able|payable)" amt:\>100.
 
-       Characters which are significant to  the  shell  and  also  in  regular
-       expressions,  like  parentheses,  the  pipe symbol and the dollar sign,
-       must sometimes be double-escaped.  Eg,  to  match  the  dollar  symbol:
+       Characters  which  are  significant  to  the  shell and also in regular
+       expressions, like parentheses, the pipe symbol  and  the  dollar  sign,
+       must  sometimes  be  double-escaped.   Eg,  to match the dollar symbol:
        hledger balance cur:'\$' or hledger balance cur:\\$.
 
-       There's  more..   options  and  arguments being passed by hledger to an
+       There's more..  options and arguments being passed  by  hledger  to  an
        add-on executable get de-escaped once in the process.  In this case you
        might    need    triple-escaping.     Eg:    hledger ui cur:'\\$'    or
        hledger ui cur:\\\\$.
@@ -169,7 +169,7 @@ OPTIONS
 
        -h     show general usage (or after COMMAND, the command's usage)
 
-       --help show the current program's manual as plain  text  (or  after  an
+       --help show  the  current  program's  manual as plain text (or after an
               add-on COMMAND, the add-on's manual)
 
        --man  show the current program's manual with man
@@ -186,7 +186,7 @@ OPTIONS
               use a different input file.  For stdin, use -
 
        --rules-file=RULESFILE
-              Conversion   rules  file  to  use  when  reading  CSV  (default:
+              Conversion  rules  file  to  use  when  reading  CSV   (default:
               FILE.rules)
 
        --alias=OLD=NEW
@@ -220,7 +220,7 @@ OPTIONS
               multiperiod/multicolumn report by year
 
        -p --period=PERIODEXP
-              set start date, end date, and/or reporting interval all at  once
+              set  start date, end date, and/or reporting interval all at once
               (overrides the flags above)
 
        --date2
@@ -245,11 +245,11 @@ OPTIONS
               show items with zero amount, normally hidden
 
        -B --cost
-              convert  amounts  to  their  cost at transaction time (using the
+              convert amounts to their cost at  transaction  time  (using  the
               transaction price, if any)
 
        -V --value
-              convert amounts to their market value on  the  report  end  date
+              convert  amounts  to  their  market value on the report end date
               (using the most recent applicable market price, if any)
 
        --pivot TAGNAME
@@ -257,13 +257,13 @@ OPTIONS
 
        --anon show anonymized accounts and payees
 
-       If  a  reporting  option occurs more than once on the command line, the
+       If a reporting option occurs more than once on the  command  line,  the
        last one takes precedence.  Eg -p jan -p feb is equivalent to -p feb.
 
    Input files
        hledger reads transactions from a data file (and the add command writes
        to it).  By default this file is $HOME/.hledger.journal (or on Windows,
-       something like C:/Users/USER/.hledger.journal).  You can override  this
+       something  like C:/Users/USER/.hledger.journal).  You can override this
        with the $LEDGER_FILE environment variable:
 
               $ setenv LEDGER_FILE ~/finance/2016.journal
@@ -277,24 +277,25 @@ OPTIONS
 
               $ cat some.journal | hledger -f-
 
-       Usually  the  data file is in hledger's journal format, but it can also
-       be one of several other formats, listed  below.   hledger  detects  the
-       format  automatically  based  on  the file extension, or if that is not
+       Usually the data file is in hledger's journal format, but it  can  also
+       be  one  of  several  other formats, listed below.  hledger detects the
+       format automatically based on the file extension, or  if  that  is  not
        recognised, by trying each built-in "reader" in turn:
 
+
        Reader:       Reads:                              Used for file extensions:
        -----------------------------------------------------------------------------
        journal       hledger's  journal  format,  also   .journal    .j    .hledger
                      some Ledger journals                .ledger
-       timeclock     timeclock  files  (precise   time   .timeclock
+       timeclock     timeclock   files  (precise  time   .timeclock
                      logging)
-       timedot       timedot  files  (approximate time   .timedot
+       timedot       timedot files  (approximate  time   .timedot
                      logging)
-       csv           comma-separated   values    (data   .csv
+       csv           comma-separated    values   (data   .csv
                      interchange)
 
-       If  needed  (eg  to  ensure  correct error messages when a file has the
-       "wrong" extension), you can force a specific reader/format by  prepend-
+       If needed (eg to ensure correct error messages  when  a  file  has  the
+       "wrong"  extension), you can force a specific reader/format by prepend-
        ing it to the file path with a colon.  Examples:
 
               $ hledger -f csv:/some/csv-file.dat stats
@@ -305,7 +306,7 @@ OPTIONS
 
        o directives in one file will not affect the other files
 
-       o balance assertions will not see any account  balances  from  previous
+       o balance  assertions  will  not see any account balances from previous
          files
 
        If you need those, either use the include directive, or concatenate the
@@ -313,15 +314,16 @@ OPTIONS
 
    Smart dates
        hledger's user interfaces accept a flexible "smart date" syntax (unlike
-       dates  in the journal file).  Smart dates allow some english words, can
-       be relative to today's date, and can have less-significant  date  parts
+       dates in the journal file).  Smart dates allow some english words,  can
+       be  relative  to today's date, and can have less-significant date parts
        omitted (defaulting to 1).
 
        Examples:
 
+
        2009/1/1,      2009/01/01,   simple dates, several sep-
        2009-1-1, 2009.1.1           arators allowed
-       2009/1, 2009                 same  as above - a missing
+       2009/1, 2009                 same as above - a  missing
                                     day or month defaults to 1
        1/1,     january,     jan,   relative   dates,  meaning
        this year                    january 1 of  the  current
@@ -330,35 +332,37 @@ OPTIONS
        this month                   the  1st  of  the  current
                                     month
        this week                    the most recent monday
+
+
        last week                    the  monday  of  the  week
                                     before this one
        lastweek                     spaces are optional
-
        today, yesterday, tomorrow
 
    Report start & end date
-       Most  hledger  reports  show  the  full span of time represented by the
+       Most hledger reports show the full span  of  time  represented  by  the
        journal data, by default.  So, the effective report start and end dates
-       will  be  the earliest and latest transaction or posting dates found in
+       will be the earliest and latest transaction or posting dates  found  in
        the journal.
 
-       Often you will want to see a shorter time span,  such  as  the  current
-       month.   You  can  specify  a  start  and/or end date using -b/--begin,
+       Often  you  will  want  to see a shorter time span, such as the current
+       month.  You can specify a  start  and/or  end  date  using  -b/--begin,
        -e/--end, -p/--period or a date: query (described below).  All of these
-       accept  the smart date syntax.  One important thing to be aware of when
-       specifying end dates: as in Ledger, end dates  are  exclusive,  so  you
+       accept the smart date syntax.  One important thing to be aware of  when
+       specifying  end  dates:  as  in Ledger, end dates are exclusive, so you
        need to write the date after the last day you want to include.
 
        Examples:
 
+
        -b 2016/3/17      begin  on  St.   Patrick's
                          day 2016
        -e 12/1           end at the start of decem-
                          ber  1st  of  the  current
-                         year (11/30  will  be  the
+                         year  (11/30  will  be the
                          last date included)
-       -b thismonth      all   transactions  on  or
-                         after the 1st of the  cur-
+       -b thismonth      all  transactions  on   or
+                         after  the 1st of the cur-
                          rent month
        -p thismonth      all  transactions  in  the
                          current month
@@ -370,15 +374,15 @@ OPTIONS
 
    Report intervals
        A report interval can be specified so that commands like register, bal-
-       ance and activity will divide their reports into  multiple  subperiods.
-       The   basic   intervals   can  be  selected  with  one  of  -D/--daily,
-       -W/--weekly, -M/--monthly, -Q/--quarterly, or -Y/--yearly.   More  com-
-       plex  intervals  may  be  specified  with  a period expression.  Report
+       ance  and  activity will divide their reports into multiple subperiods.
+       The  basic  intervals  can  be  selected  with   one   of   -D/--daily,
+       -W/--weekly,  -M/--monthly,  -Q/--quarterly, or -Y/--yearly.  More com-
+       plex intervals may be  specified  with  a  period  expression.   Report
        intervals can not be specified with a query, currently.
 
    Period expressions
-       The -p/--period option accepts period expressions, a shorthand  way  of
-       expressing a start date, end date, and/or report interval all at once.
+       The  -p/--period  option accepts period expressions, a shorthand way of
+       expressing a start date, end date, and/or report interval all at  once.
 
        Here's  a basic period expression specifying the first quarter of 2009.
        Note, hledger always treats start dates as inclusive and end  dates  as
@@ -390,6 +394,7 @@ OPTIONS
        long as you don't run two dates together.  "to" can also be written  as
        "-".  These are equivalent to the above:
 
+
        -p "2009/1/1 2009/4/1"
        -p2009/1/1to2009/4/1
        -p2009/1/1-2009/4/1
@@ -397,6 +402,7 @@ OPTIONS
        Dates  are  smart  dates, so if the current year is 2009, the above can
        also be written as:
 
+
        -p "1/1 4/1"
        -p "january-apr"
        -p "this year to 4/1"
@@ -404,6 +410,7 @@ OPTIONS
        If you specify only one date, the missing start or end date will be the
        earliest or latest transaction in your journal:
 
+
        -p "from 2009/1/1"   everything  after  january
                             1, 2009
        -p "from 2009/1"     the same
@@ -414,6 +421,7 @@ OPTIONS
        A  single  date  with  no "from" or "to" defines both the start and end
        date like so:
 
+
        -p "2009"       the year 2009;  equivalent
                        to "2009/1/1 to 2010/1/1"
        -p "2009/1"     the  month of jan; equiva-
@@ -428,6 +436,7 @@ OPTIONS
        -Y  flags.   Between  report interval and start/end dates (if any), the
        word in is optional.  Examples:
 
+
        -p "weekly from 2009/1/1 to 2009/4/1"
        -p "monthly in 2008"
        -p "quarterly"
@@ -438,6 +447,7 @@ OPTIONS
 
        Examples:
 
+
        -p "bimonthly from 2008"
        -p "every 2 weeks"
        -p "every 5 days from 1/3"
@@ -1053,13 +1063,13 @@ COMMANDS
               $ hledger -f t.j bal euros -V -e 2016/12/21
                            $103.00  assets:euros
 
-       Currently, hledger's -V only uses market prices recorded with P  direc-
+       Currently,  hledger's -V only uses market prices recorded with P direc-
        tives, not transaction prices (unlike Ledger).
 
        Using -B and -V together is allowed.
 
    Custom balance output
-       In  simple  (non-multi-column)  balance  reports, you can customise the
+       In simple (non-multi-column) balance reports,  you  can  customise  the
        output with --format FMT:
 
               $ hledger balance --format "%20(account) %12(total)"
@@ -1077,7 +1087,7 @@ COMMANDS
                                               0
 
        The FMT format string (plus a newline) specifies the formatting applied
-       to  each  account/balance pair.  It may contain any suitable text, with
+       to each account/balance pair.  It may contain any suitable  text,  with
        data fields interpolated like so:
 
        %[MIN][.MAX](FIELDNAME)
@@ -1088,14 +1098,14 @@ COMMANDS
 
        o FIELDNAME must be enclosed in parentheses, and can be one of:
 
-         o depth_spacer - a number of spaces equal to the account's depth,  or
+         o depth_spacer  - a number of spaces equal to the account's depth, or
            if MIN is specified, MIN * depth spaces.
 
          o account - the account's name
 
          o total - the account's balance/posted total, right justified
 
-       Also,  FMT  can begin with an optional prefix to control how multi-com-
+       Also, FMT can begin with an optional prefix to control  how  multi-com-
        modity amounts are rendered:
 
        o %_ - render on multiple lines, bottom-aligned (the default)
@@ -1104,7 +1114,7 @@ COMMANDS
 
        o %, - render on one line, comma-separated
 
-       There are some quirks.  Eg in one-line  mode,  %(depth_spacer)  has  no
+       There  are  some  quirks.   Eg in one-line mode, %(depth_spacer) has no
        effect, instead %(account) has indentation built in.
         Experimentation may be needed to get pleasing results.
 
@@ -1112,19 +1122,19 @@ COMMANDS
 
        o %(total) - the account's total
 
-       o %-20.20(account)  -  the account's name, left justified, padded to 20
+       o %-20.20(account) - the account's name, left justified, padded  to  20
          characters and clipped at 20 characters
 
-       o %,%-50(account)  %25(total) - account name padded to  50  characters,
-         total  padded to 20 characters, with multiple commodities rendered on
+       o %,%-50(account)  %25(total)  -  account name padded to 50 characters,
+         total padded to 20 characters, with multiple commodities rendered  on
          one line
 
-       o %20(total)  %2(depth_spacer)%-(account) - the default format for  the
+       o %20(total)  %2(depth_spacer)%-(account)  - the default format for the
          single-column balance report
 
    Output destination
-       The  balance, print, register and stats commands can write their output
-       to a destination other than the console.  This  is  controlled  by  the
+       The balance, print, register and stats commands can write their  output
+       to  a  destination  other  than the console.  This is controlled by the
        -o/--output-file option.
 
               $ hledger balance -o -     # write to stdout (the default)
@@ -1132,8 +1142,8 @@ COMMANDS
 
    CSV output
        The balance, print and register commands can write their output as CSV.
-       This is useful for exporting data to other  applications,  eg  to  make
-       charts  in a spreadsheet.  This is controlled by the -O/--output-format
+       This  is  useful  for  exporting data to other applications, eg to make
+       charts in a spreadsheet.  This is controlled by the  -O/--output-format
        option, or by specifying a .csv file extension with -o/--output-file.
 
               $ hledger balance -O csv       # write CSV to stdout
@@ -1156,8 +1166,8 @@ COMMANDS
        --format=LINEFORMAT
               in single-column balance reports: use this custom line format
 
-       This command displays a simple balance  sheet.   It  currently  assumes
-       that  you  have  top-level  accounts  named asset and liability (plural
+       This  command  displays  a  simple balance sheet.  It currently assumes
+       that you have top-level accounts  named  asset  and  liability  (plural
        forms also allowed.)
 
               $ hledger balancesheet
@@ -1196,9 +1206,9 @@ COMMANDS
        --format=LINEFORMAT
               in single-column balance reports: use this custom line format
 
-       This command displays a simple cashflow statement It shows  the  change
-       in  all  "cash"  (ie,  liquid assets) accounts for the period.  It cur-
-       rently assumes that cash accounts are under a top-level  account  named
+       This  command  displays a simple cashflow statement It shows the change
+       in all "cash" (ie, liquid assets) accounts for  the  period.   It  cur-
+       rently  assumes  that cash accounts are under a top-level account named
        asset and do not contain receivable or A/R (plural forms also allowed.)
 
               $ hledger cashflow
@@ -1643,14 +1653,14 @@ ADD-ON COMMANDS
        hledger-dupes.hs checks for account names sharing the same leaf name.
 
    equity
-       hledger-equity.hs  prints  balance-resetting  transactions,  useful for
+       hledger-equity.hs prints  balance-resetting  transactions,  useful  for
        bringing account balances across file boundaries.
 
    prices
        hledger-prices.hs prints all prices from the journal.
 
    print-unique
-       hledger-print-unique.hs prints  transactions  which  do  not  reuse  an
+       hledger-print-unique.hs  prints  transactions  which  do  not  reuse an
        already-seen description.
 
    register-match
@@ -1663,13 +1673,13 @@ ADD-ON COMMANDS
 
 TROUBLESHOOTING
    Run-time problems
-       Here  are  some  issues  you  might encounter when you run hledger (and
-       remember you can also seek help from the IRC channel, mail list or  bug
+       Here are some issues you might encounter  when  you  run  hledger  (and
+       remember  you can also seek help from the IRC channel, mail list or bug
        tracker):
 
        Successfully installed, but "No command 'hledger' found"
        stack and cabal install binaries into a special directory, which should
-       be added to your PATH environment variable.  Eg on  unix-like  systems,
+       be  added  to your PATH environment variable.  Eg on unix-like systems,
        that is ~/.local/bin and ~/.cabal/bin respectively.
 
        I set a custom LEDGER_FILE, but hledger is still using the default file
