Now I get the error: "wrong number of arguments..." :D El mar., 17 nov. 2020 a las 15:13, Ihor Radchenko () escribió: > > I tried this but I get: "symbol's function definition is void: > > org-trigger-doing" > > Oops. That's the old function name. Should be > > (add-hook 'org-trigger-hook #'org-archive-repeated-task) > > Best, > Ihor > > > Gerardo Moro writes: > > > Thanks for the prompt reply! > > I tried this but I get: "symbol's function definition is void: > > org-trigger-doing" > > > > El mar., 17 nov. 2020 a las 14:32, Ihor Radchenko () > > escribió: > > > >> > Thanks, I don't know how to go about doing that, so I would have to > rely > >> on > >> > others wanting to help me if they consider this to be also useful to > them > >> > (which I definitely think it is!). > >> > >> Try the following code. It should archive any repeated task once it is > >> marked DONE. > >> > >> (defun org-archive-repeated-task (arg) > >> "Add a copy of the recurring task marked DONE to archive." > >> (when (and (eq (plist-get arg :type) 'todo-state-change) > >> (string= (plist-get arg :to) "DONE")) ;; The state is > changed > >> to DONE > >> (let* ((pos (plist-get arg :position)) > >> (repeater (org-with-point-at pos (org-get-repeat)))) > >> (when repeater ;; Only consider tasks with repeater timestamp > >> anywhere in the task body > >> (my/org-archive-without-delete))))) > >> (add-hook 'org-trigger-hook #'org-trigger-doing) > >> > >> Best, > >> Ihor > >> >