@c This is part of the Emacs manual.
-@c Copyright (C) 1985,86,87,93,94,95,97,2001,03,2004 Free Software Foundation, Inc.
+@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2001, 2002,
+@c 2003, 2004, 2005 Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
@node Emacs Invocation, X Resources, GNU Free Documentation License, Top
@appendix Command Line Arguments for Emacs Invocation
@cindex options (command line)
@cindex switches (command line)
@cindex startup (command line arguments)
+@cindex invocation (command line arguments)
GNU Emacs supports command line arguments to request various actions
when invoking Emacs. These are for compatibility with other editors and
for sophisticated activities. We don't recommend using them for
ordinary editing.
- Arguments starting with @samp{-} are @dfn{options}. Other arguments
-specify files to visit. Emacs visits the specified files while it
-starts up. The last file name on your command line becomes the
-current buffer; the other files are also visited in other buffers. If
-there are two files, they are both displayed; otherwise the last file
-is displayed along with a buffer list that shows what other buffers
-there are. As with most programs, the special argument @samp{--} says
-that all subsequent arguments are file names, not options, even if
-they start with @samp{-}.
+ Arguments starting with @samp{-} are @dfn{options}, and so is
+@samp{+@var{linenum}}. All other arguments specify files to visit.
+Emacs visits the specified files while it starts up. The last file
+name on your command line becomes the current buffer; the other files
+are also visited in other buffers. If there are two files, they are
+both displayed; otherwise the last file is displayed along with a
+buffer list that shows what other buffers there are. As with most
+programs, the special argument @samp{--} says that all subsequent
+arguments are file names, not options, even if they start with
+@samp{-}.
Emacs command options can specify many things, such as the size and
position of the X window Emacs uses, its colors, and so on. A few
@opindex --load
@cindex loading Lisp libraries, command-line argument
Load a Lisp library named @var{file} with the function @code{load}.
-@xref{Lisp Libraries}. The library can be found either in the current
-directory, or in the Emacs library search path as specified
-with @env{EMACSLOADPATH} (@pxref{General Variables}).
+@xref{Lisp Libraries}. If @var{file} is not an absolute file name,
+the library can be found either in the current directory, or in the
+Emacs library search path as specified with @env{EMACSLOADPATH}
+(@pxref{General Variables}).
+
+@strong{Warning:} If previous command-line arguments have visited
+files, the current directory is the directory of the last file
+visited.
@item -L @var{dir}
@opindex -L
@code{stderr}. Functions that would normally read from the minibuffer
take their input from @code{stdin} instead.
-@samp{--batch} implies @samp{-q} (do not load an init file). It also
-causes Emacs to exit after processing all the command options. In
-addition, it disables auto-saving except in buffers for which it has
-been explicitly requested.
+@samp{--batch} implies @samp{-q} (do not load an init file), but
+@file{site-start.el} is loaded nonetheless. It also causes Emacs to
+exit after processing all the command options. In addition, it
+disables auto-saving except in buffers for which it has been
+explicitly requested.
@item --script @var{file}
@opindex --script
@item -Q
@opindex -Q
-Start emacs with minimum customizations and window decorations.
-This is like using @samp{-q} and @samp{--no-site-file}, but in
-addition it also disables the menu-bar, the tool-bar, the scroll-bars,
-tool tips, the blinking cursor, and the fancy startup screen.
+@itemx --quick
+@opindex --quick
+Start emacs with minimum customizations. This is like using @samp{-q}
+and @samp{--no-site-file}, but also disables the startup screen.
@item --no-splash
@opindex --no-splash
@opindex --debug-init
@cindex errors in init file
Enable the Emacs Lisp debugger for errors in the init file.
+@xref{Error Debugging,, Entering the Debugger on an Error, elisp, The
+GNU Emacs Lisp Reference Manual}.
@item --unibyte
@opindex --unibyte
explicitly ask for a multibyte buffer or string. (Note that Emacs
always loads Lisp files in multibyte mode, even if @samp{--unibyte} is
specified; see @ref{Enabling Multibyte}.) Setting the environment
-variable @env{EMACS_UNIBYTE} has the same effect.
+variable @env{EMACS_UNIBYTE} has the same effect
+(@pxref{General Variables}).
@item --multibyte
@opindex --multibyte
to be a C program.
@example
-emacs -batch foo.c -l hack-c -f save-buffer >& log
+emacs --batch foo.c -l hack-c -f save-buffer >& log
@end example
@noindent
variable @code{doc-directory}.
@item EMACSLOADPATH
A colon-separated list of directories@footnote{
-Here and below, whenever we say ``colon-separated list of directories'',
+Here and below, whenever we say ``colon-separated list of directories,''
it pertains to Unix and GNU/Linux systems. On MS-DOS and MS-Windows,
the directories are separated by semi-colons instead, since DOS/Windows
file names might include a colon after a drive letter.}
otherwise.
@item HOME
The location of the user's files in the directory tree; used for
-expansion of file names starting with a tilde (@file{~}). On MS-DOS, it
-defaults to the directory from which Emacs was started, with @samp{/bin}
-removed from the end if it was present. On Windows, the default value
-of @env{HOME} is @file{C:/}, the root directory of drive @file{C:}.
+expansion of file names starting with a tilde (@file{~}). On MS-DOS,
+it defaults to the directory from which Emacs was started, with
+@samp{/bin} removed from the end if it was present. On Windows, the
+default value of @env{HOME} is the @file{Application Data}
+subdirectory of the user profile directory (normally, this is
+@file{C:/Documents and Settings/@var{username}/Application Data},
+where @var{username} is your user name), though for backwards
+compatibility @file{C:/} will be used instead if a @file{.emacs} file
+is found there.
@item HOSTNAME
The name of the machine that Emacs is running on.
@item INCPATH
@opindex -hb
@itemx --horizontal-scroll-bars
@opindex --horizontal-scroll-bars
-@cindex horizontal scroll bars, command-line argument
-Enable horizontal scroll bars.
+@c @cindex horizontal scroll bars, command-line argument
+Enable horizontal scroll bars. Since horizontal scroll bars
+are not yet implemented, this actually does nothing.
@item -vb
@opindex -vb
@opindex --line-spacing
@cindex line spacing, command-line argument
Specify @var{pixels} as additional space to put between lines, in pixels.
+
+@item -nbc
+@opindex -nbc
+@itemx --no-blinking-cursor
+@opindex --no-blinking-cursor
+@cindex blinking cursor disable, command-line argument
+Disable the blinking cursor on graphical terminals.
+
+@item -D
+@opindex -D
+@itemx --basic-display
+@opindex --basic-display
+Disable the menu-bar, the tool-bar, the scroll-bars, and tool tips,
+and turn off the blinking cursor. This can be useful for making a
+test case that simplifies debugging of display problems.
@end table
The @samp{--xrm} option (@pxref{Resources}) specifies additional