From d38bd08c74009ffa2a3d764054f1ca39c9192fff Mon Sep 17 00:00:00 2001 From: Alex Kost Date: Sun, 2 Nov 2014 13:58:21 +0300 Subject: emacs: Add interface for comparing generations. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Suggested by Ludovic Courtès. * doc/emacs.texi (Emacs List buffer): Document new key bindings. * emacs/guix-base.el (guix-generation-packages-buffer-name-function, guix-generation-packages-update-buffer, guix-output-name-width): New variables. (guix-generation-file, guix-manifest-file, guix-generation-packages, guix-generation-packages-buffer-name-default, guix-generation-packages-buffer-name-long, guix-generation-packages-buffer-name, guix-generation-packages-buffer, guix-generation-insert-package, guix-generation-insert-packages, guix-profile-generation-manifest-file, guix-profile-generation-packages-buffer): New procedures. * emacs/guix-list.el: Add key bindings for comparing generations. (guix-generation-list-generations-to-compare, guix-generation-list-show-added-packages, guix-generation-list-show-removed-packages, guix-generation-list-compare, guix-generation-list-ediff-manifests, guix-generation-list-diff-manifests, guix-generation-list-ediff-packages, guix-generation-list-diff-packages, guix-generation-list-ediff, guix-generation-list-diff): New procedures. * emacs/guix-messages.el (guix-messages): Add 'generation-diff' search type. (guix-message-outputs-by-diff): New procedure. * emacs/guix-utils.el (guix-diff-switches): New variable. (guix-diff): New procedure. * emacs/guix-main.scm (package/output-sexps): Handle 'generation-diff' search type. (manifest-entry->package-specification, manifest-entries->package-specifications, generation-package-specifications, generation-package-specifications+paths, generation-difference): New procedures. --- doc/emacs.texi | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'doc/emacs.texi') diff --git a/doc/emacs.texi b/doc/emacs.texi index 17440e4b46..1b134d7e47 100644 --- a/doc/emacs.texi +++ b/doc/emacs.texi @@ -239,6 +239,21 @@ Mark the current generation for deletion (with prefix, mark all generations). @item x Execute actions on the marked generations---i.e., delete generations. +@item e +Run Ediff (@pxref{Top,,, ediff, The Ediff Manual}) on package outputs +installed in the 2 marked generations. With prefix argument, run Ediff +on manifests of the marked generations. +@item D +@itemx = +Run Diff (@pxref{Diff Mode,,, emacs, The GNU Emacs Manual}) on package +outputs installed in the 2 marked generations. With prefix argument, +run Diff on manifests of the marked generations. +@item + +List package outputs added to the latest marked generation comparing +with another marked generation. +@item - +List package outputs removed from the latest marked generation comparing +with another marked generation. @end table @node Emacs Info buffer -- cgit v1.2.3