mirror of
https://github.com/simonmichael/hledger.git
synced 2024-09-19 10:17:35 +03:00
lib: show pending posting flags when rendering a transaction (fix #563)
This affects hledger-ui's transaction screen, print, hledger-rewrite etc. A pending flag on postings is now displayed, just like a cleared flag. Also there will now be a space between flag and account name. And it's slightly better at aligning amounts, due to now considering virtual posting parentheses/brackets or something.
This commit is contained in:
parent
cd70bb1a86
commit
1adc636554
@ -212,14 +212,17 @@ postingAsLines elideamount onelineamounts ps p = concat [
|
||||
++ newlinecomments
|
||||
| postingblock <- postingblocks]
|
||||
where
|
||||
postingblocks = [map rstrip $ lines $ concatTopPadded [account, " ", amount, assertion, samelinecomment] | amount <- shownAmounts]
|
||||
postingblocks = [map rstrip $ lines $ concatTopPadded [statusandaccount, " ", amount, assertion, samelinecomment] | amount <- shownAmounts]
|
||||
assertion = maybe "" ((" = " ++) . showAmountWithZeroCommodity) $ pbalanceassertion p
|
||||
account =
|
||||
indent $
|
||||
showstatus p ++ fitString (Just acctwidth) Nothing False True (showAccountName Nothing (ptype p) (paccount p))
|
||||
statusandaccount = indent $ fitString (Just $ minwidth) Nothing False True $ pstatusandacct p
|
||||
where
|
||||
showstatus p = if pstatus p == Cleared then "* " else ""
|
||||
acctwidth = maximum $ map (textWidth . paccount) ps
|
||||
-- pad to the maximum account name width, to keep amounts aligned
|
||||
minwidth = maximum $ map (textWidth . T.pack . pacctstr) ps
|
||||
pstatusandacct p' = pstatusprefix p' ++ pacctstr p'
|
||||
pstatusprefix p' | null s = ""
|
||||
| otherwise = s ++ " "
|
||||
where s = show $ pstatus p'
|
||||
pacctstr p' = showAccountName Nothing (ptype p') (paccount p')
|
||||
|
||||
-- currently prices are considered part of the amount string when right-aligning amounts
|
||||
shownAmounts
|
||||
|
@ -70,15 +70,15 @@
|
||||
>>>
|
||||
2017/04/24 * 09:00-09:25
|
||||
(assets:unbilled:client1) 0.42h
|
||||
(assets:to bill:client1) 42.00 CAD
|
||||
(assets:to bill:client1) 42.00 CAD
|
||||
|
||||
2017/04/25 * 10:00-11:15
|
||||
(assets:unbilled:client1) 1.25h
|
||||
(assets:to bill:client1) 125.00 CAD
|
||||
(assets:to bill:client1) 125.00 CAD
|
||||
|
||||
2017/04/25 * 14:00-15:32
|
||||
(assets:unbilled:client2) 1.54h
|
||||
(assets:to bill:client2) 231.00 CAD
|
||||
(assets:to bill:client2) 231.00 CAD
|
||||
|
||||
>>>2
|
||||
>>>=0
|
||||
|
@ -116,7 +116,7 @@ alias E=F
|
||||
|
||||
>>>
|
||||
2011/01/01
|
||||
[E:x] 1
|
||||
[E:x] 1
|
||||
[x:A:x]
|
||||
|
||||
>>>2
|
||||
|
Loading…
Reference in New Issue
Block a user