Commit 48de8b12 authored by Chong Yidong's avatar Chong Yidong
Browse files

Update docs for a bunch of 24.3 changes.

* doc/emacs/killing.texi (Rectangles): Document copy-rectangle-as-kill.

* doc/emacs/search.texi (Special Isearch): Document the lax space search
feature and M-s SPC.
(Regexp Search): Move main search-whitespace-regexp description to
Special Isearch.
(Replace): Document replace-lax-whitespace.

* doc/emacs/basic.texi (Position Info): Document C-u M-=.
(Moving Point): Document move-to-column.

* doc/emacs/display.texi (Useless Whitespace): Add delete-trailing-lines.

* doc/emacs/misc.texi (emacsclient Options): Document the effect of
initial-buffer-choice on client frames.  Document server-auth-dir.
Do not document server-host, which is bad security practice.

* doc/emacs/building.texi (Lisp Libraries): Docstring lookups can trigger
autoloading.  Document help-enable-auto-load.

* doc/emacs/mini.texi (Yes or No Prompts): New node.

* doc/emacs/ack.texi (Acknowledgments): Remove obsolete packages.

* doc/lispref/commands.texi (Click Events): Define "mouse position list".
Remove mention of unimplemented horizontal scroll bars.
(Drag Events, Motion Events): Refer to "mouse position list".
(Accessing Mouse): Document posnp.

* doc/lispref/errors.texi (Standard Errors): Tweak arith-error description.
Tweak markup.  Remove domain-error and friends, which seem to be
unused after the floating-point code revamp.

* doc/lispref/functions.texi (Obsolete Functions): Obsolescence also affects
documentation commands.  Various clarifications.
(Declare Form): New node.

* doc/lispref/loading.texi (Autoload):
* doc/lispref/help.texi (Documentation Basics): The special sequences can
trigger autoloading.

* doc/lispref/macros.texi (Defining Macros): Move description of `declare' to
Declare Form node.

* doc/lispref/numbers.texi (Integer Basics): Copyedits.
(Float Basics): Consider IEEE floating point always available.
(Random Numbers): Document actual limits.
(Arithmetic Operations): Clarify division by zero.  Don't mention
the machine-independence of negative division since it does not
happen in practice.

* doc/lispref/os.texi (Idle Timers): Minor clarifications.
(User Identification): Add system-users and system-groups.

* doc/lispref/strings.texi (String Basics): Copyedits.

* lisp/minibuffer.el (minibuffer-local-filename-syntax): Doc fix.

* lisp/server.el (server-host): Document the security implications.
(server-auth-key): Doc fix.

* lisp/startup.el (initial-buffer-choice): Doc fix.

* src/fns.c (Frandom): Doc fix.
parent 5938d519
2012-09-30 Chong Yidong <cyd@gnu.org>
* killing.texi (Rectangles): Document copy-rectangle-as-kill.
* search.texi (Special Isearch): Document the lax space search
feature and M-s SPC.
(Regexp Search): Move main search-whitespace-regexp description to
Special Isearch.
(Replace): Document replace-lax-whitespace.
* basic.texi (Position Info): Document C-u M-=.
(Moving Point): Document move-to-column.
* display.texi (Useless Whitespace): Add delete-trailing-lines.
* misc.texi (emacsclient Options): Document the effect of
initial-buffer-choice on client frames. Document server-auth-dir.
Do not document server-host, which is bad security practice.
* building.texi (Lisp Libraries): Docstring lookups can trigger
autoloading. Document help-enable-auto-load.
* mini.texi (Yes or No Prompts): New node.
* ack.texi (Acknowledgments): Remove obsolete packages.
2012-09-27 Glenn Morris <rgm@gnu.org> 2012-09-27 Glenn Morris <rgm@gnu.org>
* cal-xtra.texi (Advanced Calendar/Diary Usage): * cal-xtra.texi (Advanced Calendar/Diary Usage):
......
...@@ -644,10 +644,9 @@ statically scoped Emacs lisp. ...@@ -644,10 +644,9 @@ statically scoped Emacs lisp.
@item @item
Daniel LaLiberte wrote @file{edebug.el}, a source-level debugger for Daniel LaLiberte wrote @file{edebug.el}, a source-level debugger for
Emacs Lisp; @file{cl-specs.el}, specifications to help @code{edebug} Emacs Lisp; @file{cl-specs.el}, specifications to help @code{edebug}
debug code written using David Gillespie's Common Lisp support; debug code written using David Gillespie's Common Lisp support; and
@file{cust-print.el}, a customizable package for printing lisp @file{isearch.el}, Emacs's incremental search minor mode. He also
objects; and @file{isearch.el}, Emacs's incremental search minor mode. co-wrote @file{hideif.el} (q.v.@:).
He also co-wrote @file{hideif.el} (q.v.@:).
@item @item
Karl Landstrom and Daniel Colascione wrote @file{js.el}, a mode for Karl Landstrom and Daniel Colascione wrote @file{js.el}, a mode for
...@@ -1301,15 +1300,14 @@ providing electric accent keys. ...@@ -1301,15 +1300,14 @@ providing electric accent keys.
Colin Walters wrote Ibuffer, an enhanced buffer menu. Colin Walters wrote Ibuffer, an enhanced buffer menu.
@item @item
Barry Warsaw wrote @file{assoc.el}, a set of utility functions for Barry Warsaw wrote @file{cc-mode.el}, a mode for editing C, C@t{++},
working with association lists; @file{cc-mode.el}, a mode for editing and Java code, based on earlier work by Dave Detlefs, Stewart Clamen,
C, C@t{++}, and Java code, based on earlier work by Dave Detlefs, and Richard Stallman; @file{elp.el}, a profiler for Emacs Lisp
Stewart Clamen, and Richard Stallman; @file{elp.el}, a profiler for programs; @file{man.el}, a mode for reading Unix manual pages;
Emacs Lisp programs; @file{man.el}, a mode for reading Unix manual @file{regi.el}, providing an AWK-like functionality for use in lisp
pages; @file{regi.el}, providing an AWK-like functionality for use in programs; @file{reporter.el}, providing customizable bug reporting for
lisp programs; @file{reporter.el}, providing customizable bug lisp packages; and @file{supercite.el}, a minor mode for quoting
reporting for lisp packages; and @file{supercite.el}, a minor mode for sections of mail messages and news articles.
quoting sections of mail messages and news articles.
@item @item
Christoph Wedler wrote @file{antlr-mode.el}, a major mode for ANTLR Christoph Wedler wrote @file{antlr-mode.el}, a major mode for ANTLR
...@@ -1351,9 +1349,8 @@ Directory Client; and @code{eshell}, a command shell implemented ...@@ -1351,9 +1349,8 @@ Directory Client; and @code{eshell}, a command shell implemented
entirely in Emacs Lisp. He also contributed to Org mode (q.v.@:). entirely in Emacs Lisp. He also contributed to Org mode (q.v.@:).
@item @item
Mike Williams wrote @file{mouse-sel.el}, providing enhanced mouse Mike Williams wrote @file{thingatpt.el}, a library of functions for
selection; and @file{thingatpt.el}, a library of functions for finding finding the ``thing'' (word, line, s-expression) at point.
the ``thing'' (word, line, s-expression) containing point.
@item @item
Roland Winkler wrote @file{proced.el}, a system process editor. Roland Winkler wrote @file{proced.el}, a system process editor.
......
...@@ -267,7 +267,8 @@ necessary (@code{scroll-up-command}). @xref{Scrolling}. ...@@ -267,7 +267,8 @@ necessary (@code{scroll-up-command}). @xref{Scrolling}.
Scroll one screen backward, and move point onscreen if necessary Scroll one screen backward, and move point onscreen if necessary
(@code{scroll-down-command}). @xref{Scrolling}. (@code{scroll-down-command}). @xref{Scrolling}.
@item M-x goto-char @item M-g c
@kindex M-g c
@findex goto-char @findex goto-char
Read a number @var{n} and move point to buffer position @var{n}. Read a number @var{n} and move point to buffer position @var{n}.
Position 1 is the beginning of the buffer. Position 1 is the beginning of the buffer.
...@@ -285,6 +286,13 @@ also specify @var{n} by giving @kbd{M-g M-g} a numeric prefix argument. ...@@ -285,6 +286,13 @@ also specify @var{n} by giving @kbd{M-g M-g} a numeric prefix argument.
@xref{Select Buffer}, for the behavior of @kbd{M-g M-g} when you give it @xref{Select Buffer}, for the behavior of @kbd{M-g M-g} when you give it
a plain prefix argument. a plain prefix argument.
@item M-g @key{TAB}
@kindex M-g TAB
@findex move-to-column
Read a number @var{n} and move to column @var{n} in the current line.
Column 0 is the leftmost column. If called with a prefix argument,
move to the column number specified by the argument's numeric value.
@item C-x C-n @item C-x C-n
@kindex C-x C-n @kindex C-x C-n
@findex set-goal-column @findex set-goal-column
...@@ -619,12 +627,16 @@ narrowed region and the line number relative to the whole buffer. ...@@ -619,12 +627,16 @@ narrowed region and the line number relative to the whole buffer.
@kindex M-= @kindex M-=
@findex count-words-region @findex count-words-region
@findex count-words
@kbd{M-=} (@code{count-words-region}) displays a message reporting @kbd{M-=} (@code{count-words-region}) displays a message reporting
the number of lines, words, and characters in the region. @kbd{M-x the number of lines, words, and characters in the region
count-words} displays a similar message for the entire buffer, or for (@pxref{Mark}, for an explanation of the region). With a prefix
the region if the region is @dfn{active}. @xref{Mark}, for an argument, @kbd{C-u M-=}, the command displays a count for the entire
explanation of the region. buffer.
@findex count-words
The command @kbd{M-x count-words} does the same job, but with a
different calling convention. It displays a count for the region if
the region is active, and for the buffer otherwise.
@kindex C-x = @kindex C-x =
@findex what-cursor-position @findex what-cursor-position
......
...@@ -1393,13 +1393,21 @@ putting a line like this in your init file (@pxref{Init File}): ...@@ -1393,13 +1393,21 @@ putting a line like this in your init file (@pxref{Init File}):
@end example @end example
@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
@kbd{M-x compile} command (@pxref{Compilation}) is autoloaded; if you @kbd{M-x compile} command (@pxref{Compilation}) is autoloaded; if you
call it, Emacs automatically loads the @code{compile} library first. call it, Emacs automatically loads the @code{compile} library first.
In contrast, the command @kbd{M-x recompile} is not autoloaded, so it In contrast, the command @kbd{M-x recompile} is not autoloaded, so it
is unavailable until you load the @code{compile} library. is unavailable until you load the @code{compile} library.
@vindex help-enable-auto-load
Automatic loading can also occur when you look up the documentation
of an autoloaded command (@pxref{Name Help}), if the documentation
refers to other functions and variables in its library (loading the
library lets Emacs properly set up the hyperlinks in the @file{*Help*}
buffer). To disable this feature, change the variable
@code{help-enable-auto-load} to @code{nil}.
@vindex load-dangerous-libraries @vindex load-dangerous-libraries
@cindex Lisp files byte-compiled by XEmacs @cindex Lisp files byte-compiled by XEmacs
By default, Emacs refuses to load compiled Lisp files which were By default, Emacs refuses to load compiled Lisp files which were
......
...@@ -1044,9 +1044,9 @@ the left fringe, but no arrow bitmaps, use @code{((top . left) ...@@ -1044,9 +1044,9 @@ the left fringe, but no arrow bitmaps, use @code{((top . left)
@cindex whitespace, trailing @cindex whitespace, trailing
@vindex show-trailing-whitespace @vindex show-trailing-whitespace
It is easy to leave unnecessary spaces at the end of a line, or It is easy to leave unnecessary spaces at the end of a line, or
empty lines at the end of a file, without realizing it. In most empty lines at the end of a buffer, without realizing it. In most
cases, this @dfn{trailing whitespace} has no effect, but there are cases, this @dfn{trailing whitespace} has no effect, but sometimes it
special circumstances where it matters, and it can be a nuisance. can be a nuisance.
You can make trailing whitespace at the end of a line visible by You can make trailing whitespace at the end of a line visible by
setting the buffer-local variable @code{show-trailing-whitespace} to setting the buffer-local variable @code{show-trailing-whitespace} to
...@@ -1061,9 +1061,13 @@ the location of point is enough to show you that the spaces are ...@@ -1061,9 +1061,13 @@ the location of point is enough to show you that the spaces are
present. present.
@findex delete-trailing-whitespace @findex delete-trailing-whitespace
@vindex delete-trailing-lines
Type @kbd{M-x delete-trailing-whitespace} to delete all trailing Type @kbd{M-x delete-trailing-whitespace} to delete all trailing
whitespace within the buffer. If the region is active, it deletes all whitespace. This command deletes all extra spaces at the end of each
trailing whitespace in the region instead. line in the buffer, and all empty lines at the end of the buffer; to
ignore the latter, change the varaible @code{delete-trailing-lines} to
@code{nil}. If the region is active, the command instead deletes
extra spaces at the end of each line in the region.
@vindex indicate-empty-lines @vindex indicate-empty-lines
@cindex unused lines @cindex unused lines
......
...@@ -267,6 +267,7 @@ The Minibuffer ...@@ -267,6 +267,7 @@ The Minibuffer
* Minibuffer History:: Reusing recent minibuffer arguments. * Minibuffer History:: Reusing recent minibuffer arguments.
* Repetition:: Re-executing commands that used the minibuffer. * Repetition:: Re-executing commands that used the minibuffer.
* Passwords:: Entering passwords in the echo area. * Passwords:: Entering passwords in the echo area.
* Yes or No Prompts:: Replying yes or no in the echo area.
Completion Completion
......
...@@ -79,11 +79,6 @@ non-@code{nil} value. (In that case, even if you specify one or more ...@@ -79,11 +79,6 @@ non-@code{nil} value. (In that case, even if you specify one or more
files on the command line, Emacs opens but does not display them.) files on the command line, Emacs opens but does not display them.)
The value of @code{initial-buffer-choice} should be the name of The value of @code{initial-buffer-choice} should be the name of
the desired file or directory. the desired file or directory.
@ignore
@c I do not think this should be mentioned. AFAICS it is just a dodge
@c around inhibit-startup-screen not being settable on a site-wide basis.
or @code{t}, which means to display the @file{*scratch*} buffer.
@end ignore
@node Exiting @node Exiting
@section Exiting Emacs @section Exiting Emacs
......
...@@ -243,7 +243,7 @@ by the innermost Lisp expression in the buffer around point, ...@@ -243,7 +243,7 @@ by the innermost Lisp expression in the buffer around point,
(That name appears as the default while you enter the argument.) For (That name appears as the default while you enter the argument.) For
example, if point is located following the text @samp{(make-vector example, if point is located following the text @samp{(make-vector
(car x)}, the innermost list containing point is the one that starts (car x)}, the innermost list containing point is the one that starts
with @samp{(make-vector}, so @kbd{C-h f @key{RET}} will describe the with @samp{(make-vector}, so @kbd{C-h f @key{RET}} describes the
function @code{make-vector}. function @code{make-vector}.
@kbd{C-h f} is also useful just to verify that you spelled a @kbd{C-h f} is also useful just to verify that you spelled a
......
...@@ -709,6 +709,9 @@ rectangle, depending on the command that uses them. ...@@ -709,6 +709,9 @@ rectangle, depending on the command that uses them.
@item C-x r k @item C-x r k
Kill the text of the region-rectangle, saving its contents as the Kill the text of the region-rectangle, saving its contents as the
``last killed rectangle'' (@code{kill-rectangle}). ``last killed rectangle'' (@code{kill-rectangle}).
@item C-x r M-w
Save the text of the region-rectangle as the ``last killed rectangle''
(@code{copy-rectangle-as-kill}).
@item C-x r d @item C-x r d
Delete the text of the region-rectangle (@code{delete-rectangle}). Delete the text of the region-rectangle (@code{delete-rectangle}).
@item C-x r y @item C-x r y
...@@ -757,6 +760,12 @@ yanking a rectangle is so different from yanking linear text that ...@@ -757,6 +760,12 @@ yanking a rectangle is so different from yanking linear text that
different yank commands have to be used. Yank-popping is not defined different yank commands have to be used. Yank-popping is not defined
for rectangles. for rectangles.
@kindex C-x r M-w
@findex copy-rectangle-as-kill
@kbd{C-x r M-w} (@code{copy-rectangle-as-kill}) is the equivalent of
@kbd{M-w} for rectangles: it records the rectangle as the ``last
killed rectangle'', without deleting the text from the buffer.
@kindex C-x r y @kindex C-x r y
@findex yank-rectangle @findex yank-rectangle
To yank the last killed rectangle, type @kbd{C-x r y} To yank the last killed rectangle, type @kbd{C-x r y}
......
...@@ -45,6 +45,7 @@ do not echo. ...@@ -45,6 +45,7 @@ do not echo.
* Minibuffer History:: Reusing recent minibuffer arguments. * Minibuffer History:: Reusing recent minibuffer arguments.
* Repetition:: Re-executing commands that used the minibuffer. * Repetition:: Re-executing commands that used the minibuffer.
* Passwords:: Entering passwords in the echo area. * Passwords:: Entering passwords in the echo area.
* Yes or No Prompts:: Replying yes or no in the echo area.
@end menu @end menu
@node Minibuffer File @node Minibuffer File
...@@ -733,3 +734,53 @@ password (@pxref{Killing}). You may type either @key{RET} or ...@@ -733,3 +734,53 @@ password (@pxref{Killing}). You may type either @key{RET} or
@key{ESC} to submit the password. Any other self-inserting character @key{ESC} to submit the password. Any other self-inserting character
key inserts the associated character into the password, and all other key inserts the associated character into the password, and all other
input is ignored. input is ignored.
@node Yes or No Prompts
@section Yes or No Prompts
An Emacs command may require you to answer a ``yes or no'' question
during the course of its execution. Such queries come in two main
varieties.
@cindex y or n prompt
For the first type of ``yes or no'' query, the prompt ends with
@samp{(y or n)}. Such a query does not actually use the minibuffer;
the prompt appears in the echo area, and you answer by typing either
@samp{y} or @samp{n}, which immediately delivers the response. For
example, if you type @kbd{C-x C-w} (@kbd{write-file}) to save a
buffer, and enter the name of an existing file, Emacs issues a prompt
like this:
@smallexample
File `foo.el' exists; overwrite? (y or n)
@end smallexample
@noindent
Because this query does not actually use the minibuffer, the usual
minibuffer editing commands cannot be used. However, you can perform
some window scrolling operations while the query is active: @kbd{C-l}
recenters the selected window; @kbd{M-v} (or @key{PageDown} or
@key{next}) scrolls forward; @kbd{C-v} (or @key{PageUp}, or
@key{prior}) scrolls backward; @kbd{C-M-v} scrolls forward in the next
window; and @kbd{C-M-S-v} scrolls backward in the next window. Typing
@kbd{C-g} dismisses the query, and quits the command that issued it
(@pxref{Quitting}).
@cindex yes or no prompt
The second type of ``yes or no'' query is typically employed if
giving the wrong answer would have serious consequences; it uses the
minibuffer, and features a prompt ending with @samp{(yes or no)}. For
example, if you invoke @kbd{C-x k} (@code{kill-buffer}) on a
file-visiting buffer with unsaved changes, Emacs activates the
minibuffer with a prompt like this:
@smallexample
Buffer foo.el modified; kill anyway? (yes or no)
@end smallexample
@noindent
To answer, you must type @samp{yes} or @samp{no} into the minibuffer,
followed by @key{RET}. The minibuffer behaves as described in the
previous sections; you can switch to another window with @kbd{C-x o},
use the history commands @kbd{M-p} and @kbd{M-f}, etc. Type @kbd{C-g}
to quit the minibuffer and the querying command.
...@@ -1509,15 +1509,11 @@ precedence. ...@@ -1509,15 +1509,11 @@ precedence.
@cindex client frame @cindex client frame
@item -c @item -c
Create a new graphical @dfn{client frame}, instead of using an Create a new graphical @dfn{client frame}, instead of using an
existing Emacs frame. If you omit a filename argument while supplying existing Emacs frame. See below for the special behavior of @kbd{C-x
the @samp{-c} option, the new frame displays the @file{*scratch*} C-c} in a client frame. If Emacs cannot create a new graphical frame
buffer (@pxref{Buffers}). See below for the special behavior of (e.g.@: if it cannot connect to the X server), it tries to create a
@kbd{C-x C-c} in a client frame. text terminal client frame, as though you had supplied the @samp{-t}
option instead.
If Emacs is unable to create a new graphical frame (e.g.@: if it is
unable to connect to the X server), it tries to create a text terminal
client frame, as though you had supplied the @samp{-t} option instead
(see below).
On MS-Windows, a single Emacs session cannot display frames on both On MS-Windows, a single Emacs session cannot display frames on both
graphical and text terminals, nor on multiple text terminals. Thus, graphical and text terminals, nor on multiple text terminals. Thus,
...@@ -1525,6 +1521,11 @@ if the Emacs server is running on a text terminal, the @samp{-c} ...@@ -1525,6 +1521,11 @@ if the Emacs server is running on a text terminal, the @samp{-c}
option, like the @samp{-t} option, creates a new frame in the server's option, like the @samp{-t} option, creates a new frame in the server's
current text terminal. @xref{Windows Startup}. current text terminal. @xref{Windows Startup}.
If you omit a filename argument while supplying the @samp{-c} option,
the new frame displays the @file{*scratch*} buffer by default. If
@code{initial-buffer-choice} is a string (@pxref{Entering Emacs}), the
new frame displays that file or directory instead.
@item -F @var{alist} @item -F @var{alist}
@itemx --frame-parameters=@var{alist} @itemx --frame-parameters=@var{alist}
Set the parameters for a newly-created graphical frame Set the parameters for a newly-created graphical frame
...@@ -1545,38 +1546,24 @@ evaluate, @emph{not} as a list of files to visit. ...@@ -1545,38 +1546,24 @@ evaluate, @emph{not} as a list of files to visit.
@item -f @var{server-file} @item -f @var{server-file}
@itemx --server-file=@var{server-file} @itemx --server-file=@var{server-file}
@cindex @env{EMACS_SERVER_FILE} environment variable @cindex @env{EMACS_SERVER_FILE} environment variable
@cindex server file
@vindex server-use-tcp
@vindex server-host
Specify a @dfn{server file} for connecting to an Emacs server via TCP. Specify a @dfn{server file} for connecting to an Emacs server via TCP.
An Emacs server usually uses an operating system feature called a An Emacs server usually uses an operating system feature called a
``local socket'' to listen for connections. Some operating systems, ``local socket'' to listen for connections. Some operating systems,
such as Microsoft Windows, do not support local sockets; in that case, such as Microsoft Windows, do not support local sockets; in that case,
Emacs uses TCP instead. When you start the Emacs server, Emacs the server communicates with @command{emacsclient} via TCP.
creates a server file containing some TCP information that
@command{emacsclient} needs for making the connection. By default,
the server file is in @file{~/.emacs.d/server/}. On Microsoft
Windows, if @command{emacsclient} does not find the server file there,
it looks in the @file{.emacs.d/server/} subdirectory of the directory
pointed to by the @env{APPDATA} environment variable. You can tell
@command{emacsclient} to use a specific server file with the @samp{-f}
or @samp{--server-file} option, or by setting the
@env{EMACS_SERVER_FILE} environment variable.
Even if local sockets are available, you can tell Emacs to use TCP by
setting the variable @code{server-use-tcp} to @code{t}. One advantage
of TCP is that the server can accept connections from remote machines.
For this to work, you must (i) set the variable @code{server-host} to
the hostname or IP address of the machine on which the Emacs server
runs, and (ii) provide @command{emacsclient} with the server file.
(One convenient way to do the latter is to put the server file on a
networked file system such as NFS.)
@vindex server-auth-dir
@cindex server file
@vindex server-port @vindex server-port
When the Emacs server is using TCP, the variable @code{server-port} When you start a TCP Emacs server, Emacs creates a @dfn{server file}
determines the port number to listen on; the default value, containing the TCP information to be used by @command{emacsclient} to
@code{nil}, means to choose a random port when the server starts. connect to the server. The variable @code{server-auth-dir} specifies
the directory containing the server file; by default, this is
@file{~/.emacs.d/server/}. To tell @command{emacsclient} to connect
to the server over TCP with a specific server file, use the @samp{-f}
or @samp{--server-file} option, or set the @env{EMACS_SERVER_FILE}
environment variable.
@item -n @item -n
@itemx --no-wait @itemx --no-wait
...@@ -1606,19 +1593,14 @@ server it finds. (This option is not supported on MS-Windows.) ...@@ -1606,19 +1593,14 @@ server it finds. (This option is not supported on MS-Windows.)
@itemx --tty @itemx --tty
@itemx -nw @itemx -nw
Create a new client frame on the current text terminal, instead of Create a new client frame on the current text terminal, instead of
using an existing Emacs frame. This is similar to the @samp{-c} using an existing Emacs frame. This behaves just like the @samp{-c}
option, above, except that it creates a text terminal frame option, described above, except that it creates a text terminal frame
(@pxref{Non-Window Terminals}). If you omit a filename argument while (@pxref{Non-Window Terminals}).
supplying this option, the new frame displays the @file{*scratch*}
buffer (@pxref{Buffers}). See below for the special behavior of On MS-Windows, @samp{-t} behaves just like @samp{-c} if the Emacs
@kbd{C-x C-c} in a client frame. server is using the graphical display, but if the Emacs server is
running on a text terminal, it creates a new frame in the current text
On MS-Windows, a single Emacs session cannot display frames on both terminal.
graphical and text terminals, nor on multiple text terminals. Thus,
if the Emacs server is using the graphical display, @samp{-t} behaves
like @samp{-c} (see above); whereas if the Emacs server is running on
a text terminal, it creates a new frame in its current text terminal.
@xref{Windows Startup}.
@end table @end table
The new graphical or text terminal frames created by the @samp{-c} The new graphical or text terminal frames created by the @samp{-c}
......
...@@ -17,7 +17,6 @@ thing, but search for patterns instead of fixed strings. ...@@ -17,7 +17,6 @@ thing, but search for patterns instead of fixed strings.
(@pxref{Operating on Files}), or ask the @code{grep} program to do it (@pxref{Operating on Files}), or ask the @code{grep} program to do it
(@pxref{Grep Searching}). (@pxref{Grep Searching}).
@menu @menu
* Incremental Search:: Search happens as you type the string. * Incremental Search:: Search happens as you type the string.
* Nonincremental Search:: Specify entire string and then search. * Nonincremental Search:: Specify entire string and then search.
...@@ -218,6 +217,24 @@ search. ...@@ -218,6 +217,24 @@ search.
Some of the characters you type during incremental search have Some of the characters you type during incremental search have
special effects. special effects.
@cindex lax space matching
@kindex M-s SPC @r{(Incremental search)}
@kindex SPC @r{(Incremental search)}
@findex isearch-toggle-lax-whitespace
@vindex search-whitespace-regexp
By default, incremental search performs @dfn{lax space matching}:
each space, or sequence of spaces, matches any sequence of one or more
spaces in the text. Hence, @samp{foo bar} matches @samp{foo bar},
@samp{foo bar}, @samp{foo bar}, and so on (but not @samp{foobar}).
More precisely, Emacs matches each sequence of space characters in the
search string to a regular expression specified by the variable
@code{search-whitespace-regexp}. For example, set it to
@samp{"[[:space:]\n]+"} to make spaces match sequences of newlines as
well as spaces. To toggle lax space matching, type @kbd{M-s SPC}
(@code{isearch-toggle-lax-whitespace}). To disable this feature
entirely, change @code{search-whitespace-regexp} to @code{nil}; then
each space in the search string matches exactly one space
If the search string you entered contains only lower-case letters, If the search string you entered contains only lower-case letters,
the search is case-insensitive; as long as an upper-case letter exists the search is case-insensitive; as long as an upper-case letter exists
in the search string, the search becomes case-sensitive. If you in the search string, the search becomes case-sensitive. If you
...@@ -492,12 +509,12 @@ Incremental regexp and non-regexp searches have independent defaults. ...@@ -492,12 +509,12 @@ Incremental regexp and non-regexp searches have independent defaults.
They also have separate search rings, which you can access with They also have separate search rings, which you can access with
@kbd{M-p} and @kbd{M-n}. @kbd{M-p} and @kbd{M-n}.
@vindex search-whitespace-regexp Just as in ordinary incremental search, any @key{SPC} typed in
If you type @key{SPC} in incremental regexp search, it matches any incremental regexp search matches any sequence of one or more
sequence of whitespace characters, including newlines. If you want to whitespace characters. The variable @code{search-whitespace-regexp}
match just a space, type @kbd{C-q @key{SPC}}. You can control what a specifies the regexp for the lax space matching, and @kbd{M-s SPC}
bare space matches by setting the variable (@code{isearch-toggle-lax-whitespace}) toggles the feature.
@code{search-whitespace-regexp} to the desired regexp. @xref{Special Isearch}.
In some cases, adding characters to the regexp in an incremental In some cases, adding characters to the regexp in an incremental
regexp search can make the cursor move back and start again. For regexp search can make the cursor move back and start again. For
...@@ -974,6 +991,13 @@ instead (@pxref{Mark}). The basic replace commands replace one ...@@ -974,6 +991,13 @@ instead (@pxref{Mark}). The basic replace commands replace one
is possible to perform several replacements in parallel, using the is possible to perform several replacements in parallel, using the
command @code{expand-region-abbrevs} (@pxref{Expanding Abbrevs}). command @code{expand-region-abbrevs} (@pxref{Expanding Abbrevs}).
@vindex replace-lax-whitespace
Unlike incremental search, the replacement commands do not use lax
space matching (@pxref{Special Isearch}) by default. To enable lax
space matching for replacement, change the variable
@code{replace-lax-whitespace} to @code{t}. (This only affects how
Emacs finds the text to replace, not the replacement text.)
@menu @menu
* Unconditional Replace:: Replacing all matches for a string. * Unconditional Replace:: Replacing all matches for a string.
* Regexp Replace:: Replacing all matches for a regexp. * Regexp Replace:: Replacing all matches for a regexp.
......
2012-09-30 Chong Yidong <cyd@gnu.org>
* commands.texi (Click Events): Define "mouse position list".
Remove mention of unimplemented horizontal scroll bars.
(Drag Events, Motion Events): Refer to "mouse position list".
(Accessing Mouse): Document posnp.
* errors.texi (Standard Errors): Tweak arith-error description.
Tweak markup. Remove domain-error and friends, which seem to be
unused after the floating-point code revamp.
* functions.texi (Obsolete Functions): Obsolescence also affects
documentation commands. Various clarifications.
(Declare Form): New node.
* strings.texi (String Basics): Copyedits.
* os.texi (Idle Timers): Minor clarifications.
(User Identification): Add system-users and system-groups.
* macros.texi (Defining Macros): Move description of `declare' to
Declare Form node.
* loading.texi (Autoload):
* help.texi (Documentation Basics): The special sequences can
trigger autoloading.
* numbers.texi (Integer Basics): Copyedits.
(Float Basics): Consider IEEE floating point always available.
(Random Numbers): Document actual limits.
(Arithmetic Operations): Clarify division by zero. Don't mention
the machine-independence of negative division since it does not
happen in practice.
2012-09-28 Chong Yidong <cyd@gnu.org>
* os.texi (Startup Summary): Document leim-list.el change.
2012-09-25 Chong Yidong <cyd@gnu.org>
* functions.texi (Defining Functions): defun is now a macro.
2012-09-28 Leo Liu <sdl.web@gmail.com> 2012-09-28 Leo Liu <sdl.web@gmail.com>
* files.texi (Files): Fix typo. * files.texi (Files): Fix typo.
...