This package is a progression of krisbalintona/denote-zettel-interface, which the author initially relied on while using denote instead of org-roam.
The vision of this package is my way of mitigating the difference between interfacing with a digital Zettelkasten and filing through a physical Zettelkasten. The approach of org-roam-folgezettel is to represent the folgezettel index in a list format (with vtable.el
) and be able to navigate the index according to the numbering of notes and filter the shown notes arbitrarily (including by parents and siblings of a folgezettel index numbering).
- List all org-roam nodes using
vtable.el
- Filtering results
- By subdirectory
- By index numbering and index number relations (e.g. parent, children, descendants, etc.)
- By tags
- By folgezettel relations (e.g., children, descendants, parent)
- Composability of filters (e.g., AND, OR)
- Movement by folgezettel relations (e.g., up parent, down to child, forward/backward siblings)
Listing of a portion of my Zettelkasten nodes via M-x org-roam-folgezettel-list
.
This project is currently not packaged in any official package repositories. Consequently, users will have to manually install this package.
Users can clone this package locally into their machine then evaluate something like this:
(use-package org-roam-folgezettel
:ensure t
:load-path "/home/USER/PATH/TO/PROJECT/DIRECTORY/")
Or, if using Emacs-30 or newer:
(use-package org-roam-folgezetel
:vc ( :url "https://github.com/krisbalintona/org-roam-folgezettel.git"
:rev newest))
This project depends on the following third-party packages:
- org-roam
- org-roam-ql
Until this project is packaged into an official repository such as MELPA, users will have to manually ensure these packages are installed prior to installing org-roam-folgezettel
.
Users can see all available options with M-x customize-group RET org-roam-folgezettel RET
, or C-u C-h u org-roam-folgezettel- RET
.
An org-roam-folgezettel listing of all org-roam nodes is available with M-x org-roam-folgezettel-list
. This command is left unbound by default.
For a full listing of org-roam-folgezettel’s commands, see the output of C-h a org-roam-folgezettel- RET
.
Below are a list of the filtering commands currently available.
org-roam-folgezettel-filter-menu
- Transient menu for filtering commands
org-roam-folgezettel-filter-query-edit
- Manually modify the filter for the current org-roam-folgezettel buffer.
org-roam-folgezettel-filter-directory
- Filter the current buffer’s node listing to SUBDIR.
org-roam-folgezettel-filter-title
- Filter the current node titles by REGEXP.
org-roam-folgezettel-filter-tags
- Filter the current node listing by TAGS.
org-roam-folgezettel-filter-person
- Filter the current node listing by PERSON.
org-roam-folgezettel-filter-children
- Filter the current node listing to the children of NODE.
org-roam-folgezettel-filter-descendants
- Filter the current node listing to the descendants of NODE.
org-roam-folgezettel-filter-undo
- Apply previous filter query in history.
org-roam-folgezettel-filter-redo
- Apply next filter query in history.
- [X] Filtering
- [X] By subdirectory
- [X] By various property
- [X] By various predicates
- [X] History (undo, redo)
- [X] By index numbering (folgezettel) relations (e.g., to children, descendants, parent)
- [X] Navigation by index numbering
- [X] Forward/backward same level (sibling)
- [X] Descend level (first child)
- [X] Ascend level (parent)