[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
35/38: emacs: Add 'guix-ui-read-profile'.
From: |
Alex Kost |
Subject: |
35/38: emacs: Add 'guix-ui-read-profile'. |
Date: |
Sat, 02 Jan 2016 14:27:28 +0000 |
alezost pushed a commit to branch master
in repository guix.
commit 494a62f215c9b6dc66737f6a46f4c538715a56ec
Author: Alex Kost <address@hidden>
Date: Fri Dec 18 11:34:48 2015 +0300
emacs: Add 'guix-ui-read-profile'.
* emacs/guix-ui.el (guix-ui-read-profile): New procedure.
* emacs/guix-ui-package.el (guix-search-by-name)
(guix-search-by-regexp, guix-installed-packages)
(guix-obsolete-packages, guix-all-available-packages)
(guix-newest-available-packages): Use it.
* emacs/guix-ui-generation.el (guix-generations)
(guix-last-generations, guix-generations-by-time): Use it.
---
emacs/guix-ui-generation.el | 10 +++-------
emacs/guix-ui-package.el | 23 ++++++-----------------
emacs/guix-ui.el | 7 +++++++
3 files changed, 16 insertions(+), 24 deletions(-)
diff --git a/emacs/guix-ui-generation.el b/emacs/guix-ui-generation.el
index 040e585..aa71645 100644
--- a/emacs/guix-ui-generation.el
+++ b/emacs/guix-ui-generation.el
@@ -401,9 +401,7 @@ GENERATION is a generation number of the current profile."
"Display information about all generations.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
- (interactive
- (list (and current-prefix-arg
- (guix-profile-prompt))))
+ (interactive (list (guix-ui-read-profile)))
(guix-generation-get-display profile 'all))
;;;###autoload
@@ -413,8 +411,7 @@ If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (read-number "The number of last generations: ")
- (and current-prefix-arg
- (guix-profile-prompt))))
+ (guix-ui-read-profile)))
(guix-generation-get-display profile 'last number))
;;;###autoload
@@ -426,8 +423,7 @@ Interactively with prefix, prompt for PROFILE."
(interactive
(list (guix-read-date "Find generations (from): ")
(guix-read-date "Find generations (to): ")
- (and current-prefix-arg
- (guix-profile-prompt))))
+ (guix-ui-read-profile)))
(guix-generation-get-display profile 'time
(float-time from)
(float-time to)))
diff --git a/emacs/guix-ui-package.el b/emacs/guix-ui-package.el
index b457539..7d2ce10 100644
--- a/emacs/guix-ui-package.el
+++ b/emacs/guix-ui-package.el
@@ -886,8 +886,7 @@ If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (read-string "Package name: " nil 'guix-package-search-history)
- (and current-prefix-arg
- (guix-profile-prompt))))
+ (guix-ui-read-profile)))
(guix-package-get-display profile 'name name))
;;;###autoload
@@ -900,9 +899,7 @@ If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (read-regexp "Regexp: " nil 'guix-package-search-history)
- nil
- (and current-prefix-arg
- (guix-profile-prompt))))
+ nil (guix-ui-read-profile)))
(guix-package-get-display profile 'regexp regexp
(or params guix-package-search-params)))
@@ -911,9 +908,7 @@ Interactively with prefix, prompt for PROFILE."
"Display information about installed Guix packages.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
- (interactive
- (list (and current-prefix-arg
- (guix-profile-prompt))))
+ (interactive (list (guix-ui-read-profile)))
(guix-package-get-display profile 'installed))
;;;###autoload
@@ -921,9 +916,7 @@ Interactively with prefix, prompt for PROFILE."
"Display information about obsolete Guix packages.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
- (interactive
- (list (and current-prefix-arg
- (guix-profile-prompt))))
+ (interactive (list (guix-ui-read-profile)))
(guix-package-get-display profile 'obsolete))
;;;###autoload
@@ -931,9 +924,7 @@ Interactively with prefix, prompt for PROFILE."
"Display information about all available Guix packages.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
- (interactive
- (list (and current-prefix-arg
- (guix-profile-prompt))))
+ (interactive (list (guix-ui-read-profile)))
(guix-package-get-display profile 'all-available))
;;;###autoload
@@ -941,9 +932,7 @@ Interactively with prefix, prompt for PROFILE."
"Display information about the newest available Guix packages.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
- (interactive
- (list (and current-prefix-arg
- (guix-profile-prompt))))
+ (interactive (list (guix-ui-read-profile)))
(guix-package-get-display profile 'newest-available))
(provide 'guix-ui-package)
diff --git a/emacs/guix-ui.el b/emacs/guix-ui.el
index 7b63e63..7fef7c3 100644
--- a/emacs/guix-ui.el
+++ b/emacs/guix-ui.el
@@ -47,6 +47,13 @@ generations in 'list' and 'info' buffers.")
(guix-buffer-define-current-args-accessors
"guix-ui-current" "profile" "search-type" "search-values")
+(defun guix-ui-read-profile ()
+ "Return `guix-current-profile' or prompt for it.
+This function is intended for using in `interactive' forms."
+ (if current-prefix-arg
+ (guix-profile-prompt)
+ guix-current-profile))
+
(defun guix-ui-get-entries (profile entry-type search-type search-values
&optional params)
"Receive ENTRY-TYPE entries for PROFILE.
- 21/38: emacs: Split 'guix-root-map' keymap., (continued)
- 21/38: emacs: Split 'guix-root-map' keymap., Alex Kost, 2016/01/02
- 27/38: emacs: info: Get rid of syntactic fontification., Alex Kost, 2016/01/02
- 24/38: emacs: Improve messages for packages found by ID., Alex Kost, 2016/01/02
- 18/38: emacs: info: Split 'guix-info-format' variable., Alex Kost, 2016/01/02
- 32/38: emacs: Add 'guix-list-get-display-entries'., Alex Kost, 2016/01/02
- 17/38: emacs: Factorize macros for defining interfaces., Alex Kost, 2016/01/02
- 33/38: emacs: Return nil instead of "" in completing readers., Alex Kost, 2016/01/02
- 31/38: emacs: Add 'list-single' variables., Alex Kost, 2016/01/02
- 29/38: emacs: Reorganize 'readers' code., Alex Kost, 2016/01/02
- 26/38: emacs: Generalize buffer naming., Alex Kost, 2016/01/02
- 35/38: emacs: Add 'guix-ui-read-profile'.,
Alex Kost <=
- 37/38: emacs: Use "B" key in "Package List" to display latest builds., Alex Kost, 2016/01/02
- 34/38: emacs: Add hierarchy of customization groups., Alex Kost, 2016/01/02
- 38/38: Update NEWS., Alex Kost, 2016/01/02
- 16/38: emacs: info: Generalize inserting and formatting., Alex Kost, 2016/01/02
- 36/38: emacs: Add Hydra interface., Alex Kost, 2016/01/02
- 28/38: emacs: Generalize buffer interface., Alex Kost, 2016/01/02
- 30/38: emacs: Reorganize package/generation UI code., Alex Kost, 2016/01/02