[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [NonGNU] Package suggestion: org-gnosis
From: |
Liam Hupfer |
Subject: |
Re: [NonGNU] Package suggestion: org-gnosis |
Date: |
Sat, 15 Feb 2025 19:39:00 -0600 |
Thanos Apollo <public@thanosapollo.org> writes:
> Liam Hupfer <liam@hpfr.net> writes:
>
>> IDs are used by Org for other purposes, such as links and
>> org-attach. So I configure ‘org-roam-db-node-include-function’ to only
>> recognize nodes with a ROAM_NODE property set and ensure
>> ‘org-roam-capture-new-node-hook’ adds the property when creating
>> notes. That way I can still use links and attachments on any heading
>> with the benefits of IDs without polluting my org-roam nodes.
>
> Using a defcustom to set another property instead of :ID: or something
> similar to org-roam-db-node-include would be trivial, but wouldn’ that
> break org-id-* functions in your example?
>
> Is there a reason why you use :ROAM_NODE: property and not :ID:?
It’s not about changing the name of the ID property. The ID property is
left alone. It is still used for org-attach, org-edna, ID links, and
org-roam itself.
The customization I use makes org-roam only consider nodes that have
/both/ an ID property and a ROAM_NODE property. That way, every time I
create an ID for other purposes (link to a non-roam node subheading,
org-attach to a subheading, etc), I don’t clutter org-roam-node-find.
Here is the code:
┌────
│ (defun my/org-roam-db-node-include ()
│ "Require ROAM_NODE for roam nodes."
│ (org-entry-get (point) "ROAM_NODE" 'selective))
│ (setq org-roam-db-node-include-function #'my/org-roam-db-node-include)
│
│ (defun my/org-roam-capture-node-include ()
│ "Add ROAM_NODE when capturing."
│ (when (org-roam-capture--get :new-file)
│ (org-entry-put (point-min) "ROAM_NODE" "t")))
│ (add-hook 'org-roam-capture-new-node-hook #'my/org-roam-capture-node-include)
└────
Actually, I primarily set this up for org-caldav and org-edna.
org-caldav needs to create IDs to maintain a sync state with a CalDAV
server. But I don’t want every single calendar event treated as a Roam
note. At the same time, I don’t want org-roam’s use of IDs to force me
to manage separate directories for calendar Org files. Since unique IDs
are useful for much more Org functionality than just Roam, it makes more
sense for me (and IMO everyone, really) to have a dedicated additional
property setting Roam nodes apart from “a random Org heading with an
ID”.
org-edna is a package for declaring dependencies between TODOs. I like
the flexibility of having TODOs live within my Roam directory,
particularly within dailies. org-edna can use ID links to declare
blockers on TODOs in other files. I don’t want every TODO with a
blocking relationship to be treated as a Roam note.
I also found the post I made on the Org Roam Discourse, which might
clarify what I am asking:
<https://org-roam.discourse.group/t/should-org-roams-treatment-of-all-ids-as-nodes-be-opt-in/2557>
>> Also, any plans for accessing backlinks in Emacs? A web interface is
>> nice but not as convenient for quick navigation.
>
> Yes, that’s one of the main things that I want to add. For now I’m using
> this:
> A way to select backlinks & links for node using the minibuffer, like
> the one above, will be added soon.
>
> The thing that I mostly want though is to have my gnosis[1] notes linked
> to org-gnosis nodes, so I can do reviews for specific topics that I’m
> studying. I’m not sure exactly how to best approach creating a buffer
> for this only using built in emacs options (making a customizable UI to
> view links, either backlinks or gnosis links etc), if you have any
> suggestions feel free to share.
>
>
> org-capture support will be added further down the line btw.
Sounds great. A minibuffer interface makes sense to me. I can’t offer
any advice about a dedicated buffer, unfortunately.
Thanks!
—Liam
Re: [NonGNU] Package suggestion: org-gnosis, Thanos Apollo, 2025/02/10
- Re: [NonGNU] Package suggestion: org-gnosis, Liam Hupfer, 2025/02/16
- Re: [NonGNU] Package suggestion: org-gnosis, Thanos Apollo, 2025/02/15
- Re: [NonGNU] Package suggestion: org-gnosis,
Liam Hupfer <=
- Re: [NonGNU] Package suggestion: org-gnosis, Thanos Apollo, 2025/02/15
- Re: [NonGNU] Package suggestion: org-gnosis, Liam Hupfer, 2025/02/16
- Re: [NonGNU] Package suggestion: org-gnosis, Thanos Apollo, 2025/02/16
- Re: [NonGNU] Package suggestion: org-gnosis, Stefan Monnier, 2025/02/16