Ich verwende den Organisationsmodus, um die Zeit zu verfolgen, die ich für verschiedene Projekte aufgewendet habe. Ich habe eine Hauptorganisationsdatei und zwei weitere für zwei große Projekte, an denen ich arbeite. Alle drei sind in aufgeführt org-agenda-files
. Ich habe eine Uhrentabelle in der Hauptorganisationsdatei erstellt und festgelegt
:scope agenda-with-archives
in der übersichtbaren Kopfzeile, um die aufgewendete Zeit zusammenzufassen. Das alles funktioniert gut.
Ich habe jedoch auch einige kleinere Projekte, deren Zeit in ihrer eigenen Organisationsdatei (im Unterverzeichnis, das alles über diese Projekte enthält) aufgezeichnet wurde, und ich möchte auch die Zeit in diesen verfolgen.
Natürlich könnte ich diese Dateien hinzufügen org-agenda-files
, aber das würde bedeuten, dass .emacs
ich meine Dateien jedes Mal aktualisiere, wenn ich ein neues kleines Projekt starte. Natürlich nicht das Ende der Welt, aber da ich bereits einen Link zu den kleinen Projekt-Organisationsdateien in der Haupt-Organisationsdatei habe (siehe Beispiel unten), möchte ich das :scope
auf so etwas setzen
:scope agenda-with-archives linked-org-files
Idealerweise (obwohl ich das noch nicht benutze) wäre es großartig, Archivdateien dieser kleineren Projekte einzuschließen (so etwas wie :scope linked-org-files-with-archives
).
Hier ist ein Beispiel für die Struktur meiner Hauptorganisationsdatei:
* Small project 1
See file:~/Projects/Project 1/notes_project_1.org for more details.
* Small project 2
See file:~/Projects/Project 2/notes_project_2.org.
** DONE Some small task I can do quickly
CLOCK: [2014-12-05 vr 12:19]--[2014-12-05 vr 12:40] => 0:21
Some info on the small task.
Irgendeine Idee, wie dies erreicht werden kann?
(defun some-function () org-agenda-files)
mit:scope (some-function)
funktioniert bei mir nicht und wird in den Dokumenten nicht erwähnt. Wird es noch unterstützt?Lisp error: (wrong-type-argument stringp some-function)
. Org-Modus Version 9.0.7Ich habe auch Probleme damit.
Die Antwort von @ artscan hat mich in die richtige Richtung gelenkt, gibt aber einen
argument type
Fehler zurück. Das Löschen der Klammern löst das Problem.Ich würde die Antwort von artscan kommentieren, aber ich habe nicht genug Ruf.
Zusammenfassend verwende ich also Folgendes:
Geben Sie in der Tabelle an
:scope efls/org-files-productive
. Keine Klammern. Definieren Sie eine einfache Funktion, um eine Zeichenfolge von Dateien zurückzugeben.Zum Beispiel benutze ich so etwas:
Sie könnten natürlich, geben Sie auch einfach in einer Liste von Dateien nach
:scope
, aber dann Sie tun müssen Klammern die Liste umschließenden:scope: ("Users/efls/org/file1.org" "…")
.quelle