doc: Reorganize "Emacs Interface" node.
* doc/guix.texi (Package Management): Move "Emacs Interface" node to ... (Top): ...here, since it is not just about package management. * doc/emacs.texi: Shift all nodes one level up (@section -> @chapter, etc.). Rename "Emacs Usage" node into "Emacs Package Management". Move "Emacs Configuration" node here.
This commit is contained in:
		
							parent
							
								
									7008dffff5
								
							
						
					
					
						commit
						c554de8929
					
				
					 2 changed files with 43 additions and 35 deletions
				
			
		|  | @ -1,29 +1,21 @@ | |||
| @node Emacs Interface | ||||
| @section Emacs Interface | ||||
| @chapter Emacs Interface | ||||
| 
 | ||||
| @cindex Emacs | ||||
| GNU Guix comes with a visual user interface for GNU@tie{}Emacs, known | ||||
| as ``guix.el''.  It can be used for routine package management tasks, | ||||
| pretty much like the @command{guix package} command (@pxref{Invoking | ||||
| guix package}).  Specifically, ``guix.el'' makes it easy to: | ||||
| 
 | ||||
| @itemize | ||||
| @item browse and display packages and generations; | ||||
| @item search, install, upgrade and remove packages; | ||||
| @item display packages from previous generations; | ||||
| @item do some other useful things. | ||||
| @end itemize | ||||
| GNU Guix comes with several useful modules (known as ``guix.el'') for | ||||
| GNU@tie{}Emacs which are intended to make an Emacs user interaction with | ||||
| Guix convenient and fun. | ||||
| 
 | ||||
| @menu | ||||
| * Initial Setup: Emacs Initial Setup.	Preparing @file{~/.emacs}. | ||||
| * Usage: Emacs Usage.			Using the interface. | ||||
| * Configuration: Emacs Configuration.	Configuring the interface. | ||||
| * Package Management: Emacs Package Management.	Managing packages and generations. | ||||
| * 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 | ||||
| @subsection Initial Setup | ||||
| @section Initial Setup | ||||
| 
 | ||||
| On the Guix System Distribution (@pxref{GNU Distribution}), ``guix.el'' | ||||
| is ready to use, provided Guix is installed system-wide, which is the | ||||
|  | @ -105,22 +97,32 @@ emacs, The GNU Emacs Manual}). | |||
| You can activate Emacs packages installed in your profile whenever you | ||||
| want using @kbd{M-x@tie{}guix-emacs-load-autoloads}. | ||||
| 
 | ||||
| @node Emacs Usage | ||||
| @subsection Usage | ||||
| 
 | ||||
| @node Emacs Package Management | ||||
| @section Package Management | ||||
| 
 | ||||
| Once ``guix.el'' has been successfully configured, you should be able to | ||||
| use commands for displaying packages and generations.  This information | ||||
| can be displayed in a ``list'' or ``info'' buffer. | ||||
| use a visual interface for routine package management tasks, pretty much | ||||
| like the @command{guix package} command (@pxref{Invoking guix package}). | ||||
| Specifically, it makes it easy to: | ||||
| 
 | ||||
| @itemize | ||||
| @item browse and display packages and generations; | ||||
| @item search, install, upgrade and remove packages; | ||||
| @item display packages from previous generations; | ||||
| @item do some other useful things. | ||||
| @end itemize | ||||
| 
 | ||||
| @menu | ||||
| * Commands: Emacs Commands.			@kbd{M-x guix-@dots{}} | ||||
| * General information: Emacs General info.	Common for both interfaces. | ||||
| * ``List'' buffer: Emacs List buffer.		List-like interface. | ||||
| * ``Info'' buffer: Emacs Info buffer.		Help-like interface. | ||||
| * Configuration: Emacs Configuration.		Configuring the interface. | ||||
| @end menu | ||||
| 
 | ||||
| @node Emacs Commands | ||||
| @subsubsection Commands | ||||
| @subsection Commands | ||||
| 
 | ||||
| All commands for displaying packages and generations use the current | ||||
| profile, which can be changed with | ||||
|  | @ -191,7 +193,7 @@ Once @command{guix pull} has succeeded, the Guix REPL is restared.  This | |||
| allows you to keep using the Emacs interface with the updated Guix. | ||||
| 
 | ||||
| @node Emacs General info | ||||
| @subsubsection General information | ||||
| @subsection General information | ||||
| 
 | ||||
| The following keys are available for both ``list'' and ``info'' types of | ||||
| buffers: | ||||
|  | @ -235,7 +237,7 @@ was restarted, you may want to revert ``list'' buffer (by pressing | |||
| @kbd{g}). | ||||
| 
 | ||||
| @node Emacs List buffer | ||||
| @subsubsection ``List'' buffer | ||||
| @subsection ``List'' buffer | ||||
| 
 | ||||
| An interface of a ``list'' buffer is similar to the interface provided | ||||
| by ``package.el'' (@pxref{Package Menu,,, emacs, The GNU Emacs Manual}). | ||||
|  | @ -310,7 +312,7 @@ with another marked generation. | |||
| @end table | ||||
| 
 | ||||
| @node Emacs Info buffer | ||||
| @subsubsection ``Info'' buffer | ||||
| @subsection ``Info'' buffer | ||||
| 
 | ||||
| The interface of an ``info'' buffer is similar to the interface of | ||||
| @code{help-mode} (@pxref{Help Mode,,, emacs, The GNU Emacs Manual}). | ||||
|  | @ -485,11 +487,11 @@ Various settings for ``info'' buffers. | |||
| 
 | ||||
| 
 | ||||
| @node Emacs Prettify | ||||
| @subsection Guix Prettify Mode | ||||
| @section Guix Prettify Mode | ||||
| 
 | ||||
| Along with ``guix.el'', GNU@tie{}Guix comes with ``guix-prettify.el''. | ||||
| It provides a minor mode for abbreviating store file names by replacing | ||||
| hash sequences of symbols with ``@dots{}'': | ||||
| GNU@tie{}Guix also comes with ``guix-prettify.el''.  It provides a minor | ||||
| mode for abbreviating store file names by replacing hash sequences of | ||||
| symbols with ``@dots{}'': | ||||
| 
 | ||||
| @example | ||||
| /gnu/store/72f54nfp6g1hz873w8z3gfcah0h4nl9p-foo-0.1 | ||||
|  | @ -526,7 +528,7 @@ mode hooks (@pxref{Hooks,,, emacs, The GNU Emacs Manual}), for example: | |||
| 
 | ||||
| 
 | ||||
| @node Emacs Completions | ||||
| @subsection Shell Completions | ||||
| @section Shell Completions | ||||
| 
 | ||||
| Another feature that becomes available after configuring Emacs interface | ||||
| (@pxref{Emacs Initial Setup}) is completing of @command{guix} | ||||
|  |  | |||
|  | @ -70,6 +70,7 @@ package management tool written for the GNU system. | |||
| * Introduction::                What is Guix about? | ||||
| * Installation::                Installing Guix. | ||||
| * Package Management::          Package installation, upgrade, etc. | ||||
| * Emacs Interface::             Using Guix from Emacs. | ||||
| * Programming Interface::       Using Guix in Scheme. | ||||
| * Utilities::                   Package management commands. | ||||
| * GNU Distribution::            Software for your friendly GNU system. | ||||
|  | @ -101,13 +102,19 @@ Package Management | |||
| 
 | ||||
| * Features::                    How Guix will make your life brighter. | ||||
| * Invoking guix package::       Package installation, removal, etc. | ||||
| * Emacs Interface::             Package management from Emacs. | ||||
| * Substitutes::                 Downloading pre-built binaries. | ||||
| * Packages with Multiple Outputs::  Single source package, multiple outputs. | ||||
| * Invoking guix gc::            Running the garbage collector. | ||||
| * Invoking guix pull::          Fetching the latest Guix and distribution. | ||||
| * Invoking guix archive::       Exporting and importing store files. | ||||
| 
 | ||||
| Emacs Interface | ||||
| 
 | ||||
| * Initial Setup: Emacs Initial Setup.	Preparing @file{~/.emacs}. | ||||
| * Package Management: Emacs Package Management.	Managing packages and generations. | ||||
| * Prettify Mode: Emacs Prettify.	Abbreviating @file{/gnu/store/@dots{}} file names. | ||||
| * Completions: Emacs Completions.       Completing @command{guix} shell command. | ||||
| 
 | ||||
| Programming Interface | ||||
| 
 | ||||
| * Defining Packages::           Defining new packages. | ||||
|  | @ -964,14 +971,13 @@ features. | |||
| 
 | ||||
| This chapter describes the main features of Guix, as well as the package | ||||
| management tools it provides.  Two user interfaces are provided for | ||||
| routine package management tasks: a command-line interface | ||||
| (@pxref{Invoking guix package, @code{guix package}}), and a visual user | ||||
| interface in Emacs (@pxref{Emacs Interface}). | ||||
| routine package management tasks: A command-line interface described below | ||||
| (@pxref{Invoking guix package, @code{guix package}}), as well as a visual user | ||||
| interface in Emacs described in a subsequent chapter (@pxref{Emacs Interface}). | ||||
| 
 | ||||
| @menu | ||||
| * Features::                    How Guix will make your life brighter. | ||||
| * Invoking guix package::       Package installation, removal, etc. | ||||
| * Emacs Interface::             Package management from Emacs. | ||||
| * Substitutes::                 Downloading pre-built binaries. | ||||
| * Packages with Multiple Outputs::  Single source package, multiple outputs. | ||||
| * Invoking guix gc::            Running the garbage collector. | ||||
|  | @ -1455,8 +1461,6 @@ Finally, since @command{guix package} may actually start build | |||
| processes, it supports all the common build options that @command{guix | ||||
| build} supports (@pxref{Invoking guix build, common build options}). | ||||
| 
 | ||||
| @include emacs.texi | ||||
| 
 | ||||
| @node Substitutes | ||||
| @section Substitutes | ||||
| 
 | ||||
|  | @ -1898,6 +1902,8 @@ automatically builds them.  The build process may be controlled with the | |||
| same options that can be passed to the @command{guix build} command | ||||
| (@pxref{Invoking guix build, common build options}). | ||||
| 
 | ||||
| @c ********************************************************************* | ||||
| @include emacs.texi | ||||
| 
 | ||||
| @c ********************************************************************* | ||||
| @node Programming Interface | ||||
|  |  | |||
		Reference in a new issue