summary refs log tree commit diff
path: root/doc/emacs.texi
diff options
context:
space:
mode:
authorAlex Kost <alezost@gmail.com>2015-06-06 22:19:51 +0300
committerAlex Kost <alezost@gmail.com>2015-06-08 11:46:05 +0300
commit00a8dae2a6e74a0d7dd8a0b82c3dc08d3daf2a31 (patch)
tree52f2970febcc684a157c723a1ff1024d5ba4499b /doc/emacs.texi
parent132e74fec99eaf0febb62269ca38bacebeaa0882 (diff)
downloadguix-00a8dae2a6e74a0d7dd8a0b82c3dc08d3daf2a31.tar.gz
emacs: Add shell completions for "guix" command.
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.
Diffstat (limited to 'doc/emacs.texi')
-rw-r--r--doc/emacs.texi32
1 files changed, 32 insertions, 0 deletions
diff --git a/doc/emacs.texi b/doc/emacs.texi
index 6c1b255af0..00cd5c1396 100644
--- a/doc/emacs.texi
+++ b/doc/emacs.texi
@@ -19,6 +19,7 @@ guix package}).  Specifically, ``guix.el'' makes it easy to:
 * Usage: Emacs Usage.			Using the interface.
 * Configuration: Emacs Configuration.	Configuring the interface.
 * Prettify Mode: Emacs Prettify.	Abbreviating @file{/gnu/store/@dots{}} file names.
+* Completions: Emacs Completions.       Completing @command{guix} shell command.
 @end menu
 
 @node Emacs Initial Setup
@@ -489,3 +490,34 @@ mode hooks (@pxref{Hooks,,, emacs, The GNU Emacs Manual}), for example:
 (add-hook 'shell-mode-hook 'guix-prettify-mode)
 (add-hook 'dired-mode-hook 'guix-prettify-mode)
 @end example
+
+
+@node Emacs Completions
+@subsection Shell Completions
+
+Another feature that becomes available after configuring Emacs interface
+(@pxref{Emacs Initial Setup}) is completing of @command{guix}
+subcommands, options, packages and other things in @code{shell}
+(@pxref{Interactive Shell,,, emacs, The GNU Emacs Manual}) and
+@code{eshell} (@pxref{Top,,, eshell, Eshell: The Emacs Shell}).
+
+It works the same way as other completions do.  Just press @key{TAB}
+when your intuition tells you.
+
+And here are some examples, where pressing @key{TAB} may complete
+something:
+
+@itemize @w{}
+
+@item @code{guix pa}@key{TAB}
+@item @code{guix package -}@key{TAB}
+@item @code{guix package --}@key{TAB}
+@item @code{guix package -i gei}@key{TAB}
+@item @code{guix build -L/tm}@key{TAB}
+@item @code{guix build --sy}@key{TAB}
+@item @code{guix build --system=i}@key{TAB}
+@item @code{guix system rec}@key{TAB}
+@item @code{guix lint --checkers=sy}@key{TAB}
+@item @code{guix lint --checkers=synopsis,des}@key{TAB}
+
+@end itemize