Org selbst bietet eine Möglichkeit zum Filtern / Suchen von Informationen, die in .org
Dateien gespeichert sind , auf verschiedene Arten. Es heißt "Agenda" . Das org-mode
Handbuch 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 .org
in 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-files
dies, 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.el
in 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/Linux
Sie in gespeicherte Dateien besuchen , möchten Sie die Agenda verwenden, um nur in .org
gespeicherte Dateien zu suchen Notes/Linux
.
Wenn Sie in gespeicherte Dateien besuchen Notes/Programming
, möchten Sie die Agenda verwenden, um nur in .org
gespeicherte Dateien zu suchen Notes/Programming
.
Gehen Sie wie folgt vor, um dieses Verhalten zu aktivieren:
Fügen Sie .dir-locals.el
beiden Notes/Linux
und 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/Linux
oder 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-view
Hier ist der Link zur Dokumentation: orgmode.org/manual/Search-view.html