Discussion:
RFC: --auto, --forecast always on ? and hledger-ui changes
Simon Michael
2018-10-17 12:14:57 UTC
Permalink
1. I'm leaning towards making --auto (transaction modifiers, aka automated postings) always on and dropping the flag.

2. And I'm wondering if it's feasible/advisable to do the same with --forecast (periodic transactions).

3. Perhaps auto-generated postings and transactions would get a tag (auto:) so you could detect/filter them.

Do you see problems with this, especially 2 ? Maybe you'd want to suppress forecasted transactions in bal --budget reports ?

Separately, yet possibly relatedly, I am testing these hledger-ui changes:

4. show flat mode by default. And change the flat/tree toggle key from F to T. (I use --flat almost always.)

5. hide future transactions by default, and toggle them with F. Add a --future flag to show them at startup. (I sometimes pre-enter future transactions, to save time and for more accurate forecasting; hiding these by default and toggling them easily is a usability win for me).

And I'm wondering

6. if hledger and the other tools should also hide future transactions by default.
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Simon Michael
2018-10-17 12:20:03 UTC
Permalink
7. Planning to drop hledger-ui's --status-toggles flag, keeping the current default behaviour (U P C keys are two-state toggles).
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Carel Fellinger
2018-10-19 15:58:10 UTC
Permalink
Post by Simon Michael
7. Planning to drop hledger-ui's --status-toggles flag, keeping the
current default behaviour (U P C keys are two-state toggles).
Fine with us. We do use the default toggles a lot and with the new
improved keeping-track-of-the-previous-position-in-the-account-window
it works like a charm (almost). Apart from a short testing period, we
never ever used the other toggling modes. It might seem interesting to
allow specifing combinations on the command line (e.g. Cleared and
Pending), but for now I don't have a real use case for it.

The almost part has to do with the lack of what I called electric
marks, perhaps smart or summed marks would be a better name.

In the transaction window the marks within the transaction, that is
in its postings are invisible, yet the CPU toggles react to those
posting marks. Fine with me, I just wished a kind of summation of
those posting marks would be vissible in the transaction window.

Our mledger2ledger tool puts such smart summed posting marks into the
transaction header making them visible in the transaction window. A
great visual aid when using the CPU toggles. Eilas putting them there
explicitly makes it impossible to inspect more then one account, so
we long for the day this gets incorporated into hledger.

The smart summing of marks is rather simple, only when all the marks
for all subaccounts relevant to the current transaction window within
a single transaction are the same that mark is shown, otherwise a
question mark is displayed. Ofcourse the smart summing only kicks in
when there is no explicit mark set in the transaction header.

And for bonus points, the smart marks could be written in a different
color, expecially the question marks deserves to stand out.
--
groetjes, carel
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Dmitry Astapov
2018-10-17 16:12:50 UTC
Permalink
Post by Simon Michael
1. I'm leaning towards making --auto (transaction modifiers, aka automated
postings) always on and dropping the flag.
I personally would like this.
Post by Simon Michael
2. And I'm wondering if it's feasible/advisable to do the same with
--forecast (periodic transactions).
This to me feels less feasible given how implicit and somewhat obscure
"forecast period" selection is.
Post by Simon Michael
3. Perhaps auto-generated postings and transactions would get a tag
(auto:) so you could detect/filter them.
This would also be nice (and quite easy to implement, I think) . Perhaps
Post by Simon Michael
Do you see problems with this, especially 2 ? Maybe you'd want to suppress
forecasted transactions in bal --budget reports ?
4. show flat mode by default. And change the flat/tree toggle key from F
to T. (I use --flat almost always.)
5. hide future transactions by default, and toggle them with F. Add a
--future flag to show them at startup. (I sometimes pre-enter future
transactions, to save time and for more accurate forecasting; hiding these
by default and toggling them easily is a usability win for me).
And I'm wondering
6. if hledger and the other tools should also hide future transactions by default.
You mean that effectively this means that -e, if not given, implicitly
becomes min (today, journal end date)?
Post by Simon Michael
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Simon Michael
2018-10-17 20:27:37 UTC
Permalink
Post by Simon Michael
1. I'm leaning towards making --auto (transaction modifiers, aka automated postings) always on and dropping the flag.
I personally would like this.
2. And I'm wondering if it's feasible/advisable to do the same with --forecast (periodic transactions).
This to me feels less feasible given how implicit and somewhat obscure "forecast period" selection is.
I hear that, though I'm not aware of problems it will cause yet..

(As you see I have come a long way, from "auto things bad!" to "auto all the time if you want it!" ...)
Post by Simon Michael
5. hide future transactions by default, and toggle them with F. Add a --future flag to show them at startup. (I sometimes pre-enter future transactions, to save time and for more accurate forecasting; hiding these by default and toggling them easily is a usability win for me).
And I'm wondering
6. if hledger and the other tools should also hide future transactions by default.
You mean that effectively this means that -e, if not given, implicitly becomes min (today, journal end date)?
Yes, effectively hledger-ui would add a -etomorrow or date:-tomorrow by default.

I've pushed my ui-flat-future branch (changing hledger-ui, not hledger) for testing and review:

https://github.com/simonmichael/hledger/pull/909

I'll run with it here for a while, more testing welcome.
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Dmitry Astapov
2018-10-17 21:51:21 UTC
Permalink
Post by Dmitry Astapov
Post by Simon Michael
1. I'm leaning towards making --auto (transaction modifiers, aka
automated postings) always on and dropping the flag.
I personally would like this.
Post by Simon Michael
2. And I'm wondering if it's feasible/advisable to do the same with
--forecast (periodic transactions).
This to me feels less feasible given how implicit and somewhat obscure
"forecast period" selection is.
I hear that, though I'm not aware of problems it will cause yet..
I suppose no actual problems, maybe some (mild?) confusion.
Post by Dmitry Astapov
(As you see I have come a long way, from "auto things bad!" to "auto all
the time if you want it!" ...)
And I am quite happy that you did! :)
Post by Dmitry Astapov
5. hide future transactions by default, and toggle them with F. Add a
Post by Simon Michael
--future flag to show them at startup. (I sometimes pre-enter future
transactions, to save time and for more accurate forecasting; hiding these
by default and toggling them easily is a usability win for me).
And I'm wondering
6. if hledger and the other tools should also hide future transactions by default.
You mean that effectively this means that -e, if not given, implicitly
becomes min (today, journal end date)?
Yes, effectively hledger-ui would add a -etomorrow or date:-tomorrow by default.
I've pushed my ui-flat-future branch (changing hledger-ui, not hledger)
https://github.com/simonmichael/hledger/pull/909
I'll run with it here for a while, more testing welcome.
Sadly, I am not using hledger-ui at all... Maybe I should?
Post by Dmitry Astapov
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
D. Astapov
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Simon Michael
2018-10-18 00:30:59 UTC
Permalink
Post by Dmitry Astapov
Sadly, I am not using hledger-ui at all... Maybe I should?
I’m biased... but yeah I think you should!

I find it super handy for some tasks. Simple reports, but live and explorable.

Here are some new bash scripts I cooked up recently to suit my new accounts scheme.


alias ui='hledger-ui --watch'

# run ui with balances converted to home currency if possible,
# and multicharacter commodities excluded
function uiconv() {
ui -V cur:. "$@"
}

# cf http://wiki.bash-hackers.org/syntax/pe

# balance sheet ui showing all assets/liabilities
# if present, first arg is an infix-matched subaccount regex,
# and other args are options or non-accountname or not:accountname args
# eg:
# bsui
# bsui checking -C
# bsui '' not:lia
function bsui() {
uiconv -5 '(ass|lia)'"${1:+.*$1}" "${@:2}"
}

# incomestatement ui showing all revenues/expenses
# shows changes not end balances
# this and following commands are otherwise like bsui
# eg:
# isui food date:lastmonth
function isui() {
uiconv -3 '(rev|exp)'"${1:+.*$1}" "${@:2}" --change
}

# business (joyful systems) balance sheet ui
function bsui-js() {
uiconv -5 'JS:(ass|lia)'"${1:+.*$1}" "${@:2}"
}

# business (joyful systems) income statement ui
function isui-js() {
uiconv -3 'JS:(rev|exp)'"${1:+.*$1}" "${@:2}" --change
}

# personal balance sheet ui
function bsui-sm() {
uiconv -5 'sm:(ass|lia)'"${1:+.*$1}" "${@:2}"
}

# personal income statement ui
function isui-sm() {
uiconv -3 'sm:(rev|exp)'"${1:+.*$1}" "${@:2}" --change
}

# balance sheet ui with business/personal combined and some accounts simplified
function bsui-co() {
bsui "$1" -3 --alias='/^(JS|sm):/=' --alias='/:bofi:/=:bi' --alias='/:unify:/=:un' --alias='/:wf:/=:wf' "${@:2}"
}

# income statement ui with business/personal combined and some accounts simplified
function isui-co() {
isui "$1" -2 --alias='/^(JS|sm):/=' "${@:2}"
}

# reconcile ui showing cleared bank/paypal balances
alias reui="bsui-co '(bank|paypal)' -C"
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Simon Michael
2018-10-18 00:44:16 UTC
Permalink
Post by Simon Michael
Here are some new bash scripts I cooked up
And I hope I didn't scare anyone off. The point of hledger-ui is you just fire it up and poke around, no setup needed. But some of those command lines may give more ideas.
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Jesse Rosenthal
2018-10-18 13:44:43 UTC
Permalink
Post by Simon Michael
1. I'm leaning towards making --auto (transaction modifiers, aka
automated postings) always on and dropping the flag.
Very much in favor of this, since it's a big part of my use of plaintext
accounting programs. Would you add an `--actual` or `--unmodified` flag?
Post by Simon Michael
3. Perhaps auto-generated postings and transactions would get a tag
(auto:) so you could detect/filter them.
This sounds like a very good idea (and would probably remove the need for
the flag mentioned above).
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Simon Michael
2018-10-18 22:09:51 UTC
Permalink
Aw. That is a good point.

I am contemplating reserving the "type:" tag, with a similar concern.
Post by Simon Michael
3. Perhaps auto-generated postings and transactions would get a tag
(auto:) so you could detect/filter them.
"Auto" means car in German and probably a few other languages.
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Carel Fellinger
2018-10-19 16:01:18 UTC
Permalink
Post by Simon Michael
Aw. That is a good point.
I am contemplating reserving the "type:" tag, with a similar concern.
Post by Simon Michael
3. Perhaps auto-generated postings and transactions would get a tag
(auto:) so you could detect/filter them.
"Auto" means car in German and probably a few other languages.
yes, and that's because it's a short for automobile. So even we dutch
understand auto to mean "all by it self" aka automatic.

PS: type:a doesn't ring a bell here, so please use type:assets
--
groetjes, carel
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Simon Michael
2018-10-19 16:11:53 UTC
Permalink
Post by Carel Fellinger
Post by Simon Michael
I am contemplating reserving the "type:" tag, with a similar concern.
PS: type:a doesn't ring a bell here, so please use type:assets
Ok. Noted at https://github.com/simonmichael/hledger/pull/877
--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Loading...