dotfiles

My personal shell configs and stuff
git clone git://git.alex.balgavy.eu/dotfiles.git
Log | Files | Refs | Submodules | README | LICENSE

commit e506b52fcc4244fb22a91e32c43c73b3705198e3
parent 754807a93e937dbd47f767ebe6e8d03f1b047253
Author: Alex Balgavy <alex@balgavy.eu>
Date:   Sun, 11 Jun 2023 23:56:28 +0200

emacs: additional org agenda settings

Diffstat:
Memacs/config.org | 16++++++++++++++++
1 file changed, 16 insertions(+), 0 deletions(-)

diff --git a/emacs/config.org b/emacs/config.org @@ -1909,6 +1909,18 @@ And another function, to skip tasks that are blocked: keep))) #+end_src +For listing tasks without a context - skip if it has a context tag: + +#+begin_src emacs-lisp + (defun za/skip-if-has-context () + (let ((skip (save-excursion (org-end-of-subtree t))) + (keep nil) + (item-tags-without-inherited (let ((org-use-tag-inheritance nil)) (org-get-tags))) + (context-tag-p (lambda (s) (eq (aref s 0) ?@)))) + (if (cl-some context-tag-p item-tags-without-inherited) + skip + keep))) +#+end_src Create custom agenda view based on those keywords. Agenda views are made up of blocks, appearing in the order that you declare them. The first two strings are what shows up in the agenda dispatcher (the key to press and the description). @@ -1918,6 +1930,10 @@ The first two strings are what shows up in the agenda dispatcher (the key to pre '(("n" "Next actions" todo "NEXT" ((org-agenda-overriding-header "Next actions:") (org-agenda-sorting-strategy '(priority-down alpha-up)))) + ("@" "Next actions missing context" + todo "NEXT" ((org-agenda-overriding-header "Missing context:") + (org-agenda-sorting-strategy '(priority-down alpha-up)) + (org-agenda-skip-function 'za/skip-if-has-context))) ("W" "Waiting" ((todo "WAITING" ((org-agenda-overriding-header "Waiting:"))))) ("S" . "Saved for later...")