Change: (org-ql-agenda--agenda) Avoid eval

This commit is contained in:
Adam Porter 2019-07-16 19:07:55 -05:00
parent 9846be03b9
commit 18def9313a

View file

@ -206,13 +206,14 @@ SORT: One or a list of `org-ql' sorting functions, like `date' or
(declare (indent defun)) (declare (indent defun))
(when (and super-groups (not org-super-agenda-mode)) (when (and super-groups (not org-super-agenda-mode))
(user-error "`org-super-agenda-mode' must be activated to use grouping")) (user-error "`org-super-agenda-mode' must be activated to use grouping"))
;; I think it's reasonable to use `eval' here.
(let* ((org-super-agenda-groups super-groups) (let* ((org-super-agenda-groups super-groups)
(entries (--> (eval `(org-ql ',buffers-files (entries (--> (org-ql-query buffers-files
,query query
:sort ,sort :sort sort
:markers t :narrow narrow
:narrow ,narrow)) :action (lambda ()
(->> (org-element-headline-parser (line-end-position))
org-ql--add-markers)))
(mapcar #'org-ql-agenda--format-element it) (mapcar #'org-ql-agenda--format-element it)
(cond ((bound-and-true-p org-super-agenda-mode) (org-super-agenda--group-items it)) (cond ((bound-and-true-p org-super-agenda-mode) (org-super-agenda--group-items it))
(t it)) (t it))