emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Alternate format for datetree


From: John Hendy
Subject: Re: [O] Alternate format for datetree
Date: Mon, 27 Aug 2012 01:08:40 -0500

On Sun, Aug 26, 2012 at 11:04 PM, Nick Dokos <address@hidden> wrote:
> John Hendy <address@hidden> wrote:
>
>> On Sun, Aug 26, 2012 at 3:11 PM, c b <address@hidden> wrote:
>> > Hi,
>> >
>> > I have been using org-mode for about 18 months now and love it. I recently
>> > came across the org-capture file+datetree format and it is just what I am
>> > looking for, except that I need a slightly different format described as
>> > below
>> >
>> > Currently format is
>> >
>> > * 2012
>> > ** 2012-08
>> > *** 2012-08-26 Sunday
>> > **** [2012-08-26 Sun 13:00] My note for this Sunday afternoon
>> >
>> > Needed format is
>> >
>> > * 08
>> > ** 26
>> > *** 2012 Sunday
>> > **** [2012-08-26 Sun 13:00] My note for this Sunday afternoon
>> >
>> > Basically, I need to have the "root" of the date tree on the month, 
>> > followed
>> > by date and then Year, so that for a particular date, I can see all yearly
>> > activity.
>> >
>> > Is there currently a way to alter this?
>> >
>> > If not, how would I go about adding a file+monthtree format for 
>> > org-capture?
>> >
>> > Any suggestions would be appreciated
>>
>> I was looking for something similar and someone provided a custom
>> capture template that allowed for using inactive timestamps vs. the
>> default datetree format.
>>
>> See the example provided here:
>> - http://osdir.com/ml/emacs-orgmode-gnu/2012-08/msg00396.html
>>
>> I fiddled with this a bit, not really being familiar and learned a
>> good bit in the process to achieve your desired format. Give this a
>> try:
>>
>> #+begin_src .emacs
>> (setq org-capture-templates
>> `(("t" "test" entry
>> (file+headline "~/file.org"
>> ,(format "%s"
>> (format-time-string "%m")))
>> ,(format "** %s \n*** %s-%s \n**** [%s-%s-%s %s %s:%s] "
>> (format-time-string "%d")
>> (format-time-string "%Y")
>> (format-time-string "%A")
>> (format-time-string "%Y")
>> (format-time-string "%m")
>> (format-time-string "%d")
>> (format-time-string "%a")
>> (format-time-string "%H")
>> (format-time-string "%M"))
>> )))
>> #+end_src
>>
>> One thing I couldn't figure out was how to insert a %? after that
>> second long format option. If I just put in %?, loading .emacs caused
>> the error "Not enough arguments to format" or something like that. I'm
>> sure there's some secret elisp escape syntax I just don't know. I
>> tried various combinations of \ and '("") with no success.
>>
>
> Try
>
> --8<---------------cut here---------------start------------->8---
> ,(format "** %s \n*** %s-%s \n**** [%s-%s-%s %s %s:%s] %%?"
> --8<---------------cut here---------------end--------------->8---
>
> You basically need to escape the % from being interpreted by format.
> C-h f format RET says
>
> ,----
> | ...
> | Use %% to put a single % into the output.
> | ...
> `----

Perfect -- thanks!
John

>
> Nick
>
>> That'd put the finishing touch on things so your cursor was where you wanted 
>> it.
>>
>> Also, for those seeing this... is this how you would accomplish c.b's
>> goal? I just used the sample provided to me in the earlier mailing
>> list email to see if I was up for the challenge, but I have no basis
>> for knowing whether it's a good solution.
>>
>>
>> Hope that helps!
>> John
>>
>> >
>> > Kindly copy me on the response as I am not subscribed to this mailing list.
>> >
>> > Thanks,
>> > c.b.
>>



reply via email to

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