Function: vc-jj-log-view-bookmark-delete

vc-jj-log-view-bookmark-delete is an interactive and natively compiled function defined in vc-jj.el.

Signature

(vc-jj-log-view-bookmark-delete)

Documentation

Delete bookmark of the revision at point.

When called in a vc-jj-log-view-mode buffer, delete the bookmark of the revision at point. If there are multiple bookmarks attached to the revision, prompt the user to choose one or more of these bookmarks to delete.

Key Bindings

vc-jj-log-view-mode-map b D

Source Code

;; Defined in /nix/store/j1ql1qsv99iszr5pqf5fk9yfcl5pq4nv-emacs-packages-deps/share/emacs/site-lisp/elpa/vc-jj-0.5/vc-jj.el
(defun vc-jj-log-view-bookmark-delete ()
  "Delete bookmark of the revision at point.
When called in a `vc-jj-log-view-mode' buffer, delete the bookmark of
the revision at point.  If there are multiple bookmarks attached to the
revision, prompt the user to choose one or more of these bookmarks to
delete."
  (interactive nil vc-jj-log-view-mode)
  (when (derived-mode-p 'vc-jj-log-view-mode)
    (let* ((rev (log-view-current-tag))
           (revision-bookmarks
            (string-split
             (vc-jj--command-parseable
              "show" "-r" rev "--no-patch"
              "-T" "self.local_bookmarks().map(|b| b.name()) ++ \"\n\"")
             " " t "\n"))
           (bookmarks
            (if (< 1 (length revision-bookmarks))
                (completing-read-multiple "Delete bookmarks: " revision-bookmarks nil t)
              revision-bookmarks)))
      (apply #'vc-jj--command-dispatched nil 0 nil "--quiet" "bookmark" "delete" bookmarks)
      (revert-buffer))))