emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] How to launch an agenda view programmatically?


From: Marco Wahl
Subject: Re: [O] How to launch an agenda view programmatically?
Date: Wed, 19 Jul 2017 20:10:24 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux)

Hi!

Marcin Borkowski <address@hidden> writes:

> Hi all,
>
> I have this in my init.el:
>
> (defun mbork/org-agenda-skip-if-parent-done-or-noagenda ()
>   "Return t if any of the parents of the current entry is a DONE
>   item, or there is a :noagenda: or :project: tag."
>   (save-excursion
>     (catch 'done
>       (when (or (member "noagenda" (org-get-tags-at))
>               (member "project" (org-get-tags-at)))
>       (throw 'done
>              (plist-get (cadr (org-element-context)) :contents-end)))
>       (while (org-up-heading-safe)
>       (if (or (org-entry-is-done-p))
>           (throw 'done
>                  (plist-get (cadr (org-element-context)) :contents-end)))))))
>
> (setq org-agenda-custom-commands
>       '(("n"
>        "Agenda, tasks, projects"
>        ((agenda "")
>         (alltodo "" ((org-agenda-skip-function 
> #'mbork/org-agenda-skip-if-parent-done-or-noagenda)))
>         (tags "+project-TODO=\"DONE\"")))))
>
> Now instead of pressing C-c a n, I want to be able to launch my custom
> agenda command from Lisp.  How do I do that?

Isn't this just (org-agenda nil "n")?


Best regards
            Marco




reply via email to

[Prev in Thread] Current Thread [Next in Thread]