d12frosted / vulpea

A collection of functions for note taking based on `org` and `org-roam`.
GNU General Public License v3.0
236 stars 12 forks source link

vulpea does not detect my `org-roam` notes #151

Open wuqui opened 1 year ago

wuqui commented 1 year ago

vulpea does not detect my notes, even though org-roam works fine.

I use the following paths, which might be unusual, but I like having everything inside org-roam.

org-roam-directory ~/roam
org-directory ~/roam/org
org-agenda-files ~/roam/agenda/

I have vulpea configure like this (using Doom):

(use-package! vulpea
  :hook ((org-roam-db-autosync-mode . vulpea-db-autosync-enable))
  :commands (vulpea-utils-collect-while))

What am I doing wrong?

d12frosted commented 1 year ago

Hey @wuqui,

Vulpea uses org-roam db under the hood. So my wild guess would be that you haven't force synced your database before using Vulpea. See installation instructions, especially point (3). These days Vulpea should do it by itself, but I don't know which version you are using.

Let me know if it doesn't fix your issue. In that case, please provide the following information:

  1. Which version of Vulpea are you using? And even better, upgrade to the latest version.
  2. What do you mean by 'does not detect my notes'?

I use the following paths, which might be unusual, but I like having everything inside org-roam.

I also keep everything under one directory. It's unrelated, but I find it confusing that you have org-agenda-files that is not under org-directory.

wuqui commented 1 year ago

Vulpea uses org-roam db under the hood. So my wild guess would be that you haven't force synced your database before using Vulpea. See installation instructions, especially point (3).

I had not. I completely missed this, sorry 🤦‍♂️

However, running (org-roam-db-sync 'force) did not completely resolve the issue for me. I'll explain further below.

  1. What do you mean by 'does not detect my notes'?

When I call vulpea-find, 0 notes are found – I can't select anything.

  1. Which version of Vulpea are you using? And even better, upgrade to the latest version.

I should have the current version. At the top of vulpea.el it says Version: 0.3.0.

I've installed it like this:

(package! vulpea
  :recipe (:host github
           :repo "d12frosted/vulpea"
           :files ("*.el")))

I use the following paths, which might be unusual, but I like having everything inside org-roam.

I also keep everything under one directory. It's unrelated, but I find it confusing that you have org-agenda-files that is not under org-directory.

You're right. To be honest, I don't have much use for an 'org directory'. But I've changed it to ~/roam now.

I got everything working now.

I used (org-roam-db-sync 'force) as you suggested.

Calling vulpea-find after this produced an error. I no longer have the error message, but it was something like this:

emacs-sql: table `notes` not found

However, calling vulpea-db-autosync-mode interactively after that fixed everything for me. Because I have this autosync hook in. my config (see above), I assumed this wasn't necessary, but it works now.

Thank you for your quick help!

d12frosted commented 1 year ago

emacs-sql: table notes not found

This error means that Vulpea was not properly bootstrapped. There is a mechanism to ensure that Vulpea-specific stuff is injected into Org Roam database, but it kicks in only if you enable vulpea-db-autosync-enable.

There is also a simple tests for this:

https://github.com/d12frosted/vulpea/blob/f74575ebad8e6f7e5f7713a121bcdb939dcac83e/test/vulpea-db-test.el#L890-L976

Not saying that you did anything wrong. Just trying to understand, how to improve either instructions or the automatic bootstrap flow to avoid these problems. I guess the correct order would be to enable vulpea-db-autosync-mode and run (org-roam-db-sync 'force). The mode hooks into Org Roam db and after that force sync should do everything correctly.

At least, I am glad it works now for you.

P.S. Could you please share how and when you enable org-roam sync mode? Or are you using whatever Doom is providing?

kronikpillow commented 1 year ago

I ran in to the same problem, plus reading that blog, confused me quite bit xD every time i create a new note, and try to add a tag to it, it tells me that the current file it's not a note xD

d12frosted commented 1 year ago

@kronikpillow 🤔 so did you figure out how to fix that? Did vulpea-db-autosync-mode + (org-roam-db-sync 'force) help?

kronikpillow commented 1 year ago

yes vulpea-db-autosync-mode + (org-roam-db-sync 'force) helped me, notes are now displayed in the vulpea-find function, but the rest of this project is a total confusion to me, wish the guide/readme was more newbie friendly ... I'v started my own #156 discussion, to get assistance in setting up vulpea properly :) thanks for your patience

dmitrym0 commented 1 year ago

I had to follow the similar set of steps (down to notes table not found). But all seems to be good now.

I had vulpea installed for a while, perhaps without completing the necessary force sync.