# a default commodity defined with the D directive will be used for any
# subsequent commodity-less posting amounts. The sample amount's display style
# is also applied, and the resulting amount may end up setting the canonical
# display style for the commodity.

# 1. no default commodity
<
2010/1/1
  a  1000
  b

$ hledger -f- print
2010-01-01
    a            1000
    b

>=0

# 2. pound, two decimal places, no digit group separator
<
D £1000.00
2010/1/1
  a  1000
  b

$ hledger -f- print
2010-01-01
    a        £1000.00
    b

>=0

# 3. dollar, comma decimal point, three decimal places, no digit group separator
<
D $1,000
2010/1/1
  a  1000
  b

$ hledger -f- print
2010-01-01
    a       $1000,000
    b

>=0

# 4. dollar, three digit group separator, one decimal place
<
D $1,000.0
2010/1/1
  (a)  1000000

$ hledger -f- print
2010-01-01
    (a)    $1,000,000.0

>=0

# 5. A D directive affects all aspects of display style, 
# including limiting the display precision, like a commodity directive (#1187).
<
D 1,000.0 A
2020/1/1
  (a)  1000.123

$ hledger -f- print
2020-01-01
    (a)     1,000.123 A

>=0

# 6. A default commodity should not affect parsing of 
# automated posting multiplier amounts.
<
D $1000.

= a
  (b)  *2

2018/1/1
  (a)  €1

$ hledger -f- print --auto
2018-01-01  ; modified:
    (a)              €1
    (b)              €2  ; generated-posting: = a

>=0

