(setq my/org-agenda_pro-filter ":2024_12_masked:\\|:2024_29_masked:\\|:2024_16_masked:\\|:2023_101_masked:\\|:2024_17_masked:") (setq my/org-agenda_org-filter ":2023_47_masked:\\|:2023_53_masked:\\|:2024_8_masked:\\|:2024_9_masked:\\|:2024_13_masked:\\|:2024_20_masked:\\|:2024_10_masked:\\|:2024_11_masked:") (setq my/org-agenda_home-filter ":2024_2_masked:\\|:2024_1_masked:\\|:2024_4_masked:\\|:2024_3_masked:\\|:2022_39_masked:") (setq my/org-agenda_vol-filter ":2023_47_masked:\\|:2023_53_masked:\\|:2024_8_masked:\\|:2024_9_masked:\\|:2024_13_masked:\\|:2024_20_masked:\\|:2024_10_masked:\\|:2024_11_masked:") (setq my/org-agenda_exp-filter ":2022_9_masked:\\|:2024_25_masked:\\|:2022_83_masked:\\|:2024_24_masked:\\|:2024_23_masked:\\|:2023_57_masked:\\|:2024_7_masked:\\|:2024_15_masked:\\|:2024_14_masked:") (setq my/org-agenda_mus-filter ":2024_22_masked:\\|:2024_21_masked:") (setq my/org-agenda_viaje-filter ":2023_114_masked:\\|:2022_74_masked:") (defun my/org-agenda-skip-with-filter (filter) (or (org-agenda-skip-entry-if 'todo '("DONE" "CLOSED")) (org-agenda-skip-entry-if 'notregexp (concat ":appt:\\|" filter)) )) ;; by default I only want a list of the todo items (setq org-agenda-custom-commands '(("t" "list all TICKLER items" todo "TICKLER") ("n" "list all NEXT items" todo "NEXT") ("h" "list all HOLD items" todo "HOLD") ("b" "Agenda for board.org" agenda "" ((org-agenda-span 'day) (org-agenda-files '("~/org/board.org")))) ;; thanks chatgpt ("d" "Daily agenda without DONE and CLOSED (responde a pregunta: qué queda por hacer hoy)" agenda "" ((org-agenda-span 'day) (org-agenda-skip-function (lambda () (or (org-agenda-skip-entry-if 'todo '("DONE" "CLOSED"))))))) ;; trabajos profesionales ;; https://emacs.stackexchange.com/questions/18179/org-agenda-command-with-org-agenda-filter-by-tag-not-working/78066#78066 ("w" "Context 1: pro/Work" agenda "" ((org-agenda-span 'day) (org-agenda-skip-function '(my/org-agenda-skip-with-filter (concat ":pro:\\|" my/org-agenda_pro-filter))) )) ("o" "Context 2: Org" agenda "" ((org-agenda-span 'day) (org-agenda-skip-function '(my/org-agenda-skip-with-filter (concat ":org:\\|" my/org-agenda_org-filter))) )) ;; special case, includes habitos ("c" "Context 3: home (Casa)" agenda "" ((org-agenda-span 'day) (org-agenda-skip-function (lambda () (let ((category (org-get-category))) ;; debug ;;(print category) (or (org-agenda-skip-entry-if 'todo '("DONE" "CLOSED")) (org-agenda-skip-entry-if 'notregexp (concat ":appt:\\|" ":nutricion:\\|" ":home:\\|" my/org-agenda_home-filter)) )))))) ("v" "Context 4: Vol" agenda "" ((org-agenda-span 'day) (org-agenda-skip-function '(my/org-agenda-skip-with-filter (concat ":vol:\\|" my/org-agenda_vol-filter))) )) ("x" "Context 5: eXp" agenda "" ((org-agenda-span 'day) (org-agenda-skip-function '(my/org-agenda-skip-with-filter (concat ":exp:\\|" my/org-agenda_exp-filter))) )) ("u" "Context 6: mUs" agenda "" ((org-agenda-span 'day) (org-agenda-skip-function '(my/org-agenda-skip-with-filter (concat ":mus:\\|" my/org-agenda_mus-filter))) )) ("v" "Context 7: Viaje" agenda "" ((org-agenda-span 'day) (org-agenda-skip-function '(my/org-agenda-skip-with-filter (concat ":viaje:\\|" my/org-agenda_viaje-filter))) )) ;; free: special case, negation of work filter ("f" "Freedom, no pro/work" agenda "" ((org-agenda-span 'day) (org-agenda-skip-function (lambda () (or (org-agenda-skip-entry-if 'todo '("DONE" "CLOSED")) (org-agenda-skip-entry-if 'regexp (concat ":appt:\\|" my/org-agenda_pro-filter)) ))))) ))