From b0e44d4f7d13b1c67899aab14385155cc648cfd8 Mon Sep 17 00:00:00 2001 From: Alex Kost Date: Wed, 28 Oct 2015 20:48:45 +0300 Subject: [PATCH] emacs: Add shell completions for 'guix refresh --type'. * emacs/guix-pcomplete.el (guix-pcomplete-refresh-updaters): New function. (guix-pcomplete-complete-option-arg): Complete '-t/--type' option for 'guix refresh' command. --- emacs/guix-pcomplete.el | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/emacs/guix-pcomplete.el b/emacs/guix-pcomplete.el index 98f8efd1d2..85b267a78d 100644 --- a/emacs/guix-pcomplete.el +++ b/emacs/guix-pcomplete.el @@ -128,6 +128,13 @@ subcommands, actions, etc. for this guix COMMAND." guix-help-parse-regexp-group "graph" "--list-types")) +(guix-memoized-defun guix-pcomplete-refresh-updaters () + "Return a list of all available refresh updater types." + (guix-pcomplete-run-guix-and-search + guix-help-parse-list-regexp + guix-help-parse-regexp-group + "refresh" "--list-updaters")) + ;;; Completing @@ -287,9 +294,13 @@ INPUT is the current partially completed string." (option? "-u" "--user")) (complete* (pcmpl-unix-user-names))) - ((and (command? "refresh") - (option? "-s" "--select")) - (complete* guix-help-refresh-subsets)) + ((command? "refresh") + (cond + ((option? "-s" "--select") + (complete* guix-help-refresh-subsets)) + ((option? "-t" "--type") + (guix-pcomplete-complete-comma-args + (guix-pcomplete-refresh-updaters))))) ((and (command? "size") (option? "-m" "--map-file"))