emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/consult-denote 4373d02df9 4/8: Add consult-denote-silo-


From: ELPA Syncer
Subject: [elpa] externals/consult-denote 4373d02df9 4/8: Add consult-denote-silo-directory-prompt
Date: Wed, 3 Jul 2024 06:58:26 -0400 (EDT)

branch: externals/consult-denote
commit 4373d02df99d1c10bf2ce8b5e781e7191315acd0
Author: Protesilaos Stavrou <info@protesilaos.com>
Commit: Protesilaos Stavrou <info@protesilaos.com>

    Add consult-denote-silo-directory-prompt
---
 consult-denote.el | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/consult-denote.el b/consult-denote.el
index ed113816c3..bb5512f149 100644
--- a/consult-denote.el
+++ b/consult-denote.el
@@ -146,6 +146,17 @@ Return the absolute path to the matching file."
      :state (consult--file-preview)
      :history 'denote-link-find-file-history)))
 
+(defun consult-denote-silo-directory-prompt ()
+  "Like the `denote-silo-extras-directory-prompt' with Consult preview."
+  (let ((default (car denote-silo-extras-directory-history)))
+    (consult--read
+     (denote--completion-table 'file denote-silo-extras-directories)
+     :state (consult--file-preview)
+     :require-match t
+     :prompt (format-prompt "Select a silo" default)
+     :default default
+     :history 'denote-silo-extras-directory-history)))
+
 ;; FIXME 2024-07-03: We need a :state function that previews the
 ;; current line in the given buffer and then restores the window
 ;; configuration.
@@ -243,9 +254,6 @@ FILE has the same meaning as in 
`denote-org-extras-outline-prompt'."
        :state ,#'consult--file-state
        :items ,denote-silo-extras-directories)))
 
-;; TODO 2024-03-30: Cover the `denote-silo-extras--directory-prompt'.
-;; It is a regular directory prompt.  Preview the dired buffer.
-
 ;;;###autoload
 (define-minor-mode consult-denote-mode
   "Use Consult in tandem with Denote."
@@ -257,14 +265,16 @@ FILE has the same meaning as in 
`denote-org-extras-outline-prompt'."
         (dolist (source consult-denote-buffer-sources)
           (add-to-list 'consult-buffer-sources source :append))
         (advice-add #'denote-file-prompt :override 
#'consult-denote-file-prompt)
-        (advice-add #'denote-select-linked-file-prompt :override 
#'consult-denote-select-linked-file-prompt))
+        (advice-add #'denote-select-linked-file-prompt :override 
#'consult-denote-select-linked-file-prompt)
         ;; See FIXME where this function is defined.
         (advice-add #'denote-org-extras-outline-prompt :override 
#'consult-denote-outline-prompt)
+        (advice-add #'denote-silo-extras-directory-prompt :override 
#'consult-denote-silo-directory-prompt))
     (dolist (source consult-denote-buffer-sources)
       (setq consult-buffer-sources (delq source consult-buffer-sources)))
     (advice-remove #'denote-file-prompt #'consult-denote-file-prompt)
-    (advice-remove #'denote-select-linked-file-prompt 
#'consult-denote-select-linked-file-prompt)))
+    (advice-remove #'denote-select-linked-file-prompt 
#'consult-denote-select-linked-file-prompt)
     (advice-remove #'denote-org-extras-outline-prompt 
#'consult-denote-outline-prompt)
+    (advice-remove #'denote-silo-extras-directory-prompt 
#'consult-denote-silo-directory-prompt)))
 
 (provide 'consult-denote)
 ;;; consult-denote.el ends here



reply via email to

[Prev in Thread] Current Thread [Next in Thread]