thx Nicolas really appreciate your answer! though im very week in coding so im struggling to understand. but perhaps an example will help. the following is a part of my capture: (add-to-list 'org-capture-templates '("ff" "Food" entry (file+headline (concat pmm "/org/files/agenda/food.org") "Inbox") "* COOK %^{Recipe Name} :PROPERTIES: :ID: %(org-id-uuid) :Time: %^{minutes|-|10|15|30|60} :Rating: %^{rating?|-|1|2|3|4|5} :Source: %x :Cuisine: %^{Cuisine?|-|Indian|Thai|Vietnamese|Asian|Chinese|Israeli|Italian|American|EastEuro|Mexican|French|Persian|Austrian} :Type: %^{Type?|-|main|side|starter|sweets|drinks|sauce|breakfast} :Main.ing: %^{main.ing?|-|chicken|beef|potatos|fish|seafood|shrimp|rice|pasta|fruit} :Serves: %^{Serves?|-|1|2|4|6|8} :END: %^{prompt|*** Ingredients} %? %^{prompt|*** Preparation} " "Capture Template for food recipe" )) so do i need a separate mapconcat #'number-to-string for each property value (time,type etc?) and how dows the %s know which mapconcat command to refer to? thx alot again Z On Tue, Apr 25, 2017 at 11:00 AM, Nicolas Goaziou wrote: > Hello, > > Xebar Saram writes: > > > kinda stuck with this and cant find any documentation. would also be glad > > to know its not possible so i can perhaps explore another method :) > > > > im basically wondering if instead of manually imputing string separated > > with | in the : %^{} capture template i can provide a lisp way to send a > > pre defined list of strings ("a" "b" "c") etc.. anyone has any clue? > > Since it is pre-defined, you can do the following during capture > definition > > (format "* Headline > :PROPERTIES: > :Time: %%^{minutes|-|%s} > :Rating: %%^{rating?|-|%s} > :END:" > (mapconcat #'number-to-string '(10 15 30 60) "|") > (mapconcat #'number-to-string '(1 2 3 4 5) "|")) > > Can't you? > > Regards, > > -- > Nicolas Goaziou >