guix-commits
[Top][All Lists]
Advanced

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

37/38: emacs: Use "B" key in "Package List" to display latest builds.


From: Alex Kost
Subject: 37/38: emacs: Use "B" key in "Package List" to display latest builds.
Date: Sat, 02 Jan 2016 14:27:29 +0000

alezost pushed a commit to branch master
in repository guix.

commit 5c8994d9d91e79e900083328b565f85e2171e077
Author: Alex Kost <address@hidden>
Date:   Fri Dec 11 14:09:27 2015 +0300

    emacs: Use "B" key in "Package List" to display latest builds.
    
    * emacs/guix-ui-package.el (guix-package-list-latest-builds): New
      procedure.
      (guix-package-list-mode-map): Bind "B" key to it.
      (guix-output-list-mode-map): Likewise.
    * doc/emacs.texi (Emacs List buffer): Document it.
---
 doc/emacs.texi           |    2 ++
 emacs/guix-ui-package.el |   15 +++++++++++++++
 2 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/doc/emacs.texi b/doc/emacs.texi
index c4bda24..ea340b1 100644
--- a/doc/emacs.texi
+++ b/doc/emacs.texi
@@ -288,6 +288,8 @@ similar to @command{guix edit} command (@pxref{Invoking 
guix edit}), but
 for opening a package recipe in the current Emacs instance.
 @item x
 Execute actions on the marked packages.
address@hidden B
+Display latest builds of the current package (@pxref{Emacs Hydra}).
 @end table
 
 A ``generation-list'' buffer additionally provides the following
diff --git a/emacs/guix-ui-package.el b/emacs/guix-ui-package.el
index 7d2ce10..e0c98ea 100644
--- a/emacs/guix-ui-package.el
+++ b/emacs/guix-ui-package.el
@@ -34,6 +34,7 @@
 (require 'guix-guile)
 (require 'guix-entry)
 (require 'guix-utils)
+(require 'guix-hydra-build)
 
 (guix-ui-define-entry-type package)
 (guix-ui-define-entry-type output)
@@ -546,6 +547,7 @@ This function is used to hide a \"Download\" button if 
needed."
            (delete  . ?D)))
 
 (let ((map guix-package-list-mode-map))
+  (define-key map (kbd "B")   'guix-package-list-latest-builds)
   (define-key map (kbd "e")   'guix-package-list-edit)
   (define-key map (kbd "x")   'guix-package-list-execute)
   (define-key map (kbd "i")   'guix-package-list-mark-install)
@@ -720,6 +722,18 @@ The specification is suitable for 
`guix-process-package-actions'."
   (interactive)
   (guix-edit (guix-list-current-id)))
 
+(defun guix-package-list-latest-builds (number &rest args)
+  "Display latest NUMBER of Hydra builds of the current package.
+Interactively, prompt for NUMBER.  With prefix argument, prompt
+for all ARGS."
+  (interactive
+   (let ((entry (guix-list-current-entry)))
+     (guix-hydra-build-latest-prompt-args
+      :job (guix-package-name-specification
+            (guix-entry-value entry 'name)
+            (guix-entry-value entry 'version)))))
+  (apply #'guix-hydra-latest-builds number args))
+
 
 ;;; Output 'info'
 
@@ -784,6 +798,7 @@ The specification is suitable for 
`guix-process-package-actions'."
            (delete  . ?D)))
 
 (let ((map guix-output-list-mode-map))
+  (define-key map (kbd "B")   'guix-package-list-latest-builds)
   (define-key map (kbd "e")   'guix-output-list-edit)
   (define-key map (kbd "x")   'guix-output-list-execute)
   (define-key map (kbd "i")   'guix-output-list-mark-install)



reply via email to

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