diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2018-03-26 09:41:30 -0400 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2018-03-26 09:41:30 -0400 |
commit | 6dfdf0c9e8e4aca77b148db8d009c862389c64d3 (patch) | |
tree | a400cdf3efa473bbf0b39218fbce9bfa61d92aee /doc/lispref/package.texi | |
parent | b300052fb4ef1261519b0fd57f5eb186c2d10295 (diff) | |
download | emacs-6dfdf0c9e8e4aca77b148db8d009c862389c64d3.tar.gz |
* lisp/emacs-lisp/package.el: New quickstart feature
(package--quickstart-pkgs): New var.
(package-activate-1): Obey and fill it.
(package-activate-all): New function.
(package-initialize): Call it.
Set package-initialized before activating the packages.
(package-installed-p): Make it work before package.el is initialized in
the case where min-version is not specified.
(package-install, package-delete): Refresh the quickstart if applicable.
(package-quickstart, package-quickstart-file): New vars.
(package--quickstart-maybe-refresh, package-quickstart-refresh):
New functions.
* lisp/startup.el (command-line): Use package-activate-all rather than
package-initialize.
* doc/lispref/package.texi (Packaging Basics):
* doc/emacs/package.texi (Package Installation):
* doc/lispref/os.texi (Startup Summary): Refer to package-activate-all.
Diffstat (limited to 'doc/lispref/package.texi')
-rw-r--r-- | doc/lispref/package.texi | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/doc/lispref/package.texi b/doc/lispref/package.texi index 7e7a8cd9bc8..37c1ee6697d 100644 --- a/doc/lispref/package.texi +++ b/doc/lispref/package.texi @@ -105,16 +105,15 @@ adds the package's content directory to @code{load-path}, and evaluates the autoload definitions in @file{@var{name}-autoloads.el}. Whenever Emacs starts up, it automatically calls the function -@code{package-initialize} to make installed packages available to the +@code{package-activate-all} to make installed packages available to the current session. This is done after loading the early init file, but before loading the regular init file (@pxref{Startup Summary}). Packages are not automatically made available if the user option @code{package-enable-at-startup} is set to @code{nil} in the early init file. -@deffn Command package-initialize &optional no-activate -This function initializes Emacs' internal record of which packages are -installed, and makes the packages available to the current session. +@defun package-activate-all +This function makes the packages available to the current session. The user option @code{package-load-list} specifies which packages to make available; by default, all installed packages are made available. If called during startup, this function also sets @@ -122,15 +121,20 @@ If called during startup, this function also sets evaluating package autoloads more than once. @xref{Package Installation,,, emacs, The GNU Emacs Manual}. -The optional argument @var{no-activate}, if non-@code{nil}, causes -Emacs to update its record of installed packages without actually -making them available; it is for internal use only. - -In most cases, you should not need to call @code{package-initialize}, +In most cases, you should not need to call @code{package-activate-all}, as this is done automatically during startup. Simply make sure to put -any code that should run before @code{package-initialize} in the early +any code that should run before @code{package-activate-all} in the early init file, and any code that should run after it in the primary init file (@pxref{Init File,,, emacs, The GNU Emacs Manual}). +@end defun + +@deffn Command package-initialize &optional no-activate +This function initializes Emacs' internal record of which packages are +installed, and then calls @code{package-activate-all}. + +The optional argument @var{no-activate}, if non-@code{nil}, causes +Emacs to update its record of installed packages without actually +making them available. @end deffn @node Simple Packages |