mirror of
https://github.com/chrisbarrett/nursery
synced 2025-08-17 13:33:32 -05:00
Fix attempt to operate on possibly non-existent review buffer
This commit is contained in:
@@ -653,6 +653,8 @@ them as reviewed with `org-roam-review-accept',
|
|||||||
found)))
|
found)))
|
||||||
|
|
||||||
(defun org-roam-review--update-review-buffer-entry (node)
|
(defun org-roam-review--update-review-buffer-entry (node)
|
||||||
|
;; Nothing to do if there are no review buffers.
|
||||||
|
(when (org-roam-review-buffers)
|
||||||
(org-roam-review--with-current-review-buffer
|
(org-roam-review--with-current-review-buffer
|
||||||
(let ((continue t)
|
(let ((continue t)
|
||||||
(found-pos nil)
|
(found-pos nil)
|
||||||
@@ -672,7 +674,7 @@ them as reviewed with `org-roam-review-accept',
|
|||||||
(when (oref section node)
|
(when (oref section node)
|
||||||
(let ((inhibit-read-only t))
|
(let ((inhibit-read-only t))
|
||||||
(put-text-property (line-beginning-position) (line-end-position) 'face 'font-lock-comment-face))
|
(put-text-property (line-beginning-position) (line-end-position) 'face 'font-lock-comment-face))
|
||||||
(magit-section-hide section)))))))
|
(magit-section-hide section))))))))
|
||||||
|
|
||||||
(defmacro org-roam-review--transform-selected-sections (&rest body)
|
(defmacro org-roam-review--transform-selected-sections (&rest body)
|
||||||
"Execute BODY, possibly over multiple sections.
|
"Execute BODY, possibly over multiple sections.
|
||||||
@@ -692,9 +694,11 @@ Return the affected sections."
|
|||||||
(magit-section-update-highlight)))
|
(magit-section-update-highlight)))
|
||||||
result))
|
result))
|
||||||
,@body)
|
,@body)
|
||||||
|
|
||||||
|
(when (org-roam-review-buffers)
|
||||||
(org-roam-review--with-current-review-buffer
|
(org-roam-review--with-current-review-buffer
|
||||||
(when (org-roam-review--forward-to-uncommented-sibling)
|
(when (org-roam-review--forward-to-uncommented-sibling)
|
||||||
(run-hooks 'org-roam-review-next-node-selected-hook)))))
|
(run-hooks 'org-roam-review-next-node-selected-hook))))))
|
||||||
|
|
||||||
(defun org-roam-review--maybe-kill-reviewed-buffer (buf)
|
(defun org-roam-review--maybe-kill-reviewed-buffer (buf)
|
||||||
(when (and org-roam-review-kill-reviewed-buffers-p (buffer-live-p buf))
|
(when (and org-roam-review-kill-reviewed-buffers-p (buffer-live-p buf))
|
||||||
@@ -709,14 +713,14 @@ Return the affected sections."
|
|||||||
(let ((count 0))
|
(let ((count 0))
|
||||||
(org-roam-review--transform-selected-sections
|
(org-roam-review--transform-selected-sections
|
||||||
(cl-incf count)
|
(cl-incf count)
|
||||||
(org-roam-review--update-review-buffer-entry
|
(let ((node (org-roam-review--visiting-node-at-point
|
||||||
(org-roam-review--visiting-node-at-point
|
|
||||||
(when-let* ((maturity (org-entry-get-with-inheritance "MATURITY")))
|
(when-let* ((maturity (org-entry-get-with-inheritance "MATURITY")))
|
||||||
(org-roam-review--update-node-srs-properties maturity org-roam-review--maturity-score-ok))
|
(org-roam-review--update-node-srs-properties maturity org-roam-review--maturity-score-ok))
|
||||||
(let ((buf (current-buffer)))
|
(let ((buf (current-buffer)))
|
||||||
(run-hooks 'org-roam-review-node-accepted-hook)
|
(run-hooks 'org-roam-review-node-accepted-hook)
|
||||||
(run-hooks 'org-roam-review-node-processed-hook)
|
(run-hooks 'org-roam-review-node-processed-hook)
|
||||||
(org-roam-review--maybe-kill-reviewed-buffer buf)))))
|
(org-roam-review--maybe-kill-reviewed-buffer buf)))))
|
||||||
|
(org-roam-review--update-review-buffer-entry node)))
|
||||||
(message "Node%s scheduled for future review" (if (= 1 count) "" "s"))))
|
(message "Node%s scheduled for future review" (if (= 1 count) "" "s"))))
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
@@ -726,14 +730,14 @@ Return the affected sections."
|
|||||||
(let ((count 0))
|
(let ((count 0))
|
||||||
(org-roam-review--transform-selected-sections
|
(org-roam-review--transform-selected-sections
|
||||||
(cl-incf count)
|
(cl-incf count)
|
||||||
(org-roam-review--update-review-buffer-entry
|
(let ((node (org-roam-review--visiting-node-at-point
|
||||||
(org-roam-review--visiting-node-at-point
|
|
||||||
(when-let* ((maturity (org-entry-get-with-inheritance "MATURITY")))
|
(when-let* ((maturity (org-entry-get-with-inheritance "MATURITY")))
|
||||||
(org-roam-review--update-node-srs-properties maturity org-roam-review--maturity-score-bury))
|
(org-roam-review--update-node-srs-properties maturity org-roam-review--maturity-score-bury))
|
||||||
(let ((buf (current-buffer)))
|
(let ((buf (current-buffer)))
|
||||||
(run-hooks 'org-roam-review-node-buried-hook)
|
(run-hooks 'org-roam-review-node-buried-hook)
|
||||||
(run-hooks 'org-roam-review-node-processed-hook)
|
(run-hooks 'org-roam-review-node-processed-hook)
|
||||||
(org-roam-review--maybe-kill-reviewed-buffer buf)))))
|
(org-roam-review--maybe-kill-reviewed-buffer buf)))))
|
||||||
|
(org-roam-review--update-review-buffer-entry node)))
|
||||||
(message "Node%s buried" (if (= 1 count) "" "s"))))
|
(message "Node%s buried" (if (= 1 count) "" "s"))))
|
||||||
|
|
||||||
(defun org-roam-review--skip-node-for-maturity-assignment-p ()
|
(defun org-roam-review--skip-node-for-maturity-assignment-p ()
|
||||||
@@ -749,13 +753,13 @@ With prefix arg BURY, the node is less likely to be surfaced in
|
|||||||
the future."
|
the future."
|
||||||
(interactive "P")
|
(interactive "P")
|
||||||
(org-roam-review--transform-selected-sections
|
(org-roam-review--transform-selected-sections
|
||||||
(let ((score (if bury
|
(let* ((score (if bury
|
||||||
org-roam-review--maturity-score-bury
|
org-roam-review--maturity-score-bury
|
||||||
org-roam-review--maturity-score-ok)))
|
org-roam-review--maturity-score-ok))
|
||||||
(org-roam-review--update-review-buffer-entry
|
(node (org-roam-review--visiting-node-at-point
|
||||||
(org-roam-review--visiting-node-at-point
|
|
||||||
(unless (org-roam-review--skip-node-for-maturity-assignment-p)
|
(unless (org-roam-review--skip-node-for-maturity-assignment-p)
|
||||||
(org-roam-review--update-node-srs-properties "budding" score)))))))
|
(org-roam-review--update-node-srs-properties "budding" score)))))
|
||||||
|
(org-roam-review--update-review-buffer-entry node))))
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun org-roam-review-set-seedling (&optional bury)
|
(defun org-roam-review-set-seedling (&optional bury)
|
||||||
@@ -765,13 +769,13 @@ With prefix arg BURY, the node is less likely to be surfaced in
|
|||||||
the future."
|
the future."
|
||||||
(interactive "P")
|
(interactive "P")
|
||||||
(org-roam-review--transform-selected-sections
|
(org-roam-review--transform-selected-sections
|
||||||
(let ((score (if bury
|
(let* ((score (if bury
|
||||||
org-roam-review--maturity-score-bury
|
org-roam-review--maturity-score-bury
|
||||||
org-roam-review--maturity-score-revisit)))
|
org-roam-review--maturity-score-revisit))
|
||||||
(org-roam-review--update-review-buffer-entry
|
(node (org-roam-review--visiting-node-at-point
|
||||||
(org-roam-review--visiting-node-at-point
|
|
||||||
(unless (org-roam-review--skip-node-for-maturity-assignment-p)
|
(unless (org-roam-review--skip-node-for-maturity-assignment-p)
|
||||||
(org-roam-review--update-node-srs-properties "seedling" score)))))))
|
(org-roam-review--update-node-srs-properties "seedling" score)))))
|
||||||
|
(org-roam-review--update-review-buffer-entry node))))
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun org-roam-review-set-evergreen (&optional bury)
|
(defun org-roam-review-set-evergreen (&optional bury)
|
||||||
@@ -781,13 +785,13 @@ With prefix arg BURY, the node is less likely to be surfaced in
|
|||||||
the future."
|
the future."
|
||||||
(interactive "P")
|
(interactive "P")
|
||||||
(org-roam-review--transform-selected-sections
|
(org-roam-review--transform-selected-sections
|
||||||
(let ((score (if bury
|
(let* ((score (if bury
|
||||||
org-roam-review--maturity-score-bury
|
org-roam-review--maturity-score-bury
|
||||||
org-roam-review--maturity-score-ok)))
|
org-roam-review--maturity-score-ok))
|
||||||
(org-roam-review--update-review-buffer-entry
|
(node (org-roam-review--visiting-node-at-point
|
||||||
(org-roam-review--visiting-node-at-point
|
|
||||||
(unless (org-roam-review--skip-node-for-maturity-assignment-p)
|
(unless (org-roam-review--skip-node-for-maturity-assignment-p)
|
||||||
(org-roam-review--update-node-srs-properties "evergreen" score)))))))
|
(org-roam-review--update-node-srs-properties "evergreen" score)))))
|
||||||
|
(org-roam-review--update-review-buffer-entry node))))
|
||||||
|
|
||||||
(defun org-roam-review--delete-tags-and-properties (node-id)
|
(defun org-roam-review--delete-tags-and-properties (node-id)
|
||||||
(let ((message-log-max))
|
(let ((message-log-max))
|
||||||
@@ -807,8 +811,7 @@ package."
|
|||||||
(interactive)
|
(interactive)
|
||||||
(let ((titles))
|
(let ((titles))
|
||||||
(org-roam-review--transform-selected-sections
|
(org-roam-review--transform-selected-sections
|
||||||
(org-roam-review--update-review-buffer-entry
|
(let ((node (org-roam-review--visiting-node-at-point
|
||||||
(org-roam-review--visiting-node-at-point
|
|
||||||
(let ((id (org-entry-get (point-min) "ID")))
|
(let ((id (org-entry-get (point-min) "ID")))
|
||||||
(unless id
|
(unless id
|
||||||
(error "No ID in buffer"))
|
(error "No ID in buffer"))
|
||||||
@@ -818,6 +821,8 @@ package."
|
|||||||
(let ((title (org-roam-node-title (org-roam-node-from-id id))))
|
(let ((title (org-roam-node-title (org-roam-node-from-id id))))
|
||||||
(push title titles))))))
|
(push title titles))))))
|
||||||
|
|
||||||
|
(org-roam-review--update-review-buffer-entry node)))
|
||||||
|
|
||||||
(if (equal 1 (length titles))
|
(if (equal 1 (length titles))
|
||||||
(message "Excluded node `%s' from reviews" (car titles))
|
(message "Excluded node `%s' from reviews" (car titles))
|
||||||
(message "Excluded %s nodes from reviews" (length titles)))))
|
(message "Excluded %s nodes from reviews" (length titles)))))
|
||||||
|
Reference in New Issue
Block a user