How to add a new node with bibtex information auto-filled?

Hi all,

I have a .bib file which contains many bibtex entries. Now I want to insert a new node with bibtex information auto filled, possible by org-roam-capture, but it seems there is no interface to do this. Following are methods that did not work:

  1. use org-roam-capture
    it does not work, because there is no completion, as it needs to manually input the tile,author information etc
  2. use ivy-bibtex
    it can read bibtex information, but there is no interface for org-roam-template

It seems to me org-roam-bibtex did not provide and interface to link bibtex information to org-roam-capture, or maybe I miss something here?

It seems helm-bibtex have an interface to link bibtex information and org-roam-capture, but I perfer to use ivy, any way it seems to me, org-roam-bibtex should provide an uniform interface instead of require other module to provide it.

You may be missing information from README (this section) and manual?


Call interactively org-roam-bibtex-mode or arrange your init file to perform this automatically.

You can now access your bibliographical notes in org-roam-directory with helm-bibtex/ivy-bibtex or by opening org-ref links. ORB modifies the behaviour of the above packages to make them use orb-edit-note instead of their default note-management commands. To get their default behaviour back, disable org-roam-bibtex-mode.

than you, but when I call ivy-bibtex it just let me select the entry and open pdf, there no action selection pop up. I use spacemacs, here is the configuration related

(defun wzt/init-org-roam-bibtex ()
  (use-package org-roam-bibtex
  :after org-roam
  (require 'org-ref)
  (require 'ivy-bibtex)
  (setq orb-insert-interface 'ivy-bibtex)
  (setq orb-note-actions-interface 'ivy)
  (setq orb-preformat-keywords '("citekey" "author" "title" "url" "year"))
  (setq org-roam-capture-templates
        '(("r" "bibliography reference" plain
           (file+head "~/org/literature/${citekey}.org" "#+TITLE: ${title}\n")
           :unnarrowed t)))

Where is org-roam-bibtex-mode turned on?

I turn it on manually, but it does not work, I suspect this ivy-bibtex is not compatible with org-roam-bibtex

I debugged the value of ivy-bibtex-default-action its value is ivy-bibtex-open-any, so it seems the setting of org-roam-bibtex for ivy-bibtex did not take effect.

Sorry I can’t tell you much more but the same README section (Usage) seems to suggest you would be using one of the following commands:

Type M-x orb-note-actions to easily access additional commands useful in note’s context. These commands are run with the note’s BibTeX key as an argument. The key is taken from the :ROAM_REFS: file or heading property.

Select a bibliography entry and insert a link to a note associated with it. If the note does not exist yet, create it. Similar to org-roam-node-insert, if a region is selected, it becomes the link description.

Thank you, you are right, I guess maintainer of org-roam-bibtex decide to abandon the interface of ivy-bibtex and helm-bibtex only use orb-inert-link to add node. So there old video is miss leading.

But with this change how to add a node only? What if I only want to add a node without insert a link? So it seems not reasonable to me.

My mistake, it turns out for ivy I need press M-o to select other actions, ivy is so elegant.