org-ql wie Suche nach org-roam. Hängt von den folgenden Paketen ab, die noch nicht auf Melpa basieren. Sexp-String, Delve, Delve-Show.
Ich wollte eine bessere Suchmaschine für meine Org-Roam-Dateien. Ich war es leid, nur bei der Verwendung von org-roam-find-file mit Klammern herumzufummeln, um Tags zuzuordnen, und es gefiel mir nicht, dass ich keine boolesche Abfrage durchführen konnte.
Das Paket ist noch nicht auf Melpa. In der Zwischenzeit können Sie es mit den folgenden Anweisungen schnell ausprobieren und installieren, indem Sie es zum load-path
hinzufügen oder manuell, indem Sie load-directory
in einem Verzeichnis ausführen, das alle relevanten Dateien enthält, oder indem Sie die von Ihrer Emacs-Distribution bevorzugte Methode zur Installation von Paketen von Github verwenden .
Kopieren, in einen Puffer einfügen und eval-buffer
für sexp-string-Code und org-roam-search-Code ausführen, nachdem die Zeile (require delve-show)
aus org-roam-search code
entfernt wurde. delve-show
ist für den Betrieb dieses Pakets nicht entscheidend.
Sehen Sie sich die Installationsanleitung von doom-emacs an. Fügen Sie Folgendes zu ~/.doom.d/package.el
hinzu.
(package! org-roam-search
:recipe ( :host github
:repo " natask/org-roam-search "
:branch " master " ))
(package! sexp-string
:recipe ( :host github
:repo " natask/sexp-string "
:branch " master " ))
(package! delve
:recipe ( :host github
:repo " publicimageltd/delve "
:branch " main "
:files ( " *.el " )))
(package! delve-show
:recipe ( :host github
:repo " natask/delve-show "
:branch " master "
:files ( " *.el " )))
und fügen Sie Folgendes in ~/.doom.d/config.el
ein
( use-package org-roam-search
:after (org-roam)
; :custom
; (org-roam-search-default-tags '("stub"))
:bind ( :map global-map
(( " C-c n f " . org-roam-search-node-find))
:map org-mode-map
(( " C-c n i " . org-roam-search-node-insert)))
)
und führen Sie ~/.emacs.d/bin/doom upgrade
aus
Führen Sie org-roam-search-node-find
oder org-roam-search-node-insert
aus. Sie sind Ersatz für org-roam-node-find
und org-roam-node-insert
.
Geben Sie tag:tag1 search string
. Es handelt sich um eine gültige Suche, die Knoten mit dem Tag tag1
anzeigt und search string
enthält.
zum Beispiel tag:query1,query2 `or title:query3 `and query4
Sucht nach Dateien, die über die Tags „Abfrage1“ und „Abfrage2“ verfügen oder über einen Alias/Titel verfügen, der mit „Abfrage3“ übereinstimmt, und die außerdem entweder „Abfrage4“ als Titel oder Tag haben.
Die Syntax finden Sie unter https://github.com/natask/sexp-string#custom-pexs.