Hello,
Thank you for your quick patch.
Since I wasn’t able to solve it on my own, I’ll take a look at
your solution to understand what you did.
Have a great day.
Best,
Nicolas Goaziou writes:
Hello,
Leo Vivier <leo.viv...@gmail.com> writes:
Hello,
There seems to be a bad interaction between
‘(org-resolve-clocks)’ and
‘org-clock-out-remove-zero-time-clocks’ set to t. Whilst the
right
tree is targeted by ‘(org-resolve-clocks)’ to delete the
clock-line
and clock-drawer, it adds a new clock-drawer in the next tree
rather
than on the one being acted on.
I was able to replicate this problem with ‘emacs -Q’.
DESCRIPTION:
I use org-clock regularly, and recently re-discovered
‘org-clock-out-remove-zero-time-clocks’. When I forget to clock
an
item, I run the following commands in quick succession:
# ------------------
(org-clock-in)
(org-resolve-clocks)
<INPUT>: g 10 <ENTER> (For indicating that I ‘got back’ 10 min
ago)
# ------------------
Because those commands are run in quick succession, the time
between
‘(org-clock-in)’ and ‘(org-resolve-clocks)’ is usually equal to
0 min.
Therefore, when ‘(org-resolve-clocks)’ calls ‘(org-clock-out)’
after
pressing <ENTER>, the clock-line is deleted, and if the
clock-drawer
was created by ‘(org-clock-in)’, it also gets deleted.
The problem occurs in this context (‘|’ represents ‘(point)’):
# ------------------
* Subtree 1
** Item|
* Subtree 2
# ------------------
‘Item’ is the subtree we want to clock in the past. ‘Subtrees 1
& 2’
are regular subtrees without any newlines separating them (the
white-space is important).
Please note that I was only able to get ‘(org-resolve-clocks)’
to
trigger in an agenda-file with already had clocking info. I
recommend
that you try the snippet in one of your own agenda-files rather
than
trying it in a blank buffer.
Fixed. Thank you.
Regards,
--
Leo Vivier
English Studies & General Linguistics
Master Student, English Department
Université Rennes 2