branch: elpa/gnosis commit f253157810bc33bf8ea9f5059cc2860e7fc36e08 Author: Thanos Apollo <pub...@thanosapollo.org> Commit: Thanos Apollo <pub...@thanosapollo.org>
Add gnosis-get-deck-id. + Return the deck-id for a given deck. + If deck does not exist, create it. + Meant to be used with saving exported decks. --- gnosis.el | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gnosis.el b/gnosis.el index d88dec106f..358ea1c5f3 100644 --- a/gnosis.el +++ b/gnosis.el @@ -648,6 +648,17 @@ Set SPLIT to t to split all input given." "Return id for DECK name." (gnosis-get 'id 'decks `(= name ,deck))) +(defun gnosis-get-deck-id (&optional deck) + "Return note id for DECK. + +If DECK does not exist, create it." + (cl-assert (stringp deck) nil "DECK must be a string.") + (let* ((deck (or deck (gnosis--get-deck-name))) + (deck-id (gnosis-select 'id 'decks `(= name ,deck) t))) + (if deck-id (car deck-id) + (gnosis-add-deck deck) + (gnosis-get-deck-id deck)))) + (defun gnosis-get-note-deck-name (id) "Return deck name of note ID." (let ((deck (gnosis-get 'deck-id 'notes `(= id ,id))))