Commit Graph

3898 Commits

Author SHA1 Message Date
Simon Michael
3a7a5d6035 lib: 6-tuple accessors 2015-08-24 16:24:11 -07:00
Simon Michael
3bdd8916b9 ui: register screen: use full terminal width
This uses a clunky hack for now. To adapt to a window resize,
you must exit and re-enter the register screen (maybe twice).
2015-08-24 16:24:11 -07:00
Simon Michael
6b07503792 ui: move backlog to readme 2015-08-24 16:24:11 -07:00
Simon Michael
866414a528 ui: provide a more useful transaction register
The register screen is now like the register view in hledger-web (and
other accounting systems), rather than hledger's register command.
This means:

- it shows transactions affecting a particular current account, rather
  than postings matching a pattern.

- Each line represents a whole transaction.

- The account field shows the *other* account being transacted with.
  When there is more than one, they are all listed, abbreviated and
  marked with "(split)".

- The amount field shows the effect of the transaction on the current
  account; positive for an inflow to this account, negative for an
  outflow.

- The balance field should usually show the current account's historic
  balance as of the transaction date, even when you change the report
  start date. (Not working yet - currently it always shows the running
  total).

- Transactions are listed most recent first, currently.
2015-08-24 16:24:11 -07:00
Simon Michael
ebcfdac109 ui: require split
For splitOn. The extra package is an alternative to consider.
2015-08-24 16:24:11 -07:00
Simon Michael
5953978471 ui: update for new brick branch, pgup/down works 2015-08-24 16:24:11 -07:00
Simon Michael
49e1840a0f ui: rewrite the ui using brick
hledger-ui (formerly hledger-vty) is now built on brick, a new
declarative UI layer built on vty. This brings much new power, and
should make the UI much easier to grow and maintain.

At this point, functionality and performance are similar to the old
version. There's no journal entries screen, but entering the postings
screen jumps to the latest posting, and layout is better (multiple
commodities are rendered on one line).

Requires unreleased brick from github (HEAD or some branch) for now.
2015-08-24 16:24:11 -07:00
Simon Michael
8f18560b05 tools: add ghci-ui rule, add hledger-ui to lists 2015-08-24 16:24:11 -07:00
Simon Michael
0098d1d211 tools: travis: roll back more, --install-ghc not supported 2015-08-24 10:28:32 -07:00
Simon Michael
ff7709d61a tools: travis: not working, roll back some 2015-08-24 10:23:09 -07:00
Simon Michael
6b04a6a4a6 Update .travis.yml 2015-08-24 10:15:21 -07:00
Simon Michael
c26aed3125 tools: travis: try some changes seen on stack list 2015-08-24 10:11:50 -07:00
Simon Michael
9647d350b1 doc: more download/devguide tweaks 2015-08-24 09:34:26 -07:00
Simon Michael
ee8161dd1c doc: download: update instructions for stack LTS 3 2015-08-24 09:23:07 -07:00
Simon Michael
edd1d4268b doc: devguide: rewrite setup docs 2015-08-24 07:42:49 -07:00
Simon Michael
62f0b879e5 doc: devguide: sample journals (#197) 2015-08-23 21:42:58 -07:00
Simon Michael
97ab63811f tools: reenable make simplebench & generatejournal 2015-08-23 21:41:39 -07:00
Simon Michael
94e7d026d6 doc: dev guide: benchmarking 2015-08-23 10:23:20 -07:00
Simon Michael
e5f383d8f4 tools: commit dev.hs, for misc. dev testing 2015-08-23 10:20:12 -07:00
Simon Michael
0df43a15a1 tools: stack yaml cleanup 2015-08-23 09:36:42 -07:00
Simon Michael
6fd1e965ed fix cabal file regression breaking GHC<7.10 (#280) 2015-08-21 12:19:43 -07:00
Simon Michael
780549b448 tools: travis: build only the master branch 2015-08-21 11:57:13 -07:00
Simon Michael
a1e098c292 balance: re-enable a balance unit test 2015-08-19 20:53:51 -07:00
Simon Michael
cc98ee39f7 balance, lib: --format/StringFormat improvements
The balance command's --format option (in single-column mode) can now
adjust the rendering of multi-line strings, such as amounts with multiple
commodities. To control this, begin the format string with one of:

 %_  - renders on multiple lines, bottom-aligned (the default)
 %^  - renders on multiple lines, top-aligned
 %,  - render on one line, comma-separated

Also the final total (and the line above it) now adapt themselves to a
custom format.
2015-08-19 20:53:51 -07:00
Simon Michael
7aecbac851 lib: split up Utils more 2015-08-19 20:53:50 -07:00
Simon Michael
69c870c6f0 balance, lib: make StringFormat singular; cleanup
Pass around a StringFormat rather than [StringFormat].
Also more balance report item rendering refactoring.
2015-08-19 20:53:50 -07:00
Simon Michael
36dd64cf02 balance, lib: clarify --format implementation
The --format option's OutputFormat type was named confusingly like the
--output-format option.  It has been renamed StringFormat to distinguish
it from StorageFormat (aka the data file format, referenced by
--output-format). Related code and types have been consolidated.
Also the (single-column) balance report's item rendering has had
some cleanup.
2015-08-19 20:53:49 -07:00
Simon Michael
2b339667e2 Merge branch 'perf-polyparse' (early part) 2015-08-13 13:10:10 -07:00
Simon Michael
632a000f08 derive NFData in a way compatible with GHC < 7.10
The DeriveAnyClass extension requires GHC 7.10, so instead do this in a
more verbose backwards-compatible way. Adds a dependency on deepseq.
2015-08-13 12:58:44 -07:00
Simon Michael
790d42bfa4 derive NFData (and Generic) for all types
so we can benchmark things more easily with criterion.

As well as NFData, the Generic instance and a bunch more GHC extensions
seemed necessary. This is a little scary, impact unknown.
2015-08-13 12:58:35 -07:00
Simon Michael
42d452f99c abstract parsec's SourcePos so as to derive NFData
The NFData instance helps us time things with criterion.
2015-08-13 12:56:15 -07:00
Simon Michael
c158779212 doc: dev guide: more tweaks
[ci skip]
2015-08-13 12:32:30 -07:00
Simon Michael
6420e83dc4 tools: more stack tweaks for travis
[ci skip]
2015-08-13 12:30:23 -07:00
Simon Michael
e485962a70 cli, web: obey the threaded flag again
[ci skip]
2015-08-13 11:55:58 -07:00
Simon Michael
3932655bde lib: expose two functions required by hledger-ui 2015-08-13 11:53:28 -07:00
Simon Michael
64cc886bb5 ui: update cabal file, readme, changelog 2015-08-13 11:52:10 -07:00
Simon Michael
207ae772d4 ui: revive the curses UI, now named hledger-ui 2015-08-13 11:22:40 -07:00
Simon Michael
25146b09e2 tools: use latest stack in travis build 2015-08-13 10:46:44 -07:00
Simon Michael
fcb7d297c8 use canonical bugs.hledger.org url in cabal yamls 2015-08-13 10:02:06 -07:00
Simon Michael
9536db384d bump stack resolver to lts-3.0 2015-08-13 08:16:54 -07:00
Simon Michael
97a691cbad tools: update package version in yaml files now 2015-08-12 22:51:17 -07:00
Simon Michael
48e31d4f8c bump version to 0.26.98 2015-08-12 22:49:04 -07:00
Simon Michael
a9b2e5409c switch to hpack-generated cabal files
The hledger-lib, hledger and hledger-web cabal files are now generated
from the package.yaml files with hpack, plus some manual fixups.
2015-08-12 22:45:08 -07:00
Simon Michael
b91f2b85d0 update hpack package.yaml files 2015-08-12 09:25:28 -07:00
Simon Michael
1d957720e3 vty: make hledger-vty buildable again
Just for fun and curiousity, hledger-vty once again builds, with hledger
HEAD and GHC 7.10, and has a stack config. To see it once again in all
its glory:

$ cd extra/hledger-vty
$ stack install
$ hledger vty [-- ARGS]

[ci skip]
2015-08-11 19:16:58 -07:00
Simon Michael
986896b021 doc: readme: fix badge typo
[ci skip]
2015-08-11 15:51:33 -07:00
Simon Michael
930628805b doc: dev guide, readme: clean up badges, links 2015-08-11 15:48:59 -07:00
Simon Michael
cae3c756ed doc: dev guide: fix table layout, link updates 2015-08-11 15:36:38 -07:00
Simon Michael
51873fde19 doc: readme, dev guide: more badges 2015-08-11 15:25:38 -07:00
Simon Michael
45698b03cf doc: readme: fix a line break with github markdown 2015-08-11 14:37:34 -07:00