emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] org-class and headers


From: Rasmus
Subject: Re: [O] org-class and headers
Date: Thu, 23 Oct 2014 12:10:09 +0200
User-agent: Gnus/5.130012 (Ma Gnus v0.12) Emacs/24.3.94 (gnu/linux)

Joseph Le Roux <address@hidden> writes:

> Eric S Fraga <address@hidden> writes:
>
>> On Tuesday, 21 Oct 2014 at 16:47, Joseph Le Roux wrote:
>>> Rasmus <address@hidden> writes:
>>
>> [...]
>>
>>>> Will `org-clone-subtree-with-time-shift' do what you want?
>>>>
>>>
>>> Thanks for the pointer, it could be very handy in my use-case, but this
>>> function copies the org-class as is for all clones. I would like to
>>
>> The idea is to use the clone function and not the org-class
>> expression.  Combining the two simply confuses things!
>>
>> What I do every start of term is define an entry for each lecture slot
>> in a week including the actual time information, lecture theatre,
>> etc.  I then clone each individual entry using +1w for the number of
>> weeks in the term.  I remove any subtrees generated that correspond to
>> lectures that do not actually exist, e.g. they fall on a holiday or
>> during our study week.
>>
>> Later, if an individual lecture gets cancelled, I simply remove the
>> corresponding subtree as I do for holidays etc.
>
> Thank you Eric, I'll follow the advice. As Rasmus showed,
> 'org-clone-subtree-with-time-shift' works with a timestamp, but it does
> not with (the result of) an org-class call. Ideally, what I would like
> to do is to specify a set of classes using org-class syntax and, as a
> result, get a set of headers. 'org-class' is a powerful tool, but just
> not powerful enough yet...

I have used to use classes in the past, but I now use a setup close to
Eric's.  One reasons is for good org-caldav support.  Here's how I
schedule my Spanish classes this term:

(with-temp-buffer
  (insert "* Spanish course
** Spanish class
<2014-10-07 Tue 18:30-20:30>")
  (goto-line 2)
  (org-clone-subtree-with-time-shift 8 "+1w")
  (save-excursion (insert "** Spanish class
<2014-10-09 Thu 18:30-20:30>\n"))
  (org-clone-subtree-with-time-shift 7 "+1w")
  (goto-char (point-min)) (org-sort-entries nil ?t)
  ;; like C-c ^ t
(buffer-substring-no-properties (point-min) (point-max)))

Of course in practice, this is easier to "interactively", but it's
hard to describe briefly.

Is there anything you miss about `org-clone-subtree-with-time-shift'¹?
Would you be happy if it asked if you want to skip some weeks
initially?  Or do you not like the extra space it takes?

—Rasmus

Footnotes: 
¹   note the "`" in the beginning, not "'"

-- 
Bang bang




reply via email to

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