emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* [feature request] More flexible repeats
@ 2011-09-23 22:09 Dave Abrahams
  2011-09-24 11:16 ` John Wiegley
  0 siblings, 1 reply; 8+ messages in thread
From: Dave Abrahams @ 2011-09-23 22:09 UTC (permalink / raw)
  To: emacs-orgmode


I have habits that I need to perform, e.g., every weekday, or four times
a week.  I don't see a way to express that.  If I could schedule a task
for +1.4d or +1.75d (respectively), I'd be happy.

Even better would be a more human-readable way to express repetition,
because in addition to being frustrated by its limitations, I forget the
meaning of Org's fiddly repeat syntax.  For example, words like
"weekdays" or codes like "4x:w" (meaning four times per week) would be
really nice to work with.  I'd rather use "/" for "per" but that is
already taken.

-- 
Dave Abrahams
BoostPro Computing
http://www.boostpro.com

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

* Re: [feature request] More flexible repeats
  2011-09-23 22:09 [feature request] More flexible repeats Dave Abrahams
@ 2011-09-24 11:16 ` John Wiegley
  2011-09-24 14:18   ` Dave Abrahams
  2011-09-24 20:58   ` Michael Steeves
  0 siblings, 2 replies; 8+ messages in thread
From: John Wiegley @ 2011-09-24 11:16 UTC (permalink / raw)
  To: emacs-orgmode

>>>>> Dave Abrahams <dave@boostpro.com> writes:

> I have habits that I need to perform, e.g., every weekday, or four times a
> week.  I don't see a way to express that.  If I could schedule a task for
> +1.4d or +1.75d (respectively), I'd be happy.

Habits aren't really for scheduling, they're for monitoring a simple kind of
consistency.  So, if you *actually* need to do something four times a week,
habits aren't the best way to express that need.

If I had something that I wanted to do around four times a week, I'd use this:

  .+1d/2d

Which means, I could do it 7 times a week, or I should do it 3 times a week,
but I'm likely going to fall somewhere in between.

Habits were never meant as a precise way to keep you on a schedule.  The
closest way I can think of to do that within Org's current framework is to
schedule four different instances of your task, each with its own 1 week
repeating interval.  That way, you'd see the item appearing in your agenda
four times.  However, if you start slipping, things get very messy, very fast.

Lastly, even if you did have a 1.4d repeating interval for a habit, Habits
would only show you if you'd been consistent at doing the task every 1.4 days.
It would never be able to tell you if you'd been consistent at doing it 4
times within any given week.

John

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

* Re: [feature request] More flexible repeats
  2011-09-24 11:16 ` John Wiegley
@ 2011-09-24 14:18   ` Dave Abrahams
  2011-09-24 15:24     ` Eric Abrahamsen
  2011-09-24 20:58   ` Michael Steeves
  1 sibling, 1 reply; 8+ messages in thread
From: Dave Abrahams @ 2011-09-24 14:18 UTC (permalink / raw)
  To: emacs-orgmode


on Sat Sep 24 2011, John Wiegley <jwiegley-AT-gmail.com> wrote:

>>>>>> Dave Abrahams <dave@boostpro.com> writes:
>
>> I have habits that I need to perform, e.g., every weekday, or four times a
>> week.  I don't see a way to express that.  If I could schedule a task for
>> +1.4d or +1.75d (respectively), I'd be happy.
>
> Habits aren't really for scheduling, they're for monitoring a simple kind of
> consistency.  

Understood.

> So, if you *actually* need to do something four times a week, habits
> aren't the best way to express that need.

Exactly.  They don't have the expressiveness I want, as currently designed.

> If I had something that I wanted to do around four times a week, I'd use this:
>
>   .+1d/2d
>
> Which means, I could do it 7 times a week, or I should do it 3 times a week,
> but I'm likely going to fall somewhere in between.

I think I see.  That means, literally, "at most every day, but at least
every two days?"

So, a couple of questions:

- what would it change if I just wrote .+2d?
- how would I express something that I want to do 5 times a week?

> Habits were never meant as a precise way to keep you on a schedule.  

I'm not thinking of them that way.  I admit that "every weekday" is
pretty precise, but that's merely at the extreme end of a spectrum of
consistency.  It's still a goal with respect to which I'd reasonably
like to be able to monitor my success rate.

> The closest way I can think of to do that within Org's current
> framework is to schedule four different instances of your task, each
> with its own 1 week repeating interval.  That way, you'd see the item
> appearing in your agenda four times.  However, if you start slipping,
> things get very messy, very fast.

Yes.  Regular repeating events and habits both have this problem of no
easy way to express interesting repetitions.  Even my phone lets me
schedule something that happens on weekdays or on two particular days
each week.

I think the basic parts of such a language might be:

- predicates, e.g. Mon,Wed,Fri; the first week of each month; the first
  tuesday of the month
- periods, e.g. 1 month
- repetitions, e.g. 5 times

General predicates are all you need to express repeating events.  I
think you need periods and repetitions for habits.

> Lastly, even if you did have a 1.4d repeating interval for a habit, Habits
> would only show you if you'd been consistent at doing the task every 1.4 days.
> It would never be able to tell you if you'd been consistent at doing it 4
> times within any given week.

Then 1.4d is clearly *not* the expressive tool I need :-)

-- 
Dave Abrahams
BoostPro Computing
http://www.boostpro.com

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

* Re: [feature request] More flexible repeats
  2011-09-24 14:18   ` Dave Abrahams
@ 2011-09-24 15:24     ` Eric Abrahamsen
  2011-09-24 15:58       ` Dave Abrahams
  0 siblings, 1 reply; 8+ messages in thread
From: Eric Abrahamsen @ 2011-09-24 15:24 UTC (permalink / raw)
  To: emacs-orgmode

On Sat, Sep 24 2011, Dave Abrahams wrote:


[...]

>
> I think the basic parts of such a language might be:
>
> - predicates, e.g. Mon,Wed,Fri; the first week of each month; the first
>   tuesday of the month
> - periods, e.g. 1 month
> - repetitions, e.g. 5 times

Looks like you're coming up on the crontab syntax :)

-- 
GNU Emacs 23.2.1 (i686-pc-linux-gnu, GTK+ Version 2.24.4)
 of 2011-04-04 on rothera, modified by Debian
Org-mode version 7.7 (release_7.7.324.ge5d88)

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

* Re: [feature request] More flexible repeats
  2011-09-24 15:24     ` Eric Abrahamsen
@ 2011-09-24 15:58       ` Dave Abrahams
  2011-09-24 18:20         ` Samuel Wales
  0 siblings, 1 reply; 8+ messages in thread
From: Dave Abrahams @ 2011-09-24 15:58 UTC (permalink / raw)
  To: emacs-orgmode


on Sat Sep 24 2011, Eric Abrahamsen <eric-AT-ericabrahamsen.net> wrote:

> On Sat, Sep 24 2011, Dave Abrahams wrote:
>
> [...]
>
>>
>> I think the basic parts of such a language might be:
>>
>> - predicates, e.g. Mon,Wed,Fri; the first week of each month; the first
>>   tuesday of the month
>> - periods, e.g. 1 month
>> - repetitions, e.g. 5 times
>
> Looks like you're coming up on the crontab syntax :)

Good point.  I don't need a fancy syntax if I can express it with elisp,
of course.  Maybe enabling that would be a good first step.

-- 
Dave Abrahams
BoostPro Computing
http://www.boostpro.com

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

* Re: [feature request] More flexible repeats
  2011-09-24 15:58       ` Dave Abrahams
@ 2011-09-24 18:20         ` Samuel Wales
  0 siblings, 0 replies; 8+ messages in thread
From: Samuel Wales @ 2011-09-24 18:20 UTC (permalink / raw)
  To: Dave Abrahams; +Cc: emacs-orgmode

On 2011-09-24, Dave Abrahams <dave@boostpro.com> wrote:
> Good point.  I don't need a fancy syntax if I can express it with elisp,
> of course.  Maybe enabling that would be a good first step.

Agreed here also that fancy syntax is not necessary.

IMO a good goal is actually to reduce syntax for new features rather
than increase it.  If new syntax is contemplated, extensible syntax (a
specific proposal for a universal syntax that significantly reduces
parsing risk and does not require the user to try to look up the
meanings of symbols) might be useful.

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

* Re: [feature request] More flexible repeats
  2011-09-24 11:16 ` John Wiegley
  2011-09-24 14:18   ` Dave Abrahams
@ 2011-09-24 20:58   ` Michael Steeves
  2011-09-25  4:29     ` John Wiegley
  1 sibling, 1 reply; 8+ messages in thread
From: Michael Steeves @ 2011-09-24 20:58 UTC (permalink / raw)
  To: emacs-orgmode

On 9/24/11 7:16 AM, John Wiegley wrote:
>>>>>> Dave Abrahams<dave@boostpro.com>  writes:
>
>> I have habits that I need to perform, e.g., every weekday, or four times a
>> week.  I don't see a way to express that.  If I could schedule a task for
>> +1.4d or +1.75d (respectively), I'd be happy.
>
> Habits aren't really for scheduling, they're for monitoring a simple kind of
> consistency.  So, if you *actually* need to do something four times a week,
> habits aren't the best way to express that need.


It's funny that this topic came up on the mailing list just now -- I've 
been working on integrating org-mode more into my daily workflow, and am 
starting to put some habits in and was trying to figure out how to make 
the habits repeat in the way I want them to.

If I have something that I want to track in terms of consistency, and 
want to do it during the weekdays, is there a way I could express that 
other then having a series of 5 habits, one for each day of the week, 
each one of which would repeat every week?


-Mike
-- 
Michael Steeves (steeves@raingods.net)

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

* Re: [feature request] More flexible repeats
  2011-09-24 20:58   ` Michael Steeves
@ 2011-09-25  4:29     ` John Wiegley
  0 siblings, 0 replies; 8+ messages in thread
From: John Wiegley @ 2011-09-25  4:29 UTC (permalink / raw)
  To: emacs-orgmode

>>>>> Michael Steeves <steeves@raingods.net> writes:

> If I have something that I want to track in terms of consistency, and want
> to do it during the weekdays, is there a way I could express that other then
> having a series of 5 habits, one for each day of the week, each one of which
> would repeat every week?

The best answer I have for that is to schedule the habit with a daily repeat,
and then just check it off for the weekend days when it doesn't apply.  Then
you're being consistent, it's just that "done" doesn't necessarily mean that
you physically did something.

John

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

end of thread, other threads:[~2011-09-25 18:48 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-09-23 22:09 [feature request] More flexible repeats Dave Abrahams
2011-09-24 11:16 ` John Wiegley
2011-09-24 14:18   ` Dave Abrahams
2011-09-24 15:24     ` Eric Abrahamsen
2011-09-24 15:58       ` Dave Abrahams
2011-09-24 18:20         ` Samuel Wales
2011-09-24 20:58   ` Michael Steeves
2011-09-25  4:29     ` John Wiegley

Code repositories for project(s) associated with this 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).