Function: denote-link--buffer-file-prompt

denote-link--buffer-file-prompt is a byte-compiled function defined in denote.el.

Signature

(denote-link--buffer-file-prompt BUFFER-FILE-NAMES)

Documentation

Select file from BUFFER-FILE-NAMES of Denote notes.

Source Code

;; Defined in ~/.emacs.d/elpa/denote-4.2.3/denote.el
;;;;; Links from Dired marks

;; TODO 2025-04-29: Rewrite the denote-link--buffer-file-prompt to be more general.
;; TODO 2025-04-29: Rewrite `denote-link-dired-marked-notes' to be more easy to reason about.

;; NOTE 2022-07-21: I don't think we need a history for this one.
(defun denote-link--buffer-file-prompt (buffer-file-names)
  "Select file from BUFFER-FILE-NAMES of Denote notes."
  (let* ((roots (denote-directories))
         (single-dir-p (null (cdr roots)))
         (file-names (if single-dir-p
                         (mapcar
                          (lambda (file)
                            (denote--get-file-name-relative-to-directories file roots))
                          buffer-file-names)
                       buffer-file-names))
         (selected (completing-read
                    "Select open note to add links to: "
                    (denote-get-completion-table file-names '(category . file))
                    nil t)))
    (if single-dir-p
        (expand-file-name selected roots)
      selected)))