emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Org-mode is not able to manage complex calendar events


From: Eric S Fraga
Subject: Re: [O] Org-mode is not able to manage complex calendar events
Date: Mon, 20 Jun 2011 18:19:22 +0100
User-agent: Gnus/5.110018 (No Gnus v0.18) Emacs/24.0.50 (gnu/linux)

Karl Voit <address@hidden> writes:

> * Eric S Fraga <address@hidden> wrote:
>> Karl Voit <address@hidden> writes:
>>
>
>>> IMHO: Org-mode does *not* seem to be made for managing calendar
>>> events that go beyond simple one-time-occurrence events. 
>>
>> I would argue that this is not at all the case, especially if you
>> consider that org uses a tree hierarchy and tags so that one can group
>> separate entries in a variety of ways, 
>
> This is fore sure a big advantage of Org-mode!
>
>> you can clone with time shift whole trees, etc.  
>
> Oh, I have to look up that clone thing. This is new to me. Do you
> happen to have an URL for this feature by instance?

,----[ org-clone-subtree-with-time-shift ]
| org-clone-subtree-with-time-shift is an interactive compiled Lisp
| function in `org.el'.
| 
| It is bound to C-c C-x c, <menu-bar> <Org> <Edit Structure> <Clone
| subtree, shift time>.
| 
| (org-clone-subtree-with-time-shift N &optional SHIFT)
| 
| Clone the task (subtree) at point N times.
| The clones will be inserted as siblings.
| 
| In interactive use, the user will be prompted for the number of
| clones to be produced, and for a time SHIFT, which may be a
| repeater as used in time stamps, for example `+3d'.
| 
| When a valid repeater is given and the entry contains any time
| stamps, the clones will become a sequence in time, with time
| stamps in the subtree shifted for each clone produced.  If SHIFT
| is nil or the empty string, time stamps will be left alone.  The
| ID property of the original subtree is removed.
| 
| If the original subtree did contain time stamps with a repeater,
| the following will happen:
| - the repeater will be removed in each clone
| - an additional clone will be produced, with the current, unshifted
|   date(s) in the entry.
| - the original entry will be placed *after* all the clones, with
|   repeater intact.
| - the start days in the repeater in the original entry will be shifted
|   to past the last clone.
| I this way you can spell out a number of instances of a repeating task,
| and still retain the repeater to cover future instances of the task.
`----

>> Also, with sexp, you can manage practically anything you might like
>> although, of course, it does require learning a certain amount of
>> elisp.  Recurring events with exceptions are not a problem, for
>> instance.
>
> I'd consider myself tech-savvy. But without having learned (E)LISP
> (yet), I can not use sexp-entries without reading a manual each time
> I want to use it. This is nothing I'd consider for normal users or
> daily use. It's not that end-user friendly (when you consider
> end-users as users without ELISP knowledge).

Sure; elisp is non-trivial.  Point taken!

>> I guess this depends on what types of events you are likely to
>> have in the outlook calendar.  In my case, only a small feature
>> set is likely necessary (mostly repeating lectures and one off
>> meetings) so a sync should be possible.  I don't think anybody is
>> proposing a full-blown totally automatic sync mechanism between
>> org and Outlook (or whatever) that covers the union of the two
>> products' feature sets...  insanity lies in that direction ;-)
>
> Sorry, I might have exaggerated a bit.
>
> But since I was implementing a one-way-sync mechanism between two
> different calendar systems I got a pretty good feeling of how
> different you can define the very same thing. Recurring events with
> exceptions is quite common but very hard to sync between different
> systems! And I am sure that this is not the only example of «being
> common and hard to do».

Sure but I think you will find that most of "being command and hard to
do" tasks are easily handled by org; at least, that's my experience.
The difficulty may be finding out how do it as the number of possible
actions in org is quite large.  If there's any complaint one might have
about org, is that it can be used for so many different tasks (calendar,
task management, document preparation, etc.)  that it can be
overwhelming.  Think of one of those very large swiss army knives where
you can spend minutes just trying to find the right "blade" ;-).  But
I'm not complaining! :->

In any case, the org manual, the org web site and Worg, not to mention
this mailing list, provide a wealth of information and use cases.

> For ELISP-hackers out there: is this hard to do? A method which
> can be called «generate a series of Org-mode time stamps starting
> with $THIS_TIMESTAMP_CONTAINING_REPEATS up to $THIS date». 
>
> I could think of generating such a series of <2011-06-22 Wed>
> <2011-06-29 Wed> ... just to be able to see all occurrences of an
> event and delete one specific event in between if necessary. This
> would ease exceptions for «ordinary» users like me.

See above;  I use org-clone-subtree-with-time-shift for setting up, for
instance, the lectures I have to give in a teaching term.  I set up the
initial lectures for each relevant day in the week and then clone the
subtrees, removing any exceptions (reading/study weeks, say) afterwards.

HTH.
-- 
: Eric S Fraga (GnuPG: 0xC89193D8FFFCF67D) in Emacs 24.0.50.1
: using Org-mode version 7.5 (release_7.5.412.g8608b)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]