changeset 83314:d07fdd5d7d4e

Merged from miles@gnu.org--gnu-2005 (patch 441-446) Patches applied: * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-441 Update reference to renamed Buffer-menu-buffer face * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-442 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-443 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-444 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-445 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-446 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-354
author Karoly Lorentey <lorentey@elte.hu>
date Sat, 25 Jun 2005 15:00:08 +0000
parents bdcbdec78dd3 (current diff) cad79f2ac120 (diff)
children 13371344a3ba
files admin/FOR-RELEASE etc/TODO lisp/ChangeLog lisp/bindings.el lisp/faces.el lisp/progmodes/gdb-ui.el lisp/simple.el lisp/subr.el lisp/url/url-cookie.el lispref/ChangeLog man/ChangeLog man/info.texi man/speedbar.texi src/dispnew.c src/fileio.c src/frame.c src/lread.c src/process.c src/xdisp.c src/xfaces.c src/xselect.c
diffstat 63 files changed, 739 insertions(+), 404 deletions(-) [+]
line wrap: on
line diff
--- a/admin/FOR-RELEASE	Wed Jun 22 17:53:21 2005 +0000
+++ b/admin/FOR-RELEASE	Sat Jun 25 15:00:08 2005 +0000
@@ -26,6 +26,9 @@
 
 ** Update Speedbar.
 
+** Update vhdl-mode.el based on changes in
+   http://opensource.ethz.ch/emacs/vhdl-mode.html.
+
 
 * FATAL ERRORS
 
@@ -139,7 +142,7 @@
 man/mini.texi       "Luc Teirlinck"  Chong Yidong
 man/misc.texi       Chong Yidong
 man/msdog.texi      Chong Yidong
-man/mule.texi       "Luc Teirlinck"
+man/mule.texi       "Luc Teirlinck"  Kenichi Handa
 man/m-x.texi        "Luc Teirlinck"  Chong Yidong
 man/picture.texi    Joakim Verona <joakim@verona.se>   Chong Yidong
 man/programs.texi   "Stephen Eglen"  Chong Yidong
--- a/etc/NEWS	Wed Jun 22 17:53:21 2005 +0000
+++ b/etc/NEWS	Sat Jun 25 15:00:08 2005 +0000
@@ -691,9 +691,9 @@
 *** New face `escape-glyph' highlights control characters and escape glyphs.
 
 +++
-*** Non-breaking space and hyphens are now prefixed with an escape
-character, unless the new user variable `show-nonbreak-escape' is set
-to nil.
+*** Non-breaking space and hyphens are now displayed with a special
+face, either nobreak-space or escape-glyph.  You can turn this off or
+specify a different mode by setting the variable `nobreak-char-display'.
 
 +++
 *** The parameters of automatic hscrolling can now be customized.
@@ -3542,10 +3542,7 @@
 +++
 *** Functions `match-data' and `set-match-data' now have an optional
 argument `reseat'.  When non-nil, all markers in the match data list
-passed to these function will be reseated to point to nowhere, and if
-the value of `reseat' is `evaporate', the markers are put onto the
-free list.  Note that no other references to those markers must exist
-if `evaporate' is specified for the `reseat' argument.
+passed to these function will be reseated to point to nowhere.
 
 +++
 *** The default value of `sentence-end' is now defined using the new
--- a/etc/TODO	Wed Jun 22 17:53:21 2005 +0000
+++ b/etc/TODO	Sat Jun 25 15:00:08 2005 +0000
@@ -30,6 +30,10 @@
   See also ESR's proposal for a BROWSER environment variable
   <URL:http://www.catb.org/~esr/BROWSER/browse-url.patch>.
 
+** Enhance scroll-bar to handle tall line (similar to line-move).
+
+** Make occur handle multi-line matches cleanly with context.
+
 * Important features:
 
 ** Provide user-friendly ways to list all available font families,
--- a/lisp/ChangeLog	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/ChangeLog	Sat Jun 25 15:00:08 2005 +0000
@@ -1,5 +1,78 @@
+2005-06-24  Nick Roberts  <nickrob@snap.net.nz>
+
+	* progmodes/gud.el (gud-tooltip-print-command): Indent properly.
+	(gud-gdb-marker-filter): Use font-lock-warning-face for any
+	initial error.
+	
+	* progmodes/gdb-ui.el (gdb-send): Remove warning face from errors
+	after fresh input.
+	(gdb-var-create-handler): Put name of expression in quotes.
+	
+2005-06-23  Luc Teirlinck  <teirllm@auburn.edu>
+
+	* emacs-lisp/ring.el (ring-elements): Make it return a list of the
+	elements of RING in order, and without bogus nil elements.
+
+2005-06-23  Richard M. Stallman  <rms@gnu.org>
+
+	* simple.el (set-variable): Args renamed; doc fix.
+	(line-move-1): When there are overlays around, use vertical-motion.
+
+	* faces.el (escape-glyph): Use brown against light background.
+	(nobreak-space): Renamed from no-break-space.
+	Fix previous change.
+
+	* dired-aux.el (dired-do-copy): Fix arg prompt.
+
+	* mail/sendmail.el (mail-setup-with-from): Fix custom type.
+
+2005-06-23  Glenn Morris  <gmorris@ast.cam.ac.uk>
+
+	* mail/emacsbug.el (report-emacs-bug): Use "X server distributor"
+	rather than "Distributor".
+
+2005-06-23  Lute Kamstra  <lute@gnu.org>
+
+	* emacs-lisp/debug.el (debugger-special-form-p): New defun.
+	(debug-on-entry): Use it.  New interactive declaration that uses
+	function-called-at-point.
+
+2005-06-23  Kim F. Storm  <storm@cua.dk>
+
+	* subr.el (save-match-data): Add comment about using evaporate arg
+	to set-match-data.
+
+2005-06-22  Glenn Morris  <gmorris@ast.cam.ac.uk>
+
+	* cus-edit.el (customize-face)
+	(customize-face-other-window): Handle face aliases.
+
+	* faces.el (face-documentation, set-face-attribute)
+	(face-spec-set): Handle face aliases.
+
+2005-06-22  Juanma Barranquero  <lekktu@gmail.com>
+
+	* help-mode.el (help-make-xrefs): If a symbol representing a face
+	name is not followed by the word "face", it could still be a
+	function or variable name, so don't bypass other checks.
+
+2005-06-22  Juri Linkov  <juri@jurta.org>
+
+	* ps-print.el (ps-face-foreground-name, ps-face-background-name):
+	Replace aliased functions with calls where second arg `inherit' is t.
+
+2005-06-22  Nick Roberts  <nickrob@snap.net.nz>
+
+	* progmodes/gdb-ui.el (gdb-error): New variable.
+	(gdb-error): New function.
+	(gdb-annotation-rules): Act on error-begin and error annotations.
+	(gdb-concat-output): Use font-lock-warning-face for errors.
+
 2005-06-22  Miles Bader  <miles@gnu.org>
 
+	* bindings.el (propertized-buffer-identification): Use renamed
+	`Buffer-menu-buffer' face.
+
 	* faces.el (vertical-border): Renamed from `vertical-divider'.
 	(escape-glyph): Change dark-background color back to `cyan'.
 
@@ -457,10 +530,9 @@
 
 2005-06-15  Nick Roberts  <nickrob@snap.net.nz>
 
-	* progmodes/gdb-ui.el (gdb-tooltip-print):
-	Respect tooltip-use-echo-area.
-	(menu): Re-order menu items.
-
+	* progmodes/gdb-ui.el (menu): Re-order menu items.
+	(gdb-tooltip-print): Respect tooltip-use-echo-area.
+	
 	* progmodes/gud.el (tooltip-use-echo-area): Remove alias.
 	Define in tooltip.el.
 	(gud-tooltip-process-output): Respect tooltip-use-echo-area.
@@ -580,7 +652,6 @@
 	variables, unless either `gtk' is boundp or this isn't a
 	`windows-nt' build.
 
->>>>>>> 1.7817
 2005-06-13  Lute Kamstra  <lute@gnu.org>
 
 	* abbrev.el (edit-abbrevs-mode): Use kill-all-local-variables and
@@ -1488,7 +1559,6 @@
 
 	* simple.el (filter-buffer-substring): Fix typo in docstring.
 
->>>>>>> 1.7768
 2005-05-31  Richard M. Stallman  <rms@gnu.org>
 
 	* progmodes/vhdl-mode.el (vhdl-fill-region): Test ARG, not INTERACTIVE.
@@ -1525,7 +1595,6 @@
 	* textmodes/tex-mode.el (tex-compile-commands, tex-compile)
 	(tex-start-tex): Undo all but the last part of the 2005-05-28 change.
 
->>>>>>> 1.7646
 2005-05-30  Glenn Morris  <gmorris@ast.cam.ac.uk>
 
 	* calendar/diary-lib.el (mark-included-diary-files): Only kill
--- a/lisp/add-log.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/add-log.el	Sat Jun 25 15:00:08 2005 +0000
@@ -232,9 +232,13 @@
 
 (defvar change-log-font-lock-keywords
   '(;;
-    ;; Date lines, new and old styles.
-    ("^\\sw.........[0-9:+ ]*"
-     (0 'change-log-date)
+    ;; Date lines, new (2000-01-01) and old (Sat Jan  1 00:00:00 2000) styles.
+    ;; Fixme: this regepx is just an approximate one and may match
+    ;; wrongly with a non-date line existing as a random note.  In
+    ;; addition, using any kind of fixed setting like this doesn't
+    ;; work if a user customizes add-log-time-format.
+    ("^[0-9-]+ +\\|^\\(Sun\\|Mon\\|Tue\\|Wed\\|Thu\\|Fri\\|Sat\\) [A-z][a-z][a-z] [0-9:+ ]+"
+     (0 'change-log-date-face)
      ;; Name and e-mail; some people put e-mail in parens, not angles.
      ("\\([^<(]+?\\)[ \t]*[(<]\\([A-Za-z0-9_.+-]+@[A-Za-z0-9_.-]+\\)[>)]" nil nil
       (1 'change-log-name)
--- a/lisp/bindings.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/bindings.el	Sat Jun 25 15:00:08 2005 +0000
@@ -471,7 +471,7 @@
 FMT is a format specifier such as \"%12b\".  This function adds
 text properties for face, help-echo, and local-map to it."
   (list (propertize fmt
-		    'face 'Buffer-menu-buffer-face
+		    'face 'Buffer-menu-buffer
 		    'help-echo
 		    (purecopy "mouse-1: previous buffer, mouse-3: next buffer")
 		    'mouse-face 'mode-line-highlight
--- a/lisp/cus-edit.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/cus-edit.el	Sat Jun 25 15:00:08 2005 +0000
@@ -1116,7 +1116,8 @@
 ;;;###autoload
 (defun customize-face (&optional face)
   "Customize FACE, which should be a face name or nil.
-If FACE is nil, customize all faces.
+If FACE is nil, customize all faces.  If FACE is actually a
+face-alias, customize the face it is aliased to.
 
 Interactively, when point is on text which has a face specified,
 suggest to customize that face, if it's customizable."
@@ -1133,6 +1134,9 @@
 				     face)
 			     t nil)
 			    "*Customize Faces*")
+    ;; If FACE is actually an alias, customize the face it is aliased to.
+    (if (get face 'face-alias)
+        (setq face (get face 'face-alias)))
     (unless (facep face)
       (error "Invalid face %S" face))
     (custom-buffer-create (list (list face 'custom-face))
@@ -1142,6 +1146,7 @@
 ;;;###autoload
 (defun customize-face-other-window (&optional face)
   "Show customization buffer for face FACE in other window.
+If FACE is actually a face-alias, customize the face it is aliased to.
 
 Interactively, when point is on text which has a face specified,
 suggest to customize that face, if it's customizable."
@@ -1159,6 +1164,8 @@
 		face)
 	t nil)
        "*Customize Faces*")
+    (if (get face 'face-alias)
+        (setq face (get face 'face-alias)))
     (unless (facep face)
       (error "Invalid face %S" face))
     (custom-buffer-create-other-window
--- a/lisp/dired-aux.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/dired-aux.el	Sat Jun 25 15:00:08 2005 +0000
@@ -1509,7 +1509,7 @@
   (interactive "P")
   (let ((dired-recursive-copies dired-recursive-copies))
     (dired-do-create-files 'copy (function dired-copy-file)
-			   (if dired-copy-preserve-time "Copy [-p]" "Copy")
+			   "Copy"
 			   arg dired-keep-marker-copy
 			   nil dired-copy-how-to-fn)))
 
--- a/lisp/emacs-lisp/debug.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/emacs-lisp/debug.el	Sat Jun 25 15:00:08 2005 +0000
@@ -653,6 +653,12 @@
       nil
     (funcall debugger 'debug)))
 
+(defun debugger-special-form-p (symbol)
+  "Return whether SYMBOL is a special form."
+  (and (fboundp symbol)
+       (subrp (symbol-function symbol))
+       (eq (cdr (subr-arity (symbol-function symbol))) 'unevalled)))
+
 ;;;###autoload
 (defun debug-on-entry (function)
   "Request FUNCTION to invoke debugger each time it is called.
@@ -668,9 +674,21 @@
 
 Use \\[cancel-debug-on-entry] to cancel the effect of this command.
 Redefining FUNCTION also cancels it."
-  (interactive "aDebug on entry (to function): ")
-  (when (and (subrp (symbol-function function))
-	     (eq (cdr (subr-arity (symbol-function function))) 'unevalled))
+  (interactive
+   (let ((fn (function-called-at-point)) val)
+     (when (debugger-special-form-p fn)
+       (setq fn nil))
+     (setq val (completing-read 
+		(if fn
+		    (format "Debug on entry to function (default %s): " fn)
+		  "Debug on entry to function: ")
+		obarray
+		#'(lambda (symbol)
+		    (and (fboundp symbol)
+			 (not (debugger-special-form-p symbol))))
+		t nil nil (symbol-name fn)))
+     (list (if (equal val "") fn (intern val)))))
+  (when (debugger-special-form-p function)
     (error "Function %s is a special form" function))
   (if (or (symbolp (symbol-function function))
 	  (subrp (symbol-function function)))
--- a/lisp/emacs-lisp/ring.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/emacs-lisp/ring.el	Sat Jun 25 15:00:08 2005 +0000
@@ -155,8 +155,13 @@
       (aref vec (ring-index index hd ln (length vec))))))
 
 (defun ring-elements (ring)
-  "Return a list of the elements of RING."
-  (mapcar #'identity (cddr ring)))
+  "Return a list of the elements of RING, in order, newest first."
+  (let ((start (car ring))
+	(size (ring-size ring))
+	(vect (cddr ring))
+	lst)
+    (dotimes (var (cadr ring) lst)
+      (push (aref vect (mod (+ start var) size)) lst))))
 
 ;;; provide ourself:
 
--- a/lisp/faces.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/faces.el	Sat Jun 25 15:00:08 2005 +0000
@@ -513,8 +513,17 @@
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 (defun face-documentation (face)
-  "Get the documentation string for FACE."
-  (get face 'face-documentation))
+  "Get the documentation string for FACE.
+If FACE is a face-alias, get the documentation for the target face."
+  (let ((alias (get face 'face-alias))
+        doc)
+    (if alias
+        (progn
+          (setq doc (get alias 'face-documentation))
+          (format "%s is an alias for the face `%s'.%s" face alias
+                  (if doc (format "\n%s" doc)
+                    "")))
+      (get face 'face-documentation))))
 
 
 (defun set-face-documentation (face string)
@@ -661,7 +670,7 @@
     (setq args (purecopy args))
     ;; If we set the new-frame defaults, this face is modified outside Custom.
     (if (memq where '(0 t))
-	(put face 'face-modified t))
+	(put (or (get face 'face-alias) face) 'face-modified t))
     (while args
       (internal-set-lisp-face-attribute face (car args)
 					(purecopy (cadr args))
@@ -1443,7 +1452,7 @@
   ;; When we reset the face based on its spec, then it is unmodified
   ;; as far as Custom is concerned.
   (if (null frame)
-      (put face 'face-modified nil)))
+      (put (or (get face 'face-alias) face) 'face-modified nil)))
 
 
 (defun face-attr-match-p (face attrs &optional frame)
@@ -2141,17 +2150,18 @@
     ;; See the comment in minibuffer-prompt for
     ;; the reason not to use blue on MS-DOS.
     (((type pc)) :foreground "magenta")
-    ;; red4 is too light -- rms.
-    (t :foreground "blue"))
+    ;; red4 is too dark, but some say blue is too loud.
+    ;; brown seems to work ok. -- rms.
+    (t :foreground "brown"))
   "Face for characters displayed as ^-sequences or \-sequences."
   :group 'basic-faces
   :version "22.1")
 
-(defface no-break-space
+(defface nobreak-space
   '((((class color) (min-colors 88)) :inherit escape-glyph :underline t)
-    (((class color) (min-colors 8)) :background "magenta" :foreground )
+    (((class color) (min-colors 8)) :background "magenta")
     (t :inverse-video t))
-  "Face for non-breaking space."
+  "Face for displaying nobreak space."
   :group 'basic-faces
   :version "22.1")
 
--- a/lisp/gnus/ChangeLog	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/gnus/ChangeLog	Sat Jun 25 15:00:08 2005 +0000
@@ -1,3 +1,10 @@
+2005-06-23  Lute Kamstra  <lute@gnu.org>
+
+	* gnus-art.el (gnus-article-mode): Use kill-all-local-variables.
+
+	* dig.el (dig-mode):
+	* smime.el (smime-mode): Use gnus-run-mode-hooks.
+
 2005-06-21  Juanma Barranquero  <lekktu@gmail.com>
 
 	* nnimap.el (nnimap-split-download-body): Fix spellings.
--- a/lisp/gnus/dig.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/gnus/dig.el	Sat Jun 25 15:00:08 2005 +0000
@@ -148,7 +148,8 @@
     (set (make-local-variable 'font-lock-defaults)
 	 '(dig-font-lock-keywords t)))
   (when (featurep 'font-lock)
-    (font-lock-set-defaults)))
+    (font-lock-set-defaults))
+  (gnus-run-mode-hooks 'dig-mode-hook))
 
 (defun dig-exit ()
   "Quit dig output buffer."
--- a/lisp/gnus/gnus-art.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/gnus/gnus-art.el	Sat Jun 25 15:00:08 2005 +0000
@@ -3732,6 +3732,7 @@
 \\[gnus-article-describe-briefly]\t Describe the current mode briefly
 \\[gnus-info-find-node]\t Go to the Gnus info node"
   (interactive)
+  (kill-all-local-variables)
   (gnus-simplify-mode-line)
   (setq mode-name "Article")
   (setq major-mode 'gnus-article-mode)
--- a/lisp/gnus/smime.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/gnus/smime.el	Sat Jun 25 15:00:08 2005 +0000
@@ -596,7 +596,8 @@
   (use-local-map smime-mode-map)
   (buffer-disable-undo)
   (setq truncate-lines t)
-  (setq buffer-read-only t))
+  (setq buffer-read-only t)
+  (gnus-run-mode-hooks 'smime-mode-hook))
 
 (defun smime-certificate-info (certfile)
   (interactive "fCertificate file: ")
--- a/lisp/help-mode.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/help-mode.el	Sat Jun 25 15:00:08 2005 +0000
@@ -388,9 +388,10 @@
 ;;; 				(pop-to-buffer (car location))
 ;;; 				(goto-char (cdr location))))
 			  (help-xref-button 8 'help-function-def sym))
-			 ((facep sym)
-			  (if (save-match-data (looking-at "[ \t\n]+face\\W"))
-			      (help-xref-button 8 'help-face sym)))
+			 ((and
+                           (facep sym)
+                           (save-match-data (looking-at "[ \t\n]+face\\W")))
+                          (help-xref-button 8 'help-face sym))
                          ((and (boundp sym) (fboundp sym))
                           ;; We can't intuit whether to use the
                           ;; variable or function doc -- supply both.
--- a/lisp/mail/emacsbug.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/mail/emacsbug.el	Sat Jun 25 15:00:08 2005 +0000
@@ -130,7 +130,7 @@
     (insert "In " (emacs-version) "\n")
     (if (fboundp 'x-server-vendor)
 	(condition-case nil
-	    (insert "Distributor `" (x-server-vendor) "', version "
+	    (insert "X server distributor `" (x-server-vendor) "', version "
 		    (mapconcat 'number-to-string (x-server-version) ".") "\n")
 	  (error t)))
     (if (and system-configuration-options
--- a/lisp/mail/sendmail.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/mail/sendmail.el	Sat Jun 25 15:00:08 2005 +0000
@@ -44,7 +44,7 @@
 
 (defcustom mail-setup-with-from t
   "Non-nil means insert `From:' field when setting up the message."
-  :type 'binary
+  :type 'boolean
   :group 'sendmail
   :version "22.1")
 
--- a/lisp/progmodes/gdb-ui.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/progmodes/gdb-ui.el	Sat Jun 25 15:00:08 2005 +0000
@@ -85,6 +85,7 @@
 (defvar gdb-find-file-unhook nil)
 (defvar gdb-active-process nil "GUD tooltips display variable values when t, \
 and #define directives otherwise.")
+(defvar gdb-error "Non-nil when GDB is reporting an error.")
 (defvar gdb-macro-info nil
   "Non-nil if GDB knows that the inferior includes preprocessor macro info.")
 
@@ -359,6 +360,7 @@
 	gdb-flush-pending-output nil
 	gdb-location-alist nil
 	gdb-find-file-unhook nil
+	gdb-error nil
 	gdb-macro-info nil)
   ;;
   (setq gdb-buffer-type 'gdba)
@@ -430,7 +432,7 @@
 	    (setq gdb-var-changed t)))
       (if (re-search-forward "Undefined command" nil t)
 	  (message-box "Watching expressions requires gdb 6.0 onwards")
-	(message "No symbol %s in current context." expr)))))
+	(message "No symbol \"%s\" in current context." expr)))))
 
 (defun gdb-var-evaluate-expression-handler (varnum changed)
   (with-current-buffer (gdb-get-create-buffer 'gdb-partial-output-buffer)
@@ -774,6 +776,8 @@
 (defun gdb-send (proc string)
   "A comint send filter for gdb.
 This filter may simply queue input for a later time."
+  (with-current-buffer gud-comint-buffer
+    (remove-text-properties (point-min) (point-max) '(face)))
   (let ((item (concat string "\n")))
     (if gud-running
       (progn
@@ -860,6 +864,8 @@
     ("watchpoint" gdb-stopping)
     ("frame-begin" gdb-frame-begin)
     ("stopped" gdb-stopped)
+    ("error-begin" gdb-error)
+    ("error" gdb-error)
     ) "An assoc mapping annotation tags to functions which process them.")
 
 (defun gdb-resync()
@@ -989,6 +995,9 @@
       (gdb-resync)
       (error "Unexpected stopped annotation")))))
 
+(defun gdb-error (ignored)
+  (setq gdb-error (not gdb-error)))
+
 (defun gdb-post-prompt (ignored)
   "An annotation handler for `post-prompt'.
 This begins the collection of output from the current command if that
@@ -1083,6 +1092,8 @@
       output)))
 
 (defun gdb-concat-output (so-far new)
+  (if gdb-error
+      (put-text-property 0 (length new) 'face font-lock-warning-face new))
   (let ((sink gdb-output-sink))
     (cond
      ((eq sink 'user) (concat so-far new))
--- a/lisp/progmodes/gud.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/progmodes/gud.el	Sat Jun 25 15:00:08 2005 +0000
@@ -497,18 +497,24 @@
     ;; Check for annotations and change gud-minor-mode to 'gdba if
     ;; they are found.
     (while (string-match "\n\032\032\\(.*\\)\n" gud-marker-acc)
-      (when (string-equal (match-string 1 gud-marker-acc) "prompt")
-	(require 'gdb-ui)
-	(gdb-prompt nil))
-
-      (setq
-       ;; Append any text before the marker to the output we're going
-       ;; to return - we don't include the marker in this text.
-       output (concat output
-		      (substring gud-marker-acc 0 (match-beginning 0)))
-
-       ;; Set the accumulator to the remaining text.
-       gud-marker-acc (substring gud-marker-acc (match-end 0))))
+      (let ((match (match-string 1 gud-marker-acc)))
+	(when (string-equal match "prompt")
+	  (require 'gdb-ui)
+	  (gdb-prompt nil))
+
+	(setq
+	 ;; Append any text before the marker to the output we're going
+	 ;; to return - we don't include the marker in this text.
+	 output (concat output
+			(substring gud-marker-acc 0 (match-beginning 0)))
+	 
+	 ;; Set the accumulator to the remaining text.
+	 
+	 gud-marker-acc (substring gud-marker-acc (match-end 0)))
+	(if (string-equal match "error-begin")
+	    (put-text-property 0 (length gud-marker-acc)
+			       'face font-lock-warning-face
+			       gud-marker-acc))))
 
     ;; Does the remaining text look like it might end with the
     ;; beginning of another marker?  If it does, then keep it in
@@ -3256,11 +3262,11 @@
   (when gud-tooltip-dereference
     (setq expr (concat "*" expr)))
   (case gud-minor-mode
-    (gdba (concat "server print " expr))
-    ((dbx gdbmi) (concat "print " expr))
-    (xdb (concat "p " expr))
-    (sdb (concat expr "/"))
-    (perldb expr)))
+	(gdba (concat "server print " expr))
+	((dbx gdbmi) (concat "print " expr))
+	(xdb (concat "p " expr))
+	(sdb (concat expr "/"))
+	(perldb expr)))
 
 (defun gud-tooltip-tips (event)
   "Show tip for identifier or selection under the mouse.
--- a/lisp/ps-print.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/ps-print.el	Sat Jun 25 15:00:08 2005 +0000
@@ -1549,9 +1549,10 @@
        (defvar mark-active nil)
        (defun ps-mark-active-p ()
 	 mark-active)
-       (defalias 'ps-face-foreground-name 'face-foreground)
-       (defalias 'ps-face-background-name 'face-background)
-       ))
+       (defun ps-face-foreground-name (face)
+	 (face-foreground face nil t))
+       (defun ps-face-background-name (face)
+	 (face-background face nil t))))
 
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
--- a/lisp/simple.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/simple.el	Sat Jun 25 15:00:08 2005 +0000
@@ -3437,18 +3437,28 @@
 		;; Now move a line.
 		(end-of-line)
 		;; If there's no invisibility here, move over the newline.
-		(if (and (not (integerp selective-display))
-			 (not (line-move-invisible-p (point))))
+		(let ((pos-before (point))
+		      line-done)
+		  (if (eobp)
+		      (if (not noerror)
+			  (signal 'end-of-buffer nil)
+			(setq done t)))
+		  (when (and (not done)
+			     (not (integerp selective-display))
+			     (not (line-move-invisible-p (point))))
 		    ;; We avoid vertical-motion when possible
 		    ;; because that has to fontify.
-		    (if (eobp)
-			(if (not noerror)
-			    (signal 'end-of-buffer nil)
-			  (setq done t))
-		      (forward-line 1))
+		    (forward-line 1)
+		    ;; If there are overlays in and around
+		    ;; the text we moved over, we need to be
+		    ;; sophisticated.
+		    (unless (overlays-in (max (1- pos-before) (point-min))
+					 (min (1+ (point)) (point-max)))
+		      (setq line-done t)))
 		  ;; Otherwise move a more sophisticated way.
 		  ;; (What's the logic behind this code?)
-		  (and (zerop (vertical-motion 1))
+		  (and (not done) (not line-done)
+		       (zerop (vertical-motion 1))
 		       (if (not noerror)
 			   (signal 'end-of-buffer nil)
 			 (setq done t))))
@@ -3458,18 +3468,24 @@
 	      ;; it just goes in the other direction.
 	      (while (and (< arg 0) (not done))
 		(beginning-of-line)
-		(if (or (bobp)
-			(and (not (integerp selective-display))
-			     (not (line-move-invisible-p (1- (point))))))
-		    (if (bobp)
-			(if (not noerror)
-			    (signal 'beginning-of-buffer nil)
-			  (setq done t))
-		      (forward-line -1))
-		  (if (zerop (vertical-motion -1))
+		(let ((pos-before (point))
+		      line-done)
+		  (if (bobp)
 		      (if (not noerror)
 			  (signal 'beginning-of-buffer nil)
-			(setq done t))))
+			(setq done t)))
+		  (when (and (not done)
+			     (not (integerp selective-display))
+			     (not (line-move-invisible-p (1- (point)))))
+		    (forward-line -1)
+		    (unless (overlays-in (max (1- (point)) (point-min))
+					 (min (1+ pos-before) (point-max)))
+		      (setq line-done t)))
+		  (and (not done) (not line-done)
+		       (zerop (vertical-motion -1))
+		       (if (not noerror)
+			   (signal 'beginning-of-buffer nil)
+			 (setq done t))))
 		(unless done
 		  (setq arg (1+ arg))
 		  (while (and ;; Don't move over previous invis lines
@@ -4508,10 +4524,11 @@
 (defvar set-variable-value-history nil
   "History of values entered with `set-variable'.")
 
-(defun set-variable (var val &optional make-local)
+(defun set-variable (variable value &optional make-local)
   "Set VARIABLE to VALUE.  VALUE is a Lisp object.
-When using this interactively, enter a Lisp object for VALUE.
-If you want VALUE to be a string, you must surround it with doublequotes.
+VARIABLE should be a user option variable name, a Lisp variable
+meant to be customized by users.  You should enter VALUE in Lisp syntax,
+so if you want VALUE to be a string, you must surround it with doublequotes.
 VALUE is used literally, not evaluated.
 
 If VARIABLE has a `variable-interactive' property, that is used as if
@@ -4524,9 +4541,9 @@
   (interactive
    (let* ((default-var (variable-at-point))
           (var (if (symbolp default-var)
-                   (read-variable (format "Set variable (default %s): " default-var)
-                                  default-var)
-                 (read-variable "Set variable: ")))
+			(read-variable (format "Set variable (default %s): " default-var)
+				       default-var)
+		      (read-variable "Set variable: ")))
 	  (minibuffer-help-form '(describe-variable var))
 	  (prop (get var 'variable-interactive))
 	  (prompt (format "Set %s%s to value: " var
@@ -4547,22 +4564,22 @@
 			       'set-variable-value-history)))))
      (list var val current-prefix-arg)))
 
-  (and (custom-variable-p var)
-       (not (get var 'custom-type))
-       (custom-load-symbol var))
-  (let ((type (get var 'custom-type)))
+  (and (custom-variable-p variable)
+       (not (get variable 'custom-type))
+       (custom-load-symbol variable))
+  (let ((type (get variable 'custom-type)))
     (when type
       ;; Match with custom type.
       (require 'cus-edit)
       (setq type (widget-convert type))
-      (unless (widget-apply type :match val)
+      (unless (widget-apply type :match value)
 	(error "Value `%S' does not match type %S of %S"
-	       val (car type) var))))
+	       value (car type) variable))))
 
   (if make-local
-      (make-local-variable var))
-
-  (set var val)
+      (make-local-variable variable))
+
+  (set variable value)
 
   ;; Force a thorough redisplay for the case that the variable
   ;; has an effect on the display, like `tab-width' has.
--- a/lisp/subr.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/subr.el	Sat Jun 25 15:00:08 2005 +0000
@@ -2032,6 +2032,8 @@
 	'((save-match-data-internal (match-data)))
 	(list 'unwind-protect
 	      (cons 'progn body)
+	      ;; It is safe to free (evaporate) markers immediately here,
+	      ;; as Lisp programs should not copy from save-match-data-internal.
 	      '(set-match-data save-match-data-internal 'evaporate))))
 
 (defun match-string (num &optional string)
--- a/lisp/url/ChangeLog	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/url/ChangeLog	Sat Jun 25 15:00:08 2005 +0000
@@ -1,3 +1,7 @@
+2005-06-23  Richard M. Stallman  <rms@gnu.org>
+
+	* url-cookie.el (url-cookie-generate-header-lines): Fix autoload cookie.
+
 2005-06-21  Juanma Barranquero  <lekktu@gmail.com>
 
 	* url-gw.el (url-open-stream):
--- a/lisp/url/url-cookie.el	Wed Jun 22 17:53:21 2005 +0000
+++ b/lisp/url/url-cookie.el	Sat Jun 25 15:00:08 2005 +0000
@@ -262,7 +262,7 @@
 		(setq retval (cons cur retval))))))
     retval))
 
-;;;###autolaod
+;;;###autoload
 (defun url-cookie-generate-header-lines (host path secure)
   (let* ((cookies (url-cookie-retrieve host path secure))
 	(retval nil)
--- a/lispref/ChangeLog	Wed Jun 22 17:53:21 2005 +0000
+++ b/lispref/ChangeLog	Sat Jun 25 15:00:08 2005 +0000
@@ -1,3 +1,25 @@
+2005-06-23  Richard M. Stallman  <rms@gnu.org>
+
+	* display.texi (Face Functions): Correct Texinfo usage.
+
+2005-06-23  Luc Teirlinck  <teirllm@auburn.edu>
+
+	* lists.texi (Rings): `ring-elements' now returns the elements of
+	RING in order.
+
+2005-06-23  Juanma Barranquero  <lekktu@gmail.com>
+
+	* markers.texi (The Mark): Texinfo usage fix.
+
+2005-06-23  Kim F. Storm  <storm@cua.dk>
+
+	* searching.texi (Entire Match Data): Remove evaporate option for
+	match-data.  Do not mention evaporate option for set-match-data.
+
+2005-06-22  Glenn Morris  <gmorris@ast.cam.ac.uk>
+
+	* display.texi (Face Functions): Mention face aliases.
+
 2005-06-21  Richard M. Stallman  <rms@gnu.org>
 
 	* anti.texi (Antinews): Texinfo usage fix.
--- a/lispref/display.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/lispref/display.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -2523,6 +2523,17 @@
 differently from the default face.
 @end defun
 
+@cindex face alias
+A @dfn{face alias} provides an equivalent name for a face.  You can
+define a face alias by giving the alias symbol the @code{face-alias}
+property, with a value of the target face name.  The following example
+makes @code{modeline} an alias for the @code{mode-line} face.
+
+@example
+(put 'modeline 'face-alias 'mode-line)
+@end example
+
+
 @node Auto Faces
 @subsection Automatic Face Assignment
 @cindex automatic face assignment
@@ -2862,9 +2873,9 @@
 the @code{fringe} face, so normally @var{face} need only specify the
 foreground color for the bitmap.
 
-  These are the symbols identify the standard fringe bitmaps.
-Evaluate @code{(require 'fringe)} to define them.  Fringe bitmap
-symbols have their own name space.
+  These symbols identify the standard fringe bitmaps.  Evaluate
+@code{(require 'fringe)} to define them.  Fringe bitmap symbols have
+their own name space.
 
 @table @asis
 @item Truncation and continuation line bitmaps:
--- a/lispref/lists.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/lispref/lists.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -1704,8 +1704,7 @@
 @end defun
 
 @defun ring-elements ring
-This returns a list of the objects in @var{ring}, in no particular
-order.
+This returns a list of the objects in @var{ring}, in order, newest first.
 @end defun
 
 @defun ring-copy ring
--- a/lispref/markers.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/lispref/markers.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -557,9 +557,9 @@
 
 Lisp programs can set @code{transient-mark-mode} to @code{only} to
 enable Transient Mark mode for the following command only.  During
-that following command, the value of transient-mark-mode is
+that following command, the value of @code{transient-mark-mode} is
 @code{identity}.  If it is still @code{identity} at the end of the
-command, it changes to nil.
+command, it changes to @code{nil}.
 @end defopt
 
 @defopt mark-even-if-inactive
--- a/lispref/searching.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/lispref/searching.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -1527,13 +1527,7 @@
 garbage collection.
 
 If @var{reseat} is non-@code{nil}, all markers on the @var{reuse} list
-are reseated to point to nowhere, and if the value is @code{evaporate},
-the markers are put back on the free list.
-
-@strong{Warning:} When @code{evaporate} is specified for @var{reseat},
-you must ensure that no other references to the markers on the
-@var{reuse} list exists; otherwise, Emacs may crash during the next
-garbage collection.
+are reseated to point to nowhere.
 
 As always, there must be no possibility of intervening searches between
 the call to a search function and the call to @code{match-data} that is
@@ -1560,13 +1554,7 @@
 an error; that sets the match data in a meaningless but harmless way.
 
 If @var{reseat} is non-@code{nil}, all markers on the @var{match-list} list
-are reseated to point to nowhere, and if the value is @code{evaporate},
-the markers are put back on the free list.
-
-@strong{Warning:} When @code{evaporate} is specified for @var{reseat},
-you must ensure that no other references to the markers on the
-@var{match-list} list exists; otherwise, Emacs may crash during the
-next garbage collection.
+are reseated to point to nowhere.
 
 @findex store-match-data
 @code{store-match-data} is a semi-obsolete alias for @code{set-match-data}.
--- a/man/ChangeLog	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/ChangeLog	Sat Jun 25 15:00:08 2005 +0000
@@ -1,3 +1,55 @@
+2005-06-23  Richard M. Stallman  <rms@gnu.org>
+
+	* anti.texi (Antinews): Renamed show-nonbreak-escape to
+	nobreak-char-display.
+
+	* emacs.texi (Top): Update detailed node listing.
+
+	* display.texi (Text Display): Renamed show-nonbreak-escape
+	to nobreak-char-display and no-break-space to nobreak-space.
+	(Standard Faces): Split up the list of standard faces
+	and put it in a separate node.  Add nobreak-space and
+	escape-glyph.
+
+	* speedbar.texi (Creating a display): Texinfo usage fixes.	
+
+	* tramp.texi (Customizing Completion, Auto-save and Backup): 
+	Texinfo usage fixes.
+
+2005-06-23  Lute Kamstra  <lute@gnu.org>
+
+	* mule.texi (Select Input Method): Fix typo.
+
+2005-06-23  Kenichi Handa  <handa@m17n.org>
+
+	* mule.texi (International): List all supported scripts.  Adjust
+	text for that leim is now included in the normal Emacs
+	distribution.
+	(Language Environments): List all language environments.
+	Intlfonts contains fonts for most supported scripts, not all..
+	(Select Input Method): Refer to C-u C-x = to see how to type to
+	input a specifc character.
+	(Recognize Coding): Fix typo, china-iso-8bit -> chinese-iso-8bit.
+
+2005-06-23  Juanma Barranquero  <lekktu@gmail.com>
+
+	* building.texi (Grep Searching):
+	* dired-x.texi (Miscellaneous Commands):
+	* ediff.texi (Miscellaneous):
+	* gnus.texi (MIME Commands, Fancy Mail Splitting, Agent Visuals)
+	(Agent Variables):
+	* info.texi (Help-Xref):
+	* message.texi (Message Headers):
+	* org.texi (Remember):
+	* reftex.texi (Options (Defining Label Environments)):
+	(Options (Index Support)):
+	(Options (Viewing Cross-References)):
+	(Options (Misc)):
+	(Changes):
+	* speedbar.texi (Creating a display):
+	* tramp.texi (Customizing Completion, Auto-save and Backup):
+	Texinfo usage fix.
+
 2005-06-22  Miles Bader  <miles@gnu.org>
 
 	* display.texi (Faces): Change `vertical-divider' to `vertical-border'.
@@ -187,7 +239,7 @@
 
 2005-05-16  Luc Teirlinck  <teirllm@auburn.edu>
 
-	* display.texi:  Various minor changes.
+	* display.texi: Various minor changes.
 	(Faces): Delete text that is repeated in the next section.
 
 2005-05-16  Nick Roberts  <nickrob@snap.net.nz>
@@ -941,8 +993,8 @@
 	* calendar.texi (General Calendar): Document binding of
 	scroll-other-window-down.
 	(Mayan Calendar): Fix earliest date.
-	(Time Intervals): Document timeclock-change.  Fix
-	timeclock-ask-before-exiting documentation.
+	(Time Intervals): Document timeclock-change.
+	Fix timeclock-ask-before-exiting documentation.
 
 2005-02-26  Kim F. Storm  <storm@cua.dk>
 
@@ -1063,14 +1115,14 @@
 
 2005-02-10  Jay Belanger  <belanger@truman.edu>
 
-	* calc.texi:  Change @LaTeX to La@TeX throughout.
+	* calc.texi: Change @LaTeX to La@TeX throughout.
 	Redefine @expr as @math for TeX output.
 	Redefine @texline as a no-op for TeX output.
 	Define @tfn, replace @t by @tfn throughout.
 
 2005-02-09  Jay Belanger  <belanger@truman.edu>
 
-	* calc.texi:  Add macro for LaTeX for info output.
+	* calc.texi: Add macro for LaTeX for info output.
 
 2005-02-08  Kim F. Storm  <storm@cua.dk>
 
@@ -1233,7 +1285,7 @@
 
 	* faq.texi: Update AUCTeX version info.
 
-2005-01-16  Xavier Maillard <zedek@gnu-rox.org> (tiny change)
+2005-01-16  Xavier Maillard  <zedek@gnu-rox.org>  (tiny change)
 
 	* gnus-faq.texi ([4.1]): Typo.
 
@@ -1644,7 +1696,7 @@
 
 2004-10-18  Jay Belanger  <belanger@truman.edu>
 
-	* calc.texi (Reporting Bugs):  Changed the address that bugs
+	* calc.texi (Reporting Bugs): Changed the address that bugs
 	should be sent to.
 
 2004-10-15  Reiner Steib  <Reiner.Steib@gmx.de>
@@ -1663,7 +1715,7 @@
 
 2004-10-12  Jay Belanger  <belanger@truman.edu>
 
-	* calc.texi (Help Commands):  Changed the descriptions of
+	* calc.texi (Help Commands): Changed the descriptions of
 	calc-describe-function and calc-describe-variable to match their
 	current behavior.
 
@@ -1704,7 +1756,7 @@
 
 2004-10-06  Karl Berry  <karl@gnu.org>
 
-	* info.texi (@kbd{1}--@kbd{9}): no space around --, for
+	* info.texi (@kbd{1}--@kbd{9}): No space around --, for
 	consistency with other uses of dashes.
 
 2004-10-06  Nick Roberts  <nickrob@snap.net.nz>
@@ -1718,7 +1770,7 @@
 
 2004-10-05  Karl Berry  <karl@gnu.org>
 
-	* info.texi: consistently use --- throughout, periods at end of
+	* info.texi: Consistently use --- throughout, periods at end of
 	menu descriptions, and a couple typos.
 
 2004-10-05  Luc Teirlinck  <teirllm@auburn.edu>
@@ -1734,7 +1786,7 @@
 	`selective-display-ellipses' no longer has an effect on Outline mode.
 	(TeX Misc): Add missing @cindex.
 	Replace xref for RefTeX with inforef.
-	(Requesting Formatted Text): the variable
+	(Requesting Formatted Text): The variable
 	`enriched-fill-after-visiting' no longer exists.
 	(Editing Format Info): Update names of menu items and commands.
 	(Format Faces): Mention special effect of specifying the default face.
@@ -1749,7 +1801,6 @@
 	(Forcing Enriched Mode): `format-decode-buffer' automatically
 	turns on Enriched mode if the buffer is in text/enriched format.
 
-
 2004-10-05  Emilio C. Lopes  <eclig@gmx.net>
 
 	* calendar.texi (From Other Calendar): Add calendar-goto-iso-week.
@@ -1762,7 +1813,7 @@
 2004-09-26  Jesper Harder  <harder@ifa.au.dk>
 
 	* sieve.texi (Manage Sieve API): nil -> @code{nil}.
-	* pgg.texi (User Commands, Backend methods): do.
+	* pgg.texi (User Commands, Backend methods): Do.
 	* gnus.texi: Markup fixes.
 	(Setting Process Marks): Fix `M P a' entry.
 	* emacs-mime: Fixes.
@@ -1855,23 +1906,22 @@
 
 2004-09-10  Teodor Zlatanov  <tzz@lifelogs.com>
 
-	* gnus.texi (IMAP): add comments about imaps synonym to imap in
-	netrc syntax
+	* gnus.texi (IMAP): Add comments about imaps synonym to imap in
+	netrc syntax.
 
 2004-09-10  Teodor Zlatanov  <tzz@lifelogs.com>
 
-	* gnus.texi (Spam ELisp Package Sequence of Events): some clarifications
-	(Spam ELisp Package Global Variables)
-	(Spam ELisp Package Global Variables): more clarifications
+	* gnus.texi (Spam ELisp Package Sequence of Events): Some clarifications.
+	(Spam ELisp Package Global Variables): More clarifications.
 
 2004-09-10  Teodor Zlatanov  <tzz@lifelogs.com>
 
 	* gnus.texi (Spam ELisp Package Filtering of Incoming Mail):
-	mention spam-split does not modify incoming mail
+	Mention spam-split does not modify incoming mail.
 
 2004-09-10  Teodor Zlatanov  <tzz@lifelogs.com>
 
-	* gnus.texi (Spam ELisp Package Sequence of Events): fix typo
+	* gnus.texi (Spam ELisp Package Sequence of Events): Fix typo.
 
 2004-09-10  Eli Zaretskii  <eliz@gnu.org>
 
@@ -2114,7 +2164,7 @@
 2004-08-30  Reiner Steib  <Reiner.Steib@gmx.de>
 
 	* emacs-mime.texi, gnus-faq.texi, gnus.texi, message.texi,
-	pgg.texi, sieve.texi: Use @copying and @insertcopying.
+	* pgg.texi, sieve.texi: Use @copying and @insertcopying.
 
 2004-08-22  Reiner Steib  <Reiner.Steib@gmx.de>
 
@@ -2184,15 +2234,15 @@
 
 2004-06-21  Karl Berry  <karl@gnu.org>
 
-	* info.texi (Top): mention that only Emacs has mouse support.
-	(Getting Started): mention this in a few other places.
+	* info.texi (Top): Mention that only Emacs has mouse support.
+	(Getting Started): Mention this in a few other places.
 
 2004-06-20  Jesper Harder  <harder@ifa.au.dk>
 
 	* msdog.texi (Text and Binary, MS-DOS Printing): Use m-dash.
-	* custom.texi (Customization): do.
-	* anti.texi (Antinews): do.
-	* abbrevs.texi (Defining Abbrevs): do.
+	* custom.texi (Customization): Do.
+	* anti.texi (Antinews): Do.
+	* abbrevs.texi (Defining Abbrevs): Do.
 
 	* programs.texi (Info Lookup): Fix keybinding for
 	info-lookup-symbol.
@@ -2492,7 +2542,7 @@
 
 2004-02-17  Karl Berry  <karl@gnu.org>
 
-	* info.texi (Help-Int): mention the new line number feature.
+	* info.texi (Help-Int): Mention the new line number feature.
 
 2004-02-15  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
 
@@ -2603,7 +2653,7 @@
 
 2003-10-26  Karl Berry  <karl@gnu.org>
 
-	* info.texi (Info Search): echo area, not echo are.  From Debian
+	* info.texi (Info Search): Echo area, not echo are.  From Debian
 	diff.
 
 2003-10-26  Per Abrahamsen  <abraham@dina.kvl.dk>
@@ -2640,7 +2690,7 @@
 
 2003-10-06  Luc Teirlinck  <teirllm@auburn.edu>
 
-	* texinfo.tex:  Replace `%' in arch tagline by @ignore.
+	* texinfo.tex: Replace `%' in arch tagline by @ignore.
 
 2003-09-30  Richard M. Stallman  <rms@gnu.org>
 
@@ -3574,7 +3624,7 @@
 
 1990-06-26  David Lawrence  (tale@geech)
 
-	* emacs.tex:  Note that completion-ignored-extensions is not used
+	* emacs.tex: Note that completion-ignored-extensions is not used
 	to filter out names when all completions are displayed in
 	*Completions*.
 
@@ -3603,7 +3653,7 @@
 	Also add an @finalout command to remove overfull hboxes from the
 	printed output.
 
-	* cl.texinfo:  Add @bye, \input line and @settitle to file.
+	* cl.texinfo: Add @bye, \input line and @settitle to file.
 	This file is clearly intended to be a chapter of some other work,
 	but the other work does not yet exist.
 
--- a/man/anti.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/anti.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -151,9 +151,8 @@
 and it can only hold a single function.
 
 @item
-Non-breaking spaces and hyphens are displayed just like normal
-characters.  The user option @code{show-nonbreak-escape} is therefore
-obsolete, and has been removed.
+Nobreak spaces and hyphens are displayed just like normal characters,
+and the user option @code{nobreak-char-display} has been removed.
 
 @item
 @kbd{C-w} in an incremental search always grabs an entire word
--- a/man/building.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/building.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -344,9 +344,9 @@
 
   Some grep programs accept a @samp{--color} option to output special
 markers around matches for the purpose of highlighting.  You can make
-use of this feature by setting @code{grep-highlight-matches} to t.
-When displaying a match in the source buffer, the exact match will be
-highlighted, instead of the entire source line.
+use of this feature by setting @code{grep-highlight-matches} to
+@code{t}.  When displaying a match in the source buffer, the exact
+match will be highlighted, instead of the entire source line.
 
 @findex grep-find
 @findex find-grep
--- a/man/dired-x.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/dired-x.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -1154,8 +1154,8 @@
 @cindex Reading mail.
 @kindex V
 @findex dired-vm
-Bound to @kbd{V} if @code{dired-bind-vm} is t.  Run VM on this file (assumed
-to be a UNIX mail folder).
+Bound to @kbd{V} if @code{dired-bind-vm} is @code{t}.  Run VM on this
+file (assumed to be a UNIX mail folder).
 
 @vindex dired-vm-read-only-folders
 If you give this command a prefix argument, it will visit the folder
@@ -1168,8 +1168,8 @@
 visited read-only.  This is the recommended value if you run VM 5.
 
 @vindex dired-bind-vm
-If the variable @code{dired-bind-vm} is t, @code{dired-vm} will be bound to
-@kbd{V}.  Otherwise, @code{dired-bind-rmail} will be bound.
+If the variable @code{dired-bind-vm} is @code{t}, @code{dired-vm} will be bound
+to @kbd{V}.  Otherwise, @code{dired-bind-rmail} will be bound.
 
 @item dired-rmail
 @cindex Reading mail.
--- a/man/display.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/display.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -12,6 +12,7 @@
 
 @menu
 * Faces::	           How to change the display style using faces.
+* Standard Faces::         Emacs' predefined faces.
 * Font Lock::              Minor mode for syntactic highlighting using faces.
 * Highlight Changes::      Using colors to show where you changed the buffer.
 * Highlight Interactively:: Tell Emacs what text to highlight.
@@ -44,6 +45,12 @@
 support colors.  Character terminals generally do not support changing
 the height and width or the font family.
 
+  The easiest way to use faces is to turn on Font Lock mode.
+@xref{Font Lock}, for more information about Font Lock mode and
+syntactic highlighting.  You can print out the buffer with the
+highlighting that appears on your screen using the command
+@code{ps-print-buffer-with-faces}.  @xref{PostScript}.
+
   Features which rely on text in multiple faces (such as Font Lock mode)
 will also work on non-windowed terminals that can display more than one
 face, whether by colors or underlining and emboldening.  This includes
@@ -90,35 +97,38 @@
 lines too long or too short.  We plan to address these issues in
 future Emacs versions.
 
+@node Standard Faces
+@section Standard Faces
+
 @findex list-faces-display
-  To see what faces are currently defined, and what they look like, type
-@kbd{M-x list-faces-display}.  It's possible for a given face to look
-different in different frames; this command shows the appearance in the
-frame in which you type it.  Here's a list of the standard defined
-faces:
+  To see what faces are currently defined, and what they look like,
+type @kbd{M-x list-faces-display}.  It's possible for a given face to
+look different in different frames; this command shows the appearance
+in the frame in which you type it.  Here are the standard faces
+for specifying text appearance:
 
 @table @code
 @item default
 This face is used for ordinary text that doesn't specify any other face.
-@item mode-line
-This face is used for the mode line of the currently selected window.
-By default, it's drawn with shadows for a ``raised'' effect on window
-systems, and drawn as the inverse of the default face on non-windowed
-terminals.  @xref{Display Custom}.
-@item mode-line-inactive
-Like @code{mode-line}, but used for mode lines of the windows other
-than the selected one (if @code{mode-line-in-non-selected-windows} is
-non-@code{nil}).  This face inherits from @code{mode-line}, so changes
-in that face affect mode lines in all windows.
-@item header-line
-Similar to @code{mode-line} for a window's header line.  Most modes
-don't use the header line, but the Info mode does.
-@item vertical-border
-This face is used for the vertical divider between windows on
-character terminals.  By default this face inherits from the
-@code{mode-line-inactive} face.
-@item minibuffer-prompt
-This face is used for the prompt strings displayed in the minibuffer.
+@item bold
+This face uses a bold variant of the default font, if it has one.
+@item italic
+This face uses an italic variant of the default font, if it has one.
+@item bold-italic
+This face uses a bold italic variant of the default font, if it has one.
+@item underline
+This face underlines text.
+@item fixed-pitch
+The basic fixed-pitch face.
+@item variable-pitch
+The basic variable-pitch face.
+@end table
+
+  Here's an incomplete list of faces used to highlight parts of the
+text temporarily for specific purposes.  (Many other modes define
+their own faces for this purpose.)
+
+@table @code
 @item highlight
 This face is used for highlighting portions of text, in various modes.
 For example, mouse-sensitive text is highlighted using this face.
@@ -135,44 +145,16 @@
 @item secondary-selection
 This face is used for displaying a secondary X selection (@pxref{Secondary
 Selection}).
-@item bold
-This face uses a bold variant of the default font, if it has one.
-@item italic
-This face uses an italic variant of the default font, if it has one.
-@item bold-italic
-This face uses a bold italic variant of the default font, if it has one.
-@item underline
-This face underlines text.
-@item fixed-pitch
-The basic fixed-pitch face.
-@item fringe
-@cindex fringe
-The face for the fringes to the left and right of windows on graphic
-displays.  (The fringes are the narrow portions of the Emacs frame
-between the text area and the window's right and left borders.)
-@item scroll-bar
-This face determines the visual appearance of the scroll bar.
-@item border
-This face determines the color of the frame border.
-@item cursor
-This face determines the color of the cursor.
-@item mouse
-This face determines the color of the mouse pointer.
-@item tool-bar
-This is the basic tool-bar face.  No text appears in the tool bar, but the
-colors of this face affect the appearance of tool bar icons.
-@item tooltip
-This face is used for tooltips.
-@item menu
-This face determines the colors and font of Emacs's menus.  Setting the
-font of LessTif/Motif menus is currently not supported; attempts to set
-the font are ignored in this case.
 @item trailing-whitespace
 The face for highlighting trailing whitespace when
 @code{show-trailing-whitespace} is non-@code{nil}; see @ref{Useless
 Whitespace}.
-@item variable-pitch
-The basic variable-pitch face.
+@item nobreak-space
+The face for displaying the character ``nobreak space''.
+@item escape-glyph
+The face for highlighting the @samp{\} or @samp{^} that indicates
+a control character.  It's also used when @samp{\} indicates a
+nobreak space or nobreak (soft) hyphen.
 @item shadow
 The basic face for making the text less noticeable than the surrounding
 ordinary text.  Usually this is achieved by using shades of grey in
@@ -187,13 +169,55 @@
 for more information about Transient Mark mode and activation and
 deactivation of the mark.
 
-  One easy way to use faces is to turn on Font Lock mode.  @xref{Font
-Lock}, for more information about Font Lock mode and syntactic
-highlighting.
+  These faces control the appearance of parts of the Emacs frame.
+They exist as faces to provide a consistent way to customize the
+appearance of these parts of the frame.
 
-  You can print out the buffer with the highlighting that appears
-on your screen using the command @code{ps-print-buffer-with-faces}.
-@xref{PostScript}.
+@table @code
+@item mode-line
+This face is used for the mode line of the currently selected window.
+By default, it's drawn with shadows for a ``raised'' effect on window
+systems, and drawn as the inverse of the default face on non-windowed
+terminals.
+@item mode-line-inactive
+Like @code{mode-line}, but used for mode lines of the windows other
+than the selected one (if @code{mode-line-in-non-selected-windows} is
+non-@code{nil}).  This face inherits from @code{mode-line}, so changes
+in that face affect mode lines in all windows.
+@item header-line
+Similar to @code{mode-line} for a window's header line.  Most modes
+don't use the header line, but the Info mode does.
+@item vertical-border
+This face is used for the vertical divider between windows on
+character terminals.  By default this face inherits from the
+@code{mode-line-inactive} face.
+@item minibuffer-prompt
+This face is used for the prompt strings displayed in the minibuffer.
+@item fringe
+@cindex fringe
+The face for the fringes to the left and right of windows on graphic
+displays.  (The fringes are the narrow portions of the Emacs frame
+between the text area and the window's right and left borders.)
+@xref{Fringes}.
+@item scroll-bar
+This face determines the visual appearance of the scroll bar.
+@xref{Scroll Bars}.
+@item border
+This face determines the color of the frame border.
+@item cursor
+This face determines the color of the cursor.
+@item mouse
+This face determines the color of the mouse pointer.
+@item tool-bar
+This is the basic tool-bar face.  No text appears in the tool bar, but the
+colors of this face affect the appearance of tool bar icons.  @xref{Tool Bars}.
+@item tooltip
+This face is used for tooltips.  @xref{Tooltips}.
+@item menu
+This face determines the colors and font of Emacs's menus.  Setting the
+font of LessTif/Motif menus is currently not supported; attempts to set
+the font are ignored in this case.  @xref{Menu Bars}.
+@end table
 
 @node Font Lock
 @section Font Lock mode
@@ -921,16 +945,17 @@
 them), otherwise as escape sequences.  @xref{Single-Byte Character
 Support}.
 
-@vindex show-nonbreak-escape
-@cindex no-break space, display
-@cindex no-break hyphen, display
-  Some character sets define ``no-break'' versions of the space
-and hyphen characters, which are used where a line should not be
-broken.  Emacs displays these with an escape character in order to
-distinguish them from ordinary spaces and hyphens.  For example, a
-non-breaking space is displayed as @samp{\ }.  You can turn off this
-behavior by setting the variable @code{show-nonbreak-escape} to
-@code{nil}.
+@vindex nobreak-char-display
+@cindex nobreak space, display
+@cindex nobreak hyphen, display
+  Some character sets define ``no-break'' versions of the space and
+hyphen characters, which are used where a line should not be broken.
+Emacs normally displays these characters with special faces
+(respectively, @code{nobreak-space} and @code{escape-glyph}) to
+distinguish them from ordinary spaces and hyphens.  You can turn off
+this feature by setting the variable @code{nobreak-char-display} to
+@code{nil}.  If you set the variable to any other value, that means to
+prefix these characters with an escape character.
 
 @node Cursor Display
 @section Displaying the Cursor
--- a/man/ediff.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/ediff.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -2266,7 +2266,7 @@
 
 @item ediff-make-buffers-readonly-at-startup nil
 @vindex ediff-make-buffers-readonly-at-startup
-If t, all variant buffers are made read-only at Ediff startup.
+If @code{t}, all variant buffers are made read-only at Ediff startup.
 
 @item ediff-keep-variants
 @vindex @code{ediff-keep-variants}
--- a/man/emacs.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/emacs.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -305,6 +305,7 @@
 Controlling the Display
 
 * Faces::	           How to change the display style using faces.
+* Standard Faces::         Emacs' predefined faces.
 * Font Lock::              Minor mode for syntactic highlighting using faces.
 * Highlight Changes::      Using colors to show where you changed the buffer.
 * Highlight Interactively:: Tell Emacs what text to highlight.
--- a/man/gnus.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/gnus.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -9347,12 +9347,13 @@
 @code{mm-discouraged-alternatives} in @ref{Display Customization,
 Display Customization, , emacs-mime, Emacs-Mime Manual}.  Images or
 other material inside a "multipart/related" part might be overlooked
-when this variable is nil.
+when this variable is @code{nil}.
 
 @vindex gnus-mime-display-multipart-as-mixed
 @item gnus-mime-display-multipart-as-mixed
-Display "multipart" parts as "multipart/mixed".  If t, it overrides nil
-values of @code{gnus-mime-display-multipart-alternative-as-mixed} and
+Display "multipart" parts as "multipart/mixed".  If @code{t}, it
+overrides @code{nil} values of
+@code{gnus-mime-display-multipart-alternative-as-mixed} and
 @code{gnus-mime-display-multipart-related-as-mixed}.
 
 @vindex mm-file-name-rewrite-functions
@@ -14142,9 +14143,9 @@
 
 In this example, messages sent from @samp{joedavis@@foo.org} will
 normally not be filed in @samp{joemail}.  With
-@code{nnmail-split-fancy-match-partial-words} set to t, however, the
-match will happen.  In effect, the requirement of a word boundary is
-removed and instead the match becomes more like a grep.
+@code{nnmail-split-fancy-match-partial-words} set to @code{t},
+however, the match will happen.  In effect, the requirement of a word
+boundary is removed and instead the match becomes more like a grep.
 
 @findex nnmail-split-fancy-with-parent
 @code{nnmail-split-fancy-with-parent} is a function which allows you to
@@ -18372,11 +18373,11 @@
 situation, you have two choices available.  First, you can completely
 disable the undownload faces by customizing
 @code{gnus-summary-highlight} to delete the three cons-cells that
-refer to the @code{gnus-summary-*-undownloaded-face} faces.  Second, if
-you prefer to take a more fine-grained approach, you may set the
-@code{agent-disable-undownloaded-faces} group parameter to t.  This
-parameter, like all other agent parameters, may be set on an Agent
-Category (@pxref{Agent Categories}), a Group Topic (@pxref{Topic
+refer to the @code{gnus-summary-*-undownloaded-face} faces.  Second,
+if you prefer to take a more fine-grained approach, you may set the
+@code{agent-disable-undownloaded-faces} group parameter to @code{t}.
+This parameter, like all other agent parameters, may be set on an
+Agent Category (@pxref{Agent Categories}), a Group Topic (@pxref{Topic
 Parameters}), or an individual group (@pxref{Group Parameters}).
 
 @node Agent as Cache
@@ -18588,7 +18589,7 @@
 If @code{gnus-agent-mark-unread-after-downloaded} is non-@code{nil},
 mark articles as unread after downloading.  This is usually a safe
 thing to do as the newly downloaded article has obviously not been
-read.  The default is t.
+read.  The default is @code{t}.
 
 @item gnus-agent-consider-all-articles
 @vindex gnus-agent-consider-all-articles
--- a/man/info.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/info.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -820,11 +820,11 @@
 
   If you always like to have that information available without having
 to move your mouse over the cross reference, set
-@code{Info-hide-note-references} to a value other than t (@pxref{Emacs
-Info Variables}).  You might also want to do that if you have a lot of
-cross references to files on remote machines and have non-permanent or
-slow access, since otherwise you might not be able to distinguish
-between local and remote links.
+@code{Info-hide-note-references} to a value other than @code{t}
+(@pxref{Emacs Info Variables}).  You might also want to do that if you
+have a lot of cross references to files on remote machines and have
+non-permanent or slow access, since otherwise you might not be able to
+distinguish between local and remote links.
 
 @format
 >> Now type @kbd{n} to learn more commands.
--- a/man/message.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/message.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -8,7 +8,7 @@
 @copying
 This file documents Message, the Emacs message composition mode.
 
-Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 
+Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
 Free Software Foundation, Inc.
 
 @quotation
@@ -1372,7 +1372,7 @@
 lines.  If @code{nil}, leave the subject unchanged.  If it is the symbol
 @code{ask}, query the user what do do.  In this case, the subject is
 matched against @code{message-subject-trailing-was-ask-regexp}.  If
-@code{message-subject-trailing-was-query} is t, always strip the
+@code{message-subject-trailing-was-query} is @code{t}, always strip the
 trailing old subject.  In this case,
 @code{message-subject-trailing-was-regexp} is used.
 
--- a/man/mule.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/mule.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -35,11 +35,12 @@
 @cindex Dutch
 @cindex Spanish
   Emacs supports a wide variety of international character sets,
-including European variants of the Latin alphabet, as well as Chinese,
-Cyrillic, Devanagari (Hindi and Marathi), Ethiopic, Greek, Hebrew, IPA,
-Japanese, Korean, Lao, Thai, Tibetan, and Vietnamese scripts.  These features
-have been merged from the modified version of Emacs known as MULE (for
-``MULti-lingual Enhancement to GNU Emacs'')
+including European and Vietnamese variants of the Latin alphabet, as
+well as Cyrillic, Devanagari (for Hindi and Marathi), Ethiopic, Greek,
+Han (for Chinese and Japanese), Hangul (for Korean), Hebrew, IPA,
+Kannada, Lao, Malayalam, Tamil, Thai, Tibetan, and Vietnamese scripts.
+These features have been merged from the modified version of Emacs
+known as MULE (for ``MULti-lingual Enhancement to GNU Emacs'')
 
   Emacs also supports various encodings of these characters used by
 other internationalized software, such as word processors and mailers.
@@ -69,8 +70,7 @@
 You can insert non-@acronym{ASCII} characters or search for them.  To do that,
 you can specify an input method (@pxref{Select Input Method}) suitable
 for your language, or use the default input method set up when you set
-your language environment.  (Emacs input methods are part of the Leim
-package, which must be installed for you to be able to use them.)  If
+your language environment.  If
 your keyboard can produce non-@acronym{ASCII} characters, you can select an
 appropriate keyboard coding system (@pxref{Specify Coding}), and Emacs
 will accept those characters.  Latin-1 characters can also be input by
@@ -240,13 +240,19 @@
 @cindex Euro sign
 @cindex UTF-8
 @quotation
-Chinese-BIG5, Chinese-CNS, Chinese-GB, Cyrillic-ALT, Cyrillic-ISO,
-Cyrillic-KOI8, Czech, Devanagari, Dutch, English, Ethiopic, German,
-Greek, Hebrew, IPA, Japanese, Korean, Lao, Latin-1, Latin-2, Latin-3,
-Latin-4, Latin-5, Latin-8 (Celtic), Latin-9 (updated Latin-1, with the
-Euro sign), Polish, Romanian, Slovak, Slovenian, Spanish, Thai, Tibetan,
-Turkish, UTF-8 (for a setup which prefers Unicode characters and files
-encoded in UTF-8), and Vietnamese.
+Belarusian, Brazilian Portuguese, Bulgarian, Chinese-BIG5,
+Chinese-CNS, Chinese-EUC-TW, Chinese-GB, Croatian, Cyrillic-ALT,
+Cyrillic-ISO, Cyrillic-KOI8, Czech, Devanagari, Dutch, English,
+Ethiopic, French, Georgian, German, Greek, Hebrew, IPA, Italian,
+Japanese, Kannada, Korean, Lao, Latin-1, Latin-2, Latin-3,
+Latin-4, Latin-5, Latin-6, Latin-7, Latin-8 (Celtic),
+Latin-9 (updated Latin-1 with the Euro sign), Latvian,
+Lithuanian, Malayalam, Polish, Romanian, Russian, Slovak,
+Slovenian, Spanish, Swedish, Tajik, Tamil, Thai, Tibetan,
+Turkish, UTF-8 (for a setup which prefers Unicode characters and
+files encoded in UTF-8), Ukrainian, Vietnamese, Welsh, and
+Windows-1255 (for a setup which prefers Cyrillic characters and
+files encoded in Windows-1255).
 @end quotation
 
 @cindex fonts for various scripts
@@ -254,7 +260,7 @@
   To display the script(s) used by your language environment on a
 graphical display, you need to have a suitable font.  If some of the
 characters appear as empty boxes, you should install the GNU Intlfonts
-package, which includes fonts for all supported scripts.@footnote{If
+package, which includes fonts for most supported scripts.@footnote{If
 you run Emacs on X, you need to inform the X server about the location
 of the newly installed fonts with the following commands:
 
@@ -525,9 +531,11 @@
 the command @kbd{M-x quail-set-keyboard-layout}.
 
 @findex quail-show-key
-  You can use the command @kbd{M-x quail-show-key} to show what key
-(or key sequence) to type in order to input the character following
-point, using the selected keyboard layout.
+  You can use the command @kbd{M-x quail-show-key} to show what key (or
+key sequence) to type in order to input the character following point,
+using the selected keyboard layout.  The command @kbd{C-u C-x =} also
+shows that information in addition to the other information about the
+character.
 
 @findex list-input-methods
   To display a list of all the supported input methods, type @kbd{M-x
@@ -736,7 +744,7 @@
 @code{china-iso-8bit}, you can execute this Lisp expression:
 
 @smallexample
-(modify-coding-system-alist 'file "\\.txt\\'" 'china-iso-8bit)
+(modify-coding-system-alist 'file "\\.txt\\'" 'chinese-iso-8bit)
 @end smallexample
 
 @noindent
--- a/man/org.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/org.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -9,7 +9,7 @@
 
 @dircategory Emacs
 @direntry
-* Org Mode: (org).	Outline-based notes management and organizer 
+* Org Mode: (org).	Outline-based notes management and organizer
 @end direntry
 
 @c Version and Contact Info
@@ -264,7 +264,7 @@
 
 @noindent which will select Org-mode for this buffer no matter what
 the file's name is.  See also the variable
-@code{org-insert-mode-line-in-empty-file'}. 
+@code{org-insert-mode-line-in-empty-file'}.
 
 @node Feedback,  , Installation and Activation, Introduction
 @section Feedback
@@ -710,7 +710,7 @@
 @kindex C-c ?
 @item C-c ?
 Which table column is the cursor in?  Displays number >0 in echo
-area. 
+area.
 
 @cindex region, active
 @cindex active region
@@ -721,8 +721,8 @@
 the active region.  The result is displayed in the echo area and can
 be inserted with @kbd{C-y}.
 
-@kindex S-@key{RET}         
-@item S-@key{RET}         
+@kindex S-@key{RET}
+@item S-@key{RET}
 When current field is empty, copy from first non-empty field above.
 When not empty, copy current field down to next row and move cursor
 along with it.  Depending on the variable
@@ -954,7 +954,7 @@
 @item on headline @tab @key{RET} @tab as sublevel of the heading at cursor
 @item             @tab @key{left}  @tab as same level, before current heading
 @item             @tab @key{right} @tab as same level, after current heading
-@item not on headline @tab @key{RET} 
+@item not on headline @tab @key{RET}
       @tab at cursor position, level taken from context.
            Or use prefix arg to specify level manually.
 @end multitable
@@ -969,8 +969,8 @@
 text has a headline, i.e. a first line that starts with a @samp{*}.
 If not, a headline is constructed from the current date and some
 additional data.  If the variable @code{org-adapt-indentation} is
-non-nil, the entire text is also indented so that it starts in the
-same column as the headline (after the asterisks).
+non-@code{nil}, the entire text is also indented so that it starts in
+the same column as the headline (after the asterisks).
 
 @node TODO items, Timestamps, Hyperlinks, Top
 @chapter TODO items
@@ -1125,7 +1125,7 @@
 parses these lines only when Org-mode is activated after visiting a
 file.  @kbd{C-c C-c} with the cursor in a line starting with @samp{#-}
 is simply restarting Org-mode, making sure that these changes will be
-respected.}. 
+respected.}.
 
 If you want to use very many keywords, for example when working with a
 large group of people, you may split the names over several lines:
@@ -1578,7 +1578,7 @@
 @kindex mouse-3
 @kindex @key{SPC}
 @item mouse-3
-@itemx @key{SPC} 
+@itemx @key{SPC}
 Display the original location of the item in another window.
 
 @kindex l
@@ -1680,7 +1680,7 @@
 the future.  With prefix argument, change it by that many days.  For
 example, @kbd{3 6 5 S-@key{right}} will change it by a year.  The
 stamp is changed in the original org file, but the change is not
-directly reflected in the agenda buffer.  Use the 
+directly reflected in the agenda buffer.  Use the
 @kbd{r} key to update the buffer.
 
 @kindex S-@key{left}
@@ -1859,16 +1859,16 @@
 @cindex active region
 @cindex transient-mark-mode
 @table @kbd
-@kindex C-c C-x a    
+@kindex C-c C-x a
 @item C-c C-x a
 Export as ASCII file.  If there is an active region, only the region
 will be exported.  For an org file @file{myfile.org}, the ASCII file
 will be @file{myfile.txt}.  The file will be overwritten without
 warning.
-@kindex C-c C-x h    
+@kindex C-c C-x h
 @item C-c C-x h
 Export as HTML file @file{myfile.html}.
-@kindex C-c C-x C-h  
+@kindex C-c C-x C-h
 @item C-c C-x C-h
 Export as HTML file and open it with a browser.
 @kindex C-c C-x t
@@ -1914,7 +1914,7 @@
 @cindex fixed width
 @item
 Lines starting with @samp{:} are typeset in a fixed-width font, to
-allow quoting of computer code etc. 
+allow quoting of computer code etc.
 
 @cindex HTML tags
 @item
@@ -1936,7 +1936,7 @@
 The whole set of lines can be inserted into the buffer with @kbd{C-c
 C-x t}.  For individual lines, a good way to make sure the keyword is
 correct it to type @samp{#+} and then use @kbd{M-@key{TAB}} completion
-(@pxref{Completion}). 
+(@pxref{Completion}).
 
 @example
 #+TITLE:     the title to be shown (default is the buffer name)
@@ -2162,7 +2162,7 @@
 @end example
 Yes, these are unfortunately more difficult to remember.  If you want
 to have other replacement keys, look at the variable
-@code{org-disputed-keys}. 
+@code{org-disputed-keys}.
 
 @end table
 
@@ -2174,30 +2174,30 @@
 have found too hard to fix.
 
 @itemize @bullet
-@item 
+@item
 If you call @code{fill-paragraph} (bound to @kbd{M-q}) in a table, the
 filling is correctly disabled.  However, if some text directly
 (without an empty line in between) preceeds or follws a table, calling
 @code{fill-paragraph} in that text will also fill the table like
 normal text.  Also, @code{fill-region} does bypass the
 @code{fill-paragraph} code and will fill tables like normal text.
-@item 
+@item
 When the application called by @kbd{C-c C-o} to open a file link fails
 (for example because the application does not exits or refuses to open
 the file), it does so silently.  No error message is displayed.
-@item 
+@item
 Under XEmacs, if Org-mode entries are included into the diary, it is
 not possible to jump back from the diary to the org file.  Apparently,
 the text properties are lost when the fancy-diary-display is used.
 However, from Org-mode's timeline and agenda buffers (created with
 @kbd{C-c C-r} and @kbd{C-c a}), things do work correctly.
-@item 
+@item
 Linux should also have a default viewer application, using mailcap.
 Maybe we can use GNUS or VM mime code?  Or dired's guessing commands?
 Any hints (or even patches) are appreciated.
-@item 
+@item
 When you write @samp{x = a /b/ c}, b will be exported in italics.
-@item 
+@item
 The exporters work well, but could be made more efficient.
 @end itemize
 
--- a/man/reftex.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/reftex.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -153,7 +153,7 @@
 * Citation Info::                    View the corresponding database entry.
 * Chapterbib and Bibunits::          Multiple bibliographies in a Document.
 * Citations Outside LaTeX::          How to make citations in Emails etc.
-* BibTeX Database Subsets::          Extract parts of a big database. 
+* BibTeX Database Subsets::          Extract parts of a big database.
 
 Index Support
 
@@ -1668,7 +1668,7 @@
 * Citation Info::                    View the corresponding database entry.
 * Chapterbib and Bibunits::          Multiple bibliographies in a Document.
 * Citations Outside LaTeX::          How to make citations in Emails etc.
-* BibTeX Database Subsets::          Extract parts of a big database. 
+* BibTeX Database Subsets::          Extract parts of a big database.
 @end menu
 
 @node Creating Citations, Citation Styles, , Citations
@@ -1772,12 +1772,12 @@
 @item e
 Create a new BibTeX database file which contains all @i{marked} entries
 in the selection buffer.  If no entries are marked, all entries are
-selected. 
+selected.
 
 @item E
 Create a new BibTeX database file which contains all @i{unmarked}
 entries in the selection buffer.  If no entries are marked, all entries
-are selected. 
+are selected.
 
 @item @key{TAB}
 Enter a citation key with completion.  This may also be a key which does
@@ -3211,7 +3211,7 @@
 
 Before calling a @b{Ref@TeX{}} function, the style hook should always
 test for the availability of the function, so that the style file will
-also work for people who do not use @b{Ref@TeX{}}. 
+also work for people who do not use @b{Ref@TeX{}}.
 
 Additions made with style files in the way described below remain local
 to the current document.  For example, if one package uses AMSTeX, the
@@ -3492,7 +3492,7 @@
 
 @b{Ref@TeX{}} was written by @i{Carsten Dominik}
 @email{dominik@@science.uva.nl}, with contributions by @i{Stephen
-Eglen}.  @b{Ref@TeX{}} is currently maintained by 
+Eglen}.  @b{Ref@TeX{}} is currently maintained by
 
 @noindent
 Carsten Dominik <dominik@@science.uva.nl>
@@ -3712,7 +3712,7 @@
 Create a new BibTeX database file with all entries referenced in document.
 The command prompts for a filename and writes the collected entries to
 that file.  Only entries referenced in the current document with
-any @code{\cite}-like macros are used. 
+any @code{\cite}-like macros are used.
 The sequence in the new file is the same as it was in the old database.
 @end deffn
 
@@ -3817,7 +3817,7 @@
 ordinary TOC window), the automatic recentering is turned on.  When the
 frame gets destroyed, automatic recentering is turned off again.
 
-This feature can be turned on and off from the menu 
+This feature can be turned on and off from the menu
 (Ref->Options).
 @end defopt
 
@@ -3927,7 +3927,7 @@
 This may also be a function to do local parsing and identify point to be
 in a non-standard label environment.  The function must take an
 argument @var{bound} and limit backward searches to this value.  It
-should return either nil or a cons cell @code{(@var{function}
+should return either @code{nil} or a cons cell @code{(@var{function}
 . @var{position})} with the function symbol and the position where the
 special environment starts.  See the Info documentation for an
 example.
@@ -4084,7 +4084,7 @@
 default does parse around each label to detect the correct label type,
 but this process can be slow when a document contains thousands of
 labels.  If you use label prefixes consistently, you may speed up
-document parsing by setting this variable to a non-nil value.  RefTeX
+document parsing by setting this variable to a non-@code{nil} value.  RefTeX
 will then compare the label prefix with the prefixes found in
 `reftex-label-alist' and derive the correct label type in this way.
 Possible values for this option are:
@@ -4093,7 +4093,7 @@
 t       @r{This means to trust any label prefixes found.}
 regexp  @r{If a regexp, only prefixes matched by the regexp are trusted.}
 list    @r{List of accepted prefixes, as strings.  The colon is part of}
-        @r{the prefix, e.g. ("fn:" "eqn:" "item:").}   
+        @r{the prefix, e.g. ("fn:" "eqn:" "item:").}
 nil     @r{Never trust a label prefix.}
 @end example
 The only disadvantage of using this feature is that the label context
@@ -4649,7 +4649,7 @@
 
 @defopt reftex-index-verify-function
 A function which is called at each match during global indexing.
-If the function returns nil, the current match is skipped.
+If the function returns @code{nil}, the current match is skipped.
 @end defopt
 
 @defopt reftex-index-phrases-skip-indexed-matches
@@ -4769,10 +4769,10 @@
 
 @defopt reftex-revisit-to-echo
 Non-@code{nil} means, automatic citation display will revisit files if
-necessary.  When nil, citation display in echo area will only be active
-for cached echo strings (see @code{reftex-cache-cite-echo}), or for
-BibTeX database files which are already visited by a live associated
-buffers.
+necessary.  When @code{nil}, citation display in echo area will only
+be active for cached echo strings (see @code{reftex-cache-cite-echo}),
+or for BibTeX database files which are already visited by a live
+associated buffers.
 @end defopt
 
 @defopt reftex-cache-cite-echo
@@ -5113,7 +5113,7 @@
 
 @defopt reftex-revisit-to-follow
 Non-@code{nil} means, follow-mode will revisit files if necessary.
-When nil, follow-mode will be suspended for stuff in unvisited files.
+When @code{nil}, follow-mode will be suspended for stuff in unvisited files.
 @end defopt
 
 @defopt reftex-allow-detached-macro-args
@@ -5177,11 +5177,11 @@
 
 @noindent @b{Version 4.24}
 @itemize @bullet
-@item 
+@item
 Inserting citation commands now prompts for optional arguments
 when called with a prefix argument.  Related new options are
 @code{reftex-cite-prompt-optional-args} and
-@code{reftex-cite-cleanup-optional-args}. 
+@code{reftex-cite-cleanup-optional-args}.
 @item
 New option @code{reftex-trust-label-prefix}.  Configure this variable
 if you'd like RefTeX to base its classification of labels on prefixes.
@@ -5189,7 +5189,7 @@
 quality of the context used by RefTeX to describe a label.
 @item
 Fixed bug in @code{reftex-create-bibtex-file} when @code{reftex-comment-citations}
-is non-nil.
+is non-@code{nil}.
 @item
 Fixed bugs in indexing: Case-sensitive search, quotes before and/or
 after words.  Disabbled indexing in comment lines.
@@ -5197,7 +5197,7 @@
 
 @noindent @b{Version 4.22}
 @itemize @bullet
-@item 
+@item
 New command @code{reftex-create-bibtex-file} to create a new database
 with all entries referenced in the current document.
 @item
@@ -5207,7 +5207,7 @@
 
 @noindent @b{Version 4.21}
 @itemize @bullet
-@item 
+@item
 Renaming labels from the toc buffer with key @kbd{M-%}.
 @end itemize
 
@@ -5423,7 +5423,7 @@
 document, all labels and associated context.  New keys @kbd{i}, @kbd{l},
 and @kbd{c}.  New options @code{reftex-toc-include-labels},
 @code{reftex-toc-include-context},
-@code{reftex-toc-include-file-boundaries}. 
+@code{reftex-toc-include-file-boundaries}.
 @end itemize
 
 @noindent @b{Version 3.41}
@@ -5536,7 +5536,7 @@
 @kbd{M-x reftex-reset-mode} now also removes the file with parsing
 info.
 @item
-Default of @code{reftex-revisit-to-follow} changed to nil.
+Default of @code{reftex-revisit-to-follow} changed to @code{nil}.
 @end itemize
 
 @noindent @b{Version 3.24}
--- a/man/speedbar.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/speedbar.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -1175,11 +1175,11 @@
 Create a tag line with @var{exp-button-type} for the small expansion
 button.  This is the button that expands or contracts a node (if
 applicable), and @var{exp-button-char} the character in it (@samp{+},
-@samp{-}, @samp{?},
-etc).  @var{exp-button-function} is the function to call if it's clicked
-on.  Button types are @code{'bracket}, @code{'angle}, @code{'curly},
-@code{'expandtag}, @code{'statictag}, or nil.  @var{exp-button-data} is
-extra data attached to the text forming the expansion button.
+@samp{-}, @samp{?}, etc).  @var{exp-button-function} is the function
+to call if it's clicked on.  Button types are @code{bracket},
+@code{angle}, @code{curly}, @code{expandtag}, @code{statictag}, and
+@code{nil}.  @var{exp-button-data} is extra data attached to the text
+forming the expansion button.
 
 Next, @var{tag-button} is the text of the tag.
 @var{tag-button-function} is the function to call if clicked on, and
@@ -1221,15 +1221,15 @@
 @defvar speedbar-generic-list-group-expand-button-type
 This is the button type used for groups of tags, whether expanded
 or added in via a hierarchy method.  Two good values are
-@code{'curly} and @code{'expandtag}.  Curly is the default button, and
-@code{'expandtag} is useful if the groups also has a position.
+@code{curly} and @code{expandtag}.  Curly is the default button, and
+@code{expandtag} is useful if the groups also has a position.
 @end defvar
 
 @defvar speedbar-generic-list-tag-button-type
 This is the button type used for a single tag.
-Two good values are @code{nil} and @code{'statictag}.
-@code{nil} is the default, and @code{'statictag} has the same width as
-@code{'expandtag}.
+Two good values are @code{nil} and @code{statictag}.
+@code{nil} is the default, and @code{statictag} has the same width as
+@code{expandtag}.
 @end defvar
 
 @end defun
--- a/man/tramp.texi	Wed Jun 22 17:53:21 2005 +0000
+++ b/man/tramp.texi	Sat Jun 25 15:00:08 2005 +0000
@@ -1211,7 +1211,8 @@
 
 SSH2 parsing of directories @file{/etc/ssh2/hostkeys/*} and
 @file{~/ssh2/hostkeys/*}.  Hosts are coded in file names
-@file{hostkey_PORTNUMBER_HOST-NAME.pub}.  User names are always nil.
+@file{hostkey_@var{portnumber}_@var{host-name}.pub}.  User names
+are always @code{nil}.
 
 @item @code{tramp-parse-sknownhosts}
 @findex tramp-parse-shostkeys
@@ -1219,7 +1220,7 @@
 Another SSH2 style parsing of directories like
 @file{/etc/ssh2/knownhosts/*} and @file{~/ssh2/knownhosts/*}.  This
 case, hosts names are coded in file names
-@file{HOST-NAME.ALGORITHM.pub}.  User names are always nil.
+@file{@var{host-name}.@var{algorithm}.pub}.  User names are always @code{nil}.
 
 @item @code{tramp-parse-hosts}
 @findex tramp-parse-hosts
@@ -1522,7 +1523,7 @@
 @ifset xemacs
 @code{bkup-backup-directory-info}
 @end ifset
-is nil (the default), such problems do not occur.
+is @code{nil} (the default), such problems do not occur.
 
 Therefore, it is usefull to set special values for @value{tramp}
 files.  For example, the following statement effectively `turns off'
@@ -1610,7 +1611,7 @@
 workaround is to manually set the variable to a sane value.
 
 If auto-saved files should go into the same directory as the original
-files, @code{auto-save-file-name-transforms} should be set to nil.
+files, @code{auto-save-file-name-transforms} should be set to @code{nil}.
 
 Another possibility is to set the variable
 @code{tramp-auto-save-directory} to a proper value.
@@ -2125,7 +2126,8 @@
 @end example
 
 
-@item @value{tramp} doesn't transfer strings with more than 500 characters
+@item
+@value{tramp} doesn't transfer strings with more than 500 characters
 correctly
 
 On some few systems, the implementation of @code{process-send-string}
@@ -2133,7 +2135,6 @@
 customize the variable @code{tramp-chunksize} to 500.  For a
 description how to determine whether this is necessary see the
 documentation of @code{tramp-chunksize}.
-
 @end itemize
 
 
--- a/src/ChangeLog	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/ChangeLog	Sat Jun 25 15:00:08 2005 +0000
@@ -1,3 +1,45 @@
+2005-06-23  Richard M. Stallman  <rms@gnu.org>
+
+	* xdisp.c (get_next_display_element): Finish reversing the tests of
+	Vnobreak_char_display.
+
+	* xdisp.c (Vnobreak_char_display): Renamed from Vshow_nonbreak_escape.
+	All uses changed.
+	(Qnobreak_space): Renamed from Qno_break_space.  All uses changed.
+	(syms_of_xdisp): Define nobreak-char-display and nobreak-space.
+
+	* fileio.c (Frename_file): Preserve owner and group, if possible,
+	when copying.
+
+2005-06-23  Juanma Barranquero  <lekktu@gmail.com>
+
+	* abbrev.c (Funexpand_abbrev):
+	* category.c (Fmake_category_set):
+	* dispnew.c (Fsleep_for, Fsit_for):
+	* editfns.c (Fsubst_char_in_region):
+	* eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
+	* frame.c (make_frame_without_minibuffer):
+	* lread.c (read_vector):
+	* macfns.c (check_x_frame):
+	* process.c (Fstop_process, Fcontinue_process):
+	* search.c (Freplace_match):
+	* syntax.c (Fstring_to_syntax):
+	* w32fns.c (check_x_frame, check_x_display_info):
+	* xfaces.c (x_supports_face_attributes_p):
+	* xselect.c (Fx_own_selection_internal): Follow error conventions.
+
+	* image.c (fn_png_init_io): Don't define it.
+	(init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
+	(png_read_from_file): New function, based on png_read_from_memory.
+	(png_load): Use it, instead of fn_png_init_io.
+
+2005-06-23  Kim F. Storm  <storm@cua.dk>
+
+	* search.c (Fmatch_data): Remove evaporate option.
+	(Fset_match_data): Do not mention evaporate option in doc string.
+	Add commentary explaining evaporate arg (for internal use only).
+	(unwind_set_match_data): Add comment on evaporate use.
+
 2005-06-22  Miles Bader  <miles@gnu.org>
 
 	* xfaces.c (Qvertical_border): Renamed from `Qvertical_divider'.
@@ -2799,7 +2841,7 @@
 
 	* xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
 
-	* xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.
+	* xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
 
 2004-12-27  Richard M. Stallman  <rms@gnu.org>
 
@@ -2838,7 +2880,7 @@
 	(xmenu_show): In no toolkit version, if menu returns NO_SELECT call
 	Fsignal to quit.
 
-	* xfns.c (Fx_file_dialog): Motif/Lesstif version:  Pop down on C-g.
+	* xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
 
 	* gtkutil.c (xg_initialize): Install bindings for C-g so that
 	dialogs and menus pop down.
@@ -3624,7 +3666,7 @@
 2004-11-12  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
 
 	* xmenu.c (x_menu_wait_for_event): New function.
-	(popup_get_selection, popup_widget_loop):  Call x_menu_wait_for_event
+	(popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
 	to handle timers.
 	(popup_widget_loop): Add argument do_timers.
 	(create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
@@ -4002,7 +4044,7 @@
 
 2004-10-28  Will  <will@glozer.net>
 
-	* macterm.c: allow user to assign key modifiers to the Mac Option
+	* macterm.c: Allow user to assign key modifiers to the Mac Option
 	key via a 'mac-option-modifier' variable.
 
 2004-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
@@ -4864,7 +4906,7 @@
 
 	* keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
 
-	* keyboard.c (syms_of_keyboard) <disable-point-adjustment>:  Doc fix.
+	* keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
 
 	* callint.c (Fcall_interactively): Doc fix.
 
@@ -8191,7 +8233,7 @@
 	* fileio.c (Fread_file_name): Check use_file_dialog also before
 	calling Fx_file_dialog.
 
-	* fns.c: use_file_dialog: New variable.
+	* fns.c (use_file_dialog): New variable.
 	(syms_of_fns): DEFVAR_BOOL use-file-dialog.
 
 2003-11-29  Kim F. Storm  <storm@cua.dk>
@@ -11637,7 +11679,7 @@
 	for USE_GTK.
 	(x_scroll_bar_handle_click): Use this function for toolkit scrollbars
 	also.
-	(handle_one_xevent): ButtonPress/Release:  If event is for a toolkit
+	(handle_one_xevent): ButtonPress/Release: If event is for a toolkit
 	scrollbar and control is pressed, call x_scroll_bar_handle_click.
 
 	* gtkutil.h (xg_get_scroll_id_for_window): Declare.
--- a/src/abbrev.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/abbrev.c	Sat Jun 25 15:00:08 2005 +0000
@@ -442,7 +442,7 @@
 
       val = SYMBOL_VALUE (Vlast_abbrev);
       if (!STRINGP (val))
-	error ("value of abbrev-symbol must be a string");
+	error ("Value of `abbrev-symbol' must be a string");
       zv_before = ZV;
       del_range_byte (PT_BYTE, PT_BYTE + SBYTES (val), 1);
       /* Don't inherit properties here; just copy from old contents.  */
--- a/src/category.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/category.c	Sat Jun 25 15:00:08 2005 +0000
@@ -67,7 +67,7 @@
   val = MAKE_CATEGORY_SET;
 
   if (STRING_MULTIBYTE (categories))
-    error ("Multibyte string in make-category-set");
+    error ("Multibyte string in `make-category-set'");
 
   len = SCHARS (categories);
   while (--len >= 0)
--- a/src/dispnew.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/dispnew.c	Sat Jun 25 15:00:08 2005 +0000
@@ -6374,7 +6374,7 @@
 
 #ifndef EMACS_HAS_USECS
   if (sec == 0 && usec != 0)
-    error ("millisecond `sleep-for' not supported on %s", SYSTEM_TYPE);
+    error ("Millisecond `sleep-for' not supported on %s", SYSTEM_TYPE);
 #endif
 
   /* Assure that 0 <= usec < 1000000.  */
@@ -6474,7 +6474,7 @@
 
 #ifndef EMACS_HAS_USECS
   if (usec != 0 && sec == 0)
-    error ("millisecond `sit-for' not supported on %s", SYSTEM_TYPE);
+    error ("Millisecond `sit-for' not supported on %s", SYSTEM_TYPE);
 #endif
 
   return sit_for (sec, usec, 0, NILP (nodisp), NILP (nodisp));
--- a/src/editfns.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/editfns.c	Sat Jun 25 15:00:08 2005 +0000
@@ -2660,7 +2660,7 @@
     {
       len = CHAR_STRING (XFASTINT (fromchar), fromstr);
       if (CHAR_STRING (XFASTINT (tochar), tostr) != len)
-	error ("Characters in subst-char-in-region have different byte-lengths");
+	error ("Characters in `subst-char-in-region' have different byte-lengths");
       if (!ASCII_BYTE_P (*tostr))
 	{
 	  /* If *TOSTR is in the range 0x80..0x9F and TOCHAR is not a
--- a/src/eval.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/eval.c	Sat Jun 25 15:00:08 2005 +0000
@@ -785,7 +785,7 @@
   sym = Fcar (args);
   tail = Fcdr (args);
   if (!NILP (Fcdr (Fcdr (tail))))
-    error ("too many arguments");
+    error ("Too many arguments");
 
   tem = Fdefault_boundp (sym);
   if (!NILP (tail))
@@ -845,7 +845,7 @@
 
   sym = Fcar (args);
   if (!NILP (Fcdr (Fcdr (Fcdr (args)))))
-    error ("too many arguments");
+    error ("Too many arguments");
 
   tem = Feval (Fcar (Fcdr (args)));
   if (!NILP (Vpurify_flag))
@@ -2037,7 +2037,7 @@
       if (max_lisp_eval_depth < 100)
 	max_lisp_eval_depth = 100;
       if (lisp_eval_depth > max_lisp_eval_depth)
-	error ("Lisp nesting exceeds max-lisp-eval-depth");
+	error ("Lisp nesting exceeds `max-lisp-eval-depth'");
     }
 
   original_fun = Fcar (form);
@@ -2733,7 +2733,7 @@
       if (max_lisp_eval_depth < 100)
 	max_lisp_eval_depth = 100;
       if (lisp_eval_depth > max_lisp_eval_depth)
-	error ("Lisp nesting exceeds max-lisp-eval-depth");
+	error ("Lisp nesting exceeds `max-lisp-eval-depth'");
     }
 
   backtrace.next = backtrace_list;
--- a/src/fileio.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/fileio.c	Sat Jun 25 15:00:08 2005 +0000
@@ -2777,6 +2777,7 @@
     {
       if (errno == EXDEV)
 	{
+	  struct stat data;
 #ifdef S_IFLNK
           symlink_target = Ffile_symlink_p (file);
           if (! NILP (symlink_target))
@@ -2789,6 +2790,11 @@
                            so don't have copy-file prompt again.  */
                         NILP (ok_if_already_exists) ? Qnil : Qt,
 			Qt, Qnil);
+
+	  /* Preserve owner and group, if possible (if we are root).  */
+	  if (stat (SDATA (encoded_file), &data) >= 0)
+	    chown (SDATA (encoded_file), data.st_uid, data.st_gid);
+
 	  Fdelete_file (file);
 	}
       else
--- a/src/frame.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/frame.c	Sat Jun 25 15:00:08 2005 +0000
@@ -426,7 +426,7 @@
 #ifdef MULTI_KBOARD
   if (!NILP (mini_window)
       && XFRAME (XWINDOW (mini_window)->frame)->kboard != kb)
-    error ("frame and minibuffer must be on the same display");
+    error ("Frame and minibuffer must be on the same display");
 #endif
 
   /* Make a frame containing just a root window.  */
@@ -3609,7 +3609,7 @@
 extern Display_Info *check_x_display_info P_ ((Lisp_Object));
 
 
-/* Get specified attribute from resource database RDB.  
+/* Get specified attribute from resource database RDB.
    See Fx_get_resource below for other parameters.  */
 
 static Lisp_Object
@@ -3746,7 +3746,7 @@
 
 Lisp_Object
 x_get_arg (dpyinfo, alist, param, attribute, class, type)
-     Display_Info *dpyinfo; 
+     Display_Info *dpyinfo;
      Lisp_Object alist, param;
      char *attribute;
      char *class;
--- a/src/image.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/image.c	Sat Jun 25 15:00:08 2005 +0000
@@ -5631,7 +5631,6 @@
 DEF_IMGLIB_FN (png_create_info_struct);
 DEF_IMGLIB_FN (png_destroy_read_struct);
 DEF_IMGLIB_FN (png_set_read_fn);
-DEF_IMGLIB_FN (png_init_io);
 DEF_IMGLIB_FN (png_set_sig_bytes);
 DEF_IMGLIB_FN (png_read_info);
 DEF_IMGLIB_FN (png_get_IHDR);
@@ -5663,7 +5662,6 @@
   LOAD_IMGLIB_FN (library, png_create_info_struct);
   LOAD_IMGLIB_FN (library, png_destroy_read_struct);
   LOAD_IMGLIB_FN (library, png_set_read_fn);
-  LOAD_IMGLIB_FN (library, png_init_io);
   LOAD_IMGLIB_FN (library, png_set_sig_bytes);
   LOAD_IMGLIB_FN (library, png_read_info);
   LOAD_IMGLIB_FN (library, png_get_IHDR);
@@ -5689,7 +5687,6 @@
 #define fn_png_create_info_struct	png_create_info_struct
 #define fn_png_destroy_read_struct	png_destroy_read_struct
 #define fn_png_set_read_fn		png_set_read_fn
-#define fn_png_init_io			png_init_io
 #define fn_png_set_sig_bytes		png_set_sig_bytes
 #define fn_png_read_info		png_read_info
 #define fn_png_get_IHDR			png_get_IHDR
@@ -5762,6 +5759,23 @@
 }
 
 
+/* Function set as reader function when reading PNG image from a file.
+   PNG_PTR is a pointer to the PNG control structure.  Copy LENGTH
+   bytes from the input to DATA.  */
+
+static void
+png_read_from_file (png_ptr, data, length)
+     png_structp png_ptr;
+     png_bytep data;
+     png_size_t length;
+{
+  FILE *fp = (FILE *) fn_png_get_io_ptr (png_ptr);
+
+  if (fread (data, 1, length, fp) < length)
+    fn_png_error (png_ptr, "Read error");
+}
+
+
 /* Load PNG image IMG for use on frame F.  Value is non-zero if
    successful.  */
 
@@ -5895,7 +5909,7 @@
   if (!NILP (specified_data))
     fn_png_set_read_fn (png_ptr, (void *) &tbr, png_read_from_memory);
   else
-    fn_png_init_io (png_ptr, fp);
+    fn_png_set_read_fn (png_ptr, (void *) fp, png_read_from_file);
 
   fn_png_set_sig_bytes (png_ptr, sizeof sig);
   fn_png_read_info (png_ptr, info_ptr);
--- a/src/lread.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/lread.c	Sat Jun 25 15:00:08 2005 +0000
@@ -2846,7 +2846,7 @@
 	  if (i == COMPILED_BYTECODE)
 	    {
 	      if (!STRINGP (item))
-		error ("invalid byte code");
+		error ("Invalid byte code");
 
 	      /* Delay handling the bytecode slot until we know whether
 		 it is lazily-loaded (we can tell by whether the
@@ -2868,7 +2868,7 @@
 
 		  item = Fread (bytestr);
 		  if (!CONSP (item))
-		    error ("invalid byte code");
+		    error ("Invalid byte code");
 
 		  otem = XCONS (item);
 		  bytestr = XCAR (item);
--- a/src/macfns.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/macfns.c	Sat Jun 25 15:00:08 2005 +0000
@@ -208,7 +208,7 @@
   CHECK_LIVE_FRAME (frame);
   f = XFRAME (frame);
   if (! FRAME_MAC_P (f))
-    error ("non-mac frame used");
+    error ("Non-Mac frame used");
   return f;
 }
 
@@ -4241,7 +4241,7 @@
     NavTypeListHandle fileTypes = NULL;
     NavUserAction userAction;
     CFStringRef message=NULL, saveName = NULL;
-    
+
     BLOCK_INPUT;
     /* No need for a callback function because we are modal */
     NavGetDefaultDialogCreationOptions(&options);
@@ -4265,8 +4265,8 @@
     if (!NILP (only_dir_p))
       status = NavCreateChooseFolderDialog(&options, mac_nav_event_callbackUPP,
 					   NULL, NULL, &dialogRef);
-    else if (NILP (mustmatch)) 
-      { 
+    else if (NILP (mustmatch))
+      {
 	/* This is a save dialog */
 	options.optionFlags |= kNavDontConfirmReplacement;
 	options.actionButtonLabel = CFSTR ("Ok");
@@ -4283,7 +4283,7 @@
 	    options.saveFileName = saveName;
 	    options.optionFlags |= kNavSelectDefaultLocation;
 	  }
-	  status = NavCreatePutFileDialog(&options, 
+	  status = NavCreatePutFileDialog(&options,
 					  'TEXT', kNavGenericSignature,
 					  mac_nav_event_callbackUPP, NULL,
 					  &dialogRef);
@@ -4295,7 +4295,7 @@
 					   mac_nav_event_callbackUPP, NULL,
 					   NULL, NULL, &dialogRef);
       }
-    
+
     /* Set the default location and continue*/
     if (status == noErr)
       {
@@ -4307,7 +4307,7 @@
 	FSSpec defLoc;
 	status = posix_pathname_to_fsspec (SDATA (ENCODE_FILE (dir)), &defLoc);
 #endif
-	if (status == noErr) 
+	if (status == noErr)
 	  {
 #ifdef MAC_OSX
 	    AECreateDesc(typeFSRef, &defLoc, sizeof(FSRef), &defLocAed);
@@ -4359,7 +4359,7 @@
 		int len = strlen(filename);
 		if (len && filename[len-1] != '/')
 		  filename[len++] = '/';
-		CFStringGetCString(reply.saveFileName, filename+len, 
+		CFStringGetCString(reply.saveFileName, filename+len,
 				   sizeof (filename) - len,
 #if MAC_OSX
 				   kCFStringEncodingUTF8
@@ -4387,11 +4387,11 @@
   }
 
   UNGCPRO;
-  
+
   /* Make "Cancel" equivalent to C-g.  */
   if (NILP (file))
     Fsignal (Qquit, Qnil);
-  
+
   return unbind_to (count, file);
 }
 
--- a/src/process.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/process.c	Sat Jun 25 15:00:08 2005 +0000
@@ -5835,7 +5835,7 @@
     }
 #endif
 #ifndef SIGTSTP
-  error ("no SIGTSTP support");
+  error ("No SIGTSTP support");
 #else
   process_send_signal (process, SIGTSTP, current_group, 0);
 #endif
@@ -5869,7 +5869,7 @@
 #ifdef SIGCONT
     process_send_signal (process, SIGCONT, current_group, 0);
 #else
-    error ("no SIGCONT support");
+    error ("No SIGCONT support");
 #endif
   return process;
 }
--- a/src/search.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/search.c	Sat Jun 25 15:00:08 2005 +0000
@@ -2296,7 +2296,7 @@
 				/* but some C compilers blew it */
 
   if (search_regs.num_regs <= 0)
-    error ("replace-match called before any match found");
+    error ("`replace-match' called before any match found");
 
   if (NILP (subexp))
     sub = 0;
@@ -2758,9 +2758,6 @@
 If optional third arg RESEAT is non-nil, any previous markers on the
 REUSE list will be modified to point to nowhere.
 
-If RESEAT is `evaporate', put markers back on the free list.
-Note: No other references to the markers must exist if you use this.
-
 Return value is undefined if the last search failed.  */)
   (integers, reuse, reseat)
      Lisp_Object integers, reuse, reseat;
@@ -2773,10 +2770,7 @@
     for (tail = reuse; CONSP (tail); tail = XCDR (tail))
       if (MARKERP (XCAR (tail)))
 	{
-	  if (EQ (reseat, Qevaporate))
-	    free_marker (XCAR (tail));
-	  else
-	    unchain_marker (XMARKER (XCAR (tail)));
+	  unchain_marker (XMARKER (XCAR (tail)));
 	  XSETCAR (tail, Qnil);
 	}
 
@@ -2851,14 +2845,17 @@
   return reuse;
 }
 
+/* Internal usage only:
+   If RESEAT is `evaporate', put the markers back on the free list
+   immediately.  No other references to the markers must exist in this case,
+   so it is used only internally on the unwind stack and save-match-data from
+   Lisp.  */
 
 DEFUN ("set-match-data", Fset_match_data, Sset_match_data, 1, 2, 0,
        doc: /* Set internal data on last search match from elements of LIST.
 LIST should have been created by calling `match-data' previously.
 
-If optional arg RESEAT is non-nil, make markers on LIST point nowhere.
-If RESEAT is `evaporate', put the markers back on the free list.
-Note: No other references to the markers must exist if you use this.  */)
+If optional arg RESEAT is non-nil, make markers on LIST point nowhere.  */)
     (list, reseat)
      register Lisp_Object list, reseat;
 {
@@ -3026,6 +3023,7 @@
 unwind_set_match_data (list)
      Lisp_Object list;
 {
+  /* It is safe to free (evaporate) the markers immediately.  */
   return Fset_match_data (list, Qevaporate);
 }
 
--- a/src/syntax.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/syntax.c	Sat Jun 25 15:00:08 2005 +0000
@@ -923,7 +923,7 @@
   p = SDATA (string);
   code = (enum syntaxcode) syntax_spec_code[*p++];
   if (((int) code & 0377) == 0377)
-    error ("invalid syntax description letter: %c", p[-1]);
+    error ("Invalid syntax description letter: %c", p[-1]);
 
   if (code == Sinherit)
     return Qnil;
--- a/src/w32fns.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/w32fns.c	Sat Jun 25 15:00:08 2005 +0000
@@ -329,7 +329,7 @@
   CHECK_LIVE_FRAME (frame);
   f = XFRAME (frame);
   if (! FRAME_W32_P (f))
-    error ("non-w32 frame used");
+    error ("Non-W32 frame used");
   return f;
 }
 
@@ -359,7 +359,7 @@
       CHECK_LIVE_FRAME (frame);
       f = XFRAME (frame);
       if (! FRAME_W32_P (f))
-	error ("non-w32 frame used");
+	error ("Non-W32 frame used");
       return FRAME_W32_DISPLAY_INFO (f);
     }
 }
@@ -7771,7 +7771,7 @@
   DWORD FlagsEx;
 } NEWOPENFILENAME;
 
-    
+
 DEFUN ("x-file-dialog", Fx_file_dialog, Sx_file_dialog, 2, 5, 0,
        doc: /* Read file name, prompting with PROMPT in directory DIR.
 Use a file selection dialog.
@@ -7823,7 +7823,7 @@
     NEWOPENFILENAME new_file_details;
     BOOL file_opened = FALSE;
     OPENFILENAME * file_details = &new_file_details.real_details;
-  
+
     /* Prevent redisplay.  */
     specbind (Qinhibit_redisplay, Qt);
     BLOCK_INPUT;
--- a/src/xdisp.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/xdisp.c	Sat Jun 25 15:00:08 2005 +0000
@@ -320,7 +320,7 @@
 
 /* Non-nil means escape non-break space and hyphens.  */
 
-Lisp_Object Vshow_nonbreak_escape;
+Lisp_Object Vnobreak_char_display;
 
 #ifdef HAVE_WINDOW_SYSTEM
 extern Lisp_Object Voverflow_newline_into_fringe;
@@ -352,7 +352,7 @@
 
 /* Name and number of the face used to highlight non-breaking spaces.  */
 
-Lisp_Object Qno_break_space;
+Lisp_Object Qnobreak_space;
 
 /* The symbol `image' which is the car of the lists used to represent
    images in Lisp.  */
@@ -5084,7 +5084,7 @@
 		       ? ((it->c >= 127
 			   && it->len == 1)
 			  || !CHAR_PRINTABLE_P (it->c)
-			  || (!NILP (Vshow_nonbreak_escape)
+			  || (!NILP (Vnobreak_char_display)
 			      && (it->c == 0x8a0 || it->c == 0x8ad
 				  || it->c == 0x920 || it->c == 0x92d
 				  || it->c == 0xe20 || it->c == 0xe2d
@@ -5139,12 +5139,12 @@
 	      /* Handle non-break space in the mode where it only gets
 		 highlighting.  */
 
-	      if (EQ (Vshow_nonbreak_escape, Qt)
+	      if (EQ (Vnobreak_char_display, Qt)
 		  && (it->c == 0x8a0 || it->c == 0x920
 		      || it->c == 0xe20 || it->c == 0xf20))
 		{
 		  /* Merge the no-break-space face into the current face.  */
-		  face_id = merge_faces (it->f, Qno_break_space, 0,
+		  face_id = merge_faces (it->f, Qnobreak_space, 0,
 					 it->face_id);
 
 		  g = it->c = ' ';
@@ -5183,7 +5183,7 @@
 	      /* Handle soft hyphens in the mode where they only get
 		 highlighting.  */
 
-	      if (! EQ (Vshow_nonbreak_escape, Qt)
+	      if (EQ (Vnobreak_char_display, Qt)
 		  && (it->c == 0x8ad || it->c == 0x92d
 		      || it->c == 0xe2d || it->c == 0xf2d))
 		{
@@ -22785,8 +22785,8 @@
   staticpro (&Qtrailing_whitespace);
   Qescape_glyph = intern ("escape-glyph");
   staticpro (&Qescape_glyph);
-  Qno_break_space = intern ("no-break-space");
-  staticpro (&Qno_break_space);
+  Qnobreak_space = intern ("nobreak-space");
+  staticpro (&Qnobreak_space);
   Qimage = intern ("image");
   staticpro (&Qimage);
   QCmap = intern (":map");
@@ -22892,13 +22892,14 @@
 The face used for trailing whitespace is `trailing-whitespace'.  */);
   Vshow_trailing_whitespace = Qnil;
 
-  DEFVAR_LISP ("show-nonbreak-escape", &Vshow_nonbreak_escape,
-    doc: /* *Control highlighting of non-break space and soft hyphen.
-t means highlight the character itself (for non-break space,
-use face `non-break-space'.
+  DEFVAR_LISP ("nobreak-char-display", &Vnobreak_char_display,
+    doc: /* *Control highlighting of nobreak space and soft hyphen.
+t means highlight the character itself (for nobreak space,
+use face `nobreak-space'.
 nil means no highlighting.
-other values mean display the escape glyph before the character.  */);
-  Vshow_nonbreak_escape = Qt;
+other values mean display the escape glyph followed by an ordinary
+space or ordinary hyphen.  */);
+  Vnobreak_char_display = Qt;
 
   DEFVAR_LISP ("void-text-area-pointer", &Vvoid_text_area_pointer,
     doc: /* *The pointer shape to show in void text areas.
--- a/src/xfaces.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/xfaces.c	Sat Jun 25 15:00:08 2005 +0000
@@ -5929,7 +5929,7 @@
       face = FACE_FROM_ID (f, lookup_face (f, merged_attrs, 0, 0));
 
       if (! face)
-	error ("cannot make face");
+	error ("Cannot make face");
 
       /* If the font is the same, then not supported.  */
       if (face->font == def_face->font)
--- a/src/xselect.c	Wed Jun 22 17:53:21 2005 +0000
+++ b/src/xselect.c	Sat Jun 25 15:00:08 2005 +0000
@@ -2136,7 +2136,7 @@
 {
   check_x ();
   CHECK_SYMBOL (selection_name);
-  if (NILP (selection_value)) error ("selection-value may not be nil");
+  if (NILP (selection_value)) error ("SELECTION-VALUE may not be nil");
   x_own_selection (selection_name, selection_value);
   return selection_value;
 }