Improve documentation of manually installing Lisp packages
* doc/emacs/building.texi (Lisp Libraries): Describe how to manually load packages in the init file. Mention the 'site-lisp' subdirectory of the default 'load-path'. * doc/emacs/package.texi (Packages): Describe manual installation of ELisp packages. Suggested by Jean-Christophe Helary <jean.christophe.helary@traduction-libre.org>.
This commit is contained in:
parent
efd4e973a4
commit
b4937f64cd
2 changed files with 55 additions and 9 deletions
|
@ -1509,6 +1509,11 @@ putting a line like this in your init file (@pxref{Init File}):
|
||||||
(add-to-list 'load-path "/path/to/my/lisp/library")
|
(add-to-list 'load-path "/path/to/my/lisp/library")
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
|
It is customary to put locally installed libraries in the
|
||||||
|
@file{site-lisp} directory that is already in the default value of
|
||||||
|
@code{load-path}, or in some subdirectory of @file{site-lisp}. This
|
||||||
|
way, you don't need to modify the default value of @code{load-path}.
|
||||||
|
|
||||||
@cindex autoload
|
@cindex autoload
|
||||||
Some commands are @dfn{autoloaded}; when you run them, Emacs
|
Some commands are @dfn{autoloaded}; when you run them, Emacs
|
||||||
automatically loads the associated library first. For instance, the
|
automatically loads the associated library first. For instance, the
|
||||||
|
@ -1538,6 +1543,33 @@ compiled with XEmacs, a modified version of Emacs---they can cause
|
||||||
Emacs to crash. Set the variable @code{load-dangerous-libraries} to
|
Emacs to crash. Set the variable @code{load-dangerous-libraries} to
|
||||||
@code{t} if you want to try loading them.
|
@code{t} if you want to try loading them.
|
||||||
|
|
||||||
|
Once you put your library in a directory where Emacs can find and
|
||||||
|
load it, you may wish to make it available at startup. This is useful
|
||||||
|
when the library defines features that should be available
|
||||||
|
automatically on demand, and manually loading the library is thus
|
||||||
|
inconvenient. In these cases, make sure the library will be loaded by
|
||||||
|
adding suitable forms to your init file: either @code{load} or
|
||||||
|
@code{require} (if you always need to load the library at startup), or
|
||||||
|
@code{autoload} if you need Emacs to load the library when some
|
||||||
|
command or function is invoked. For example:
|
||||||
|
|
||||||
|
@smalllisp
|
||||||
|
@group
|
||||||
|
;; Loads @file{my-shining-package.elc} unconditionally.
|
||||||
|
(require 'my-shining-package)
|
||||||
|
@end group
|
||||||
|
@group
|
||||||
|
;; Will load @file{my-shining-package.elc} when @code{my-func} is invoked.
|
||||||
|
(autoload 'my-func "my-shining-package")
|
||||||
|
@end group
|
||||||
|
@end smalllisp
|
||||||
|
|
||||||
|
Note that installing a package using @code{package-install}
|
||||||
|
(@pxref{Package Installation}) takes care of placing the package's
|
||||||
|
Lisp files in a directory where Emacs will find it, and also writes
|
||||||
|
the necessary initialization code into your init files, making the
|
||||||
|
above manual customizations unnecessary.
|
||||||
|
|
||||||
@node Lisp Eval
|
@node Lisp Eval
|
||||||
@section Evaluating Emacs Lisp Expressions
|
@section Evaluating Emacs Lisp Expressions
|
||||||
@cindex Emacs Lisp mode
|
@cindex Emacs Lisp mode
|
||||||
|
|
|
@ -5,23 +5,37 @@
|
||||||
@node Packages
|
@node Packages
|
||||||
@chapter Emacs Lisp Packages
|
@chapter Emacs Lisp Packages
|
||||||
@cindex Package
|
@cindex Package
|
||||||
@cindex Emacs Lisp package archive
|
|
||||||
@cindex Package archive
|
@cindex Package archive
|
||||||
|
|
||||||
Emacs includes a facility that lets you easily download and install
|
Emacs is extended by implementing additional features in
|
||||||
@dfn{packages} that implement additional features. Each package is a
|
@dfn{packages}, which are Emacs Lisp libraries. These could be
|
||||||
separate Emacs Lisp program, sometimes including other components such
|
written by you or provided by someone else. If you want to install
|
||||||
as an Info manual.
|
such a package so it is available in your future Emacs session, you
|
||||||
|
need to compile it and put it in a directory where Emacs looks for
|
||||||
|
Lisp libraries. @xref{Lisp Libraries}, for more details about this
|
||||||
|
manual installation method. Many packages provide installation and
|
||||||
|
usage instructions in the large commentary near the beginning of the
|
||||||
|
Lisp file; you can use those instructions for installing and
|
||||||
|
fine-tuning your use of the package.
|
||||||
|
|
||||||
@kbd{M-x list-packages} brings up a buffer named @file{*Packages*}
|
@cindex Emacs Lisp package archive
|
||||||
with a list of all packages. You can install or uninstall packages
|
Packages can also be provided by @dfn{package archives}, which are
|
||||||
via this buffer. @xref{Package Menu}.
|
large collections of Emacs Lisp packages. Each package is a separate
|
||||||
|
Emacs Lisp program, sometimes including other components such as an
|
||||||
|
Info manual. Emacs includes a facility that lets you easily download
|
||||||
|
and install packages from such archives. The rest of this chapter
|
||||||
|
describes this facility.
|
||||||
|
|
||||||
|
To list the packages available for installation from package
|
||||||
|
archives, type @w{@kbd{M-x list-packages @key{RET}}}. It brings up a
|
||||||
|
buffer named @file{*Packages*} with a list of all packages. You can
|
||||||
|
install or uninstall packages via this buffer. @xref{Package Menu}.
|
||||||
|
|
||||||
The command @kbd{C-h P} (@code{describe-package}) prompts for the
|
The command @kbd{C-h P} (@code{describe-package}) prompts for the
|
||||||
name of a package, and displays a help buffer describing the
|
name of a package, and displays a help buffer describing the
|
||||||
attributes of the package and the features that it implements.
|
attributes of the package and the features that it implements.
|
||||||
|
|
||||||
By default, Emacs downloads packages from a @dfn{package archive}
|
By default, Emacs downloads packages from a package archive
|
||||||
maintained by the Emacs developers and hosted by the GNU project.
|
maintained by the Emacs developers and hosted by the GNU project.
|
||||||
Optionally, you can also download packages from archives maintained by
|
Optionally, you can also download packages from archives maintained by
|
||||||
third parties. @xref{Package Installation}.
|
third parties. @xref{Package Installation}.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue