Commit Graph

74 Commits

Author SHA1 Message Date
Simon Michael
2538d14ea7 lib: textification begins! account names
The first of several conversions from String to (strict) Text, hopefully
reducing space and time usage.

This one shows a small improvement, with GHC 7.10.3 and text-1.2.2.1:

hledger -f data/100x100x10.journal stats
string: <<ghc: 39471064 bytes, 77 GCs, 198421/275048 avg/max bytes residency (3 samples), 2M in use, 0.000 INIT (0.001 elapsed), 0.015 MUT (0.020 elapsed), 0.010 GC (0.014 elapsed) :ghc>>
text:   <<ghc: 39268024 bytes, 77 GCs, 197018/270840 avg/max bytes residency (3 samples), 2M in use, 0.000 INIT (0.002 elapsed), 0.016 MUT (0.022 elapsed), 0.009 GC (0.011 elapsed) :ghc>>

hledger -f data/1000x100x10.journal stats
string: <<ghc: 318555920 bytes, 617 GCs, 2178997/7134472 avg/max bytes residency (7 samples), 16M in use, 0.000 INIT (0.001 elapsed), 0.129 MUT (0.136 elapsed), 0.067 GC (0.077 elapsed) :ghc>>
text:   <<ghc: 314248496 bytes, 612 GCs, 2074045/6617960 avg/max bytes residency (7 samples), 16M in use, 0.000 INIT (0.003 elapsed), 0.137 MUT (0.145 elapsed), 0.067 GC (0.079 elapsed) :ghc>>

hledger -f data/10000x100x10.journal stats
string: <<ghc: 3114763608 bytes, 6026 GCs, 18858950/75552024 avg/max bytes residency (11 samples), 201M in use, 0.000 INIT (0.000 elapsed), 1.331 MUT (1.372 elapsed), 0.699 GC (0.812 elapsed) :ghc>>
text:   <<ghc: 3071468920 bytes, 5968 GCs, 14120344/62951360 avg/max bytes residency (9 samples), 124M in use, 0.000 INIT (0.003 elapsed), 1.272 MUT (1.349 elapsed), 0.513 GC (0.578 elapsed) :ghc>>

hledger -f data/100000x100x10.journal stats
string: <<ghc: 31186579432 bytes, 60278 GCs, 135332581/740228992 avg/max bytes residency (13 samples), 1697M in use, 0.000 INIT (0.008 elapsed), 14.677 MUT (15.508 elapsed), 7.081 GC (8.074 elapsed) :ghc>>
text:   <<ghc: 30753427672 bytes, 59763 GCs, 117595958/666457240 avg/max bytes residency (14 samples), 1588M in use, 0.000 INIT (0.008 elapsed), 13.713 MUT (13.966 elapsed), 6.220 GC (7.108 elapsed) :ghc>>
2016-05-24 19:00:49 -07:00
Simon Michael
0a90ef4658 ui: preserve --ignore-assertions & flags on reload 2016-05-02 20:12:11 -07:00
Simon Michael
50aeb90596 lib, ui: GHC 8 compatibility 2016-04-28 12:55:19 -07:00
Simon Michael
42c12fe631 cli, ui, web, api: --info, --man, info & man cmds 2016-04-19 19:21:29 -07:00
Simon Michael
f9362707b6 ui, web, api: fix -h, --help 2016-04-18 16:43:51 -07:00
Simon Michael
f331ebec16 ui, api: switch to the quicker-building microlens
This may not make much difference since dependencies brick and
servant-swagger still depend on lens, but that might change.
2016-04-04 17:50:58 -07:00
Simon Michael
f36c4a2a91 mark todo 2016-02-19 17:52:40 -08:00
Simon Michael
8a4f3eaad4 ui: txn: make reloading work on this screen 2015-11-06 21:17:25 -08:00
Simon Michael
ed775e1ef4 ui: cleanup 2015-11-06 21:17:09 -08:00
Simon Michael
a8d9178ee2 ui: haddock 2015-11-06 21:16:44 -08:00
Simon Michael
e061eabe2c ui: C toggles --cleared; f -> F; UI tweaks
You can now toggle showing only cleared items in the accounts and
register screens, with C (like the command-line flag).

The f key has been changed to F for consistency (we don't have this as a
command-line flag, though we could, though Ledger uses it for something
different).

Screen titles have been tweaked, eg switching the cyan and yellow.

Screen help has been squeezed to fit better in 80 columns.
2015-10-30 10:42:44 -07:00
Simon Michael
722e19098f ui: txn: next/prev also moves selection in register 2015-10-29 20:34:31 -07:00
Simon Michael
4691454908 ui: txn: up/down steps through txns in the account 2015-10-29 20:19:18 -07:00
Simon Michael
4d97db02cb ui: txn: show full transaction, not a partial one 2015-10-29 18:20:27 -07:00
Simon Michael
11fee9fbe8 ui: txn: show multi-commodity amounts on one line
In the transaction screen, show multi-commodity posting amounts on one
line, consistent with the rest of hledger-ui.
2015-10-29 18:10:06 -07:00
Simon Michael
68cd35c965 ui: txn: add a transaction-viewing screen 2015-10-29 17:45:57 -07:00
Simon Michael
b48ee2d22e ui: types cleanup 2015-10-28 11:46:06 -07:00
Simon Michael
b950bd0d83 ui: reg: refactor, consolidate state 2015-10-28 11:30:56 -07:00
Simon Michael
45db0a28cc ui: acc: preserve account selection across reloads 2015-10-28 11:13:33 -07:00
Simon Michael
423934b2b8 ui: fixups 2015-10-28 10:27:14 -07:00
Simon Michael
2515025a84 ui: pressing g once now reloads all screens 2015-10-28 10:17:15 -07:00
Simon Michael
b527209e9f ui: err: tweak error message, make it red 2015-10-28 10:02:04 -07:00
Simon Michael
6f85e02f1a ui: show an error screen when reloading fails 2015-10-26 07:41:45 -07:00
Simon Michael
b64f42c2d8 bal, ui: option help tweaks 2015-10-17 11:22:39 -07:00
Simon Michael
bcc22a0367 ui: register: wide-char-aware layout 2015-10-10 12:26:17 -07:00
Simon Michael
7808c502ad ui: accounts: wide-char-aware layout 2015-09-29 21:17:24 -10:00
Simon Michael
af33a5ac3d ui: f key toggles flat/tree mode 2015-09-13 14:34:46 -07:00
Simon Michael
135cf714ef ui: streamline help 2015-09-13 14:34:28 -07:00
Simon Michael
5504d70a41 ui: acc: accept = as an alias for the + key 2015-09-04 09:10:00 -07:00
Simon Michael
4a4fb13a95 ui: reg: g key reloads here too 2015-09-04 09:09:36 -07:00
Simon Michael
30cce4188f ui: acc: g key reloads the journal
On the accounts screen, the g key now reloads the journal if possible.
With large journals, there may be a noticeable delay before the screen updates.
If there's a problem reading the journal file(s), this has no effect.
2015-09-04 08:14:36 -07:00
Simon Michael
a61c9ad7c4 ui: acc: don't mention included files in title 2015-09-04 07:41:07 -07:00
Simon Michael
b9affbaee9 ui: acc: show enter key in bottom help 2015-09-04 07:36:23 -07:00
Simon Michael
d83b22028b ui: acc: show short account names in tree mode again
This broke for some reason.
2015-09-04 07:29:34 -07:00
Simon Michael
8685a78795 ui: acc: enter key also enters register, for now 2015-09-03 21:05:45 -07:00
Simon Michael
25a0a7c4dd ui: make keys bold in bottom help 2015-09-03 21:03:03 -07:00
Simon Michael
ebc4022888 ui: after exiting --register, select that account 2015-09-03 20:51:05 -07:00
Simon Michael
472b0aee75 ui: whitespace 2015-09-03 20:46:36 -07:00
Simon Michael
d46f511b79 ui: allow navigating to accounts after --register 2015-09-03 20:40:43 -07:00
Simon Michael
07041e1b65 ui: fix --ignore-assertions, perhaps more 2015-09-03 16:09:52 -07:00
Simon Michael
9f2d59948e ui: styled amounts, smarter accounts column sizing 2015-08-28 17:55:50 -07:00
Simon Michael
74512814ec cli/ui/web: rename X.Options modules to X.XOptions
Make these modules' names more like the heavily-used types they
define (CliOpts, UIOpts, WebOpts). This is consistent with
RawOptions and ReportOptions, and helps with code navigation.
2015-08-28 12:43:51 -07:00
Simon Michael
8a343002f6 ui: fix vector-related breakage with GHC < 7.10 2015-08-28 11:39:23 -07:00
Simon Michael
5792c67666 ui: refactor depth key handling 2015-08-28 11:28:22 -07:00
Simon Michael
f3dd5eb830 fix options breakage with GHC < 7.10 2015-08-28 11:17:49 -07:00
Simon Michael
c897c03469 ui: number keys > max depth clear the depth limit 2015-08-28 10:31:40 -07:00
Simon Michael
6b17305196 ui: +/- adjusts the depth limit (accounts screen) 2015-08-28 10:01:54 -07:00
Simon Michael
4dd1e9c725 clean up options validation a little 2015-08-28 09:57:01 -07:00
Simon Michael
4f351d6c9c ui: --register starts in the register screen 2015-08-28 08:48:40 -07:00
Simon Michael
eefa9c42a3 ui: remove debug code 2015-08-28 08:12:33 -07:00