Simon Michael
4e3c0cc936
ui: historical/period toggle, help updates
...
accounts and register screens can now switch between "historical"
(default) and "period" modes
title header wording is clearer
quick help footer now indicates historical/period and tree/flat modes,
saving space in the title
help screen is more explanatory
the enter key has been reserved for later and is no longer an alias
for right/l
2016-08-12 17:44:55 -07:00
Simon Michael
af9daa3b11
ui: use only shift-cursor keys for period; simplify
2016-08-10 07:17:35 -07:00
Simon Michael
fe1408485d
ui: shift-left/right/up/down equivalent to p/n/u/d
2016-08-09 16:36:14 -07:00
Simon Michael
79cc999fa3
ui: d/u zooms report period down/up, t selects today
2016-08-09 15:31:35 -07:00
Simon Michael
11c6426834
ui: show historical balances whenever possible #392
...
hledger-ui now tries to show historical balances always, including
when (to limit transactions on the register screen) a report start date
is specified. This means that:
- the accounts screen balances are not disturbed by a start date
- the register screen is now a little better at showing the running
historical balance. It's still not very good at it; some filter
queries will cause it to fall back to showing the running total of
visible transactions. But it's no longer disturbed by Z (nonzero mode)
or a cur: query term.
2016-08-08 17:50:26 -07:00
Simon Michael
974b1e3be0
lib: simplify balance report types; haddocks
2016-08-08 17:23:21 -07:00
Simon Michael
293b0f6705
ui: strip leading/trailing whitespace from filter query
2016-08-04 11:55:46 -07:00
Simon Michael
3c724efe4f
ui: d cycles report duration, n/p steps to next/prev period ( #381 )
2016-08-02 08:24:04 -07:00
Simon Michael
0cb5703ad1
ui: refactor draw functions
2016-08-02 08:24:04 -07:00
Simon Michael
fe6d4cc7da
lib: abstract period/interval/cleared in ReportOpts
2016-07-29 19:20:56 -07:00
Simon Michael
ffb40870ce
ui: register: be inclusive for a depth-clipped account, matching displayed balance
...
And drop F key from register screen again.
2016-07-26 17:28:29 -07:00
Simon Michael
9b0cadc179
ui: support/require brick 0.7+ #379
2016-07-24 18:06:49 -07:00
Simon Michael
7eeb5e01ee
ui: I toggles balance assertions
...
This was a bit tricky.
2016-07-06 15:08:57 -07:00
Simon Michael
19fc5b61f7
ui: indicate when balance assertions are ignored
...
The indication takes up lots of space, may need refinement.
It's currently not shown on the error screen.
2016-07-06 15:07:27 -07:00
Moritz Kiefer
991204d59a
Support vty 0.7 ( #365 )
2016-07-05 13:23:00 -07:00
Simon Michael
dbeb4e3020
ui: add vi-style movement keys, use ? for help ( #357 )
2016-06-24 18:54:54 -07:00
Simon Michael
1d419eb7e6
ui: editor: jump to current txn or error location (emacs, emacsclient, vi)
2016-06-19 16:15:17 -07:00
Simon Michael
c79750bafd
ui: editor: cleanup, vi support, positioning support
2016-06-19 14:09:49 -07:00
Simon Michael
4923efefb9
ui: basic editor integration
...
The E key (on all screens) edits the main journal file using
$HLEDGER_UI_EDITOR or $EDITOR or "emacs -nw",
jumping to the end if it's Emacs.
2016-06-19 09:00:04 -07:00
Simon Michael
c4b3a4f996
ui: use Z instead of E for nonzero mode
...
Breaking consistency with hledger cli flags, but I think it's
more mnemonic, and E will more useful for something else.
2016-06-18 09:00:38 -07:00
Simon Michael
cc8180b295
ui: flat mode affects register too; doc updates
2016-06-18 08:46:08 -07:00
Simon Michael
d4343f8de1
ui: at depth 0 call account "All" (and fix register)
2016-06-12 11:09:59 -07:00
Simon Michael
bdb36b8480
ui: refactor: events, imports cleanup
2016-06-10 17:54:46 -07:00
Simon Michael
47a8eb53c8
ui: refactor: AppState -> UIState, cleanups
2016-06-10 17:54:46 -07:00
Simon Michael
0851851ea9
ui: refactor: drop Vty. prefix
2016-06-10 16:39:06 -07:00
Simon Michael
9ba8465421
ui: accounts: fix an earlier refactoring, helping selection persistence
2016-06-10 16:21:43 -07:00
Simon Michael
8b9f5e1cdf
ui: 0 now limits depth to 0 instead of resetting it
2016-06-10 12:51:10 -07:00
Simon Michael
ea180f72a0
ui: briefer on-screen help, and a more detailed help dialog
2016-06-10 11:50:57 -07:00
Simon Michael
aa75cc69f6
ui: a more general mode mechanism
2016-06-10 08:40:00 -07:00
Simon Michael
499f249157
ui: clear screen before add
2016-06-09 12:42:47 -07:00
Simon Michael
6c6222ef85
ui: import Lens.Micro.Platform more correctly
2016-06-09 12:41:26 -07:00
Simon Michael
1ed7819467
ui: very basic add command integration
2016-06-09 09:50:41 -07:00
Simon Michael
8bda78a447
ui: refactor, simplify, flatten screen types
2016-06-09 07:47:48 -07:00
Simon Michael
e6b1d2d5a7
ui: preliminary lensification, just the accounts screen state
...
Experimenting with lenses to reduce record accessing/updating noise.
So far, it's not at all a clear win.
cf https://github.com/jtdaugherty/brick/issues/62
2016-06-08 15:47:53 -07:00
Simon Michael
5c343a5848
ui: convert screen states to records
...
This is highly verbose, but potentially clearer, allows better haddock docs, and hopefully will improve after lensification.
2016-06-08 12:15:58 -07:00
Simon Michael
5259605e82
ui: simplify screen naming & importing
2016-06-08 11:03:49 -07:00
Simon Michael
70d596fb38
ui: extract journal reloading
2016-06-08 10:48:34 -07:00
Simon Michael
1e93feeff3
ui: distinguish regenerateScreens from journal reloading
2016-06-08 10:42:51 -07:00
Simon Michael
bbcbaf6080
ui: Esc (outside minibuffer) resets, jumps to top
2016-06-07 09:26:16 -07:00
Simon Michael
c6313ebf8c
ui: use / to filter; backspace/delete clears it
...
I was planning to use this for search, but I can't help it, my hands
want to use / to adjust the filter.
2016-06-07 09:23:36 -07:00
Simon Michael
9131eb7c67
ui: allow the filter query to be changed
2016-06-04 11:56:10 -07:00
Simon Michael
d1d6e237ec
ui: U key shows only uncleared transactions/postings
2016-06-03 18:32:19 -07:00
Simon Michael
9e42e231c7
ui: accounts, register: more stable scroll position after E/C/R
2016-06-03 17:53:49 -07:00
Simon Michael
4ab1536ea0
ui: accounts: hold selection better during F toggle
2016-06-03 16:31:53 -07:00
Simon Michael
16bb17fbe8
ui: show nonzero (empty) mode, turn it off by default
...
-E/--empty is now the default for hledger-ui, so accounts with 0 balance
and transactions posting 0 change are shown by default. The E key
toggles this, entering "nonzero" mode which hides zero items.
2016-06-03 09:01:54 -07:00
Simon Michael
e3a55a72d9
ui: accounts: E key toggles --empty
2016-06-01 12:32:38 -07:00
Simon Michael
509f55864d
ui: indicate real mode and toggle it with R key ( #354 )
...
There is a limitation/bug: disabling real mode in the transaction screen
won't show the non-real postings if it was entered from a real-mode
register screen.
2016-06-01 12:30:39 -07:00
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
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