Commit Graph

241 Commits

Author SHA1 Message Date
Mitchell Rosen
42e7a2c32c Use hpack in hledger-ui (#356) 2016-06-12 16:02:44 -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
aa871c8074 ui: doc: register: filtering by acct does work 2016-06-12 10:47:35 -07:00
Simon Michael
68a1a8687a doc: generate really plain text manuals
Drop the nice ansi highlighting that won't work everywhere,
the unpredictable unicode hyphens, etc.
2016-06-11 21:34:20 -07:00
Simon Michael
060e89d3ee doc: ui: small update 2016-06-11 21:29:08 -07:00
Simon Michael
b4cbd16e52 ui: doc: build latest depth limit doc 2016-06-10 19:49:13 -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
dc6f39a859 ui: doc: latest keys 2016-06-10 12:12:45 -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
e6769b26fc doc: more macros, less redundancy, cleanups 2016-06-09 18:07:08 -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
a70eca8e01 ui: doc: a key runs add 2016-06-09 09:56:36 -07:00
Simon Michael
a6d859c273 ui: comments 2016-06-09 09:51:15 -07:00
Simon Michael
1ed7819467 ui: very basic add command integration 2016-06-09 09:50:41 -07:00
Simon Michael
7f26f991ba ui, api: fix/update microlens, microlens-platform dependency 2016-06-09 09:49:16 -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
5c657dbd81 ui: switch to the more complete microlens-platform 2016-06-08 15:44:08 -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
bfae74a18b ui: doc: fix filter query link 2016-06-07 09:41:36 -07:00
Simon Michael
4d62ac5efc ui: document latest keys 2016-06-07 09:38:31 -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
4b68675ce5 ui: txn: show current query affecting txn list 2016-06-07 09:20:20 -07:00
Simon Michael
7a951a8dd7 ui: cleanup, haddocks 2016-06-07 09:03:59 -07:00
Simon Michael
9131eb7c67 ui: allow the filter query to be changed 2016-06-04 11:56:10 -07:00
Simon Michael
606036e1a2 ui: consistent -V description in short help 2016-06-03 18:41:12 -07:00
Simon Michael
d1d6e237ec ui: U key shows only uncleared transactions/postings 2016-06-03 18:32:19 -07:00
Simon Michael
3b24c15813 ui: transaction: show when empty/cleared/real are affecting the txn list 2016-06-03 18:00:38 -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
ddf18060ab ui: register: keep scroll position more stable when toggling E 2016-06-03 16:07:37 -07:00
Simon Michael
fa59fd27ee ui: register: fix zero txn toggling, and maintain selection 2016-06-03 12:56:22 -07:00
Simon Michael
7338543699 doc: ui: document new keys 2016-06-03 10:22:04 -07:00
Simon Michael
8986a8d3a0 doc: fix pivot option formatting, whitespace 2016-06-03 09:50:01 -07:00
Simon Michael
f21e9d1c25 doc: more deduplication of options help
Help for reporting options is now also defined once in lib.m4
(in addition to CliOptions.hs). Also fixed some duplication of general
options in docs. hledger-* manuals now include the full list of general
and reporting options; we assume that any inapplicable options get
harmlessly ignored and that this will not surprise users.
2016-06-03 09:38:06 -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
2c8b47b293 ui: register: E key toggles zero-amount txns 2016-06-03 08:57:38 -07:00
Simon Michael
cc67aeba8d ui: fix some warnings (#354) 2016-06-02 18:13:07 -07:00
Simon Michael
7c8d7e9820 ui: transaction: ignore real/cleared/empty, always show full txn (#354)
This commit clarifies the account transactions report: as before the included transactions
are the original unfiltered transactions, but now the change and running balance amounts
are calculated from the report-matched postings. This fixed the limitation noted in 509f558,
so that toggling real mode in any screen could work. Then I decided the transaction screen
shouldn't show a partial transaction after all, so real/cleared filtering is no longer allowed or indicated here.
2016-06-02 07:03:00 -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
a961988a88 bump cabal versions to 0.28 2016-05-29 00:00:59 -07:00
Simon Michael
f0baa30db0 doc: another help flag consistency fix 2016-05-28 23:51:14 -07:00
Simon Michael
656734ccd3 doc: define general options once
Well, twice: in lib.m4 and in CliOptions.hs. But no longer in every man page.
2016-05-28 23:50:37 -07:00
Simon Michael
df07ad0109 doc: parameterise and bump docs version to 0.28 2016-05-28 23:31:44 -07:00
Simon Michael
bd3212654c doc: bring embedded help files up to date 2016-05-28 12:58:30 -07:00
Simon Michael
90c9735b7a lib: textification: descriptions & codes
Slightly higher (with small files) and lower (with large files) maximum
residency, and slightly quicker for all.

hledger -f data/100x100x10.journal stats
<<ghc: 42858472 bytes, 84 GCs, 193712/269608 avg/max bytes residency (3 samples), 2M in use, 0.000 INIT (0.015 elapsed), 0.016 MUT (0.042 elapsed), 0.011 GC (0.119 elapsed) :ghc>>
<<ghc: 42891776 bytes, 84 GCs, 190816/260920 avg/max bytes residency (3 samples), 2M in use, 0.000 INIT (0.004 elapsed), 0.017 MUT (0.025 elapsed), 0.010 GC (0.015 elapsed) :ghc>>

hledger -f data/1000x1000x10.journal stats
<<ghc: 349575240 bytes, 681 GCs, 1396425/4091680 avg/max bytes residency (7 samples), 11M in use, 0.000 INIT (0.000 elapsed), 0.137 MUT (0.146 elapsed), 0.050 GC (0.057 elapsed) :ghc>>
<<ghc: 349927568 bytes, 681 GCs, 1397825/4097248 avg/max bytes residency (7 samples), 11M in use, 0.000 INIT (0.000 elapsed), 0.126 MUT (0.133 elapsed), 0.050 GC (0.057 elapsed) :ghc>>

hledger -f data/10000x1000x10.journal stats
<<ghc: 3424029496 bytes, 6658 GCs, 11403141/41077288 avg/max bytes residency (11 samples), 111M in use, 0.000 INIT (0.000 elapsed), 1.278 MUT (1.310 elapsed), 0.493 GC (0.546 elapsed) :ghc>>
<<ghc: 3427418064 bytes, 6665 GCs, 11127869/37790168 avg/max bytes residency (11 samples), 109M in use, 0.000 INIT (0.001 elapsed), 1.212 MUT (1.229 elapsed), 0.466 GC (0.519 elapsed) :ghc>>

hledger -f data/100000x1000x10.journal stats
<<ghc: 34306546248 bytes, 66727 GCs, 77030638/414617944 avg/max bytes residency (14 samples), 1012M in use, 0.000 INIT (0.000 elapsed), 12.965 MUT (13.164 elapsed), 4.771 GC (5.447 elapsed) :ghc>>
<<ghc: 34340246056 bytes, 66779 GCs, 76983178/416011480 avg/max bytes residency (14 samples), 1011M in use, 0.000 INIT (0.008 elapsed), 12.666 MUT (12.836 elapsed), 4.595 GC (5.175 elapsed) :ghc>>
2016-05-24 19:00:58 -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
f7e0f75c4f rename a file to help git on windows (#345) 2016-05-18 16:52:10 -07:00
Simon Michael
89b1cd1e5b doc: readme for doc directories 2016-05-17 10:03:57 -07:00
Simon Michael
29d4f1c03f ui: build faster, latest brick/vty uses microlens 2016-05-11 06:32:32 -07:00
Simon Michael
e2ce7c4802 doc, tests: clarify what --date2 does 2016-05-06 16:57:24 -07:00
Simon Michael
0a90ef4658 ui: preserve --ignore-assertions & flags on reload 2016-05-02 20:12:11 -07:00
Simon Michael
7ec3ebb66b update tested-with
Note we seem to have lost GHC 7.4 compatibility. It should be fixable if
anyone cares.
2016-04-28 17:32:17 -07:00
Simon Michael
50aeb90596 lib, ui: GHC 8 compatibility 2016-04-28 12:55:19 -07:00
Simon Michael
91847fc6fd data-files does not support wildcards after all 2016-04-20 13:23:05 -07:00
Simon Michael
33b5c5dc94 declare generated docs as data-files, sync hpack yamls 2016-04-20 12:47:17 -07:00
Simon Michael
80948d1db7 doc: also commit info files, should fix travis 2016-04-20 12:47:17 -07:00
Simon Michael
42c12fe631 cli, ui, web, api: --info, --man, info & man cmds 2016-04-19 19:21:29 -07:00
Simon Michael
3d129f6d31 shake: also generate info manuals 2016-04-18 17:54:55 -07:00
Simon Michael
25e2534794 doc: update all docs mentioning -h and --help 2016-04-18 17:00:54 -07:00
Simon Michael
f9362707b6 ui, web, api: fix -h, --help 2016-04-18 16:43:51 -07:00
Simon Michael
ee279fd438 ui: fix stack ghci does not export main warning 2016-04-18 15:48:18 -07:00
Simon Michael
6a3a5c60c5 doc: manual cleanups
use simpler markup
use pre blocks more consistently
pandoc table experiments
no more right-floating examples, use columns if needed
doc edits
style tweaks
2016-04-17 19:28:16 -07:00
Simon Michael
82f35dddd0 doc: m4 macro for web table of contents 2016-04-16 11:00:39 -07:00
Simon Michael
4c291dc54e doc: use macros not divs to select web/man content
Use slightly clearer m4 macros instead of special divs to mark content
as web only/man only. The temporary doc/*.md files are no longer needed,
slightly more redundant work is done.
2016-04-16 10:09:51 -07:00
Simon Michael
130d259cb1 site: show version links on manuals 2016-04-16 04:44:33 -07:00
Simon Michael
6a97a246dd doc: use m4 for all manuals, shake cleanup 2016-04-16 03:50:30 -07:00
Simon Michael
e4cff6a30f tools: .ghci for each package, sets shorter prompt 2016-04-15 16:06:45 -07:00
Simon Michael
b73bcda52a include txt man pages in cabal tarballs 2016-04-13 22:38:53 -07:00
Simon Michael
bfa5e14373 doc: generate (and commit) text-rendred man pages
Intended for embedding in executables. Quick implementation,
hopefully these are fixed-width and compatible with all terminals.
2016-04-13 22:29:16 -07:00
Simon Michael
588f36d662 rename timelog format to timeclock 2016-04-12 21:13:19 -07:00
Simon Michael
8ee0c7fa76 doc: update man pages 2016-04-12 20:31:17 -07:00
Simon Michael
b4d491791c doc: include nroff man pages in cabal tarballs 2016-04-12 11:25:46 -07:00
Simon Michael
5754f2bb4a doc: updates, merge some more from old manual 2016-04-09 14:23:55 -07:00
Simon Michael
5d9d155ca0 doc: misc cleanups 2016-04-07 21:59:30 -07:00
Simon Michael
69542160bb doc: remove colons from man page headings 2016-04-07 08:55:53 -07:00
Simon Michael
443b870481 site: fix man page TOCs, add combined man page 2016-04-07 08:55:21 -07:00
Simon Michael
f3fb1a89f2 doc: exclude web content from nroffs 2016-04-06 08:20:27 -07:00
Simon Michael
24c2e7d471 doc: move man page source and nroff to PKG/doc/ 2016-04-06 08:16:38 -07:00
Simon Michael
eab6b110bc tools: simplify doc filtering class names 2016-04-05 16:17:08 -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
Sergei Trofimovich
6f65aa20f8 hledger-ui.cabal: allow brick-0.5
Signed-off-by: Sergei Trofimovich <siarheit@google.com>
2016-04-04 17:20:22 -07:00
Simon Michael
2dbe07a666 doc: mark up man pages for man/web rendering
And commit the latest nroff output. It'll need retesting.
2016-02-21 02:32:40 -08:00
Simon Michael
ed0ec6d849 Revert "doc: try making hledger-ui web manual from man page"
This wasn't right, leave the UI doc in the manual as it was for now.
2016-02-20 23:58:07 -08:00
Simon Michael
494c74f81b tools: hide package.yaml files to fix travis
The latest stack runs a buggy hpack that generates invalid
cabal files. Rename them to future-package.yaml for now.
2016-02-20 19:07:49 -08:00
Simon Michael
269f7afe33 doc: try making hledger-ui web manual from man page 2016-02-19 22:49:45 -08:00
Simon Michael
f36c4a2a91 mark todo 2016-02-19 17:52:40 -08:00
Simon Michael
142c52e5b9 ui: changelog, bump version to 0.27.3 2016-01-14 20:43:02 -08:00
Simon Michael
5b7040fecd ui: allow brick 0.4 2016-01-14 20:43:02 -08:00