@cindex newline
@c @findex electric-indent-just-newline
To end a line and start a new one, type @key{RET} (@code{newline}).
-(The @key{RET} key may be labeled @key{Return} or @key{Enter} on your
-keyboard, but we refer to it as @key{RET} in this manual.) This
-command inserts a newline character into the buffer, then indents
-(@pxref{Indentation}) according to the major mode. If point is at the end
-of the line, the effect is to create a new blank line after it and
-indent the new line; if point is in the middle of a line, the line is
-split at that position. To turn off the auto-indentation, you can
-either disable Electric Indent mode (@pxref{Indent Convenience}) or
-type @kbd{C-j}, which inserts just a newline, without any
-auto-indentation.
+(The @key{RET} key may be labeled @key{Return}, or @key{Enter}, or
+with a funny-looking left-pointing arrow on your keyboard, but we
+refer to it as @key{RET} in this manual.) This command inserts a
+newline character into the buffer, then indents (@pxref{Indentation})
+according to the major mode. If point is at the end of the line, the
+effect is to create a new blank line after it and indent the new line;
+if point is in the middle of a line, the line is split at that
+position. To turn off the auto-indentation, you can either disable
+Electric Indent mode (@pxref{Indent Convenience}) or type @kbd{C-j},
+which inserts just a newline, without any auto-indentation.
As we explain later in this manual, you can change the way Emacs
handles text insertion by turning on @dfn{minor modes}. For instance,
then executes the command by running a shell as a subprocess (or
@dfn{inferior process}) of Emacs. The output is inserted in a buffer
named @file{*compilation*}. The current buffer's default directory is
-used as the working directory for the execution of the command;
-normally, therefore, compilation takes place in this directory.
+used as the working directory for the execution of the command, so by
+default compilation takes place in that directory.
@vindex compile-command
The default compilation command is @samp{make -k}, which is usually
labeled @key{Alt})@footnote{We refer to @key{Alt} as @key{META} for
historical reasons.}. For example, @kbd{Control-a} is entered by
holding down the @key{Ctrl} key while pressing @kbd{a}; we will refer
-to this as @kbd{C-a} for short. Similarly @kbd{@key{META}-a}, or @kbd{M-a}
+to this as @kbd{C-a} for short. Similarly, @kbd{@key{META}-a}, or @kbd{M-a}
for short, is entered by holding down the @key{Alt} key and pressing
@kbd{a}. Modifier keys can also be applied to non-alphanumerical
characters, e.g., @kbd{C-@key{F1}} or @kbd{M-@key{LEFT}}.
In this manual, we will often speak of keys like @kbd{C-n} as
commands, even though strictly speaking the key is bound to a command.
-Usually we state the name of the command which really does the work in
-parentheses after mentioning the key that runs it. For example, we
+Usually, we state the name of the command which really does the work
+in parentheses after mentioning the key that runs it. For example, we
will say that ``The command @kbd{C-n} (@code{next-line}) moves point
vertically down'', meaning that the command @code{next-line} moves
vertically down, and the key @kbd{C-n} is normally bound to it.
Hi Lock mode works like Font Lock mode (@pxref{Font Lock}), except
that you specify explicitly the regular expressions to highlight. You
-control them with the commands described below. (The key bindings
+can control them with the following commands. (The key bindings
below that begin with @kbd{C-x w} are deprecated in favor of the
global @kbd{M-s h} bindings, and will be removed in some future Emacs
version.)
On graphical displays, each Emacs window normally has narrow
@dfn{fringes} on the left and right edges. The fringes are used to
display symbols that provide information about the text in the window.
-You can type @kbd{M-x fringe-mode} to disable the fringes, or modify
-their width. This command affects fringes in all frames; to modify
-fringes on the selected frame only, use @kbd{M-x set-fringe-style}.
-You can make your changes to the fringes permanent by customizing the
-variable @code{fringe-mode}.
+You can type @kbd{M-x fringe-mode} to toggle display of the fringes or
+to modify their width. This command affects fringes in all frames; to
+modify fringes on the selected frame only, use @kbd{M-x
+set-fringe-style}. You can make your changes to the fringes permanent
+by customizing the variable @code{fringe-mode}.
The most common use of the fringes is to indicate a continuation
line (@pxref{Continuation Lines}). When one line of text is split
defining a macro, the macro is terminated and executed immediately.
Immediately after typing @kbd{C-x e}, you can type @key{e} repeatedly
to immediately repeat the macro one or more times. You can also give
-@kbd{C-x e} a repeat argument, just like @key{F4}.
+@kbd{C-x e} a repeat argument, just like @key{F4} (when it is used to
+execute a macro).
@kbd{C-x )} can be given a repeat count as an argument. This means
to repeat the macro right after defining it. The macro definition
Some uncommon or intricate version control operations, such as
altering repository settings, are not supported in VC@. You should
-perform such tasks outside Emacs, e.g., via the command line.
+perform such tasks outside VC, e.g., via the command line.
This section provides a general overview of version control, and
describes the version control systems that VC supports. You can skip
@end menu
@node Why Version Control?
-@subsubsection Understanding the problems it addresses
+@subsubsection Understanding the Problems it Addresses
Version control systems provide you with three important
capabilities:
@item
@dfn{History}: the ability to attach historical data to your data,
-such as explanatory comments about the intention behind each change to
-it. Even for a programmer working solo, change histories are an
-important aid to memory; for a multi-person project, they are a
-vitally important form of communication among developers.
+such as explanatory comments about the intention behind each change.
+Even for a programmer working solo, change histories are an important
+aid to memory; for a multi-person project, they are a vitally
+important form of communication among developers.
@end itemize
@node Version Control Systems
these modes of operation, but it cannot hide the differences.
@node VCS Merging
-@subsubsection Merge-based vs lock-based Version Control
+@subsubsection Merge-based vs Lock-based Version Control
A version control system typically has some mechanism to coordinate
between users who want to change the same file. There are two ways to
language modes bind @key{TAB} to indent the current line according to
the rules of the language (@pxref{Indentation}). The keys that are
commonly changed are @key{TAB}, @key{DEL}, and @kbd{C-j}. Many modes
-also define special commands of their own, usually bound in the prefix
-key @kbd{C-c}. Major modes can also alter user options and variables;
-for instance, programming language modes typically set a buffer-local
-value for the variable @code{comment-start}, which determines how
-source code comments are delimited (@pxref{Comments}).
+also define special commands of their own, usually bound to key
+sequences whose prefix key is @kbd{C-c} (@pxref{Keys}). Major modes
+can also alter user options and variables; for instance, programming
+language modes typically set a buffer-local value for the variable
+@code{comment-start}, which determines how source code comments are
+delimited (@pxref{Comments}).
To view the documentation for the current major mode, including a
list of its key bindings, type @kbd{C-h m} (@code{describe-mode}).
Finally, if Emacs @emph{still} hasn't found a major mode to use, it
compares the text at the start of the buffer to the variable
@code{magic-fallback-mode-alist}. This variable works like
-@code{magic-mode-alist}, described above, except that is consulted
-only after @code{auto-mode-alist}. By default,
+@code{magic-mode-alist}, described above, except that it is consulted
+only @emph{after} @code{auto-mode-alist}. By default,
@code{magic-fallback-mode-alist} contains forms that check for image
files, HTML/XML/SGML files, PostScript files, and Unix style Conf
files.
@cindex menu bar access using keyboard
Instead of using the mouse, you can also invoke the first menu bar
item by pressing @key{F10} (to run the command @code{menu-bar-open}).
-You can then navigate the menus with the arrow keys. To activate a
-selected menu item, press @key{RET}; to cancel menu navigation, press
-@kbd{C-g} or @kbd{@key{ESC} @key{ESC} @key{ESC}}. (However, note that
-when Emacs was built with a GUI toolkit, the menus are drawn and
-controlled by the toolkit, and the key sequences to cancel menu
-navigation might be different from the above description.)
+You can then navigate the menus with the arrow keys or with @kbd{C-b},
+@kbd{C-f} (left/right), @kbd{C-p}, and @kbd{C-n} (up/down). To
+activate a selected menu item, press @key{RET}; to cancel menu
+navigation, press @kbd{C-g} or @kbd{@key{ESC} @key{ESC} @key{ESC}}.
+(However, note that when Emacs was built with a GUI toolkit, the menus
+are drawn and controlled by the toolkit, and the key sequences to
+cancel menu navigation might be different from the above description.)
@kindex M-`
@findex tmm-menubar
Incremental search backward (@code{isearch-backward}).
@end table
+You can also invoke incremental search from the menu bar's
+@samp{Edit->Search} menu.
+
@menu
* Basic Isearch:: Basic incremental search commands.
* Repeat Isearch:: Searching for the same string again.
@subsection Not Exiting Incremental Search
This subsection describes how to control whether typing a command not
-specifically meaningful is searches exits the search before executing
+specifically meaningful in searches exits the search before executing
the command. It also describes two categories of commands which you
can type without exiting the current incremental search, even though
they are not themselves part of incremental search.
@key{RET}} does likewise, invoking the nonincremental
backward-searching command.
- Nonincremental search can also be invoked form the menu bar's
+ Nonincremental search can also be invoked from the menu bar's
@samp{Edit->Search} menu.
@findex search-forward
@findex backward-paragraph
@findex forward-paragraph
@kbd{M-@{} (@code{backward-paragraph}) moves to the beginning of the
-current or previous paragraph (see below for the definition of a
-paragraph). @kbd{M-@}} (@code{forward-paragraph}) moves to the end of
+current or previous paragraph, depending on where point is when the
+command is invoked (see below for the definition of a paragraph).
+@kbd{M-@}} (@code{forward-paragraph}) similarly moves to the end of
the current or next paragraph. If there is a blank line before the
paragraph, @kbd{M-@{} moves to the blank line.