Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Display scheduled routines actual 'Done' time in agenda view

Tags:

emacs

org-mode

I scheduled routine to wake in the morning at 5:00, and get it done at 5:12 this morning

enter image description here

If it is displayed the actually done moment of the routine could be more helpful.

However, it does not.

enter image description here

Update:

Even worse that The scheduled jobs disappeared after rebuilding the agenda rather than presented as the scheduled moment as DONE status.

How could config the agenda view to show the real finished time?

like image 609
AbstProcDo Avatar asked May 20 '19 21:05

AbstProcDo


People also ask

How do I view and schedule tasks on the calendar?

You can view by Month or Week. Select Week. Point to a date and select + to add a task. Drag the side of the task to change the task's dates. View tasks without start and due dates under Unscheduled tasks. Select Group by and then an option like Progress, to sort your unscheduled tasks. Drag an unscheduled task to the calendar to schedule it.

How do I See my Calendar in agenda view Windows 10?

Windows 10 tip: See all your calendars at a glance in agenda view. Just like earlier versions, Windows 10 displays the date and time at the right side of the taskbar. But Windows 10 adds a new trick: Click the date to open a flyout that shows your agenda at a glance, bringing multiple calendars together.

What are the different types of agenda views?

Agenda view displays one-or-more horizontal days as well as an axis of time, usually midnight to midnight, on the vertical axis. The two predefined agenda views are agendaDay and agendaWeek. They can be initialized like this: Agenda views of other durations can be made with a custom view with type 'agenda'.

How do I view my schedule in Windows 10?

If you keep one or more calendars in the cloud, you can get a unified view of your schedule in Windows 10. Just click the date and time at the right side of the taskbar to open a flyout that shows the current month, with today's appointments in an agenda view below the calendar.


1 Answers

The timestamp for the DONE state does not appear in your org-agenda because it is an inactive timestamp. This is the difference between regular timestamps and inactive ones: the regular timestamps trigger an entry to show up in the agenda while the inactive ones don't. This leads us to our first potential solution (which you've already tried): manually changing these inactive time stamps to be active ones. When org-agenda parses an active time stamp, it puts an entry for the associated task in the agenda at that time. The problem here is that the task's TODO status is NEXT since the repeated task has already shifted to its next occurrence. Thus the org-agenda entry will have NEXT as its status, rather than DONE. (It's worth noting here that changing the CLOSED timestamp on a non-repeating task to be active won't cause it to show up in the agenda at that time.)

Alternatively, we can make the org-agenda show us inactive time stamps. There are a couple of ways to do so:

  • In the agenda view, press either [ or ], which will cause the inactive time stamps to appear.
  • Set the variable org-agenda-include-inactive-timestamps to t and reload the agenda.

This is also less than ideal. Once again, the agenda entry is marked NEXT due to the shifted TODO status of the repeated task. Additionally, (for me, at least), the item shows up twice. One of these is from the logbook while the other is from the LAST_REPEAT property.

Fortunately org-agenda offers better options for viewing the timestamps for completed tasks with org-agenda-log-mode. In the agenda view, org-agenda-log-mode can be activated with l (the letter between "k" and "m"). This still isn't quite sufficient to show repeated task completion timestamps. By default org-agenda-log-mode only shows tasks which were closed or were clocked in. As stated above, this task has not been closed since it shifted to the next repeat. However, org-agenda is also capable of displaying timestamps for tasks which have changed status. Since the logged task changed from NEXT to DONE, its timestamp will show up under this view. We can activate this view in a few different ways:

  • Calling org-agenda-log-mode with the universal argument (C-u l).
  • Adding state to org-agenda-log-mode-items e.g. (setq org-agenda-log-mode-items '(closed clock state)).
  • Setting org-agenda-start-with-log-mode e.g. (setq org-agenda-start-with-log-mode '(closed clock state)). This option will cause agenda to start in org-agenda-log-mode and is the best choice if you always want to see this information when you open your agenda.

It should be noted that while the completed task will show up here, it will still have the NEXT tag. However, it will also show that its state changed to DONE at this time (see the last image below for an example).


Example

As an example, here is a short org-mode file with a repeating task ("Wake Up") that has already been completed once. For demonstrative purposes, this file also has another repeating task that has not been completed, a one-time task that has been closed and another scheduled task that has not been finished but has been clocked in:

#+SEQ_TODO: NEXT(n) TODO(t) | DONE(d)
* Items
** NEXT Wake up
   SCHEDULED: <2019-06-11 Tues 05:00 +1d>
   :PROPERTIES:
   :LAST_REPEAT: [2019-06-10 Mon 13:37]
   :END:
   :LOGBOOK:
   - State "DONE"       from "NEXT"       [2019-06-10 Mon 13:37]
   :END:
** DONE One time event
   CLOSED: [2019-06-10 Mon 13:46] SCHEDULED: <2019-06-10 Mon 15:00>
** Not going to be finished
   SCHEDULED: <2019-06-11 Tue>
   :LOGBOOK:
   CLOCK: [2019-06-10 Mon 13:54]--[2019-06-10 Mon 13:54] =>  0:00
   :END:
** Go to bed
   SCHEDULED: <2019-06-10 Mon 22:00 +1d>

After calling org-agenda, we see that the timestamp for our completed "Wake Up" does not show up: The timestamp for the completed repeated task does not appear

Allowing inactive timestamps will let the the completed "Wake Up" timestamp show up, but the timestamp shows up twice and its not very clear what these agenda items are referring to: Allowing inactive timestamps allows the logged timestamp to appear, but the associated agenda item is not very clear

Calling org-agenda-log-mode gives more relevant agenda entries (and is sufficient for having the closing timestamp for one-time tasks appear). However, it does not show status changes by default, which means that our "Wake Up" timestamp will not appear:

org-agenda-log-mode allows closed items' timestamps to appear as entries

Modifying org-agenda-log-mode to show timestamps for changed state, we finally see our closed "Wake Up" timestamp. Using org-agenda-log-mode and setting it to show state allows the timestamp to show up with information that shows that its TODO status was changed

like image 148
D. Gillis Avatar answered Sep 28 '22 10:09

D. Gillis