Providing values to functions in org-capture-templates
Posted: - Modified: | emacs, orgOver at the Emacs StackExchange, Raam Dev asked how to define functions for org-capture-templates
that could take arguments. For example, it would be useful to have a function that creates a Ledger entry for the specified account. Functions used in org-capture-templates
can’t take any arguments, but you can use property lists instead. Here’s the answer I posted.
You can specify your own properties in the property list for the template, and then you can access those properties with
plist-get
andorg-capture-plist
. Here’s a brief example:Here’s a brief example:
(defun my/expense-template () (format "Hello world %s" (plist-get org-capture-plist :account))) (setq org-capture-templates '(("x" "Test entry 1" plain (file "~/tmp/test.txt") (function my/expense-template) :account "Account:Bank") ("y" "Test entry 2" plain (file "~/tmp/test.txt") (function my/expense-template) :account "Account:AnotherBank")))I hope that helps!
You can comment with Disqus or you can e-mail me at sacha@sachachua.com.