emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r108168: Merge from emacs-24; up to r


From: Glenn Morris
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r108168: Merge from emacs-24; up to r107984
Date: Tue, 08 May 2012 20:06:08 -0700
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 108168 [merge]
committer: Glenn Morris <address@hidden>
branch nick: trunk
timestamp: Tue 2012-05-08 20:06:08 -0700
message:
  Merge from emacs-24; up to r107984
modified:
  admin/FOR-RELEASE
  doc/emacs/ChangeLog
  doc/emacs/frames.texi
  doc/lispintro/ChangeLog
  doc/lispintro/emacs-lisp-intro.texi
  doc/lispref/ChangeLog
  doc/lispref/Makefile.in
  doc/lispref/compile.texi
  doc/lispref/control.texi
  doc/lispref/customize.texi
  doc/lispref/edebug.texi
  doc/lispref/eval.texi
  doc/lispref/functions.texi
  doc/lispref/internals.texi
  doc/lispref/loading.texi
  doc/lispref/macros.texi
  doc/lispref/minibuf.texi
  doc/lispref/sequences.texi
  doc/lispref/streams.texi
  doc/lispref/symbols.texi
  doc/lispref/two-volume.make
  lisp/ChangeLog
  lisp/ansi-color.el
  lisp/emacs-lisp/package.el
  lisp/files.el
  lisp/shell.el
  src/ChangeLog
  src/w32proc.c
=== modified file 'admin/FOR-RELEASE'
--- a/admin/FOR-RELEASE 2012-04-30 07:46:03 +0000
+++ b/admin/FOR-RELEASE 2012-05-08 06:44:18 +0000
@@ -31,6 +31,15 @@
 things to avoid these.  (AFAIK, there is no way to find these except
 paging through the whole manual.)  This should be the very last thing
 you do, since any change can alter the layout.
+(Actually, there is probably little point in trying to do this.
+It's only really relevant if printed versions of the manuals are going
+to be published.  End-users are not likely to print out all 1000+
+pages of the manuals, and even if they do, the resulting page breaks
+depend on what paper and font size they use.  This also means that if
+you _are_ going to do this, it should be done with the paper and font
+size that the GNU Press are going to use when they print the manuals.
+I think this is different to what you get if you just use eg `make
+emacs.pdf' (e.g., enable "smallbook").
 
 ** Check the keybindings in the refcards are correct, and add any new ones.
 Regenerate the pdf versions in etc/refcards/.

=== modified file 'doc/emacs/ChangeLog'
--- a/doc/emacs/ChangeLog       2012-05-05 04:32:58 +0000
+++ b/doc/emacs/ChangeLog       2012-05-09 03:06:08 +0000
@@ -1,3 +1,49 @@
+2012-05-09  Chong Yidong  <address@hidden>
+
+       * frames.texi (Mouse References, Mouse Commands): Fix index
+       entries (Bug#11362).
+
+2012-05-09  Glenn Morris  <address@hidden>
+
+       * custom.texi (Customization Groups, Custom Themes, Examining):
+       Improve page breaks.
+
+       * rmail.texi (Rmail Display): Use example rather than smallexample.
+
+       * calendar.texi: Convert inforefs to refs.
+
+       * dired.texi (Dired Enter): Improve page break.
+
+       * abbrevs.texi (Abbrev Concepts): Copyedits.
+
+       * maintaining.texi (Registering, Tag Syntax):
+       Tweak line and page breaks.
+
+       * programs.texi (Programs, Electric C): Copyedits.
+       (Program Modes): Add xref to Fortran.
+       (Left Margin Paren): Remove what was (oddly enough) the only use
+       of defvar in the entire Emacs manual.
+       (Hungry Delete): Remove footnote about ancient Emacs version.
+       (Other C Commands): Use example rather than smallexample.
+
+       * text.texi (Pages, Filling, Foldout, Org Mode, HTML Mode)
+       (Nroff Mode, Enriched Indentation, Table Rows and Columns):
+       Tweak line and page breaks.
+
+       * modes.texi (Major Modes, Minor Modes): Reword to improve page-breaks.
+       (Major Modes): Use example rather than smallexample.
+
+       * mule.texi (Output Coding): Reword to improve page-breaks.
+
+       * frames.texi (Fonts): Tweak line and page breaks.
+       Use example rather than smallexample.  Change cross-reference.
+       (Text-Only Mouse): Fix xref.
+
+       * buffers.texi (Buffers, Kill Buffer, Several Buffers)
+       (Indirect Buffers): Tweak line- and page-breaks.
+
+       * fixit.texi (Fixit, Undo): Reword to improve page-breaks.
+
 2012-05-05  Glenn Morris  <address@hidden>
 
        * custom.texi (Customization Groups, Custom Themes, Examining):

=== modified file 'doc/emacs/frames.texi'
--- a/doc/emacs/frames.texi     2012-05-05 04:32:58 +0000
+++ b/doc/emacs/frames.texi     2012-05-09 03:06:08 +0000
@@ -67,6 +67,7 @@
 @node Mouse Commands
 @section Mouse Commands for Editing
 @cindex mouse buttons (what they do)
address@hidden mouse, selecting text using
 
 @kindex Mouse-1
 @kindex Mouse-2
@@ -106,6 +107,7 @@
 selects the frame, without doing anything else; clicking again selects
 the window and sets the cursor position.
 
address@hidden mouse, dragging
 @findex mouse-set-region
   Holding down @kbd{Mouse-1} and ``dragging'' the mouse over a stretch
 of text activates the region around that text
@@ -235,8 +237,8 @@
 
 @node Mouse References
 @section Following References with the Mouse
address@hidden Mouse-1 @r{(selection)}
address@hidden Mouse-2 @r{(selection)}
address@hidden Mouse-1 @r{(on buttons)}
address@hidden Mouse-2 @r{(on buttons)}
 @cindex hyperlinks
 @cindex links
 @cindex text buttons

=== modified file 'doc/lispintro/ChangeLog'
--- a/doc/lispintro/ChangeLog   2012-05-05 04:32:58 +0000
+++ b/doc/lispintro/ChangeLog   2012-05-09 03:06:08 +0000
@@ -1,3 +1,12 @@
+2012-05-09  Glenn Morris  <address@hidden>
+
+       * emacs-lisp-intro.texi (Making Errors): Don't mention Emacs 20.
+       (Void Function, Wrong Type of Argument, Recursion with list)
+       (Simple Extension): Assume a non-ancient Emacs.
+       (Void Variable, Switching Buffers): Improve page breaks.
+
+       * emacs-lisp-intro.texi: Update GNU Press contact details.
+
 2012-05-05  Glenn Morris  <address@hidden>
 
        * emacs-lisp-intro.texi (Making Errors): Don't mention Emacs 20.

=== modified file 'doc/lispintro/emacs-lisp-intro.texi'
--- a/doc/lispintro/emacs-lisp-intro.texi       2012-05-05 04:32:58 +0000
+++ b/doc/lispintro/emacs-lisp-intro.texi       2012-05-09 03:06:08 +0000
@@ -238,7 +238,7 @@
 a division of the               @hfill email: @email{sales@@address@hidden
 Free Software Foundation, Inc.  @hfill Tel: +1 (617) address@hidden
 51 Franklin Street, Fifth Floor @hfill Fax: +1 (617) address@hidden
-Boston, MA 02110-1301 USA
+Boston, MA 02110-1301 USA       
 @end iftex
 
 @ifnottex
@@ -249,7 +249,7 @@
 a division of the                 email: sales@@fsf.org
 Free Software Foundation, Inc.    Tel: +1 (617) 542-5942
 51 Franklin Street, Fifth Floor   Fax: +1 (617) 542-2652
-Boston, MA 02110-1301 USA
+Boston, MA 02110-1301 USA          
 @end example
 @end ifnottex
 

=== modified file 'doc/lispref/ChangeLog'
--- a/doc/lispref/ChangeLog     2012-05-08 07:18:18 +0000
+++ b/doc/lispref/ChangeLog     2012-05-09 03:06:08 +0000
@@ -1,3 +1,56 @@
+2012-05-09  Glenn Morris  <address@hidden>
+
+       * Makefile.in (clean, mostlyclean): Add some more vol1/2 items.
+
+       * two-volume.make (emacsdir): New.
+       (tex): Add directory with emacsver.texi to TEXINPUTS.
+
+       * minibuf.texi (Minibuffer History, Basic Completion):
+       Tweak page breaks.
+
+       * internals.texi (Garbage Collection, Memory Usage)
+       (Writing Emacs Primitives): Tweak page breaks.
+
+       * streams.texi (Output Variables): Improve page break.
+
+       * edebug.texi (Edebug Display Update): Improve page break.
+
+       * compile.texi (Disassembly): Condense the examples.
+
+       * eval.texi, functions.texi, loading.texi, macros.texi:
+       Where possible, use example rather than smallexample.
+
+       * symbols.texi: Where possible, use example rather than smallexample.
+       (Symbol Components): Fix typo.
+       (Other Plists): Tweak page break.
+
+       * sequences.texi (Arrays): Tweak page breaks.
+
+       * customize.texi: Where possible, use example rather than smallexample.
+       (Common Keywords, Variable Definitions, Applying Customizations)
+       (Custom Themes): Tweak page breaks.
+
+       * control.texi: Where possible, use example rather than smallexample.
+       (Sequencing, Conditionals, Signaling Errors, Handling Errors):
+       Tweak page breaks.
+
+       * lists.texi (List-related Predicates, List Variables):
+       Tweak page-breaks.
+       (Sets And Lists): Convert inforef to xref.
+
+       * text.texi (Auto Filling): Don't mention Emacs 19.
+
+       * commands.texi (Event Input Misc): Don't mention unread-command-char.
+       * numbers.texi (Predicates on Numbers): Don't mention Emacs 18.
+
+       * objects.texi (Process Type, Overlay Type): Tweak page-breaks.
+
+       * intro.texi (Caveats): Copyedit.
+       (Lisp History): Convert inforef to xref.
+       (Lisp History, Printing Notation, Version Info): Improve page-breaks.
+
+       * elisp.texi (DATE): Forgot to change the month in 2012-04-21 change.
+
 2012-05-08  Glenn Morris  <address@hidden>
 
        * two.el: Remove; unused since creation of two-volume.make.

=== modified file 'doc/lispref/Makefile.in'
--- a/doc/lispref/Makefile.in   2012-05-04 06:45:03 +0000
+++ b/doc/lispref/Makefile.in   2012-05-09 03:06:08 +0000
@@ -132,10 +132,11 @@
 mostlyclean:
        rm -f *.aux *.log *.toc *.cp *.cps *.fn *.fns *.ky *.kys \
          *.op *.ops *.pg *.pgs *.tp *.tps *.vr *.vrs
-       rm -f elisp[12]*
+       rm -f elisp[12]* vol[12].tmp
 
 clean: mostlyclean
-       rm -f elisp.dvi elisp.pdf elisp.ps vol[12].pdf
+       rm -f elisp.dvi elisp.pdf elisp.ps
+       rm -f vol[12].dvi vol[12].pdf vol[12].ps
        rm -rf elisp.html
        rm -f emacs-lispref-${version}.tar*
 

=== modified file 'doc/lispref/compile.texi'
--- a/doc/lispref/compile.texi  2012-04-27 03:10:38 +0000
+++ b/doc/lispref/compile.texi  2012-05-09 03:06:08 +0000
@@ -637,41 +637,34 @@
 @end group
 
 @group
-0   varref   integer        ; @r{Get the value of @code{integer}}
-                            ;   @r{and push it onto the stack.}
-1   constant 1              ; @r{Push 1 onto stack.}
address@hidden group
-
address@hidden
-2   eqlsign                 ; @r{Pop top two values off stack, compare}
-                            ;   @r{them, and push result onto stack.}
address@hidden group
-
address@hidden
-3   goto-if-nil 1           ; @r{Pop and test top of stack;}
-                            ;   @r{if @code{nil}, go to 1,}
-                            ;   @r{else continue.}
-6   constant 1              ; @r{Push 1 onto top of stack.}
-7   return                  ; @r{Return the top element}
-                            ;   @r{of the stack.}
address@hidden group
-
address@hidden
-8:1 varref   integer        ; @r{Push value of @code{integer} onto stack.}
-9   constant factorial      ; @r{Push @code{factorial} onto stack.}
-10  varref   integer        ; @r{Push value of @code{integer} onto stack.}
-11  sub1                    ; @r{Pop @code{integer}, decrement value,}
-                            ;   @r{push new value onto stack.}
-12  call     1              ; @r{Call function @code{factorial} using}
-                            ;   @r{the first (i.e., the top) element}
-                            ;   @r{of the stack as the argument;}
-                            ;   @r{push returned value onto stack.}
address@hidden group
-
address@hidden
-13 mult                     ; @r{Pop top two values off stack, multiply}
-                            ;   @r{them, and push result onto stack.}
-14 return                   ; @r{Return the top element of stack.}
+0   varref   integer      ; @r{Get the value of @code{integer} and}
+                          ;   @r{push it onto the stack.}
+1   constant 1            ; @r{Push 1 onto stack.}
address@hidden group
address@hidden
+2   eqlsign               ; @r{Pop top two values off stack, compare}
+                          ;   @r{them, and push result onto stack.}
address@hidden group
address@hidden
+3   goto-if-nil 1         ; @r{Pop and test top of stack;}
+                          ;   @r{if @code{nil}, go to 1, else continue.}
+6   constant 1            ; @r{Push 1 onto top of stack.}
+7   return                ; @r{Return the top element of the stack.}
address@hidden group
address@hidden
+8:1 varref   integer      ; @r{Push value of @code{integer} onto stack.}
+9   constant factorial    ; @r{Push @code{factorial} onto stack.}
+10  varref   integer      ; @r{Push value of @code{integer} onto stack.}
+11  sub1                  ; @r{Pop @code{integer}, decrement value,}
+                          ;   @r{push new value onto stack.}
+12  call     1            ; @r{Call function @code{factorial} using first}
+                          ;   @r{(i.e. top) stack element as argument;}
+                          ;   @r{push returned value onto stack.}
address@hidden group
address@hidden
+13 mult                   ; @r{Pop top two values off stack, multiply}
+                          ;   @r{them, and push result onto stack.}
+14 return                 ; @r{Return the top element of the stack.}
 @end group
 @end example
 
@@ -693,70 +686,56 @@
      @print{} byte-code for silly-loop:
  doc: Return time before and after N iterations of a loop.
  args: (n)
address@hidden group
 
-0   constant current-time-string  ; @r{Push}
-                                  ;   @address@hidden
address@hidden
+0   constant current-time-string  ; @r{Push @code{current-time-string}}
                                   ;   @r{onto top of stack.}
 @end group
-
address@hidden
-1   call     0              ; @r{Call @code{current-time-string}}
-                            ;   @r{with no argument,}
-                            ;   @r{pushing result onto stack.}
address@hidden group
-
address@hidden
-2   varbind  t1             ; @r{Pop stack and bind @code{t1}}
-                            ;   @r{to popped value.}
address@hidden group
-
address@hidden
-3:1 varref   n              ; @r{Get value of @code{n} from}
-                            ;   @r{the environment and push}
-                            ;   @r{the value onto the stack.}
-4   sub1                    ; @r{Subtract 1 from top of stack.}
address@hidden group
-
address@hidden
-5   dup                     ; @r{Duplicate the top of the stack;}
-                            ;   @r{i.e., copy the top of}
-                            ;   @r{the stack and push the}
-                            ;   @r{copy onto the stack.}
-6   varset   n              ; @r{Pop the top of the stack,}
-                            ;   @r{and bind @code{n} to the value.}
-
-                            ; @r{In effect, the sequence @code{dup varset}}
-                            ;   @r{copies the top of the stack}
-                            ;   @r{into the value of @code{n}}
-                            ;   @r{without popping it.}
address@hidden group
-
address@hidden
-7   constant 0              ; @r{Push 0 onto stack.}
-8   gtr                     ; @r{Pop top two values off stack,}
-                            ;   @r{test if @var{n} is greater than 0}
-                            ;   @r{and push result onto stack.}
address@hidden group
-
address@hidden
-9   goto-if-not-nil 1       ; @r{Goto 1 if @code{n} > 0}
-                            ;   @r{(this continues the while loop)}
-                            ;   @r{else continue.}
address@hidden group
-
address@hidden
-12  varref   t1             ; @r{Push value of @code{t1} onto stack.}
address@hidden
+1   call     0            ; @r{Call @code{current-time-string} with no}
+                          ;   @r{argument, push result onto stack.}
address@hidden group
address@hidden
+2   varbind  t1           ; @r{Pop stack and bind @code{t1} to popped value.}
address@hidden group
address@hidden
+3:1 varref   n            ; @r{Get value of @code{n} from the environment}
+                          ;   @r{and push the value on the stack.}
+4   sub1                  ; @r{Subtract 1 from top of stack.}
address@hidden group
address@hidden
+5   dup                   ; @r{Duplicate top of stack; i.e. copy the top}
+                          ;   @r{of the stack and push copy onto stack.}
+6   varset   n            ; @r{Pop the top of the stack,}
+                          ;   @r{and bind @code{n} to the value.}
+
+;; @r{(In effect, the sequence @code{dup varset} copies the top of the stack}
+;; @r{into the value of @code{n} without popping it.)}
address@hidden group
+
address@hidden
+7   constant 0            ; @r{Push 0 onto stack.}
+8   gtr                   ; @r{Pop top two values off stack,}
+                          ;   @r{test if @var{n} is greater than 0}
+                          ;   @r{and push result onto stack.}
address@hidden group
address@hidden
+9   goto-if-not-nil 1     ; @r{Goto 1 if @code{n} > 0}
+                          ;   @r{(this continues the while loop)}
+                          ;   @r{else continue.}
address@hidden group
address@hidden
+12  varref   t1           ; @r{Push value of @code{t1} onto stack.}
 13  constant current-time-string  ; @r{Push @code{current-time-string}}
-                                  ;   @r{onto top of stack.}
-14  call     0              ; @r{Call @code{current-time-string} again.}
+                                  ;   @r{onto the top of the stack.}
+14  call     0            ; @r{Call @code{current-time-string} again.}
 @end group
-
 @group
-15  unbind   1              ; @r{Unbind @code{t1} in local environment.}
-16  list2                   ; @r{Pop top two elements off stack,}
-                            ;   @r{create a list of them,}
-                            ;   @r{and push list onto stack.}
-17  return                  ; @r{Return value of the top of stack.}
+15  unbind   1            ; @r{Unbind @code{t1} in local environment.}
+16  list2                 ; @r{Pop top two elements off stack, create a}
+                          ;   @r{list of them, and push it onto stack.}
+17  return                ; @r{Return value of the top of stack.}
 @end group
 @end example
 

=== modified file 'doc/lispref/control.texi'
--- a/doc/lispref/control.texi  2012-04-27 03:10:38 +0000
+++ b/doc/lispref/control.texi  2012-05-09 03:06:08 +0000
@@ -93,8 +93,8 @@
 @end example
 @end defspec
 
-  Two other control constructs likewise evaluate a series of forms but return
-a different value:
+  Two other constructs likewise evaluate a series of forms but return
+different values:
 
 @defspec prog1 form1 address@hidden
 This special form evaluates @var{form1} and all of the @var{forms}, in
@@ -159,8 +159,8 @@
 given, @code{if} returns @code{nil}.
 
 @code{if} is a special form because the branch that is not selected is
-never evaluated---it is ignored.  Thus, in the example below,
address@hidden is not printed because @code{print} is never called.
+never evaluated---it is ignored.  Thus, in this example,
address@hidden is not printed because @code{print} is never called:
 
 @example
 @group
@@ -257,9 +257,7 @@
 @var{condition} of the last clause, like this: @code{(t
 @var{body-forms})}.  The form @code{t} evaluates to @code{t}, which is
 never @code{nil}, so this clause never fails, provided the @code{cond}
-gets to it at all.
-
-For example,
+gets to it at all.  For example:
 
 @example
 @group
@@ -811,10 +809,10 @@
 variable to a list of the form @code{(@var{error-symbol} .@:
 @var{data})} (@pxref{Handling Errors}).
 
-The function @code{signal} never returns (though in older Emacs versions
-it could sometimes return).
+The function @code{signal} never returns.
address@hidden (though in older Emacs versions it sometimes could).
 
address@hidden
address@hidden
 @group
 (signal 'wrong-number-of-arguments '(x y))
      @error{} Wrong number of arguments: x, y
@@ -824,7 +822,7 @@
 (signal 'no-such-error '("My unknown error condition"))
      @error{} peculiar error: "My unknown error condition"
 @end group
address@hidden smallexample
address@hidden example
 @end defun
 
 @cindex CL note---no continuable errors
@@ -990,7 +988,7 @@
 Lisp expressions to be executed when this handler handles an error.
 Here are examples of handlers:
 
address@hidden
address@hidden
 @group
 (error nil)
 
@@ -1000,7 +998,7 @@
  (message
   "Either division by zero or failure to open a file"))
 @end group
address@hidden smallexample
address@hidden example
 
 Each error that occurs has an @dfn{error symbol} that describes what
 kind of error it is.  The @code{error-conditions} property of this
@@ -1033,9 +1031,9 @@
 @code{condition-case}, for some outer-level handler to catch.  Here's
 how to do that:
 
address@hidden
address@hidden
   (signal (car err) (cdr err))
address@hidden smallexample
address@hidden example
 
 @noindent
 where @code{err} is the error description variable, the first argument
@@ -1054,7 +1052,7 @@
 that results from dividing by zero.  The handler displays the error
 message (but without a beep), then returns a very large number.
 
address@hidden
address@hidden
 @group
 (defun safe-divide (dividend divisor)
   (condition-case err
@@ -1075,22 +1073,24 @@
      @print{} Arithmetic error: (arith-error)
 @result{} 1000000
 @end group
address@hidden smallexample
address@hidden example
 
 @noindent
-The handler specifies condition name @code{arith-error} so that it will handle 
only division-by-zero errors.  Other kinds of errors will not be handled, at 
least not by this @code{condition-case}.  Thus,
+The handler specifies condition name @code{arith-error} so that it
+will handle only division-by-zero errors.  Other kinds of errors will
+not be handled (by this @code{condition-case}).  Thus:
 
address@hidden
address@hidden
 @group
 (safe-divide nil 3)
      @error{} Wrong type argument: number-or-marker-p, nil
 @end group
address@hidden smallexample
address@hidden example
 
   Here is a @code{condition-case} that catches all kinds of errors,
-including those signaled with @code{error}:
+including those from @code{error}:
 
address@hidden
address@hidden
 @group
 (setq baz 34)
      @result{} 34
@@ -1108,7 +1108,7 @@
 @print{} The error was: (error "Rats!  The variable baz was 34, not 35")
 @result{} 2
 @end group
address@hidden smallexample
address@hidden example
 
 @defmac ignore-errors address@hidden
 This construct executes @var{body}, ignoring any errors that occur
@@ -1119,12 +1119,12 @@
 Here's the example at the beginning of this subsection rewritten using
 @code{ignore-errors}:
 
address@hidden
address@hidden
 @group
   (ignore-errors
    (delete-file filename))
 @end group
address@hidden smallexample
address@hidden example
 @end defmac
 
 @defmac with-demoted-errors address@hidden
@@ -1279,7 +1279,7 @@
   For example, here we make an invisible buffer for temporary use, and
 make sure to kill it before finishing:
 
address@hidden
address@hidden
 @group
 (let ((buffer (get-buffer-create " *temp*")))
   (with-current-buffer buffer
@@ -1287,7 +1287,7 @@
         @var{body-form}
       (kill-buffer buffer))))
 @end group
address@hidden smallexample
address@hidden example
 
 @noindent
 You might think that we could just as well write @code{(kill-buffer
@@ -1312,7 +1312,7 @@
 event of failure.  Otherwise, Emacs might fill up with useless
 subprocesses.
 
address@hidden
address@hidden
 @group
 (let ((win nil))
   (unwind-protect
@@ -1323,7 +1323,7 @@
           (error "Ftp login failed")))
     (or win (and process (delete-process process)))))
 @end group
address@hidden smallexample
address@hidden example
 
   This example has a small bug: if the user types @kbd{C-g} to
 quit, and the quit happens immediately after the function

=== modified file 'doc/lispref/customize.texi'
--- a/doc/lispref/customize.texi        2012-04-27 03:10:38 +0000
+++ b/doc/lispref/customize.texi        2012-05-09 03:06:08 +0000
@@ -157,7 +157,7 @@
 @defvar customize-package-emacs-version-alist
 This alist provides a mapping for the versions of Emacs that are
 associated with versions of a package listed in the
address@hidden:package-version} keyword.  Its elements look like this:
address@hidden:package-version} keyword.  Its elements are:
 
 @example
 (@var{package} (@var{pversion} . @var{eversion})@dots{})
@@ -168,6 +168,8 @@
 associated Emacs version @var{eversion}.  These versions are strings.
 For example, the MH-E package updates this alist with the following:
 
address@hidden Must be small else too wide.
address@hidden FIXME obviously this is out of date (in the code).
 @smallexample
 (add-to-list 'customize-package-emacs-version-alist
              '(MH-E ("6.0" . "22.1") ("6.1" . "22.1") ("7.0" . "22.1")
@@ -394,7 +396,7 @@
 @item :set-after @var{variables}
 @kindex address@hidden, @code{defcustom} keyword}
 When setting variables according to saved customizations, make sure to
-set the variables @var{variables} before this one; in other words, delay
+set the variables @var{variables} before this one; i.e., delay
 setting this variable until after those others have been handled.  Use
 @code{:set-after} if setting this variable won't work properly unless
 those other variables already have their intended values.
@@ -673,9 +675,9 @@
 specifications for reasonable keys in the alist.  Ordinarily, they are
 simply atoms, which stand for themselves.  For example:
 
address@hidden
address@hidden
 :options '("foo" "bar" "baz")
address@hidden smallexample
address@hidden example
 
 @noindent
 specifies that there are three ``known'' keys, namely @code{"foo"},
@@ -687,9 +689,9 @@
 the list.  The first element will specify the key, like before, while
 the second element will specify the value type.  For example:
 
address@hidden
address@hidden
 :options '("foo" ("bar" integer) "baz")
address@hidden smallexample
address@hidden example
 
 Finally, you may want to change how the key is presented.  By default,
 the key is simply shown as a @code{const}, since the user cannot change
@@ -699,37 +701,37 @@
 This is done by using a customization type specification instead of a
 symbol for the key.
 
address@hidden
address@hidden
 :options '("foo" ((function-item some-function) integer)
            "baz")
address@hidden smallexample
address@hidden example
 
 Many alists use lists with two elements, instead of cons cells.  For
 example,
 
address@hidden
address@hidden
 (defcustom list-alist '(("foo" 1) ("bar" 2) ("baz" 3))
   "Each element is a list of the form (KEY VALUE).")
address@hidden smallexample
address@hidden example
 
 @noindent
 instead of
 
address@hidden
address@hidden
 (defcustom cons-alist '(("foo" . 1) ("bar" . 2) ("baz" . 3))
   "Each element is a cons-cell (KEY . VALUE).")
address@hidden smallexample
address@hidden example
 
 Because of the way lists are implemented on top of cons cells, you can
 treat @code{list-alist} in the example above as a cons cell alist, where
 the value type is a list with a single element containing the real
 value.
 
address@hidden
address@hidden
 (defcustom list-alist '(("foo" 1) ("bar" 2) ("baz" 3))
   "Each element is a list of the form (KEY VALUE)."
   :type '(alist :value-type (group integer)))
address@hidden smallexample
address@hidden example
 
 The @code{group} widget is used here instead of @code{list} only because
 the formatting is better suited for the purpose.
@@ -737,14 +739,14 @@
 Similarly, you can have alists with more values associated with each
 key, using variations of this trick:
 
address@hidden
address@hidden
 (defcustom person-data '(("brian"  50 t)
                          ("dorith" 55 nil)
                          ("ken"    52 t))
   "Alist of basic info about people.
 Each element has the form (NAME AGE MALE-FLAG)."
   :type '(alist :value-type (group integer boolean)))
address@hidden smallexample
address@hidden example
 
 @item (plist :key-type @var{key-type} :value-type @var{value-type})
 This customization type is similar to @code{alist} (see above), except
@@ -1255,7 +1257,7 @@
 the user invokes @samp{Save for future sessions} in the Customize
 interface, that takes effect by writing a @code{custom-set-variables}
 and/or a @code{custom-set-faces} form into the custom file, to be
-evaluated the next time Emacs starts up.
+evaluated the next time Emacs starts.
 
 @defun custom-set-variables &rest args
 This function installs the variable customizations specified by
@@ -1326,11 +1328,10 @@
 @code{describe-theme} command or types @kbd{?} in the @samp{*Custom
 Themes*} buffer.
 
-Two special theme names are disallowed: @code{user} is a ``dummy''
-theme which stores the user's direct customization settings, and
address@hidden is a ``dummy'' theme which stores changes made outside
-of the Customize system.  If you specify either of these as the
address@hidden argument, @code{deftheme} signals an error.
+Two special theme names are disallowed (using them causes an error):
address@hidden is a ``dummy'' theme that stores the user's direct
+customization settings, and @code{changed} is a ``dummy'' theme that
+stores changes made outside of the Customize system.
 @end defmac
 
 @defmac provide-theme theme
@@ -1378,7 +1379,7 @@
 before loading any non-built-in theme for the first time.
 
   The following functions are useful for programmatically enabling and
-disabling Custom themes:
+disabling themes:
 
 @defun custom-theme-p theme
 This function return a address@hidden value if @var{theme} (a symbol)
@@ -1391,14 +1392,11 @@
 This function loads the Custom theme named @var{theme} from its source
 file, looking for the source file in the directories specified by the
 variable @code{custom-theme-load-path}.  @xref{Custom Themes,,, emacs,
-The GNU Emacs Manual}.  It also @dfn{enables} the theme, causing its
-variable and face settings to take effect.
-
-If the optional argument @var{no-confirm} is address@hidden, this
-skips prompting the user for confirmation before loading the theme.
-
-If the optional argument @var{no-enable} is address@hidden, the theme
-is loaded but not enabled.
+The GNU Emacs Manual}.  It also @dfn{enables} the theme (unless the
+optional argument @var{no-enable} is address@hidden), causing its
+variable and face settings to take effect.  It prompts the user for
+confirmation before loading the theme, unless the optional argument
address@hidden is address@hidden
 @end deffn
 
 @deffn Command enable-theme theme

=== modified file 'doc/lispref/edebug.texi'
--- a/doc/lispref/edebug.texi   2012-04-10 07:11:23 +0000
+++ b/doc/lispref/edebug.texi   2012-05-05 01:16:54 +0000
@@ -975,8 +975,8 @@
 @c needs an xref to be on just one line.
 When Edebug needs to display something (e.g., in trace mode), it saves
 the current window configuration from ``outside'' Edebug
-(@pxref{Window Configurations}).  When you exit Edebug (by continuing
-the program), it restores the previous window configuration.
+(@pxref{Window Configurations}).  When you exit Edebug, it restores
+the previous window configuration.
 
 Emacs redisplays only when it pauses.  Usually, when you continue
 execution, the program re-enters Edebug at a breakpoint or after

=== modified file 'doc/lispref/eval.texi'
--- a/doc/lispref/eval.texi     2012-04-27 03:10:38 +0000
+++ b/doc/lispref/eval.texi     2012-05-09 03:06:08 +0000
@@ -260,16 +260,13 @@
 into the function cell of @code{first}, and the symbol @code{first} into
 the function cell of @code{erste}.
 
address@hidden
address@hidden
 @group
 ;; @r{Build this function cell linkage:}
 ;;   -------------       -----        -------        -------
 ;;  | #<subr car> | <-- | car |  <-- | first |  <-- | erste |
 ;;   -------------       -----        -------        -------
 @end group
address@hidden smallexample
-
address@hidden
 @group
 (symbol-function 'car)
      @result{} #<subr car>
@@ -286,19 +283,19 @@
 (erste '(1 2 3))   ; @r{Call the function referenced by @code{erste}.}
      @result{} 1
 @end group
address@hidden smallexample
address@hidden example
 
   By contrast, the following example calls a function without any symbol
 function indirection, because the first element is an anonymous Lisp
 function, not a symbol.
 
address@hidden
address@hidden
 @group
 ((lambda (arg) (erste arg))
  '(1 2 3))
      @result{} 1
 @end group
address@hidden smallexample
address@hidden example
 
 @noindent
 Executing the function itself evaluates its body; this does involve
@@ -307,18 +304,18 @@
   This form is rarely used and is now deprecated.  Instead, you should write it
 as:
 
address@hidden
address@hidden
 @group
 (funcall (lambda (arg) (erste arg))
          '(1 2 3))
 @end group
address@hidden smallexample
address@hidden example
 or just
address@hidden
address@hidden
 @group
 (let ((arg '(1 2 3))) (erste arg))
 @end group
address@hidden smallexample
address@hidden example
 
   The built-in function @code{indirect-function} provides an easy way to
 perform symbol function indirection explicitly.
@@ -341,12 +338,12 @@
 
 Here is how you could define @code{indirect-function} in Lisp:
 
address@hidden
address@hidden
 (defun indirect-function (function)
   (if (symbolp function)
       (indirect-function (symbol-function function))
     function))
address@hidden smallexample
address@hidden example
 @end defun
 
 @node Function Forms

=== modified file 'doc/lispref/functions.texi'
--- a/doc/lispref/functions.texi        2012-04-27 03:10:38 +0000
+++ b/doc/lispref/functions.texi        2012-05-09 03:06:08 +0000
@@ -397,7 +397,7 @@
 
   Here are some examples of argument lists and proper calls:
 
address@hidden
address@hidden
 (funcall (lambda (n) (1+ n))        ; @r{One required:}
          1)                         ; @r{requires exactly one argument.}
      @result{} 2
@@ -409,7 +409,7 @@
            (+ n (apply '+ ns)))     ; @r{1 or more arguments.}
          1 2 3 4 5)
      @result{} 15
address@hidden smallexample
address@hidden example
 
 @node Function Documentation
 @subsection Documentation Strings of Functions
@@ -820,7 +820,7 @@
 result is always a list.  The length of the result is the same as the
 length of @var{sequence}.  For example:
 
address@hidden
address@hidden
 @group
 (mapcar 'car '((a b) (c d) (e f)))
      @result{} (a c e)
@@ -852,7 +852,7 @@
 (mapcar* 'cons '(a b c) '(1 2 3 4))
      @result{} ((a . 1) (b . 2) (c . 3))
 @end group
address@hidden smallexample
address@hidden example
 @end defun
 
 @defun mapc function sequence
@@ -873,7 +873,7 @@
 kind of sequence except a char-table; that is, a list, a vector, a
 bool-vector, or a string.
 
address@hidden
address@hidden
 @group
 (mapconcat 'symbol-name
            '(The cat in the hat)
@@ -887,7 +887,7 @@
            "")
      @result{} "IBM.9111"
 @end group
address@hidden smallexample
address@hidden example
 @end defun
 
 @node Anonymous Functions
@@ -1188,18 +1188,18 @@
 For instance, in old versions of Emacs the @code{sit-for} function
 accepted three arguments, like this
 
address@hidden
address@hidden
   (sit-for seconds milliseconds nodisp)
address@hidden smallexample
address@hidden example
 
 However, calling @code{sit-for} this way is considered obsolete
 (@pxref{Waiting}).  The old calling convention is deprecated like
 this:
 
address@hidden
address@hidden
 (set-advertised-calling-convention
   'sit-for '(seconds &optional nodisp))
address@hidden smallexample
address@hidden example
 @end defun
 
 @node Inline Functions
@@ -1259,11 +1259,11 @@
 defined in other files which would be loaded if that code is run.  For
 example, byte-compiling @file{fortran.el} used to warn:
 
address@hidden
address@hidden
 In end of data:
 fortran.el:2152:1:Warning: the function `gud-find-c-expr' is not known
     to be defined.
address@hidden smallexample
address@hidden example
 
 In fact, @code{gud-find-c-expr} is only used in the function that
 Fortran mode uses for the local value of
@@ -1276,9 +1276,9 @@
 All you need to do is add a @code{declare-function} statement before the
 first use of the function in question:
 
address@hidden
address@hidden
 (declare-function gud-find-c-expr "gud.el" nil)
address@hidden smallexample
address@hidden example
 
 This says that @code{gud-find-c-expr} is defined in @file{gud.el} (the
 @samp{.el} can be omitted).  The compiler takes for granted that that file

=== modified file 'doc/lispref/internals.texi'
--- a/doc/lispref/internals.texi        2012-04-14 01:59:01 +0000
+++ b/doc/lispref/internals.texi        2012-05-09 03:06:08 +0000
@@ -354,7 +354,7 @@
 
 If there was overflow in pure space (@pxref{Pure Storage}),
 @code{garbage-collect} returns @code{nil}, because a real garbage
-collection can not be done in this situation.
+collection cannot be done.
 @end deffn
 
 @defopt garbage-collection-messages
@@ -471,12 +471,12 @@
 
 @defvar string-chars-consed
 The total number of string characters that have been allocated so far
-in this Emacs session.
+in this session.
 @end defvar
 
 @defvar misc-objects-consed
 The total number of miscellaneous objects that have been allocated so
-far in this Emacs session.  These include markers and overlays, plus
+far in this session.  These include markers and overlays, plus
 certain objects not visible to users.
 @end defvar
 
@@ -580,8 +580,8 @@
 indicating a special form that receives unevaluated arguments, or
 @code{MANY}, indicating an unlimited number of evaluated arguments (the
 equivalent of @code{&rest}).  Both @code{UNEVALLED} and @code{MANY} are
-macros.  If @var{max} is a number, it may not be less than @var{min} and
-it may not be greater than eight.
+macros.  If @var{max} is a number, it must be more than @var{min} but
+less than 8.
 
 @item interactive
 This is an interactive specification, a string such as might be used as

=== modified file 'doc/lispref/loading.texi'
--- a/doc/lispref/loading.texi  2012-05-02 07:20:29 +0000
+++ b/doc/lispref/loading.texi  2012-05-09 03:06:08 +0000
@@ -250,31 +250,31 @@
 current default directory.  Here is an example of how to set
 @env{EMACSLOADPATH} variable from @command{sh}:
 
address@hidden
address@hidden
 export EMACSLOADPATH
 EMACSLOADPATH=/home/foo/.emacs.d/lisp:/opt/emacs/lisp
address@hidden smallexample
address@hidden example
 
 @noindent
 Here is how to set it from @code{csh}:
 
address@hidden
address@hidden
 setenv EMACSLOADPATH /home/foo/.emacs.d/lisp:/opt/emacs/lisp
address@hidden smallexample
address@hidden example
 
   If @env{EMACSLOADPATH} is not set (which is usually the case), Emacs
 initializes @code{load-path} with the following two directories:
 
address@hidden
address@hidden
 "/usr/local/share/emacs/@var{version}/site-lisp"
address@hidden smallexample
address@hidden example
 
 @noindent
 and
 
address@hidden
address@hidden
 "/usr/local/share/emacs/site-lisp"
address@hidden smallexample
address@hidden example
 
 @noindent
 The first one is for locally installed packages for a particular Emacs
@@ -303,9 +303,9 @@
   It is common to add code to one's init file (@pxref{Init File}) to
 add one or more directories to @code{load-path}.  For example:
 
address@hidden
address@hidden
 (push "~/.emacs.d/lisp" load-path)
address@hidden smallexample
address@hidden example
 
   Dumping Emacs uses a special value of @code{load-path}.  If the
 value of @code{load-path} at the end of dumping is unchanged (that is,
@@ -339,9 +339,9 @@
 
 For instance, suppose @code{load-path} is set to
 
address@hidden
address@hidden
   ("/opt/emacs/site-lisp" "/usr/share/emacs/23.3/lisp")
address@hidden smallexample
address@hidden example
 
 @noindent
 and that both these directories contain a file named @file{foo.el}.
@@ -534,24 +534,24 @@
   The following example shows how @code{doctor} is prepared for
 autoloading with a magic comment:
 
address@hidden
address@hidden
 ;;;###autoload
 (defun doctor ()
   "Switch to *doctor* buffer and start giving psychotherapy."
   (interactive)
   (switch-to-buffer "*doctor*")
   (doctor-mode))
address@hidden smallexample
address@hidden example
 
 @noindent
 Here's what that produces in @file{loaddefs.el}:
 
address@hidden
address@hidden
 (autoload (quote doctor) "doctor" "\
 Switch to *doctor* buffer and start giving psychotherapy.
 
 \(fn)" t nil)
address@hidden smallexample
address@hidden example
 
 @noindent
 @cindex @code{fn} in function's documentation string
@@ -570,11 +570,11 @@
 @code{loaddefs.el}.  That is not desirable.  You can put the desired
 @code{autoload} call into @code{loaddefs.el} instead by writing this:
 
address@hidden
address@hidden
 ;;;###autoload (autoload 'foo "myfile")
 (mydefunmacro foo
   ...)
address@hidden smallexample
address@hidden example
 
   You can use a non-default string as the autoload cookie and have the
 corresponding autoload calls written into a file whose name is
@@ -679,7 +679,7 @@
   For example, in @file{idlwave.el}, the definition for
 @code{idlwave-complete-filename} includes the following code:
 
address@hidden
address@hidden
 (defun idlwave-complete-filename ()
   "Use the comint stuff to complete a file name."
    (require 'comint)
@@ -687,7 +687,7 @@
           (comint-completion-addsuffix nil)
           ...)
        (comint-dynamic-complete-filename)))
address@hidden smallexample
address@hidden example
 
 @noindent
 The expression @code{(require 'comint)} loads the file @file{comint.el}
@@ -702,9 +702,9 @@
 
 The @file{comint.el} file contains the following top-level expression:
 
address@hidden
address@hidden
 (provide 'comint)
address@hidden smallexample
address@hidden example
 
 @noindent
 This adds @code{comint} to the global @code{features} list, so that
@@ -725,13 +725,13 @@
 by including a @code{provide} followed by a @code{require} for the same
 feature, as in the following example.
 
address@hidden
address@hidden
 @group
 (provide 'my-feature)  ; @r{Ignored by byte compiler,}
                        ;   @r{evaluated by @code{load}.}
 (require 'my-feature)  ; @r{Evaluated by byte compiler.}
 @end group
address@hidden smallexample
address@hidden example
 
 @noindent
 The compiler ignores the @code{provide}, then processes the
@@ -761,7 +761,7 @@
 present in a given version.  @xref{Network Feature Testing}, for
 an example.
 
address@hidden
address@hidden
 features
      @result{} (bar bish)
 
@@ -769,7 +769,7 @@
      @result{} foo
 features
      @result{} (foo bar bish)
address@hidden smallexample
address@hidden example
 
 When a file is loaded to satisfy an autoload, and it stops due to an
 error in the evaluation of its contents, any function definitions or

=== modified file 'doc/lispref/macros.texi'
--- a/doc/lispref/macros.texi   2012-04-27 03:10:38 +0000
+++ b/doc/lispref/macros.texi   2012-05-09 03:06:08 +0000
@@ -109,7 +109,7 @@
 definitions that shadow the currently defined macros.  Byte compilation
 uses this feature.
 
address@hidden
address@hidden
 @group
 (defmacro inc (var)
     (list 'setq var (list '1+ var)))
@@ -131,7 +131,7 @@
 (macroexpand '(inc2 r s))
      @result{} (progn (inc r) (inc s))  ; @address@hidden not expanded here.}
 @end group
address@hidden smallexample
address@hidden example
 @end defun
 
 
@@ -145,10 +145,10 @@
 @code{macroexpand-all}, we see that @code{macroexpand-all} @emph{does}
 expand the embedded calls to @code{inc}:
 
address@hidden
address@hidden
 (macroexpand-all '(inc2 r s))
      @result{} (progn (setq r (1+ r)) (setq s (1+ s)))
address@hidden smallexample
address@hidden example
 
 @end defun
 
@@ -332,7 +332,7 @@
 problem.  This macro allows us to write a ``for'' loop construct.
 
 @findex for
address@hidden
address@hidden
 @group
 (defmacro for (var from init to final do &rest body)
   "Execute a simple \"for\" loop.
@@ -363,7 +363,7 @@
      @print{}3       9
 @result{} nil
 @end group
address@hidden smallexample
address@hidden example
 
 @noindent
 The arguments @code{from}, @code{to}, and @code{do} in this macro are
@@ -373,7 +373,7 @@
 
 Here's an equivalent definition simplified through use of backquote:
 
address@hidden
address@hidden
 @group
 (defmacro for (var from init to final do &rest body)
   "Execute a simple \"for\" loop.
@@ -383,7 +383,7 @@
        ,@@body
        (inc ,var))))
 @end group
address@hidden smallexample
address@hidden example
 
 Both forms of this definition (with backquote and without) suffer from
 the defect that @var{final} is evaluated on every iteration.  If
@@ -398,7 +398,7 @@
 once unless repeated evaluation is part of the intended purpose of the
 macro.  Here is a correct expansion for the @code{for} macro:
 
address@hidden
address@hidden
 @group
 (let ((i 1)
       (max 3))
@@ -407,11 +407,11 @@
     (princ (format "%d      %d" i square))
     (inc i)))
 @end group
address@hidden smallexample
address@hidden example
 
 Here is a macro definition that creates this expansion:
 
address@hidden
address@hidden
 @group
 (defmacro for (var from init to final do &rest body)
   "Execute a simple for loop: (for i from 1 to 10 do (print i))."
@@ -421,7 +421,7 @@
        ,@@body
        (inc ,var))))
 @end group
address@hidden smallexample
address@hidden example
 
   Unfortunately, this fix introduces another problem,
 described in the following section.
@@ -434,7 +434,7 @@
 follows to make the expansion evaluate the macro arguments the proper
 number of times:
 
address@hidden
address@hidden
 @group
 (defmacro for (var from init to final do &rest body)
   "Execute a simple for loop: (for i from 1 to 10 do (print i))."
@@ -446,14 +446,14 @@
        ,@@body
        (inc ,var))))
 @end group
address@hidden smallexample
address@hidden example
 @end ifnottex
 
   The new definition of @code{for} has a new problem: it introduces a
 local variable named @code{max} which the user does not expect.  This
 causes trouble in examples such as the following:
 
address@hidden
address@hidden
 @group
 (let ((max 0))
   (for x from 0 to 10 do
@@ -461,7 +461,7 @@
       (if (< max this)
           (setq max this)))))
 @end group
address@hidden smallexample
address@hidden example
 
 @noindent
 The references to @code{max} inside the body of the @code{for}, which
@@ -477,7 +477,7 @@
 where put by @code{for}.  Here is a definition of @code{for} that works
 this way:
 
address@hidden
address@hidden
 @group
 (defmacro for (var from init to final do &rest body)
   "Execute a simple for loop: (for i from 1 to 10 do (print i))."
@@ -488,7 +488,7 @@
          ,@@body
          (inc ,var)))))
 @end group
address@hidden smallexample
address@hidden example
 
 @noindent
 This creates an uninterned symbol named @code{max} and puts it in the

=== modified file 'doc/lispref/minibuf.texi'
--- a/doc/lispref/minibuf.texi  2012-04-27 03:10:38 +0000
+++ b/doc/lispref/minibuf.texi  2012-05-09 03:06:08 +0000
@@ -512,8 +512,7 @@
 If the value of this variable is @code{nil}, standard functions that
 read from the minibuffer don't add new elements to the history list.
 This lets Lisp programs explicitly manage input history by using
address@hidden  By default, @code{history-add-new-input} is
address@hidden
address@hidden  The default value is @code{t}.
 @end defvar
 
 @defopt history-length
@@ -696,7 +695,7 @@
 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 function can be used
+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}.
 
@@ -719,8 +718,8 @@
 In the first of the following examples, the string @samp{foo} is
 matched by three of the alist @sc{car}s.  All of the matches begin with
 the characters @samp{fooba}, so that is the result.  In the second
-example, there is only one possible match, and it is exact, so the value
-is @code{t}.
+example, there is only one possible match, and it is exact, so the
+return value is @code{t}.
 
 @smallexample
 @group

=== modified file 'doc/lispref/sequences.texi'
--- a/doc/lispref/sequences.texi        2012-04-14 01:59:01 +0000
+++ b/doc/lispref/sequences.texi        2012-05-09 03:06:08 +0000
@@ -247,7 +247,7 @@
 change the length of an existing array.
 
 @item
-For purposes of evaluation, the array is a constant---in other words,
+For purposes of evaluation, the array is a constant---i.e.,
 it evaluates to itself.
 
 @item

=== modified file 'doc/lispref/streams.texi'
--- a/doc/lispref/streams.texi  2012-04-27 03:10:38 +0000
+++ b/doc/lispref/streams.texi  2012-05-09 03:06:08 +0000
@@ -812,7 +812,6 @@
 If address@hidden, that means number continuously across print calls.
 This affects the numbers printed for @address@hidden labels and
 @address@hidden references.
-
 Don't set this variable with @code{setq}; you should only bind it
 temporarily to @code{t} with @code{let}.  When you do that, you should
 also bind @code{print-number-table} to @code{nil}.
@@ -825,8 +824,8 @@
 @end defvar
 
 @defvar float-output-format
-This variable specifies how to print floating point numbers.  Its
-default value is @code{nil}, meaning use the shortest output
+This variable specifies how to print floating point numbers.  The
+default is @code{nil}, meaning use the shortest output
 that represents the number without losing information.
 
 To control output format more precisely, you can put a string in this

=== modified file 'doc/lispref/symbols.texi'
--- a/doc/lispref/symbols.texi  2012-04-27 03:10:38 +0000
+++ b/doc/lispref/symbols.texi  2012-05-09 03:06:08 +0000
@@ -90,7 +90,7 @@
 @code{symbol-function} (@pxref{Function Cells}).
 
   The property list cell normally should hold a correctly formatted
-property list.  To get a symbol's function cell, use the function
+property list.  To get a symbol's property list, use the function
 @code{symbol-plist}.  @xref{Property Lists}.
 
   The function cell or the value cell may be @dfn{void}, which means
@@ -310,7 +310,7 @@
 the function returns @var{name} if @var{name} is interned
 in the specified obarray, and otherwise @code{nil}.
 
address@hidden
address@hidden
 (intern-soft "frazzle")        ; @r{No such symbol exists.}
      @result{} nil
 (make-symbol "frazzle")        ; @r{Create an uninterned one.}
@@ -331,7 +331,7 @@
 (eq sym 'frazzle)              ; @r{And it is the same one.}
      @result{} t
 @end group
address@hidden smallexample
address@hidden example
 @end defun
 
 @defvar obarray
@@ -346,7 +346,7 @@
 omitted, it defaults to the value of @code{obarray}, the standard
 obarray for ordinary symbols.
 
address@hidden
address@hidden
 (setq count 0)
      @result{} 0
 (defun count-syms (s)
@@ -356,7 +356,7 @@
      @result{} nil
 count
      @result{} 1871
address@hidden smallexample
address@hidden example
 
 See @code{documentation} in @ref{Accessing Documentation}, for another
 example using @code{mapatoms}.
@@ -462,12 +462,12 @@
 Normally, @var{plist} should be a well-formed property list, but this is
 not enforced.  The return value is @var{plist}.
 
address@hidden
address@hidden
 (setplist 'foo '(a 1 b (2 3) c nil))
      @result{} (a 1 b (2 3) c nil)
 (symbol-plist 'foo)
      @result{} (a 1 b (2 3) c nil)
address@hidden smallexample
address@hidden example
 
 For symbols in special obarrays, which are not used for ordinary
 purposes, it may make sense to use the property list cell in a
@@ -492,7 +492,7 @@
 the property name @var{property}, replacing any previous property value.
 The @code{put} function returns @var{value}.
 
address@hidden
address@hidden
 (put 'fly 'verb 'transitive)
      @result{}'transitive
 (put 'fly 'noun '(a buzzing little bug))
@@ -501,14 +501,14 @@
      @result{} transitive
 (symbol-plist 'fly)
      @result{} (verb transitive noun (a buzzing little bug))
address@hidden smallexample
address@hidden example
 @end defun
 
 @node Other Plists
 @subsection Property Lists Outside Symbols
 
   These functions are useful for manipulating property lists
-that are stored in places other than symbols:
+not stored in symbols:
 
 @defun plist-get plist property
 This returns the value of the @var{property} property stored in the

=== modified file 'doc/lispref/two-volume.make'
--- a/doc/lispref/two-volume.make       2012-01-19 07:21:25 +0000
+++ b/doc/lispref/two-volume.make       2012-05-08 01:57:08 +0000
@@ -1,4 +1,4 @@
-# Copyright (C) 2007-2012  Free Software Foundation, Inc.
+# Copyright (C) 2007-2012 Free Software Foundation, Inc.
 # See end for copying conditions.
 
 # although it would be nice to use tex rather than pdftex to avoid
@@ -6,8 +6,9 @@
 # existing, etc., dvips | ps2pdf doesn't preserve the page size.
 # Instead of creating a special dvips config file, put up with the warnings.
 texinfodir=../misc
+emacsdir=../emacs
 
-tex = TEXINPUTS=".:$(texinfodir):${TEXINPUTS}" pdftex -interaction=nonstopmode
+tex = TEXINPUTS=".:$(texinfodir):${emacsdir}:${TEXINPUTS}" pdftex 
-interaction=nonstopmode
 
 all: vol1.pdf vol2.pdf
 

=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2012-05-09 00:57:18 +0000
+++ b/lisp/ChangeLog    2012-05-09 03:06:08 +0000
@@ -1,3 +1,37 @@
+2012-05-09  Stefan Monnier  <address@hidden>
+
+       * shell.el (shell-completion-vars): Fix last change (bug#11348).
+
+2012-05-09  Chong Yidong  <address@hidden>
+
+       * ansi-color.el (ansi-color-process-output): Check for validity of
+       comint-last-output-start before using it.  This avoids a bad
+       interaction with gdb-mi's input/output buffer.
+
+2012-05-09  Glenn Morris  <address@hidden>
+
+       * files.el (dir-locals-read-from-file):
+       Mention dir-locals in any error message.
+
+2012-05-09  Chong Yidong  <address@hidden>
+
+       * emacs-lisp/package.el (package-built-in-p): Handle the `emacs'
+       package (Bug#11410).
+
+       * emacs-lisp/package.el (package-buffer-info): Avoid putting local
+       variables into description.
+
+2012-05-09  Stefan Monnier  <address@hidden>
+
+       * shell.el (shell-completion-vars): Set pcomplete-arg-quote-list like
+       shell-delimiter-argument-list (bug#11348).
+       (shell-parse-pcomplete-arguments): Obey pcomplete-arg-quote-list.
+
+2012-05-09  Chong Yidong  <address@hidden>
+
+       * select.el (xselect--encode-string): Always use utf-8 for TEXT on
+       Nextstep.
+
 2012-05-09  Juanma Barranquero  <address@hidden>
 
        * textmodes/rst.el: Silence byte-compiler warnings.

=== modified file 'lisp/ansi-color.el'
--- a/lisp/ansi-color.el        2012-02-19 13:59:42 +0000
+++ b/lisp/ansi-color.el        2012-05-07 03:14:21 +0000
@@ -217,8 +217,12 @@
 `comint-last-output-start' and the process-mark.
 
 This is a good function to put in `comint-output-filter-functions'."
-  (let ((start-marker (or comint-last-output-start
-                         (point-min-marker)))
+  (let ((start-marker (if (and (markerp comint-last-output-start)
+                              (eq (marker-buffer comint-last-output-start)
+                                  (current-buffer))
+                              (marker-position comint-last-output-start))
+                         comint-last-output-start
+                       (point-min-marker)))
        (end-marker (process-mark (get-buffer-process (current-buffer)))))
     (cond ((eq ansi-color-for-comint-mode nil))
          ((eq ansi-color-for-comint-mode 'filter)

=== modified file 'lisp/emacs-lisp/package.el'
--- a/lisp/emacs-lisp/package.el        2012-04-19 17:20:26 +0000
+++ b/lisp/emacs-lisp/package.el        2012-05-09 03:06:08 +0000
@@ -469,8 +469,11 @@
 Optional arg MIN-VERSION, if non-nil, should be a version list
 specifying the minimum acceptable version."
   (require 'finder-inf nil t) ; For `package--builtins'.
-  (let ((elt (assq package package--builtins)))
-    (and elt (version-list-<= min-version (package-desc-vers (cdr elt))))))
+  (if (eq package 'emacs)
+      (version-list-<= min-version (version-to-list emacs-version))
+    (let ((elt (assq package package--builtins)))
+      (and elt (version-list-<= min-version
+                               (package-desc-vers (cdr elt)))))))
 
 ;; This function goes ahead and activates a newer version of a package
 ;; if an older one was already activated.  This is not ideal; we'd at
@@ -943,7 +946,7 @@
 error.  If there is a package, narrow the buffer to the file's
 boundaries."
   (goto-char (point-min))
-  (unless (re-search-forward "^;;; \\([^ ]*\\)\\.el --- \\(.*\\)$" nil t)
+  (unless (re-search-forward "^;;; \\([^ ]*\\)\\.el ---[ \t]*\\(.*?\\)[ 
\t]*\\(-\\*-.*-\\*-[ \t]*\\)?$" nil t)
     (error "Packages lacks a file header"))
   (let ((file-name (match-string-no-properties 1))
        (desc      (match-string-no-properties 2))

=== modified file 'lisp/files.el'
--- a/lisp/files.el     2012-05-08 17:23:09 +0000
+++ b/lisp/files.el     2012-05-09 03:06:08 +0000
@@ -3629,19 +3629,21 @@
 The new class name is the same as the directory in which FILE
 is found.  Returns the new class name."
   (with-temp-buffer
-    ;; Errors reading the file are not very informative.
-    ;; Eg just "Error: (end-of-file)" does not give any clue that the
-    ;; problem is related to dir-locals.
-    (with-demoted-errors
-      (insert-file-contents file)
-      (let* ((dir-name (file-name-directory file))
-            (class-name (intern dir-name))
-            (variables (let ((read-circle nil))
-                         (read (current-buffer)))))
-       (dir-locals-set-class-variables class-name variables)
-       (dir-locals-set-directory-class dir-name class-name
-                                       (nth 5 (file-attributes file)))
-       class-name))))
+    ;; This is with-demoted-errors, but we want to mention dir-locals
+    ;; in any error message.
+    (let (err)
+      (condition-case err
+         (progn
+           (insert-file-contents file)
+           (let* ((dir-name (file-name-directory file))
+                  (class-name (intern dir-name))
+                  (variables (let ((read-circle nil))
+                               (read (current-buffer)))))
+             (dir-locals-set-class-variables class-name variables)
+             (dir-locals-set-directory-class dir-name class-name
+                                             (nth 5 (file-attributes file)))
+             class-name))
+       (error (message "Error reading dir-locals: %S" err) nil)))))
 
 (defun hack-dir-local-variables ()
   "Read per-directory local variables for the current buffer.

=== modified file 'lisp/shell.el'
--- a/lisp/shell.el     2012-02-28 08:17:21 +0000
+++ b/lisp/shell.el     2012-05-08 00:27:13 +0000
@@ -393,8 +393,11 @@
             (goto-char (match-end 0))
             (cond
              ((match-beginning 3)       ;Backslash escape.
-              (push (if (= (match-beginning 3) (match-end 3))
-                        "\\" (match-string 3))
+              (push (cond
+                     ((null pcomplete-arg-quote-list)
+                      (goto-char (match-beginning 3)) "\\")
+                     ((= (match-beginning 3) (match-end 3)) "\\")
+                     (t (match-string 3)))
                     arg))
              ((match-beginning 2)       ;Double quote.
               (push (replace-regexp-in-string
@@ -429,7 +432,7 @@
   (set (make-local-variable 'pcomplete-parse-arguments-function)
        #'shell-parse-pcomplete-arguments)
   (set (make-local-variable 'pcomplete-arg-quote-list)
-       (append "\\ \t\n\r\"'`$|&;(){}[]<>#" nil))
+       comint-file-name-quote-list)
   (set (make-local-variable 'pcomplete-termination-string)
        (cond ((not comint-completion-addsuffix) "")
              ((stringp comint-completion-addsuffix)

=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2012-05-08 19:09:38 +0000
+++ b/src/ChangeLog     2012-05-09 03:06:08 +0000
@@ -1,3 +1,11 @@
+2012-05-09  Eli Zaretskii  <address@hidden>
+
+       * w32proc.c (new_child): Force Windows to reserve only 64KB of
+       stack for each reader_thread, instead of defaulting to 8MB
+       determined by the linker.  This avoids failures in creating
+       subprocesses on Windows 7, see the discussion in this thread:
+       http://lists.gnu.org/archive/html/emacs-devel/2012-03/msg00119.html.
+
 2012-05-07  Jérémy Compostella  <address@hidden>
 
        Fix up display of the *Minibuf-0* buffer in the mini window.

=== modified file 'src/w32proc.c'
--- a/src/w32proc.c     2012-03-20 18:49:18 +0000
+++ b/src/w32proc.c     2012-05-05 08:40:31 +0000
@@ -141,7 +141,25 @@
       cp->char_consumed = CreateEvent (NULL, FALSE, FALSE, NULL);
       if (cp->char_consumed)
         {
-         cp->thrd = CreateThread (NULL, 1024, reader_thread, cp, 0, &id);
+         /* The 0x00010000 flag is STACK_SIZE_PARAM_IS_A_RESERVATION.
+            It means that the 64K stack we are requesting in the 2nd
+            argument is how much memory should be reserved for the
+            stack.  If we don't use this flag, the memory requested
+            by the 2nd argument is the amount actually _committed_,
+            but Windows reserves 8MB of memory for each thread's
+            stack.  (The 8MB figure comes from the -stack
+            command-line argument we pass to the linker when building
+            Emacs, but that's because we need a large stack for
+            Emacs's main thread.)  Since we request 2GB of reserved
+            memory at startup (see w32heap.c), which is close to the
+            maximum memory available for a 32-bit process on Windows,
+            the 8MB reservation for each thread causes failures in
+            starting subprocesses, because we create a thread running
+            reader_thread for each subprocess.  As 8MB of stack is
+            way too much for reader_thread, forcing Windows to
+            reserve less wins the day.  */
+         cp->thrd = CreateThread (NULL, 64 * 1024, reader_thread, cp,
+                                  0x00010000, &id);
          if (cp->thrd)
            return cp;
        }


reply via email to

[Prev in Thread] Current Thread [Next in Thread]