On 6Nov2007, at 11:39 PM, Adam Spiers wrote:
On Tue, Nov 06, 2007 at 04:36:47PM +0000, Adam Spiers wrote:
[snip]
This could easily be accomplished if remember templates allowed
syntax
such as
,------
| * %T
| %(shell-command-to-string "grep 'last full' /proc/acpi/battery/
BAT0/info")
`------
OK, it turns out that this was easy to implement, and I think the
patch is small enough that it could be accepted even though I haven't
got around to sending back the copyright assignment form yet (sorry -
this *will* happen at some point!)
I'll take this patch, thanks.
- Carsten
Diff against 5.13i:
--- a/org.el Wed Oct 31 09:46:35 2007 +0000
+++ b/org.el Tue Nov 06 22:30:13 2007 +0000
@@ -12806,6 +12806,17 @@ to be run from that hook to fucntion pro
(replace-match
(or (eval (intern (concat "v-" (match-string 1)))) "")
t t))
+ ;; %() embedded elisp
+ (goto-char (point-min))
+ (while (re-search-forward "%\\((.+)\\)" nil t)
+ (goto-char (match-beginning 0))
+ (let ((template-start (point)))
+ (forward-char 1)
+ (condition-case error
+ (let ((result (eval (read (current-buffer)))))
+ (delete-region template-start (point))
+ (insert result))
+ (error (message "Error `%s' in remember template"
error)))))
;; From the property list
(when plist-p
(goto-char (point-min))
There might need to be some debate about how to handle read errors in
the case of invalid syntax. Or perhaps some people already have
`%(...)' within their remember templates for some really unusual
reason, and don't want it interpreted? Though in the latter case, one
could argue that it might make sense to require `%' always to be
escaped as `%%' if used literally, to be on the safe side.
_______________________________________________
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode
_______________________________________________
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode