From: Adam Spiers <orgmode@adamspiers.org>
To: emacs-orgmode@gnu.org
Subject: Re: inserting files within remember templates
Date: Tue, 6 Nov 2007 22:39:50 +0000 [thread overview]
Message-ID: <20071106223950.GA6033@atlantic.linksys.moosehall> (raw)
In-Reply-To: <20071106163647.GC13544@atlantic.linksys.moosehall>
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!)
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.
next prev parent reply other threads:[~2007-11-06 22:40 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-05 18:17 inserting files within remember templates Adam Spiers
2007-11-05 18:27 ` Eddward DeVilla
2007-11-06 5:41 ` Carsten Dominik
2007-11-06 16:36 ` Adam Spiers
2007-11-06 22:39 ` Adam Spiers [this message]
2007-11-07 2:47 ` Bastien
2007-11-07 8:43 ` Carsten Dominik
2007-11-07 8:42 ` Carsten Dominik
2007-11-24 14:52 ` Adam Spiers
2007-11-24 16:57 ` Carsten Dominik
2007-12-09 12:19 ` Adam Spiers
2007-11-07 2:37 ` Bastien
2007-11-07 9:58 ` Adam Spiers
2007-11-07 12:46 ` Bastien
2007-11-07 12:50 ` Adam Spiers
2007-11-07 14:39 ` Bastien
2007-11-07 14:36 ` Adam Spiers
2007-11-08 4:03 ` Bastien
-- strict thread matches above, loose matches on Subject: below --
2007-10-13 14:52 Using org-remember to include stored link? Georg C. F. Greve
2007-10-14 2:33 ` Bastien
2007-10-14 5:11 ` Georg C. F. Greve
2007-10-14 6:14 ` Carsten Dominik
2007-10-14 12:05 ` Georg C. F. Greve
2007-10-14 14:03 ` Bastien
2007-10-14 13:48 ` Georg C. F. Greve
2007-10-14 15:33 ` Carsten Dominik
2007-11-08 11:32 ` Georg C. F. Greve
2007-11-08 13:09 ` Bastien
2007-12-08 20:08 ` inserting files within remember templates Adam Spiers
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20071106223950.GA6033@atlantic.linksys.moosehall \
--to=orgmode@adamspiers.org \
--cc=emacs-orgmode@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.