Org selbst bietet eine Möglichkeit zum Filtern / Suchen von Informationen, die in .orgDateien gespeichert sind , auf verschiedene Arten. Es heißt "Agenda" . Das org-modeHandbuch enthält ausführliche Informationen zur Verwendung (überprüfen Sie den obigen Link oder führen Sie es C-h i m Org Mode RETin Emacs aus und navigieren Sie zum Kapitel "Agenda-Ansichten"). Daher ist es nicht sinnvoll, alle diese Informationen hier zu wiederholen. Der Einführungstext aus dem Handbuch fasst zusammen, was Sie damit machen können (Hervorhebung von mir):
Org kann Elemente anhand verschiedener Kriterien auswählen und in einem separaten Puffer anzeigen. Es stehen sieben verschiedene Ansichtstypen zur Verfügung:
- eine Agenda, die einem Kalender ähnelt und Informationen zu bestimmten Daten enthält,
- eine TODO-Liste, die alle unvollendeten Aktionselemente abdeckt,
- eine Übereinstimmungsansicht, in der Überschriften basierend auf den damit verbundenen Tags, Eigenschaften und dem TODO-Status angezeigt werden;
- eine Zeitleistenansicht, die alle Ereignisse in einer einzelnen Org-Datei in einer zeitsortierten Ansicht anzeigt.
- eine Textsuchansicht, in der alle Einträge aus mehreren Dateien angezeigt werden, die bestimmte Schlüsselwörter enthalten .
- Eine Ansicht mit festgefahrenen Projekten zeigt Projekte an, die sich derzeit nicht bewegen
- Benutzerdefinierte Ansichten, bei denen es sich um spezielle Suchvorgänge und Kombinationen verschiedener Ansichten handelt.
Das einzige, was Sie tun müssen, um die Agenda für die Suche in Ihren Notizen zu verwenden, ist das Hinzufügen von Dateien, zu denen Sie suchen möchten org-agenda-files:
Die anzuzeigenden Informationen werden normalerweise aus allen Agenda-Dateien gesammelt, den in der Variablen aufgeführten Dateien org-agenda-files. Wenn ein Verzeichnis Teil dieser Liste ist, werden alle Dateien mit der Erweiterung .orgin diesem Verzeichnis Teil der Liste.
In Ihrem Fall möchten Sie Ihrer Init-Datei also Folgendes hinzufügen:
(setq org-agenda-files '("/path/to/Notes/Linux" "/path/to/Notes/Programming"))
Für viele Beispiele und praktische Ratschläge empfehle ich Ihnen auch, den Artikel über die erweiterte Suche in Worg zu lesen .
[UPDATE] Beschränken der Suche auf bestimmte Dateigruppen
Wie in den Kommentaren erwähnt, möchte OP die Suche auf bestimmte Dateigruppen beschränken können. In technischer Hinsicht bedeutet org-agenda-filesdies, je nach Kontext unterschiedliche Werte einzustellen. Dies kann mit verzeichnislokalen Variablen erreicht werden :
Die übliche Methode zum Definieren von verzeichnislokalen Variablen besteht darin, eine Datei mit dem Namen .dir-locals.elin einem Verzeichnis abzulegen. Immer wenn Emacs eine Datei in diesem Verzeichnis oder einem seiner Unterverzeichnisse besucht, werden die in .dir-locals.el[...] angegebenen verzeichnislokalen Variablen angewendet .
Nehmen wir zum Beispiel das an
Wenn Notes/LinuxSie in gespeicherte Dateien besuchen , möchten Sie die Agenda verwenden, um nur in .orggespeicherte Dateien zu suchen Notes/Linux.
Wenn Sie in gespeicherte Dateien besuchen Notes/Programming, möchten Sie die Agenda verwenden, um nur in .orggespeicherte Dateien zu suchen Notes/Programming.
Gehen Sie wie folgt vor, um dieses Verhalten zu aktivieren:
Fügen Sie .dir-locals.elbeiden Notes/Linuxund eine Datei mit dem folgenden Inhalt hinzu Notes/Programming:
((nil . ((org-agenda-files . (".")))))
Dadurch wird die Liste so festgelegt org-agenda-files, dass alle Dateien im aktuellen Verzeichnis enthalten sind.
Fügen Sie Ihrer Init-Datei den folgenden Code hinzu:
(add-hook 'org-agenda-mode-hook #'hack-dir-local-variables-non-file-buffer)
Dieser Schritt ist erforderlich, um sicherzustellen, dass *Org Agenda*(ein Nicht-Dateipuffer ) Ihre verzeichnislokalen Einstellungen für berücksichtigt org-agenda-files.
Wenn Sie das nächste Mal eine in Notes/Linuxoder gespeicherte Datei besuchen Notes/Programming, werden Sie von Emacs gefragt, ob Sie die in gespeicherten Einstellungen anwenden möchten .dir-locals.el. Klicken Sie !, um Emacs anzuweisen, die Einstellungen anzuwenden und sie für zukünftige Sitzungen als sicher zu markieren (Sie werden nicht erneut aufgefordert, Dateien im selben Verzeichnis einzugeben).
M-x org-search-viewHier ist der Link zur Dokumentation: orgmode.org/manual/Search-view.html