[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[O] [PATCH 7/7] Make org-batch-store-agenda-views a fun, use org-eval-in
From: |
David Maus |
Subject: |
[O] [PATCH 7/7] Make org-batch-store-agenda-views a fun, use org-eval-in-environment |
Date: |
Tue, 2 Aug 2011 11:23:40 +0200 |
* org-agenda.el (org-batch-store-agenda-views): Make it a function,
use org-eval-in-environment.
---
lisp/org-agenda.el | 20 +++++++++-----------
1 files changed, 9 insertions(+), 11 deletions(-)
diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index 6079377..9215d2a 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -2697,17 +2697,14 @@ This ensures the export commands can easily use it."
(interactive)
(eval (list 'org-batch-store-agenda-views)))
-;; FIXME, why is this a macro?????
;;;###autoload
-(defmacro org-batch-store-agenda-views (&rest parameters)
+(defun org-batch-store-agenda-views (&rest parameters)
"Run all custom agenda commands that have a file argument."
(let ((cmds (org-agenda-normalize-custom-commands
org-agenda-custom-commands))
(pop-up-frames nil)
(dir default-directory)
- pars cmd thiscmdkey files opts cmd-or-set)
- (while parameters
- (push (list (pop parameters) (if parameters (pop parameters))) pars))
- (setq pars (reverse pars))
+ (pars (org-make-parameter-alist parameters))
+ cmd thiscmdkey files opts cmd-or-set)
(save-window-excursion
(while cmds
(setq cmd (pop cmds)
@@ -2717,13 +2714,14 @@ This ensures the export commands can easily use it."
files (nth (if (listp cmd-or-set) 4 5) cmd))
(if (stringp files) (setq files (list files)))
(when files
- (eval (list 'let (append org-agenda-exporter-settings opts pars)
- (list 'org-agenda nil thiscmdkey)))
+ (org-eval-in-environment (append org-agenda-exporter-settings
+ opts pars)
+ (org-agenda nil thiscmdkey))
(set-buffer org-agenda-buffer-name)
(while files
- (eval (list 'let (append org-agenda-exporter-settings opts pars)
- (list 'org-write-agenda
- (expand-file-name (pop files) dir) nil t))))
+ (org-eval-in-environment (append org-agenda-exporter-settings
+ opts pars)
+ (org-write-agenda (expand-file-name (pop files) dir) nil t)))
(and (get-buffer org-agenda-buffer-name)
(kill-buffer org-agenda-buffer-name)))))))
--
1.7.2.5
- Re: [O] [PATCH 1/7] New macro: Execute BODY in enviroment with uninterned SYMBOLS, (continued)
- [O] [PATCH 2/7] New macro: Evaluate FORM in ENVIRONMENT, David Maus, 2011/08/02
- [O] [PATCH 3/7] Use new macro org-with-uninterned, David Maus, 2011/08/02
- [O] [PATCH 4/7] New function: Substitute posix classes in regular expression, David Maus, 2011/08/02
- [O] [PATCH 5/7] Use macro org-with-uninterned, David Maus, 2011/08/02
- [O] [PATCH 6/7] Use org-eval-in-environment, make macros functions, David Maus, 2011/08/02
- [O] [PATCH 7/7] Make org-batch-store-agenda-views a fun, use org-eval-in-environment,
David Maus <=
- Re: [O] [PATCH 0/8] Org mode macros, refactored, David Maus, 2011/08/02
- Re: [O] [PATCH 0/8] Org mode macros, refactored, Štěpán Němec, 2011/08/02