Function: org-roam-node-insert
org-roam-node-insert is an autoloaded, interactive and byte-compiled
function defined in org-roam-node.el.
Signature
(org-roam-node-insert &optional FILTER-FN &key TEMPLATES INFO)
Documentation
Find an Org-roam node and insert (where the point is) an "id:" link to it.
FILTER-FN is a function to filter out nodes: it takes an org-roam-node,
and when nil is returned the node will be filtered out.
The TEMPLATES, if provided, override the list of capture templates (see
org-roam-capture-.)
The INFO, if provided, is passed to the underlying org-roam-capture-.
Key Bindings
Source Code
;; Defined in ~/.emacs.d/elpa/org-roam-20260224.1637/org-roam-node.el
;;;; Linkage
;;;;; [id:] link
;;;###autoload
(cl-defun org-roam-node-insert (&optional filter-fn &key templates info)
"Find an Org-roam node and insert (where the point is) an \"id:\" link to it.
FILTER-FN is a function to filter out nodes: it takes an `org-roam-node',
and when nil is returned the node will be filtered out.
The TEMPLATES, if provided, override the list of capture templates (see
`org-roam-capture-'.)
The INFO, if provided, is passed to the underlying `org-roam-capture-'."
(interactive)
(unwind-protect
;; Group functions together to avoid inconsistent state on quit
(atomic-change-group
(let* (region-text
beg end
(_ (when (region-active-p)
(setq beg (set-marker (make-marker) (region-beginning)))
(setq end (set-marker (make-marker) (region-end)))
(setq region-text (org-link-display-format (buffer-substring-no-properties beg end)))))
(node (org-roam-node-read region-text filter-fn))
(description (or region-text
(org-roam-node-formatted node))))
(if (org-roam-node-id node)
(progn
(when region-text
(delete-region beg end)
(set-marker beg nil)
(set-marker end nil))
(let ((id (org-roam-node-id node)))
(insert (org-link-make-string
(concat "id:" id)
description))
(run-hook-with-args 'org-roam-post-node-insert-hook
id
description)))
(org-roam-capture-
:node node
:info info
:templates templates
:props (append
(when (and beg end)
(list :region (cons beg end)))
(list :link-description description
:finalize 'insert-link))))))
(deactivate-mark)))