emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* BUG: agenda for current days excludes reoccurring events
@ 2017-01-28  8:01 Jarmo Hurri
  2017-01-28 14:15 ` Nicolas Goaziou
  0 siblings, 1 reply; 6+ messages in thread
From: Jarmo Hurri @ 2017-01-28  8:01 UTC (permalink / raw)
  To: emacs-orgmode

[-- Attachment #1: Type: text/plain, Size: 593 bytes --]


Greetings.

- bug: day agenda for current day does not show reoccurring events

- how to replicate with the ECM provided
  1. untar the file provided below
  2. cd into created dir
  3. edit the first line of file agenda-setup.el so that the latest org
     release lisp is in the load path
  4. run
     emacs -q --load agenda-setup.el
  5. run command (org-agenda)
  6. press 'a' for day agenda
  7. press 'b' and/or 'f' to move backwards and forward in time

- how the bug shows up: the reoccurring meeting will show up yesterday
  and in upcoming days, but not in the current day

Jarmo


[-- Attachment #2: ECM files --]
[-- Type: application/x-tar, Size: 10240 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: BUG: agenda for current days excludes reoccurring events
  2017-01-28  8:01 BUG: agenda for current days excludes reoccurring events Jarmo Hurri
@ 2017-01-28 14:15 ` Nicolas Goaziou
  2017-01-28 15:25   ` Jarmo Hurri
  0 siblings, 1 reply; 6+ messages in thread
From: Nicolas Goaziou @ 2017-01-28 14:15 UTC (permalink / raw)
  To: Jarmo Hurri; +Cc: emacs-orgmode

Hello,

Jarmo Hurri <jarmo.hurri@iki.fi> writes:

> - bug: day agenda for current day does not show reoccurring events
>
> - how to replicate with the ECM provided
>   1. untar the file provided below
>   2. cd into created dir
>   3. edit the first line of file agenda-setup.el so that the latest org
>      release lisp is in the load path
>   4. run
>      emacs -q --load agenda-setup.el
>   5. run command (org-agenda)
>   6. press 'a' for day agenda
>   7. press 'b' and/or 'f' to move backwards and forward in time
>
> - how the bug shows up: the reoccurring meeting will show up yesterday
>   and in upcoming days, but not in the current day

This is the consequence of `org-agenda-prefer-last-repeat' default
value.

However, this behaviour doesn't make much sense when the entry is not
a task (i.e., it hasn't any TODO keyword). In this case,
`org-auto-repeat-maybe' doesn't apply, and the base date is never moved
forward in time.

I think that a nil `org-agenda-prefer-last-repeat' should display :
- only the base date when the entry has a TODO keyword;
- every repeat between base date and today, inclusive, otherwise.

It also applies to SCHEDULED and DEADLINE repeaters.

Behaviour with a non-nil value needs not be changed.

WDYT?

Regards,

-- 
Nicolas Goaziou

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: BUG: agenda for current days excludes reoccurring events
  2017-01-28 14:15 ` Nicolas Goaziou
@ 2017-01-28 15:25   ` Jarmo Hurri
  2017-01-28 18:15     ` Nicolas Goaziou
  0 siblings, 1 reply; 6+ messages in thread
From: Jarmo Hurri @ 2017-01-28 15:25 UTC (permalink / raw)
  To: emacs-orgmode


Greetings again.

Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:

> Jarmo Hurri <jarmo.hurri@iki.fi> writes:
>
>> - how the bug shows up: the reoccurring meeting will show up yesterday
>>   and in upcoming days, but not in the current day
>
> This is the consequence of `org-agenda-prefer-last-repeat' default
> value.
>
> However, this behaviour doesn't make much sense when the entry is not
> a task (i.e., it hasn't any TODO keyword). In this case,
> `org-auto-repeat-maybe' doesn't apply, and the base date is never moved
> forward in time.

In particular the fact that you see it for all other days except today
makes absolutely no sense, right?

> I think that a nil `org-agenda-prefer-last-repeat' should display :
> - only the base date when the entry has a TODO keyword;
> - every repeat between base date and today, inclusive, otherwise.
>
> It also applies to SCHEDULED and DEADLINE repeaters.
>
> Behaviour with a non-nil value needs not be changed.
>
> WDYT?

This is slightly beyond my pay grade, but I hope a nil
'org-agenda-prefer-last-repeat' would also display all repeats for
_future_ days.

I assume quite a few people use reoccurring entries to mark regular
meetings, short tasks etc. It is imperative that they also see how the
meeting affect the schedules of future days in their agenda.

My personal opinion is that _any entry with a timestamp_ should be
repeated as far into the future as possible, regardless of whether it is
a TODO or some other type. A timestamp indicates that this entry very
likely needs to be taken into account when scheduling future
events. Thus seeing the repetition in the agenda in the future may be
crucial.

Does this make sense?

Jarmo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: BUG: agenda for current days excludes reoccurring events
  2017-01-28 15:25   ` Jarmo Hurri
@ 2017-01-28 18:15     ` Nicolas Goaziou
  2017-01-28 21:26       ` Jarmo Hurri
  0 siblings, 1 reply; 6+ messages in thread
From: Nicolas Goaziou @ 2017-01-28 18:15 UTC (permalink / raw)
  To: Jarmo Hurri; +Cc: emacs-orgmode

Jarmo Hurri <jarmo.hurri@iki.fi> writes:

> In particular the fact that you see it for all other days except today
> makes absolutely no sense, right?

It does make sense, but probably not when there is no TODO keyword.
Also, your sentence is inaccurate: you see it _once_ in the past, not
every others day.

>> I think that a nil `org-agenda-prefer-last-repeat' should display :
>> - only the base date when the entry has a TODO keyword;
>> - every repeat between base date and today, inclusive, otherwise.
>>
>> It also applies to SCHEDULED and DEADLINE repeaters.
>>
>> Behaviour with a non-nil value needs not be changed.
>>
>> WDYT?
>
> This is slightly beyond my pay grade, but I hope a nil
> 'org-agenda-prefer-last-repeat' would also display all repeats for
> _future_ days.

This is orthogonal to the issue. There's a dedicated variable for that:
`org-agenda-show-future-repeats'.

> I assume quite a few people use reoccurring entries to mark regular
> meetings, short tasks etc. It is imperative that they also see how the
> meeting affect the schedules of future days in their agenda. My
> personal opinion is that _any entry with a timestamp_ should be
> repeated as far into the future as possible, regardless of whether it
> is a TODO or some other type. A timestamp indicates that this entry
> very likely needs to be taken into account when scheduling future
> events. Thus seeing the repetition in the agenda in the future may be
> crucial.
>
> Does this make sense?

See above.

Anyway, that doesn't answer my question about what should be done for
_past and present_ occurrences. 

If no one objects, I'll just implement the behaviour quoted above.

Regards,

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: BUG: agenda for current days excludes reoccurring events
  2017-01-28 18:15     ` Nicolas Goaziou
@ 2017-01-28 21:26       ` Jarmo Hurri
  2017-02-21 18:27         ` Nicolas Goaziou
  0 siblings, 1 reply; 6+ messages in thread
From: Jarmo Hurri @ 2017-01-28 21:26 UTC (permalink / raw)
  To: emacs-orgmode

Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:

> Jarmo Hurri <jarmo.hurri@iki.fi> writes:
>
>> In particular the fact that you see it for all other days except today
>> makes absolutely no sense, right?
>
> It does make sense, but probably not when there is no TODO keyword.
> Also, your sentence is inaccurate: you see it _once_ in the past, not
> every others day.

That is correct, only once in the past, my bad. (Which explains some of
the weirdness in my own, more complicated setup.) Still not sure why it
would be appropriate for a TODO _as a default_ (not to show it for
today, but for future days), but like I said: we're operating above my
pay grade. Just _trying_ to provide some answers to your questions, not
sure if this is helping.

>>> I think that a nil `org-agenda-prefer-last-repeat' should display :
>>> - only the base date when the entry has a TODO keyword; - every
>>> repeat between base date and today, inclusive, otherwise.
>>>
>>> It also applies to SCHEDULED and DEADLINE repeaters.
>>>
>>> Behaviour with a non-nil value needs not be changed.
>>>
>>> WDYT?
>>
>> This is slightly beyond my pay grade, but I hope a nil
>> 'org-agenda-prefer-last-repeat' would also display all repeats for
>> _future_ days.
>
> This is orthogonal to the issue. There's a dedicated variable for
> that: `org-agenda-show-future-repeats'.

If I am on the right track here, org-agenda-show-future-repeats controls
future repetitions, and org-agenda-prefer-last-repeat controls
repetitions for today? Is that correct? (Feel completely free to ignore
this if I am on the wrong track.) I am not sure how this would work for
timed events, since "today" and "future" are not mutually exclusive:
part of today is still in the future.

> If no one objects, I'll just implement the behaviour quoted above.

Sounds like the best option to me. I can try give better informed
comments after I see what the effect will be in my setup.

Jarmo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: BUG: agenda for current days excludes reoccurring events
  2017-01-28 21:26       ` Jarmo Hurri
@ 2017-02-21 18:27         ` Nicolas Goaziou
  0 siblings, 0 replies; 6+ messages in thread
From: Nicolas Goaziou @ 2017-02-21 18:27 UTC (permalink / raw)
  To: Jarmo Hurri; +Cc: emacs-orgmode

Hello,

Jarmo Hurri <jarmo.hurri@iki.fi> writes:

> If I am on the right track here, org-agenda-show-future-repeats controls
> future repetitions, and org-agenda-prefer-last-repeat controls
> repetitions for today?

Almost. The former controls repetitions starting from tomorrow.  The
latter controls repetitions before yesterday. Repetitions for today are
always shown.

> Sounds like the best option to me. I can try give better informed
> comments after I see what the effect will be in my setup.

I pushed a change in that direction. Here is the new docstring for
`org-agenda-prefer-last-repeat'.

  Non-nil sets date for repeated entries to their last repeat.

  When nil, display SCHEDULED and DEADLINE dates at their base
  date, and in today's agenda, as a reminder.  Display plain
  time-stamps, on the other hand, at every repeat date in the past
  in addition to the base date.

  When non-nil, show a repeated entry at its latest repeat date,
  possibly being today even if it wasn't marked as done.  This
  setting is useful if you do not always mark repeated entries as
  done and, yet, consider that reaching repeat date starts the task
  anew.

  When set to a list of strings, prefer last repeats only for
  entries with these TODO keywords.

The problem is that plain timestamps OTOH and SCHEDULED, DEADLINE
keywords OTOH are no longer consistent. However, displaying too much
past SCHEDULED reminders could clutter the agenda.

I'm now waiting for your better informed comments.

Regards,

-- 
Nicolas Goaziou

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-02-21 18:27 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-28  8:01 BUG: agenda for current days excludes reoccurring events Jarmo Hurri
2017-01-28 14:15 ` Nicolas Goaziou
2017-01-28 15:25   ` Jarmo Hurri
2017-01-28 18:15     ` Nicolas Goaziou
2017-01-28 21:26       ` Jarmo Hurri
2017-02-21 18:27         ` Nicolas Goaziou

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).