Hi all!

I got capture template with prompts to collect some properties:

#+BEGIN_SRC
* TODO %\1 / Some task description
   :PROPERTIES:
   :NAME: %^{NAME}
   :END:
#+END_SRC

My question is: How to get information on user input data to transform this data before capture finalize.

For example: I got variable NAME and would like to use function like (s-dashed-words string) from s.el to make sure that my NAME is valid and converted to dashed syntax.

Let's say that my input is: New random project

I would like to have:

#+begin_src
* TODO new-random-project / Some task description
   :PROPERTIES:
   :NAME: "New random project"
   :END:
#+end_src

While currently I got:

#+begin_src
* TODO New random project / Some task description
   :PROPERTIES:
   :NAME: "New random project"
   :END:
#+end_src

I have been trying:

#+BEGIN_SRC
* TODO %(custom-dashify-function %\1) / Some task description
   :PROPERTIES:
   :NAME: %^{NAME}
   :END:
#+END_SRC

or

#+BEGIN_SRC
* TODO %(custom-dashify-function %\\1) / Some task description
   :PROPERTIES:
   :NAME: %^{NAME}
   :END:
#+END_SRC

But apparently function is executed before %\1 is replaced by my data and it dodesn't work. Could someone help me to write function that would get data I provided for property NAME, convert using s-dashed-words and return to template before finalize?


Marcin





Reply via email to