[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master f2981a1681d 2/4: Restructure Eshell extension modules documentati
From: |
Jim Porter |
Subject: |
master f2981a1681d 2/4: Restructure Eshell extension modules documentation |
Date: |
Sat, 1 Jul 2023 15:27:31 -0400 (EDT) |
branch: master
commit f2981a1681d34b145753296e506f4c3ca7cba359
Author: Jim Porter <jporterbugs@gmail.com>
Commit: Jim Porter <jporterbugs@gmail.com>
Restructure Eshell extension modules documentation
This adds a section for documenting all the optional modules.
* doc/misc/eshell.texi (Extension modules): Move explanation about
writing modules to...
(Writing a module): ... here.
(Module testing): Remove. Testing an Eshell module doesn't require
any special documentation.
(Key binding, Smart scrolling, Electric forward slash): Move under...
(Optional modules): ... here.
(Directory handling, Terminal emulation): Remove. These modules are
enabled by default, and so are documented above.
(Tramp extensions, Extra built-in commands): New sections.
---
doc/misc/eshell.texi | 86 +++++++++++++++++++++++++++-------------------------
1 file changed, 44 insertions(+), 42 deletions(-)
diff --git a/doc/misc/eshell.texi b/doc/misc/eshell.texi
index 456e5c7a1a9..001c96a0bea 100644
--- a/doc/misc/eshell.texi
+++ b/doc/misc/eshell.texi
@@ -2019,66 +2019,38 @@ at the end of the command are excluded. This allows
input like this:
Eshell provides a facility for defining extension modules so that they
can be disabled and enabled without having to unload and reload them,
and to provide a common parent Customize group for the
-modules.@footnote{ERC provides a similar module facility.} An Eshell
-module is defined the same as any other library but one requirement: the
-module must define a Customize@footnote{@xref{Customization, , ,
-elisp, The Emacs Lisp Reference Manual}.}
-group using @code{eshell-defgroup} (in place of @code{defgroup}) with
-@code{eshell-module} as the parent group.@footnote{If the module has
-no user-customizable options, then there is no need to define it as an
-Eshell module.} You also need to load the following as shown:
-
-@example
-(eval-when-compile
- (require 'cl-lib)
- (require 'esh-mode)
- (require 'eshell))
-
-(require 'esh-util)
-@end example
+modules.@footnote{ERC provides a similar module facility.}
@menu
+* Optional modules::
* Writing a module::
-* Module testing::
-* Directory handling::
-* Key rebinding::
-* Smart scrolling::
-* Terminal emulation::
-* Electric forward slash::
@end menu
-@node Writing a module
-@section Writing a module
-
-This section is not yet written.
-
-@node Module testing
-@section Module testing
+@node Optional modules
+@section Optional modules
This section is not yet written.
-@node Directory handling
-@section Directory handling
-
-This section is not yet written.
+@menu
+* Key rebinding::
+* Smart scrolling::
+* Electric forward slash::
+* Tramp extensions::
+* Extra built-in commands::
+@end menu
@node Key rebinding
-@section Key rebinding
+@subsection Key rebinding
This section is not yet written.
@node Smart scrolling
-@section Smart scrolling
-
-This section is not yet written.
-
-@node Terminal emulation
-@section Terminal emulation
+@subsection Smart scrolling
This section is not yet written.
@node Electric forward slash
-@section Electric forward slash
+@subsection Electric forward slash
To help with supplying absolute file name arguments to remote
commands, you can add the @code{eshell-elecslash} module to
@@ -2132,6 +2104,36 @@ when chaining commands with the operators @code{&&},
@code{||},
@code{|} and @code{;}, the electric forward slash is active only
within the first command.
+@node Tramp extensions
+@subsection Tramp extensions
+
+This section is not yet written.
+
+@node Extra built-in functions
+@subsection Extra built-in functions
+
+This section is not yet written.
+
+@node Writing a module
+@section Writing a module
+
+An Eshell module is defined the same as any other library but one requirement:
the
+module must define a Customize@footnote{@xref{Customization, , ,
+elisp, The Emacs Lisp Reference Manual}.}
+group using @code{eshell-defgroup} (in place of @code{defgroup}) with
+@code{eshell-module} as the parent group.@footnote{If the module has
+no user-customizable options, then there is no need to define it as an
+Eshell module.} You also need to load the following as shown:
+
+@example
+(eval-when-compile
+ (require 'cl-lib)
+ (require 'esh-mode)
+ (require 'eshell))
+
+(require 'esh-util)
+@end example
+
@node Bugs and ideas
@chapter Bugs and ideas
@cindex reporting bugs and ideas