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

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

[nongnu] elpa/hyperdrive 46e3e034ac 13/33: Change: (--easy-menu-contents


From: ELPA Syncer
Subject: [nongnu] elpa/hyperdrive 46e3e034ac 13/33: Change: (--easy-menu-contents) Add "Current" > "Version" submenu
Date: Wed, 11 Oct 2023 22:00:44 -0400 (EDT)

branch: elpa/hyperdrive
commit 46e3e034aca491c6d9710629fd8a20cd3e4ce2e3
Author: Joseph Turner <joseph@ushin.org>
Commit: Joseph Turner <joseph@ushin.org>

    Change: (--easy-menu-contents) Add "Current" > "Version" submenu
---
 hyperdrive.el | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/hyperdrive.el b/hyperdrive.el
index dacf5f1858..cdd577be53 100644
--- a/hyperdrive.el
+++ b/hyperdrive.el
@@ -842,6 +842,41 @@ The return value of this function is the retrieval buffer."
      ["Purge" hyperdrive-purge
       :help "Purge all local data about hyperdrive"])
     "---"
+    ("Current"
+     :active hyperdrive-current-entry
+     :label (if-let* ((entry hyperdrive-current-entry))
+                (format "Current: «%s»"
+                        (hyperdrive-entry-description entry))
+              "Current")
+     ("Version"
+      :label (format "Version (%s)"
+                     (or (hyperdrive-entry-version hyperdrive-current-entry)
+                         "latest"))
+      ["Previous Version" hyperdrive-previous-version
+       :active (hyperdrive-entry-previous hyperdrive-current-entry :cache-only 
t)
+       :label (concat "Previous Version"
+                      (pcase-exhaustive (hyperdrive-entry-previous 
hyperdrive-current-entry :cache-only t)
+                        ('unknown (format " (?)"))
+                        ('nil nil)
+                        ((cl-struct hyperdrive-entry version)
+                         (format " (%s)" version))))
+       :help "Open previous version"]
+      ["Next Version" hyperdrive-next-version
+       :active (and (hyperdrive-entry-version hyperdrive-current-entry)
+                    (hyperdrive-entry-next hyperdrive-current-entry))
+       :label (concat "Next Version"
+                      (when-let* ((entry hyperdrive-current-entry)
+                                  (next-entry (hyperdrive-entry-next entry))
+                                  ;; Don't add ": latest" if we're already at 
the latest version
+                                  ((not (eq entry next-entry)))
+                                  (display-version (if-let ((next-version 
(hyperdrive-entry-version next-entry)))
+                                                       (number-to-string 
next-version)
+                                                     "latest")))
+                        (format " (%s)" display-version)))
+       :help "Open next version"]
+      ["Version History" hyperdrive-history
+       :help "Open version history"]))
+    "---"
     ("Files"
      ["Find File" hyperdrive-find-file
       :help "Find a file in a hyperdrive"]



reply via email to

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