Commit Graph

116 Commits

Author SHA1 Message Date
Simon Michael
88ef586480 lib: rename, clarify purpose of balanceReportFromMultiBalanceReport 2018-01-23 11:32:24 -08:00
Simon Michael
69e255cead lib: deduplicate, refactor valuation code 2017-12-29 16:52:08 -08:00
Simon Michael
e3c4a76119 add & use simpler readJournalFilesWithOpts/InputOpts api 2017-09-14 17:43:32 -07:00
Simon Michael
55cebad0d5 cli: refactor: move commands to a subdirectory, reinstate test command 2017-09-12 10:04:36 -07:00
Simon Michael
dc191ec76e cli: refactor: new Commands module
Builtin commands are now gathered more tightly in a single module,
Hledger.Cli.Commands, reducing duplication and facilitating change.

The tests command was difficult and has been dropped for now.

The obsolete convert/info/man commands have been dropped.

cli: refactor: a proper commands list, better Main/Commands separation

The legacy "convert" command has been dropped.

The activity command's module is now named consistently.
2017-09-11 16:50:08 -07:00
Simon Michael
50efcfe359 ui: accounts: reduce "warping", select alphabetically preceding account
..when selected account disappears, eg when toggling zero accounts.
2017-06-30 19:45:21 +01:00
Simon Michael
8619942388 ui: toggles cleanup 2017-06-30 19:07:26 +01:00
Simon Michael
97964eb2fc ui: consistently support vi & emacs movement keys
hjkl and CTRL-bfnp should now work wherever unmodified arrow keys work.
(You must still use arrow keys with SHIFT for adjusting report period).
2017-06-30 16:37:10 +01:00
Simon Michael
ef5e152fde ui: better scrolling/positioning
In the accounts and register screens:, you can now scroll down further
so that the last item need not always be shown at the bottom of the screen.
Also we now try to center the selected item in the following situations:

- after moving to the end with Page down/End
- after toggling filters (status, real, historical..)
- on pressing the control-l key (should force a screen redraw, also)
- on entering the register screen from the accounts screen (there's a
  known problem with this: it doesn't work the first time).

Items near the top of the list can't be centered, as we don't scroll
higher than the top of the list.
2017-06-30 15:54:30 +01:00
Simon Michael
0ccb8c0779 ui: refactor: consistent order 2017-06-28 12:54:14 +01:00
Simon Michael
59af88b796 ui: add temporary --status-toggles for testing toggle styles (#564) 2017-06-18 16:20:30 -07:00
Simon Michael
dcc58d4a2b lib: rename ClearedStatus type to Status
(and fix hard-coded enum count)
2017-06-15 19:16:39 -07:00
Simon Michael
e119941648 rename "uncleared" status to "unmarked" and --uncleared to --unmarked (#564)
See the issue and linked mail list discussion. Ambiguity between the
uncleared state, and the "not cleared" --uncleared flag causes confusion
and friction. At this point it seems best to break with Ledger and
past hledger, pick a new name and drop --uncleared to put an end to it.
2017-06-15 19:16:39 -07:00
Simon Michael
44c6b324ab ui: add P key to toggle pending mode (#564) 2017-06-15 19:16:39 -07:00
Simon Michael
31e4f538c0 ui: the A key runs hledger-iadd (if available) 2016-12-08 13:18:56 -08:00
Simon Michael
3c4cb4eeeb ui: --watch: track date only when a standard period is in effect 2016-12-07 15:19:36 -08:00
Simon Michael
9952f93e97 ui: --watch date tracking fixes
- move the period only if it's "current" (contains the old "today" date)
- make it work on all screens, not just accounts
2016-12-02 15:36:23 -08:00
Simon Michael
e3a7f6697e ui: --watch also tracks the current date, when appropriate
ie, when viewing a "current" period (the current day/week/month/quarter/year),
it will be moved to enclose the current date, if needed, whenever the system date changes.
2016-12-01 19:26:38 -08:00
Simon Michael
6dd406779b ui: always reload when g is pressed
Previously it would check the modification time and reload only if
it looked newer than the last reload. But this could get confused
somehow by fsnotify events, such that there were unloaded changes
on disk yet pressing g did nothing.
2016-11-24 20:23:14 -08:00
Simon Michael
b09b3a7be6 ui: with --watch, react to file changes in real time
Experimental, tested on OSX so far.
Rapid successive file changes can cause it to get stuck.
2016-11-24 11:14:34 -08:00
Simon Michael
0f1108db07 ui: use a custom application event type 2016-11-24 09:10:50 -08:00
Simon Michael
9311077205 ui: allow brick 0.14, vty 5.12, text-zipper 0.9 2016-11-19 08:53:07 -08:00
Simon Michael
c6e2784eeb ui: use brick 0.12, bump version to 1.0.3 2016-10-31 08:06:29 -07:00
Simon Michael
a4cf233312 ui: keep next/previous period within the journal's date span 2016-08-13 08:08:43 -07:00
Simon Michael
ef961f51ac ui: quick help formatting fix 2016-08-12 18:06:02 -07:00
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