Ist es möglich, Elemente mit einem bestimmten Tag nach einer bestimmten Tageszeit auszublenden? Zum Beispiel möchte ich das nach 17 Uhr und am Wochenende: ARBEIT: Elemente erscheinen nicht auf der Tagesordnung.
BEARBEITEN: Ich beschäftige mich mit geplanten Elementen und verlasse mich auf die Funktion der Organisationsagenda-Liste.
org-mode
org-agenda
David Gagnon
quelle
quelle
org-agenda-skip-function
. Auch geben Sie bitte , welche der drei (3) Hauptfunktionen , die Sie verlassen sich auf -org-agenda-list
,org-search-view
oderorg-tags-view
.Antworten:
Sie können das Überspringen bestimmter Einträge
org-agenda
mithilfe einer Überspringfunktion anpassen . Dies ist eine Funktion (oder Lisp-Form), die bei jeder Überschrift ausgewertet wird und zurückgeben solltenil
(um die Überschrift nicht zu überspringen) oder den Punkt der nächsten zu berücksichtigenden Überschrift (der normalerweise die nächste Überschrift ist, aber beispielsweise die sein könnte) nächstes Geschwister, um die Suche zu beschleunigen).In diesem Fall benötigen wir nur eine Funktion, um die Überschrift zu überspringen, wenn sie ein bestimmtes Tag hat (diese mit abrufen
org-get-tags-at
) und das(current-time)
nach einer bestimmten Stunde ist:Dies berücksichtigt nicht den Wochentag, sondern diese Logik
Sie können
(setq (setq org-agenda-skip-function-global '(skip-tag-after "WORK" 17))
solche Überschriften entweder global in jeder Agenda überspringen oderorg-agenda-skip-function
lokal in a festlegenorg-agenda-custom-command
, um nur diese Agenda zu beeinflussen.quelle
org-agenda-skip-function
indem Sie es beispielsweise auf(or (skip-tags-after "WORK" 17) (skip-tags-after "HOME" 9))
Eine sehr einfache Problemumgehung wäre, eine spezielle Agenda-Ansicht (oder Ansichten) zu erstellen, die Sie nur an Abenden und Wochenenden verwenden.
Um ein sehr einfaches Beispiel zu geben, können Sie es anpassen,
org-agenda-custom-commands
indem Sie etwas wie hinzufügen("x" "No Work" tags-todo "-work" nil)
. Abends und am Wochenende können Sie dann Ihre Gesamtagenda mit aufrufen C-c a x.quelle
org-agenda-custom-commands
Sie können auch benutzerdefinierte Funktionen festlegen ... Es sollte auf jeden Fall möglich sein, auf diese Weise zu tun, was Sie wollen (einfachif
), aber ich weiß nicht gut genug, um Ihnen zu zeigen, wie genau.