Commit f36acfd9 authored by Eli Zaretskii's avatar Eli Zaretskii
Browse files

(Startup Summary): Document `before-init-time' and `after-init-time'.

Document `initial-window-system' and `window-system-initialization-alist'.
Document reading the abbrevs file.  Document the call to `server-start'
under --daemon.  Rearrange a bit to be consistent with the code flow.
parent 96995b89
2008-10-17 Eli Zaretskii <eliz@gnu.org>
* os.texi (Startup Summary): Document `before-init-time' and
`after-init-time'. Document `initial-window-system' and
`window-system-initialization-alist'. Document reading the
abbrevs file. Document the call to `server-start' under --daemon.
Rearrange a bit to be consistent with the code flow.
2008-10-17 Martin Rudalics <rudalics@gmx.at> 2008-10-17 Martin Rudalics <rudalics@gmx.at>
* windows.texi (Basic Windows, Splitting Windows): Fix whitespace * windows.texi (Basic Windows, Splitting Windows): Fix whitespace
......
...@@ -69,24 +69,41 @@ adds the directory's subdirectories to the list, and these will be ...@@ -69,24 +69,41 @@ adds the directory's subdirectories to the list, and these will be
scanned in their turn. The files @file{subdirs.el} are normally scanned in their turn. The files @file{subdirs.el} are normally
generated automatically by Emacs installation. generated automatically by Emacs installation.
@vindex before-init-time
@item @item
It sets the language environment and the terminal coding system, It records in the variable @code{before-init-time} the value of
if requested by environment variables such as @code{LANG}. @code{current-time} (@pxref{Time of Day}). It also sets
@code{after-init-time} to @code{nil}, so as to signal Lisp programs
that Emacs initialization is in progress.
@vindex initial-window-system@r{, and startup}
@vindex window-system-initialization-alist
@item @item
It loads the initialization library for the window system, if you are It loads the initialization library for the window system specified by
using a window system. This library's name is the variable @code{initial-window-system}. This library's name is
@file{term/@var{windowsystem}-win.el}. @file{term/@var{windowsystem}-win.el}, where @var{windowsystem} is the
value of @code{initial-window-system}. From that library, it calls
the appropriate initialization function. The initialization function
is specified by @code{window-system-initialization-alist}, for each
supported window system.
@item
It sets the language environment and the terminal coding system,
if requested by environment variables such as @code{LANG}.
@item @item
It processes the initial options. (Some of them are handled It processes the initial options. (Some of them are handled
even earlier than this.) even earlier than this.)
@item @item
It initializes the window frame and faces, if appropriate. It runs the normal hook @code{before-init-hook}.
@item @item
It runs the normal hook @code{before-init-hook}. It initializes the window frame and faces, if appropriate, and turns
on the menu bar and tool bar, if the initial frame needs them.
@item
It registers the default colors for text-only terminals.
@item @item
It loads the library @file{site-start} (if any), unless the option It loads the library @file{site-start} (if any), unless the option
...@@ -107,6 +124,21 @@ It loads the library @file{default} (if any), unless ...@@ -107,6 +124,21 @@ It loads the library @file{default} (if any), unless
command line.) The library's file name is usually @file{default.el}. command line.) The library's file name is usually @file{default.el}.
@cindex @file{default.el} @cindex @file{default.el}
@item
It loads your abbrevs from the file specified by
@code{abbrev-file-name} (@pxref{Abbrev Files, abbrev-file-name}), if
that file exists and can be read. (This is not done in @samp{-batch}
mode.)
@vindex after-init-time
@item
It records in the variable @code{after-init-time} the value of
@code{current-time}. This variable was set to @code{nil} at the
beginning of the Emacs session initialization (see above), so setting
it to the current time both signals that the initialization phase is
over, and, together with @code{before-init-time}, provides the
measurement of how long it took.
@item @item
It runs the normal hook @code{after-init-hook}. It runs the normal hook @code{after-init-hook}.
...@@ -116,8 +148,13 @@ the buffer @samp{*scratch*} is still current and still in Fundamental ...@@ -116,8 +148,13 @@ the buffer @samp{*scratch*} is still current and still in Fundamental
mode. mode.
@item @item
It loads the terminal-specific Lisp file, if any, except when in batch It loads the terminal-specific Lisp library, if any, except when in
mode or using a window system. batch mode or when the variable @code{initial-window-system} (see
above) specifies a non-@code{nil} window system. The name of this
library is computed from the value of the variable
@code{term-file-prefix}; for the details, see @ref{Terminal-Specific}.
If the value of @code{term-file-prefix} is @code{nil}, this step is skipped.
@item @item
It displays the initial echo area message, unless you have suppressed It displays the initial echo area message, unless you have suppressed
...@@ -139,11 +176,21 @@ It runs @code{window-setup-hook}. @xref{Window Systems}. ...@@ -139,11 +176,21 @@ It runs @code{window-setup-hook}. @xref{Window Systems}.
@item @item
It displays copyleft, nonwarranty, and basic use information, provided It displays copyleft, nonwarranty, and basic use information, provided
the value of @code{inhibit-startup-message} is @code{nil}, you didn't the value of @code{inhibit-startup-screen} is @code{nil}, you didn't
specify @samp{--no-splash} or @samp{-Q}. specify @samp{--no-splash} or @samp{-Q}.
@item
If the command-line arguments specified @option{--daemon}, @c FIXME: xref
it calls @code{server-start} (@pxref{Emacs Server,,, emacs, The GNU
Emacs Manual}).
@item
If started by the X session manager, it calls
@code{emacs-session-restore} passing it as argument the ID of the
previous session. @c FIXME: add an xref to the Emacs manual!
@end enumerate @end enumerate
@defopt inhibit-startup-message @defopt inhibit-startup-screen
This variable inhibits the initial startup messages (the nonwarranty, This variable inhibits the initial startup messages (the nonwarranty,
etc.). If it is non-@code{nil}, then the messages are not printed. etc.). If it is non-@code{nil}, then the messages are not printed.
...@@ -152,6 +199,9 @@ you are familiar with the contents of the startup message. Do not set ...@@ -152,6 +199,9 @@ you are familiar with the contents of the startup message. Do not set
this variable in the init file of a new user, or in a way that affects this variable in the init file of a new user, or in a way that affects
more than one user, because that would prevent new users from receiving more than one user, because that would prevent new users from receiving
the information they are supposed to see. the information they are supposed to see.
@code{inhibit-startup-message} is an alias for this variable, for
back-compatibility.
@end defopt @end defopt
@defopt inhibit-startup-echo-area-message @defopt inhibit-startup-echo-area-message
......
...@@ -286,6 +286,12 @@ inside of --eval command line arguments in order to access ...@@ -286,6 +286,12 @@ inside of --eval command line arguments in order to access
following arguments. following arguments.
** The abbrev file is no longer read at startup in batch mode. ** The abbrev file is no longer read at startup in batch mode.
** Emacs now supports invocation by an X session manager.
It can save a session and restore it later. See the documentation of
the functions `emacs-session-save' and `emacs-session-restore'.
(Actually, this feature was introduced with Emacs 22, but it was not
documented.)
* Incompatible Editing Changes in Emacs 23.1 * Incompatible Editing Changes in Emacs 23.1
...@@ -1195,6 +1201,7 @@ reset transient-mark-mode to the value OLDVAL. The values `only' and ...@@ -1195,6 +1201,7 @@ reset transient-mark-mode to the value OLDVAL. The values `only' and
** Emacs session information ** Emacs session information
+++
*** The new variables `before-init-time' and `after-init-time' record the *** The new variables `before-init-time' and `after-init-time' record the
value of `current-time' before and after Emacs loads the init files. value of `current-time' before and after Emacs loads the init files.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment