* emacs/guix-utils.el (guix-concat-strings): New function.
* emacs/guix-pcomplete.el (guix-pcomplete-short-options): Use it.
* emacs/guix-base.el (guix-get-package-strings): Likewise.
* emacs/guix-utils.el (guix-while-search): New macro.
* emacs/guix-pcomplete.el (guix-pcomplete-run-guix-and-search): Use it.
* emacs/guix-prettify.el (guix-prettify-decompose-buffer): Likewise.
* emacs/guix-pcomplete.el (guix-pcomplete-parse-linter-regexp): Improve
and rename to ...
(guix-pcomplete-parse-list-regexp): ...this. New variable.
(guix-pcomplete-lint-checkers): Use it.
(guix-pcomplete-graph-types): New function.
(guix-pcomplete-complete-command-arg): Complete package names for
'guix graph' command.
(guix-pcomplete-complete-option-arg): Complete '-t/--type' option.
Suggested by Ludovic Courtès <ludo@gnu.org>.
* emacs/guix-pcomplete.el: New file.
* emacs.am (ELFILES): Add it.
* doc/emacs.texi (Emacs Completions): New node.