Next: Bugs and ideas, Previous: Input/Output, Up: Eshell [Contents][Index]
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.9 An Eshell
module is defined the same as any other library but one requirement: the
module must define a Customize10
group using eshell-defgroup
(in place of defgroup
) with
eshell-module
as the parent group.11 You also need to load the following as shown:
(eval-when-compile (require 'cl-lib) (require 'esh-mode) (require 'eshell)) (require 'esh-util)
ERC provides a similar module facility.
See Customization in The Emacs Lisp Reference Manual.
If the module has no user-customizable options, then there is no need to define it as an Eshell module.