summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/emacs/ChangeLog25
-rw-r--r--doc/emacs/building.texi11
-rw-r--r--doc/emacs/calendar.texi4
-rw-r--r--doc/emacs/mark.texi2
-rw-r--r--doc/emacs/mini.texi2
-rw-r--r--doc/emacs/misc.texi12
-rw-r--r--doc/emacs/programs.texi2
-rw-r--r--doc/lispintro/ChangeLog9
-rw-r--r--doc/lispref/ChangeLog35
-rw-r--r--doc/lispref/commands.texi86
-rw-r--r--doc/lispref/edebug.texi2
-rw-r--r--doc/lispref/elisp.texi1
-rw-r--r--doc/lispref/functions.texi29
-rw-r--r--doc/lispref/keymaps.texi38
-rw-r--r--doc/lispref/loading.texi2
-rw-r--r--doc/lispref/locals.texi6
-rw-r--r--doc/lispref/maps.texi2
-rw-r--r--doc/lispref/minibuf.texi94
-rw-r--r--doc/lispref/tips.texi2
-rw-r--r--doc/lispref/windows.texi4
-rw-r--r--doc/man/ChangeLog8
-rw-r--r--doc/misc/ChangeLog21
-rw-r--r--doc/misc/cl.texi2
-rw-r--r--doc/misc/ede.texi23
-rw-r--r--doc/misc/message.texi4
-rw-r--r--doc/misc/url.texi6
26 files changed, 296 insertions, 136 deletions
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog
index 5c144833e1d..a8a43f56d9d 100644
--- a/doc/emacs/ChangeLog
+++ b/doc/emacs/ChangeLog
@@ -1,3 +1,28 @@
+2010-05-08 Chong Yidong <cyd@stupidchicken.com>
+
+ * building.texi (GDB Graphical Interface): Remove misleading comparison
+ to an IDE (Bug#6128).
+
+2010-05-08 Štěpán Němec <stepnem@gmail.com> (tiny change)
+
+ * programs.texi (Man Page):
+ * misc.texi (Invoking emacsclient):
+ * mini.texi (Repetition):
+ * mark.texi (Setting Mark): Fix typos.
+
+2010-05-08 Chong Yidong <cyd@stupidchicken.com>
+
+ * misc.texi (Printing): Document htmlfontify-buffer.
+
+2010-05-08 Glenn Morris <rgm@gnu.org>
+
+ * calendar.texi (Displaying the Diary, Format of Diary File):
+ Fix external cross-references for TeX format output.
+
+2010-05-07 Chong Yidong <cyd@stupidchicken.com>
+
+ * Version 23.2 released.
+
2010-05-02 Jan Djärv <jan.h.d@swipnet.se>
* cmdargs.texi (Initial Options): Mention --chdir.
diff --git a/doc/emacs/building.texi b/doc/emacs/building.texi
index 8637641f9e1..9a1ec894815 100644
--- a/doc/emacs/building.texi
+++ b/doc/emacs/building.texi
@@ -836,12 +836,11 @@ Fully qualified class name derived from the expression surrounding point
@subsection GDB Graphical Interface
The command @code{gdb} starts GDB in a graphical interface, using
-Emacs windows for display program state information. In effect, this
-makes Emacs into an IDE (interactive development environment). With
-it, you do not need to use textual GDB commands; you can control the
-debugging session with the mouse. For example, you can click in the
-fringe of a source buffer to set a breakpoint there, or on a stack
-frame in the stack buffer to select that frame.
+Emacs windows for display program state information. With it, you do
+not need to use textual GDB commands; you can control the debugging
+session with the mouse. For example, you can click in the fringe of a
+source buffer to set a breakpoint there, or on a stack frame in the
+stack buffer to select that frame.
This mode requires telling GDB that its ``screen size'' is
unlimited, so it sets the height and width accordingly. For correct
diff --git a/doc/emacs/calendar.texi b/doc/emacs/calendar.texi
index b2a356cb2cf..ae4333cefbb 100644
--- a/doc/emacs/calendar.texi
+++ b/doc/emacs/calendar.texi
@@ -1082,7 +1082,7 @@ of the new window shows the date of the diary entries. Holidays are
shown either in the buffer or in the mode line, depending on the display
method you choose
@iftex
-(@pxref{Diary Display,, emacs-xtra}).
+(@pxref{Diary Display,,, emacs-xtra, Specialized Emacs Features}).
@end iftex
@ifnottex
(@pxref{Diary Display}).
@@ -1186,7 +1186,7 @@ punctuation). For example:
This entry will have a different appearance if you use the simple diary
display
@iftex
-(@pxref{Diary Display,, emacs-xtra}).
+(@pxref{Diary Display,,, emacs-xtra, Specialized Emacs Features}).
@end iftex
@ifnottex
(@pxref{Diary Display}).
diff --git a/doc/emacs/mark.texi b/doc/emacs/mark.texi
index 217d5b1b06d..4d6b38ad713 100644
--- a/doc/emacs/mark.texi
+++ b/doc/emacs/mark.texi
@@ -80,7 +80,7 @@ Set the mark at point if the mark is inactive, then move point.
character in @acronym{ASCII}; usually, typing @kbd{C-@key{SPC}} on a
text terminal gives the character @kbd{C-@@}. This key is also bound
to @code{set-mark-command}, so unless you are unlucky enough to have
-an text terminal that behaves differently, you might as well think of
+a text terminal that behaves differently, you might as well think of
@kbd{C-@@} as @kbd{C-@key{SPC}}.}. This sets the mark where point is,
and activates it. You can then move point away, leaving the mark
behind.
diff --git a/doc/emacs/mini.texi b/doc/emacs/mini.texi
index 41943e5502d..1726a6780d5 100644
--- a/doc/emacs/mini.texi
+++ b/doc/emacs/mini.texi
@@ -601,7 +601,7 @@ repetition. If you type just @key{RET}, that repeats the command
unchanged. You can also change the command by editing the Lisp
expression before you execute it. The repeated command is added to
the front of the command history unless it is identical to the most
-recently item.
+recent item.
Once inside the minibuffer for @kbd{C-x @key{ESC} @key{ESC}}, you can
use the minibuffer history commands (@kbd{M-p}, @kbd{M-n}, @kbd{M-r},
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi
index 7944a6b85e7..8c89c7b7a27 100644
--- a/doc/emacs/misc.texi
+++ b/doc/emacs/misc.texi
@@ -1528,7 +1528,7 @@ still use Emacs to edit the file.
@kbd{C-x #} (@code{server-edit}) in its buffer. This saves the file
and sends a message back to the @command{emacsclient} program, telling
it to exit. Programs that use @env{EDITOR} usually wait for the
-``editor''---in the case @command{emacsclient}---to exit before doing
+``editor''---in this case @command{emacsclient}---to exit before doing
something else.
You can also call @command{emacsclient} with multiple file name
@@ -1701,8 +1701,14 @@ process, type @kbd{M-x kill-emacs}.
Emacs provides commands for printing hard copies of either an entire
buffer or just part of one, with or without page headers. You can
invoke the printing commands directly, as detailed in the following
-section, or using the @samp{File} menu on the menu bar. See also the
-hardcopy commands of Dired (@pxref{Misc File Ops}) and the diary
+section, or using the @samp{File} menu on the menu bar.
+
+@findex htmlfontify-buffer
+ Aside from the commands described in this section, you can also
+``print'' an Emacs buffer to HTML with @kbd{M-x htmlfontify-buffer}.
+This command converts the current buffer to a HTML file, replacing
+Emacs faces with CSS-based markup. In addition, see the hardcopy
+commands of Dired (@pxref{Misc File Ops}) and the diary
(@pxref{Displaying the Diary}).
@table @kbd
diff --git a/doc/emacs/programs.texi b/doc/emacs/programs.texi
index 72aa8ff121a..72541eccc6f 100644
--- a/doc/emacs/programs.texi
+++ b/doc/emacs/programs.texi
@@ -1202,7 +1202,7 @@ completion based on the list of manual pages that are installed on
your machine; the list of available manual pages is computed
automatically the first time you invoke @code{woman}. The word at
point in the current buffer is used to suggest the default for the
-name the manual page.
+name of the manual page.
With a numeric argument, @kbd{M-x woman} recomputes the list of the
manual pages used for completion. This is useful if you add or delete
diff --git a/doc/lispintro/ChangeLog b/doc/lispintro/ChangeLog
index 23e5a6976b7..914e1d81098 100644
--- a/doc/lispintro/ChangeLog
+++ b/doc/lispintro/ChangeLog
@@ -1,3 +1,7 @@
+2010-05-07 Chong Yidong <cyd@stupidchicken.com>
+
+ * Version 23.2 released.
+
2010-03-10 Chong Yidong <cyd@stupidchicken.com>
* Branch for 23.2.
@@ -13,8 +17,7 @@
2009-12-09 David Robinow <drobinow@gmail.com> (tiny change)
- * makefile.w32-in: Use parenthesis for macros for nmake
- compatibility.
+ * makefile.w32-in: Use parenthesis for macros for nmake compatibility.
2009-12-03 Glenn Morris <rgm@gnu.org>
@@ -72,7 +75,7 @@
2009-02-22 Karl Berry <karl@gnu.org>
- * emacs-lisp-intro.texi (Default Configuration): fix dup word "by by".
+ * emacs-lisp-intro.texi (Default Configuration): Fix dup word "by by".
2009-02-20 Juanma Barranquero <lekktu@gmail.com>
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog
index c6fe4ea9065..94a0e72ca85 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog
@@ -1,8 +1,37 @@
+2010-05-08 Štěpán Němec <stepnem@gmail.com> (tiny change)
+
+ * windows.texi (Textual Scrolling):
+ * tips.texi (Coding Conventions):
+ * minibuf.texi (Minibuffer History):
+ * maps.texi (Standard Keymaps):
+ * loading.texi (Where Defined):
+ * edebug.texi (Instrumenting): Fix typos.
+
+2010-05-08 Chong Yidong <cyd@stupidchicken.com>
+
+ * keymaps.texi (Menu Bar): Document :advertised-binding property.
+
+ * functions.texi (Obsolete Functions):
+ Document set-advertised-calling-convention.
+
+ * minibuf.texi (Basic Completion): Document completion-in-region.
+ (Programmed Completion): Document completion-annotate-function.
+
+ * commands.texi (Reading One Event): Document read-key.
+ (Distinguish Interactive): Document KIND arg to
+ called-interactively-p. Delete obsolete interactive-p.
+
+ * elisp.texi (Top): Update node description.
+
2010-05-08 Eli Zaretskii <eliz@gnu.org>
- * nonascii.texi (Character Properties): Document
- unicode-category-table. Add an index entry for Unicode general
- category.
+ * nonascii.texi (Character Properties):
+ Document unicode-category-table. Add an index entry for Unicode
+ general category.
+
+2010-05-07 Chong Yidong <cyd@stupidchicken.com>
+
+ * Version 23.2 released.
2010-04-20 Juanma Barranquero <lekktu@gmail.com>
diff --git a/doc/lispref/commands.texi b/doc/lispref/commands.texi
index b6d56ffc37a..463443f8e10 100644
--- a/doc/lispref/commands.texi
+++ b/doc/lispref/commands.texi
@@ -696,71 +696,67 @@ message when called from a keyboard macro.
because it allows callers to say ``treat this call as interactive.''
But you can also do the job by testing @code{called-interactively-p}.
-@defun called-interactively-p
+@defun called-interactively-p kind
This function returns @code{t} when the calling function was called
using @code{call-interactively}.
-If the containing function was called by Lisp evaluation (or with
-@code{apply} or @code{funcall}), then it was not called interactively.
+The argument @var{kind} should be either the symbol @code{interactive}
+or the symbol @code{any}. If it is @code{interactive}, then
+@code{called-interactively-p} returns @code{t} only if the call was
+made directly by the user---e.g., if the user typed a key sequence
+bound to the calling function, but @emph{not} if the user ran a
+keyboard macro that called the function (@pxref{Keyboard Macros}). If
+@var{kind} is @code{any}, @code{called-interactively-p} returns
+@code{t} for any kind of interactive call, including keyboard macros.
+
+If in doubt, use @code{any}; the only known proper use of
+@code{interactive} is if you need to decide whether to display a
+helpful message while a function is running.
+
+A function is never considered to be called interactively if it was
+called via Lisp evaluation (or with @code{apply} or @code{funcall}).
@end defun
- Here's an example of using @code{called-interactively-p}:
+@noindent
+Here is an example of using @code{called-interactively-p}:
@example
@group
(defun foo ()
(interactive)
- (when (called-interactively-p)
- (message "foo"))
- 'haha)
- @result{} foo
+ (when (called-interactively-p 'any)
+ (message "Interactive!")
+ 'foo-called-interactively))
@end group
@group
;; @r{Type @kbd{M-x foo}.}
- @print{} foo
+ @print{} Interactive!
@end group
@group
(foo)
- @result{} haha
+ @result{} nil
@end group
@end example
- Here is another example that contrasts direct and indirect
-calls to @code{called-interactively-p}.
+@noindent
+Here is another example that contrasts direct and indirect calls to
+@code{called-interactively-p}.
@example
@group
(defun bar ()
(interactive)
- (setq foobar (list (foo) (called-interactively-p))))
- @result{} bar
+ (message "%s" (list (foo) (called-interactively-p 'any))))
@end group
@group
;; @r{Type @kbd{M-x bar}.}
-;; @r{This does not display a message.}
-@end group
-
-@group
-foobar
- @result{} (nil t)
+ @print{} (nil t)
@end group
@end example
- If you want to treat commands run in keyboard macros just like calls
-from Lisp programs, test @code{interactive-p} instead of
-@code{called-interactively-p}.
-
-@defun interactive-p
-This function returns @code{t} if the containing function (the one
-whose code includes the call to @code{interactive-p}) was called in
-direct response to user input. This means that it was called with the
-function @code{call-interactively}, and that a keyboard macro is
-not running, and that Emacs is not running in batch mode.
-@end defun
-
@node Command Loop Info
@comment node-name, next, previous, up
@section Information from the Command Loop
@@ -2309,10 +2305,8 @@ and key sequences read from keyboard macros being executed.
@cindex reading a single event
@cindex event, reading only one
- The lowest level functions for command input are those that read a
-single event.
-
-None of the three functions below suppresses quitting.
+ The lowest level functions for command input are @code{read-event},
+@code{read-char}, and @code{read-char-exclusive}.
@defun read-event &optional prompt inherit-input-method seconds
This function reads and returns the next event of command input, waiting
@@ -2409,11 +2403,31 @@ user generates an event which is not a character,
gets a character. The arguments work as in @code{read-event}.
@end defun
+ None of the above functions suppress quitting.
+
@defvar num-nonmacro-input-events
This variable holds the total number of input events received so far
from the terminal---not counting those generated by keyboard macros.
@end defvar
+ We emphasize that, unlike @code{read-key-sequence}, the functions
+@code{read-event}, @code{read-char}, and @code{read-char-exclusive} do
+not perform the translations described in @ref{Translation Keymaps}.
+If you wish to read a single key taking these translations into
+account, use the function @code{read-key}:
+
+@defun read-key &optional prompt
+This function reads a single key. It is ``intermediate'' between
+@code{read-key-sequence} and @code{read-event}. Unlike the former, it
+reads a single key, not a key sequence. Unlike the latter, it does
+not return a raw event, but decodes and translates the user input
+according to @code{input-decode-map}, @code{local-function-key-map},
+and @code{key-translation-map} (@pxref{Translation Keymaps}).
+
+The argument @var{prompt} is either a string to be displayed in the
+echo area as a prompt, or @code{nil}, meaning not to display a prompt.
+@end defun
+
@node Event Mod
@subsection Modifying and Translating Input Events
diff --git a/doc/lispref/edebug.texi b/doc/lispref/edebug.texi
index c68b342c5e6..fba83980cd1 100644
--- a/doc/lispref/edebug.texi
+++ b/doc/lispref/edebug.texi
@@ -186,7 +186,7 @@ instrument any top-level form regardless of the values of
While Edebug is active, the command @kbd{I}
(@code{edebug-instrument-callee}) instruments the definition of the
-function or macro called by the list form after point, if is not already
+function or macro called by the list form after point, if it is not already
instrumented. This is possible only if Edebug knows where to find the
source for that function; for this reason, after loading Edebug,
@code{eval-region} records the position of every definition it
diff --git a/doc/lispref/elisp.texi b/doc/lispref/elisp.texi
index 8d20ed6a970..0f746187212 100644
--- a/doc/lispref/elisp.texi
+++ b/doc/lispref/elisp.texi
@@ -649,7 +649,6 @@ Minibuffers
Completion
* Basic Completion:: Low-level functions for completing strings.
- (These are too low level to use the minibuffer.)
* Minibuffer Completion:: Invoking the minibuffer with completion.
* Completion Commands:: Minibuffer commands that do completion.
* High-Level Completion:: Convenient special cases of completion
diff --git a/doc/lispref/functions.texi b/doc/lispref/functions.texi
index 9e6834383ae..37e8726592a 100644
--- a/doc/lispref/functions.texi
+++ b/doc/lispref/functions.texi
@@ -1197,7 +1197,7 @@ was first made obsolete---for example, a date or a release number.
@end defun
You can define a function as an alias and declare it obsolete at the
-same time using the macro @code{define-obsolete-function-alias}.
+same time using the macro @code{define-obsolete-function-alias}:
@defmac define-obsolete-function-alias obsolete-name current-name &optional when docstring
This macro marks the function @var{obsolete-name} obsolete and also
@@ -1210,6 +1210,33 @@ equivalent to the following:
@end example
@end defmac
+In addition, you can mark a certain a particular calling convention
+for a function as obsolete:
+
+@defun set-advertised-calling-convention function signature
+This function specifies the argument list @var{signature} as the
+correct way to call @var{function}. This causes the Emacs byte
+compiler to issue a warning whenever it comes across an Emacs Lisp
+program that calls @var{function} any other way (however, it will
+still allow the code to be byte compiled).
+
+For instance, in old versions of Emacs the @code{sit-for} function
+accepted three arguments, like this
+
+@smallexample
+ (sit-for seconds milliseconds nodisp)
+@end smallexample
+
+However, calling @code{sit-for} this way is considered obsolete
+(@pxref{Waiting}). The old calling convention is deprecated like
+this:
+
+@smallexample
+(set-advertised-calling-convention
+ 'sit-for '(seconds &optional nodisp))
+@end smallexample
+@end defun
+
@node Inline Functions
@section Inline Functions
@cindex inline functions
diff --git a/doc/lispref/keymaps.texi b/doc/lispref/keymaps.texi
index d903d9c5aa6..d886b990dd8 100644
--- a/doc/lispref/keymaps.texi
+++ b/doc/lispref/keymaps.texi
@@ -2470,9 +2470,13 @@ can do it this way:
@cindex menu bar
Most window systems allow each frame to have a @dfn{menu bar}---a
-permanently displayed menu stretching horizontally across the top of the
-frame. The items of the menu bar are the subcommands of the fake
-``function key'' @code{menu-bar}, as defined in the active keymaps.
+permanently displayed menu stretching horizontally across the top of
+the frame. (In order for a frame to display a menu bar, its
+@code{menu-bar-lines} parameter must be greater than zero.
+@xref{Layout Parameters}.)
+
+ The items of the menu bar are the subcommands of the fake ``function
+key'' @code{menu-bar}, as defined in the active keymaps.
To add an item to the menu bar, invent a fake ``function key'' of your
own (let's call it @var{key}), and make a binding for the key sequence
@@ -2490,13 +2494,6 @@ determining the menu bar contents. That is, the menu bar is computed
from the keymaps that would be active if @code{overriding-local-map}
were @code{nil}. @xref{Active Keymaps}.
- In order for a frame to display a menu bar, its @code{menu-bar-lines}
-parameter must be greater than zero. Emacs uses just one line for the
-menu bar itself; if you specify more than one line, the other lines
-serve to separate the menu bar from the windows in the frame. We
-recommend 1 or 2 as the value of @code{menu-bar-lines}. @xref{Layout
-Parameters}.
-
Here's an example of setting up a menu bar item:
@example
@@ -2535,8 +2532,8 @@ bar item:
@end example
@noindent
-@code{edit} is the fake function key used by the global map for the
-@samp{Edit} menu bar item. The main reason to suppress a global
+Here, @code{edit} is the fake function key used by the global map for
+the @samp{Edit} menu bar item. The main reason to suppress a global
menu bar item is to regain space for mode-specific items.
@defvar menu-bar-final-items
@@ -2557,6 +2554,23 @@ advise you to ensure that the functions it calls do not take much time
in the usual case.
@end defvar
+Next to every menu bar item, Emacs displays a key binding that runs
+the same command (if such a key binding exists). This serves as a
+convenient hint for users who do not know the key binding. If a
+command has multiple bindings, Emacs normally displays the first one
+it finds. You can specify one particular key binding by assigning an
+@code{:advertised-binding} symbol property to the command. For
+instance, the following tells Emacs to show @kbd{C-/} for the
+@code{undo} menu item:
+
+@smallexample
+(put 'undo :advertised-binding [?\C-/])
+@end smallexample
+
+@noindent
+If the @code{:advertised-binding} property specifies a key binding
+that the command does not actually have, it is ignored.
+
@node Tool Bar
@subsection Tool bars
@cindex tool bar
diff --git a/doc/lispref/loading.texi b/doc/lispref/loading.texi
index ec10c51b236..7e3240d72de 100644
--- a/doc/lispref/loading.texi
+++ b/doc/lispref/loading.texi
@@ -823,7 +823,7 @@ without extension.
@code{load-history}.
@defvar load-history
-This value of this variable is an alist that associates the names of
+The value of this variable is an alist that associates the names of
loaded library files with the names of the functions and variables
they defined, as well as the features they provided or required.
diff --git a/doc/lispref/locals.texi b/doc/lispref/locals.texi
index 2013d546457..0bef9cb3554 100644
--- a/doc/lispref/locals.texi
+++ b/doc/lispref/locals.texi
@@ -85,6 +85,9 @@ Minor mode variables will not be listed here.
@item case-fold-search
@xref{Searching and Case}.
+@item comment-column
+@xref{Comments,,, emacs, The GNU Emacs Manual}.
+
@item ctl-arrow
@xref{Usual Display}.
@@ -94,9 +97,6 @@ Minor mode variables will not be listed here.
@item cursor-type
@xref{Cursor Parameters}.
-@item comment-column
-@xref{Comments,,, emacs, The GNU Emacs Manual}.
-
@item default-directory
@xref{File Name Expansion}.
diff --git a/doc/lispref/maps.texi b/doc/lispref/maps.texi
index 232d38d63c0..a5b126afcb2 100644
--- a/doc/lispref/maps.texi
+++ b/doc/lispref/maps.texi
@@ -163,7 +163,7 @@ search.
@item key-translation-map
A keymap for translating keys. This one overrides ordinary key
-bindings, unlike @code{local- function-key-map}. @xref{Translation
+bindings, unlike @code{local-function-key-map}. @xref{Translation
Keymaps}.
@item kmacro-map
diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi
index 45335c29839..66b4cb096cc 100644
--- a/doc/lispref/minibuf.texi
+++ b/doc/lispref/minibuf.texi
@@ -511,7 +511,7 @@ set to a non-@code{nil} value.
@defopt history-length
The value of this variable specifies the maximum length for all
history lists that don't specify their own maximum lengths. If the
-value is @code{t}, that means there no maximum (don't delete old
+value is @code{t}, that means there is no maximum (don't delete old
elements). The value of @code{history-length} property of the history
list variable's symbol, if set, overrides this variable for that
particular history list.
@@ -626,7 +626,6 @@ for reading certain kinds of names with completion.
@menu
* Basic Completion:: Low-level functions for completing strings.
- (These are too low level to use the minibuffer.)
* Minibuffer Completion:: Invoking the minibuffer with completion.
* Completion Commands:: Minibuffer commands that do completion.
* High-Level Completion:: Convenient special cases of completion
@@ -640,31 +639,23 @@ for reading certain kinds of names with completion.
@node Basic Completion
@subsection Basic Completion Functions
- The completion functions @code{try-completion},
-@code{all-completions} and @code{test-completion} have nothing in
-themselves to do with minibuffers. We describe them in this chapter
-so as to keep them near the higher-level completion features that do
-use the minibuffer.
-
- If you store a completion alist in a variable, you should mark the
-variable as ``risky'' with a non-@code{nil}
-@code{risky-local-variable} property.
+ The following completion functions have nothing in themselves to do
+with minibuffers. We describe them here to keep them near the
+higher-level completion features that do use the minibuffer.
@defun try-completion string collection &optional predicate
This function returns the longest common substring of all possible
completions of @var{string} in @var{collection}. The value of
@var{collection} must be a list of strings or symbols, an alist, an
-obarray, a hash table, or a function that implements a virtual set of
-strings (see below).
+obarray, a hash table, or a completion function (@pxref{Programmed
+Completion}).
Completion compares @var{string} against each of the permissible
-completions specified by @var{collection}; if the beginning of the
-permissible completion equals @var{string}, it matches. If no permissible
-completions match, @code{try-completion} returns @code{nil}. If only
-one permissible completion matches, and the match is exact, then
-@code{try-completion} returns @code{t}. Otherwise, the value is the
-longest initial sequence common to all the permissible completions that
-match.
+completions specified by @var{collection}. If no permissible
+completions match, @code{try-completion} returns @code{nil}. If there
+is just one matching completion, and the match is exact, it returns
+@code{t}. Otherwise, it returns the longest initial sequence common
+to all possible matching completions.
If @var{collection} is an alist (@pxref{Association Lists}), the
permissible completions are the elements of the alist that are either
@@ -688,13 +679,13 @@ Also, you cannot intern a given symbol in more than one obarray.
If @var{collection} is a hash table, then the keys that are strings
are the possible completions. Other keys are ignored.
-You can also use a symbol that is a function as @var{collection}. Then
-the function is solely responsible for performing completion;
+You can also use a symbol that is a function as @var{collection}.
+Then the function is solely responsible for performing completion;
@code{try-completion} returns whatever this function returns. The
function is called with three arguments: @var{string}, @var{predicate}
-and @code{nil}. (The reason for the third argument is so that the same
+and @code{nil} (the reason for the third argument is so that the same
function can be used in @code{all-completions} and do the appropriate
-thing in either case.) @xref{Programmed Completion}.
+thing in either case). @xref{Programmed Completion}.
If the argument @var{predicate} is non-@code{nil}, then it must be a
function of one argument, unless @var{collection} is a hash table, in
@@ -823,6 +814,10 @@ the values @var{string}, @var{predicate} and @code{lambda}; whatever
it returns, @code{test-completion} returns in turn.
@end defun
+If you store a completion alist in a variable, you should mark the
+variable as ``risky'' with a non-@code{nil}
+@code{risky-local-variable} property. @xref{File Local Variables}.
+
@defvar completion-ignore-case
If the value of this variable is non-@code{nil}, Emacs does not
consider case significant in completion. Note, however, that this
@@ -855,6 +850,23 @@ Here is an example of use:
@end smallexample
@end defmac
+The function @code{completion-in-region} provides a convenient way to
+perform completion on an arbitrary stretch of text in an Emacs buffer:
+
+@defun completion-in-region start end collection &optional predicate
+This function completes the text in the current buffer between the
+positions @var{start} and @var{end}, using @var{collection}. The
+argument @var{collection} has the same meaning as in
+@code{try-completion} (@pxref{Basic Completion}).
+
+This function inserts the completion text directly into the current
+buffer. Unlike @code{completing-read} (@pxref{Minibuffer
+Completion}), it does not activate the minibuffer.
+
+For this function to work, point must be somewhere between @var{start}
+and @var{end}.
+@end defun
+
@node Minibuffer Completion
@subsection Completion and the Minibuffer
@cindex minibuffer completion
@@ -869,12 +881,12 @@ providing completion. It activates the minibuffer with prompt
@var{prompt}, which must be a string.
The actual completion is done by passing @var{collection} and
-@var{predicate} to the function @code{try-completion}. This happens
-in certain commands bound in the local keymaps used for completion.
-Some of these commands also call @code{test-completion}. Thus, if
-@var{predicate} is non-@code{nil}, it should be compatible with
-@var{collection} and @code{completion-ignore-case}. @xref{Definition
-of test-completion}.
+@var{predicate} to the function @code{try-completion} (@pxref{Basic
+Completion}). This happens in certain commands bound in the local
+keymaps used for completion. Some of these commands also call
+@code{test-completion}. Thus, if @var{predicate} is non-@code{nil},
+it should be compatible with @var{collection} and
+@code{completion-ignore-case}. @xref{Definition of test-completion}.
The value of the optional argument @var{require-match} determines how
the user may exit the minibuffer:
@@ -1603,8 +1615,10 @@ which performs completion according to the rules used in Emacs 21; and
Sometimes it is not possible to create an alist or an obarray
containing all the intended possible completions. In such a case, you
-can supply your own function to compute the completion of a given string.
-This is called @dfn{programmed completion}.
+can supply your own function to compute the completion of a given
+string. This is called @dfn{programmed completion}. Emacs uses
+programmed completion when completing file names (@pxref{File Name
+Completion}).
To use this feature, pass a symbol with a function definition as the
@var{collection} argument to @code{completing-read}. The function
@@ -1659,9 +1673,6 @@ unreliable to treat one differently just because it is also a possible
function. So you must arrange for any function you wish to use for
completion to be encapsulated in a symbol.
- Emacs uses programmed completion when completing file names.
-@xref{File Name Completion}.
-
@defun completion-table-dynamic function
This function is a convenient way to write a function that can act as
programmed completion function. The argument @var{function} should be
@@ -1671,6 +1682,19 @@ possible completions of it. You can think of
and the interface for programmed completion functions.
@end defun
+@defvar completion-annotate-function
+The value of this variable, if non-@code{nil}, should be a function
+for ``annotating'' the entries in the @samp{*Completions*} buffer.
+The function should accept a single argument, the completion string
+for an entry. It should return an additional string to display next
+to that entry in the @samp{*Completions*} buffer, or @code{nil} if no
+additional string is to be displayed.
+
+The function can determine the collection used for the current
+completion via the variable @code{minibuffer-completion-table}
+(@pxref{Completion Commands}).
+@end defvar
+
@node Yes-or-No Queries
@section Yes-or-No Queries
@cindex asking the user questions
diff --git a/doc/lispref/tips.texi b/doc/lispref/tips.texi
index bea513df044..c1f1423dabf 100644
--- a/doc/lispref/tips.texi
+++ b/doc/lispref/tips.texi
@@ -90,7 +90,7 @@ Put a call to @code{provide} at the end of each separate Lisp file.
If a file requires certain other Lisp programs to be loaded
beforehand, then the comments at the beginning of the file should say
so. Also, use @code{require} to make sure they are loaded.
-x@xref{Named Features}.
+@xref{Named Features}.
@item
If a file @var{foo} uses a macro defined in another file @var{bar},
diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi
index 0e1062a622f..de7ebbc405e 100644
--- a/doc/lispref/windows.texi
+++ b/doc/lispref/windows.texi
@@ -1661,8 +1661,8 @@ point should be placed from the bottom of the window; thus, as with
@end defopt
@defopt scroll-step
-This variable is an older variant of @code{scroll-conservatively}. The
-difference is that it if its value is @var{n}, that permits scrolling
+This variable is an older variant of @code{scroll-conservatively}.
+The difference is that if its value is @var{n}, that permits scrolling
only by precisely @var{n} lines, not a smaller number. This feature
does not work with @code{scroll-margin}. The default value is zero.
@end defopt
diff --git a/doc/man/ChangeLog b/doc/man/ChangeLog
index e9313979d95..2b2cbb90a9e 100644
--- a/doc/man/ChangeLog
+++ b/doc/man/ChangeLog
@@ -1,11 +1,15 @@
+2010-05-07 Chong Yidong <cyd@stupidchicken.com>
+
+ * Version 23.2 released.
+
2010-03-10 Chong Yidong <cyd@stupidchicken.com>
* Branch for 23.2.
2010-01-09 Chong Yidong <cyd@stupidchicken.com>
- * emacs.1: Copyedits. Update options -Q, -mm and --daemon. Remove
- deprecated --unibyte option.
+ * emacs.1: Copyedits. Update options -Q, -mm and --daemon.
+ Remove deprecated --unibyte option.
2009-06-21 Chong Yidong <cyd@stupidchicken.com>
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog
index 01657f65ade..c4fe0c9f3ae 100644
--- a/doc/misc/ChangeLog
+++ b/doc/misc/ChangeLog
@@ -1,11 +1,28 @@
+2010-05-08 Štěpán Němec <stepnem@gmail.com> (tiny change)
+
+ * url.texi (HTTP language/coding, Customization):
+ * message.texi (Header Commands, Responses):
+ * cl.texi (Argument Lists): Fix typos.
+
+2010-05-08 Chong Yidong <cyd@stupidchicken.com>
+
+ * ede.texi (EDE Mode): Refer to init file rather than `.emacs'.
+ Note that Development menu is always available.
+ (Creating a project): Fix terminology.
+ (Add/Remove files): Fix typo.
+
+2010-05-07 Chong Yidong <cyd@stupidchicken.com>
+
+ * Version 23.2 released.
+
2010-05-01 Daniel E. Doherty <ddoherty03@gmail.com> (tiny change)
* calc.texi (Tutorial): Use "^{\prime}" to indicate primes.
2010-05-01 Michael Albinus <michael.albinus@gmx.de>
- * tramp.texi (Inline methods, Default Method): Mention
- `tramp-inline-compress-start-size'.
+ * tramp.texi (Inline methods, Default Method):
+ Mention `tramp-inline-compress-start-size'.
2010-04-18 Teodor Zlatanov <tzz@lifelogs.com>
diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi
index 84f9b67b938..39561341b0d 100644
--- a/doc/misc/cl.texi
+++ b/doc/misc/cl.texi
@@ -356,7 +356,7 @@ is defined is automatically proclaimed @code{inline}, i.e.,
calls to it may be expanded into in-line code by the byte compiler.
This is analogous to the @code{defsubst} form;
@code{defsubst*} uses a different method (compiler macros) which
-works in all version of Emacs, and also generates somewhat more
+works in all versions of Emacs, and also generates somewhat more
efficient inline expansions. In particular, @code{defsubst*}
arranges for the processing of keyword arguments, default values,
etc., to be done at compile-time whenever possible.
diff --git a/doc/misc/ede.texi b/doc/misc/ede.texi
index 035f0f0f187..ace3c25914d 100644
--- a/doc/misc/ede.texi
+++ b/doc/misc/ede.texi
@@ -129,27 +129,26 @@ information.
@node EDE Mode, Creating a project, EDE Project Concepts, top
@chapter @ede{} Mode
-@ede{} is implemented as a minor-mode, which augments other modes such
+@ede{} is implemented as a minor mode, which augments other modes such
as C mode, and Texinfo mode. You can enable @ede{} for all buffers by
running the command @code{global-ede-mode}, or by putting this in your
-@file{~/.emacs} file:
+init file:
@example
(global-ede-mode t)
@end example
-When @ede{} is active for a given buffer, the menu item
-``Development'' appears. This menu provides several menu items for
-high-level @ede{} commands. These menu items, and their corresponding
-keybindings, are independent of the type of project you are actually
-working on.
+Activating @ede{} adds a menu named @samp{Development} to the menu
+bar. This menu provides several menu items for high-level @ede{}
+commands. These menu items, and their corresponding keybindings, are
+independent of the type of project you are actually working on.
@node Creating a project, Modifying your project, EDE Mode, top
@chapter Creating a project
To create a new project, first visit a file that you want to include
-in that project. If you have a hierarchy of directories, choose a
-file in the topmost directory first. From this buffer, type @kbd{M-x
+in that project. If you have a hierarchy of directories, first visit
+a file in the topmost directory. From this buffer, type @kbd{M-x
ede-new}, or click on the @samp{Create Project} item in the
@samp{Development} menu.
@@ -220,8 +219,8 @@ detailed information about exactly what these features do.
@node Add/Remove target, Add/Remove files, Modifying your project, Modifying your project
@section Add/Remove target
-To create a new target, type @kbd{C-c . t} (@code{M-x ede-new-target})
-or use the @samp{Add Target} menu item in the @samp{Project Options}
+To create a new target, type @kbd{C-c . t} (@code{ede-new-target}) or
+use the @samp{Add Target} menu item in the @samp{Project Options}
submenu. This prompts for a target name, and adds the current buffer
to that target.
@@ -237,7 +236,7 @@ Options} submenu.
@section Add/Remove files
To add the current file to an existing target, type @kbd{C-c . a}
-(@code{ede-add-file}), or or use the @samp{Add File} menu item in the
+(@code{ede-add-file}), or use the @samp{Add File} menu item in the
@samp{Target Options} submenu.
You can add a file to more than one target; this is OK.
diff --git a/doc/misc/message.texi b/doc/misc/message.texi
index 6f509b5ed5d..1667c5ca503 100644
--- a/doc/misc/message.texi
+++ b/doc/misc/message.texi
@@ -659,7 +659,7 @@ address from @code{To:} and @code{Cc:} headers.
@findex message-insert-disposition-notification-to
Insert a request for a disposition
notification. (@code{message-insert-disposition-notification-to}).
-This means that if the recipient support RFC 2298 she might send you a
+This means that if the recipient supports RFC 2298 she might send you a
notification that she received the message.
@item M-x message-insert-importance-high
@@ -2387,7 +2387,7 @@ consulted, in turn:
@item wide reply
A @dfn{wide reply} is a mail response that includes @emph{all} entities
-mentioned in the message you are responded to. All mailboxes from the
+mentioned in the message you are responding to. All mailboxes from the
following headers will be concatenated to form the outgoing
@code{To}/@code{Cc} headers:
diff --git a/doc/misc/url.texi b/doc/misc/url.texi
index c9c0d320ac2..ea7f3211f52 100644
--- a/doc/misc/url.texi
+++ b/doc/misc/url.texi
@@ -313,7 +313,7 @@ encoding of documents which servers may honor. For each of these
variables, the value is a string; it can specify a single choice, or
it can be a comma-separated list.
-Normally this list ordered by descending preference. However, each
+Normally, this list is ordered by descending preference. However, each
element can be followed by @samp{;q=@var{priority}} to specify its
preference level, a decimal number from 0 to 1; e.g., for
@code{url-mime-language-string}, @w{@code{"de, en-gb;q=0.8,
@@ -1120,11 +1120,11 @@ general operation of the package.
@defopt url-debug
@cindex debugging
-Specifies the types of debug messages the library which are logged to
+Specifies the types of debug messages which are logged to
the @code{*URL-DEBUG*} buffer.
@code{t} means log all messages.
A number means log all messages and show them with @code{message}.
-If may also be a list of the types of messages to be logged.
+It may also be a list of the types of messages to be logged.
@end defopt
@defopt url-personal-mail-address
@end defopt