Ignacio Casso <[email protected]> writes:

Hi Morgan!

Actually, I realized I was using the LOGGING property wrong. From the documentation I got the impression that you had to use TODO(!) and TODO(@) when specifying the behavior for the TODO -> DONE transition, but that's wrong, you should use DONE(!) and DONE(@). That's not because the documentation is misleading, just that using the TODO keyword is what I tried first and it worked for me (it says moved to TODO from DONE instead of moved to DONE from TODO, but I never realized since logging the timestamp and the note was all I cared about). If you use DONE(!) and DONE(@), everthing works as expected.

I'm glad you figured it out! Org mode is very complicated. I still understand very little of it :)

There is still a bug when you use TODO(!) and TODO(@), but I guess is minor and more complex to reason about. Should a repeated task with both TODO(!) and DONE(!) log both state changes for example?

So the state being entered determines the action (unless you use (!/@) syntax). If one event would in theory make multiple logs, only the last one is actually created.

So a repeated task that transitions from TODO -> DONE -> TODO would do this with these settings:

DONE(!) -> State "DONE" from "TODO"

TODO(!) -> State "TODO" from "DONE"

I'm no longer interested in fixing the bug. If you also agree it's a minor thing, feel free to close the bug on my side.

We did identify a real bug that only occurs when combining "C-u", a LOGGING property, and a repeater. It took me a long time to figure out how to fix it but it turned out to be a two line fix :)

Fixed, as commit bb463075f

https://cgit.git.savannah.nongnu.org/cgit/org-mode.git/commit/?id=bb463075f1ae935531a5f109187f534dfa0dec20

Thank you for your bug report! Together, we've made Org a little better :)

Reply via email to