changeset 83144:2e868590c17b

Merged in changes from CVS trunk. Patches applied: * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-357 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-358 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-359 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-360 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-361 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-362 Support " [...]" style defaults in minibuffer-electric-default-mode * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-363 (read-number): Use canonical format for default in prompt. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-364 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-365 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-184
author Karoly Lorentey <lorentey@elte.hu>
date Thu, 03 Jun 2004 16:45:20 +0000
parents 9fb10038ca55 (current diff) 33cc2a0db367 (diff)
children fe5ecb72e304
files lisp/ChangeLog lisp/faces.el lisp/frame.el lisp/subr.el
diffstat 19 files changed, 306 insertions(+), 156 deletions(-) [+]
line wrap: on
line diff
--- a/lib-src/ChangeLog	Mon May 31 13:48:26 2004 +0000
+++ b/lib-src/ChangeLog	Thu Jun 03 16:45:20 2004 +0000
@@ -1,6 +1,11 @@
+2004-06-01  Juanma Barranquero  <lektu@terra.es>
+
+	* makefile.w32-in (obj): Add image.c.
+
 2004-05-10  Thien-Thi Nguyen  <ttn@gnu.org>
 
-	* test-distrib.c (main): For failing cases, exit with `EXIT_FAILURE'.
+	* test-distrib.c (main): For failing cases, exit with
+	`EXIT_FAILURE'.
 
 2004-05-08  Jason Rumney  <jasonr@gnu.org>
 
@@ -14,8 +19,8 @@
 	(main): Use `EXIT_SUCCESS' or `EXIT_FAILURE' for return value.
 
 	* ebrowse.c, emacsclient.c, fakemail.c, hexl.c,
-	make-docfile.c, movemail.c, profile.c, sorted-doc.c,
-	test-distrib.c, update-game-score.c, yow.c: Likewise.
+	* make-docfile.c, movemail.c, profile.c, sorted-doc.c,
+	* test-distrib.c, update-game-score.c, yow.c: Likewise.
 
 2004-05-08  Thien-Thi Nguyen  <ttn@gnu.org>
 
--- a/lib-src/makefile.w32-in	Mon May 31 13:48:26 2004 +0000
+++ b/lib-src/makefile.w32-in	Thu Jun 03 16:45:20 2004 +0000
@@ -126,7 +126,7 @@
 #
 # From ..\src\makefile.nt.
 #
-obj = abbrev.c alloc.c alloca.c buffer.c bytecode.c callint.c callproc.c casefiddle.c casetab.c category.c ccl.c charset.c cm.c cmds.c coding.c data.c dired.c dispnew.c doc.c doprnt.c editfns.c emacs.c eval.c fileio.c filelock.c filemode.c floatfns.c fns.c fontset.c frame.c fringe.c gmalloc.c indent.c insdel.c intervals.c keyboard.c keymap.c lastfile.c lread.c macros.c marker.c minibuf.c print.c process.c ralloc.c regex.c region-cache.c scroll.c search.c sound.c strftime.c syntax.c sysdep.c term.c termcap.c textprop.c tparam.c undo.c unexw32.c vm-limit.c w32.c w32console.c w32fns.c w32heap.c w32inevt.c w32menu.c w32proc.c w32reg.c w32select.c w32term.c w32xfns.c window.c xdisp.c xfaces.c xfaces.c
+obj = abbrev.c alloc.c alloca.c buffer.c bytecode.c callint.c callproc.c casefiddle.c casetab.c category.c ccl.c charset.c cm.c cmds.c coding.c data.c dired.c dispnew.c doc.c doprnt.c editfns.c emacs.c eval.c fileio.c filelock.c filemode.c floatfns.c fns.c fontset.c frame.c fringe.c gmalloc.c image.c indent.c insdel.c intervals.c keyboard.c keymap.c lastfile.c lread.c macros.c marker.c minibuf.c print.c process.c ralloc.c regex.c region-cache.c scroll.c search.c sound.c strftime.c syntax.c sysdep.c term.c termcap.c textprop.c tparam.c undo.c unexw32.c vm-limit.c w32.c w32console.c w32fns.c w32heap.c w32inevt.c w32menu.c w32proc.c w32reg.c w32select.c w32term.c w32xfns.c window.c xdisp.c xfaces.c xfaces.c
 #
 # These are the lisp files that are loaded up in loadup.el
 #
--- a/lisp/ChangeLog	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/ChangeLog	Thu Jun 03 16:45:20 2004 +0000
@@ -1,7 +1,51 @@
+2004-06-03  Miles Bader  <miles@gnu.org>
+
+	* subr.el (read-number): Use canonical format for default in prompt.
+
+	* minibuf-eldef.el (minibuffer-default-in-prompt-regexps): Add
+	regexp for " [...]" style defaults.
+
+2004-06-02  Romain Francoise  <romain@orebokech.com>
+
+	* ibuf-ext.el (ibuffer-jump-to-buffer): Add support for filter
+	groups: if the user asks for a hidden buffer, open the
+	corresponding filter group to expose it.
+
+	* ibuffer.el (ibuffer-mode-map): Add key binding `M-g' to
+	`ibuffer-jump-to-buffer'.
+	(ibuffer-jump-offer-only-visible-buffers): New user option.
+
+2004-06-02  Juanma Barranquero  <lektu@terra.es>
+
+	* faces.el (frame-update-faces): Add empty docstring so the one
+	for `ignore' doesn't show through.
+
+	* subr.el (process-kill-without-query): Remove spurious "\n" on
+	obsolescence string.
+	(focus-frame, unfocus-frame): Add obsolescence declaration and
+	empty docstring.
+
+	* international/mule.el (register-char-codings): Make alias for
+	`ignore'.  Move docstring to obsolescence info and remove
+	redundancy.
+
+2004-06-02  Kim F. Storm  <storm@cua.dk>
+
+	* frame.el (blink-cursor-start): Turn cursor off initially so blink
+	starts after blink-cursor-delay rather than 2*blink-cursor-delay.
+
+2004-05-31  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* vc-arch.el (vc-arch-state): Don't assume the file exists.
+
+2004-05-31  Lars Hansen  <larsh@math.ku.dk>
+
+	* desktop.el (desktop-save): Don't save minor modes without a
+	known mode initialization function.
+
 2004-05-30  Luc Teirlinck  <teirllm@auburn.edu>
 
-	* replace.el (query-replace-interactive): Convert defvar into
-	defcustom.
+	* replace.el (query-replace-interactive): Convert defvar -> defcustom.
 
 	* autorevert.el: Update `Commentary' section.
 
@@ -17,8 +61,8 @@
 	Sync with Tramp.
 
 	* net/tramp.el (tramp-let-maybe): Reverse args of `get'.
-	(tramp-let-maybe): Move to an earlier spot in the file.  Patch by
-	Andreas Schwab.
+	(tramp-let-maybe): Move to an earlier spot in the file.
+	Patch by Andreas Schwab.
 
 2004-05-30  Andreas Schwab  <schwab@suse.de>
 
@@ -47,21 +91,20 @@
 
 	* ange-ftp.el (ange-ftp-file-remote-p): New defun.
 	(top): Remove setting of `file-remote-p' property for
-	`ange-ftp-hook-function'.  Add `ange-ftp' property to
-	`file-remote-p'.
+	`ange-ftp-hook-function'.  Add `ange-ftp' property to `file-remote-p'.
 
 2004-05-29  Michael Albinus  <michael.albinus@gmx.de>
 
 	Version 2.0.41 of Tramp released.
 
-	* tramp.el (tramp-wait-for-regexp, tramp-wait-for-output): Throw
-	away if process has died.  Reported by Luc Teirlinck
-	<teirllm@dms.auburn.edu>.
-	(tramp-out-of-band-prompt-regexp): Renamed to
+	* tramp.el (tramp-wait-for-regexp, tramp-wait-for-output):
+	Throw away if process has died.
+	Reported by Luc Teirlinck <teirllm@dms.auburn.edu>.
+	(tramp-out-of-band-prompt-regexp): Rename to
 	`tramp-process-alive-regexp', because its usage is widen.
 	(tramp-actions-copy-out-of-band): Apply it.
-	(tramp-actions-before-shell, tramp-multi-actions): Add
-	`tramp-action-process-alive' action.
+	(tramp-actions-before-shell, tramp-multi-actions):
+	Add `tramp-action-process-alive' action.
 	(tramp-action-process-alive): New defun.
 	(tramp-file-name-handler-alist, tramp-file-name-for-operation):
 	Add entry for `file-remote-p'.
@@ -73,8 +116,8 @@
 	`file-remote-p'.
 
 	* tramp-uu.el (tramp-uuencode-region): Padding characters aren't
-	counted for (last) line.  Reported by Aaron Ucko
-	<ucko@ncbi.nlm.nih.gov>.
+	counted for (last) line.  [They should or they shouldn't?  --Stef]
+	Reported by Aaron Ucko <ucko@ncbi.nlm.nih.gov>.
 
 2004-05-29  Kai Grossjohann  <kai.grossjohann@gmx.net>
 
@@ -97,8 +140,8 @@
 	filenames starting with "/:" -- those are reserved for
 	file-name-non-special.
 
-	* tramp-smb.el (tramp-smb-open-connection): Use
-	tramp-set-process-query-on-exit-flag compat function.
+	* tramp-smb.el (tramp-smb-open-connection):
+	Use tramp-set-process-query-on-exit-flag compat function.
 
 2004-05-29  Richard M. Stallman  <rms@gnu.org>
 
@@ -108,7 +151,7 @@
 	(eval-last-sexp-print-value): Print char equivalent regardless
 	of standard-output value.
 
-	* thumbs.el (thumbs-subst-char-in-string): Deleted.
+	* thumbs.el (thumbs-subst-char-in-string): Delete.
 	(thumbs-thumbname): Use subst-char-in-string.
 	(thumbs-resize-image): Use condition-case, not ignore-errors.
 	(thumbs-kill-buffer): Likewise.
@@ -217,8 +260,10 @@
 2004-05-28  Juanma Barranquero  <lektu@terra.es>
 
 	* cus-edit.el (customize-face, customize-face-other-window)
-	(custom-face-edit-delete): Make arguments match their use in docstring.
-	(custom-unloaded-symbol-p, custom-unloaded-widget-p): Docstring typo.
+	(custom-face-edit-delete): Make arguments match their use in
+	docstring.
+	(custom-unloaded-symbol-p, custom-unloaded-widget-p): Fix typo in
+	docstring.
 
 	* cvs-status.el (cvs-tree-merge, cvs-tags->tree): Use `butlast',
 	not `cvs-butlast'.
@@ -693,7 +738,8 @@
 
 2004-05-11  Juanma Barranquero  <lektu@terra.es>
 
-	* custom.el (custom-initialize-default, defcustom): Typo in docstring.
+	* custom.el (custom-initialize-default, defcustom):
+	Fix typo in docstring.
 
 	* files.el (set-visited-file-name, file-expand-wildcards):
 	Fix docstring.
--- a/lisp/comint.el	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/comint.el	Thu Jun 03 16:45:20 2004 +0000
@@ -1182,7 +1182,7 @@
 than the logical beginning of line."
   (save-excursion
     (let ((toend (- (line-end-position) (point)))
-	  (start (comint-line-beginning-position)))
+	  (start (or start (comint-line-beginning-position))))
       (goto-char start)
       (while (progn
 	       (skip-chars-forward "^!^" (- (line-end-position) toend))
@@ -1482,7 +1482,8 @@
 				(concat input "\n")))
 
 	  (let ((beg (marker-position pmark))
-		(end (if no-newline (point) (1- (point)))))
+	      (end (if no-newline (point) (1- (point))))
+	      (inhibit-modification-hooks t))
 	    (when (> end beg)
 	      ;; Set text-properties for the input field
 	      (add-text-properties
@@ -1578,7 +1579,8 @@
 freeze its attributes in place, even when more input comes a long
 and moves the prompt overlay."
   (when comint-last-prompt-overlay
-    (let ((inhibit-read-only t))
+    (let ((inhibit-read-only t)
+	  (inhibit-modification-hooks t))
       (add-text-properties (overlay-start comint-last-prompt-overlay)
                            (overlay-end comint-last-prompt-overlay)
                            (overlay-properties comint-last-prompt-overlay)))))
@@ -1709,7 +1711,8 @@
 	    (goto-char (process-mark process)) ; in case a filter moved it
 
 	    (unless comint-use-prompt-regexp-instead-of-fields
-              (let ((inhibit-read-only t))
+              (let ((inhibit-read-only t)
+		    (inhibit-modification-hooks t))
                 (add-text-properties comint-last-output-start (point)
                                      '(rear-nonsticky t
 				       field output
@@ -1718,7 +1721,8 @@
 	    ;; Highlight the prompt, where we define `prompt' to mean
 	    ;; the most recent output that doesn't end with a newline.
 	    (let ((prompt-start (save-excursion (forward-line 0) (point)))
-		  (inhibit-read-only t))
+		  (inhibit-read-only t)
+		  (inhibit-modification-hooks t))
 	      (when comint-prompt-read-only
 		(or (= (point-min) prompt-start)
 		    (get-text-property (1- prompt-start) 'read-only)
@@ -2347,7 +2351,8 @@
 If the character after point does not have a front-sticky
 read-only property, any read-only property of `fence' on the
 preceding newline is removed."
-  (let* ((pt (point)) (lst (get-text-property pt 'front-sticky)))
+  (let* ((pt (point)) (lst (get-text-property pt 'front-sticky))
+	 (inhibit-modification-hooks t))
     (and (bolp)
 	 (not (bobp))
 	 (if (and (get-text-property pt 'read-only)
@@ -2966,10 +2971,8 @@
 
     ;; Read the next key, to process SPC.
     (let (key first)
-      (if (save-excursion
-	    (set-buffer (get-buffer "*Completions*"))
-	    (set (make-local-variable
-		  'comint-displayed-dynamic-completions)
+      (if (with-current-buffer (get-buffer "*Completions*")
+	    (set (make-local-variable 'comint-displayed-dynamic-completions)
 		 completions)
 	    (setq key (read-key-sequence nil)
 		  first (aref key 0))
--- a/lisp/desktop.el	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/desktop.el	Thu Jun 03 16:45:20 2004 +0000
@@ -326,7 +326,7 @@
 mode is active.  RESTORE-FUNCTION is the function to activate the minor mode.
 called.  RESTORE-FUNCTION nil means don't try to restore the minor mode.
 Only minor modes for which the name of the buffer-local variable
-and the name of the minor mode function are different have to added to
+and the name of the minor mode function are different have to be added to
 this table."
   :type 'sexp
   :group 'desktop)
@@ -589,16 +589,17 @@
                     major-mode
                     ;; minor modes
                     (let (ret)
-                      (mapcar
-                        #'(lambda (mim)
+                      (mapc
+                        #'(lambda (minor-mode)
                           (and
-                            (boundp mim)
-                            (symbol-value mim)
-                            (setq ret
-                              (cons
-                                (let ((special (assq mim desktop-minor-mode-table)))
-                                  (if special (cadr special) mim))
-                                ret))))
+                            (boundp minor-mode)
+                            (symbol-value minor-mode)
+                            (let ((special (assq minor-mode desktop-minor-mode-table)))
+                              (when (or special (functionp minor-mode))
+                                (setq ret
+                                  (cons
+                                    (if special (cadr special) minor-mode)
+                                    ret))))))
                         (mapcar #'car minor-mode-alist))
                       ret)
                     (point)
--- a/lisp/faces.el	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/faces.el	Thu Jun 03 16:45:20 2004 +0000
@@ -1809,7 +1809,7 @@
 
 ;; Update a frame's faces when we change its default font.
 
-(defalias 'frame-update-faces 'ignore)
+(defalias 'frame-update-faces 'ignore "")
 (make-obsolete 'frame-update-faces "no longer necessary." "21.1")
 
 ;; Update the colors of FACE, after FRAME's own colors have been
--- a/lisp/frame.el	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/frame.el	Thu Jun 03 16:45:20 2004 +0000
@@ -1350,6 +1350,7 @@
 command starts, by installing a pre-command hook."
   (when (null blink-cursor-timer)
     (add-hook 'pre-command-hook 'blink-cursor-end)
+    (internal-show-cursor nil nil)
     (setq blink-cursor-timer
 	  (run-with-timer blink-cursor-interval blink-cursor-interval
 			  'blink-cursor-timer-function))))
--- a/lisp/ibuf-ext.el	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/ibuf-ext.el	Thu Jun 03 16:45:20 2004 +0000
@@ -1,6 +1,6 @@
 ;;; ibuf-ext.el --- extensions for ibuffer
 
-;; Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
+;; Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
 
 ;; Author: Colin Walters <walters@verbum.org>
 ;; Maintainer: John Paul Wallington <jpw@gnu.org>
@@ -1224,19 +1224,62 @@
 
 ;;;###autoload
 (defun ibuffer-jump-to-buffer (name)
-  "Move point to the buffer whose name is NAME."
+  "Move point to the buffer whose name is NAME.
+
+If called interactively, prompt for a buffer name and go to the
+corresponding line in the Ibuffer buffer.  If said buffer is in a
+hidden group filter, open it.
+
+If `ibuffer-jump-offer-only-visible-buffers' is non-nil, only offer
+visible buffers in the completion list.  Calling the command with
+a prefix argument reverses the meaning of that variable."
   (interactive (list nil))
-  (let ((table (mapcar #'(lambda (x)
-			   (cons (buffer-name (car x))
-				 (caddr x)))
-		       (ibuffer-current-state-list t))))
-    (when (null table)
-      (error "No buffers!"))
-    (when (interactive-p)
-      (setq name (completing-read "Jump to buffer: " table nil t)))
-    (ibuffer-aif (assoc name table)
-	(goto-char (cdr it))
-      (error "No buffer with name %s" name))))
+  (let ((only-visible ibuffer-jump-offer-only-visible-buffers))
+    (when current-prefix-arg
+      (setq only-visible (not only-visible)))
+    (if only-visible
+	(let ((table (mapcar #'(lambda (x)
+				 (buffer-name (car x)))
+			     (ibuffer-current-state-list))))
+	  (when (null table)
+	    (error "No buffers!"))
+	  (when (interactive-p)
+	    (setq name (completing-read "Jump to buffer: "
+					table nil t))))
+      (when (interactive-p)
+	(setq name (read-buffer "Jump to buffer: " nil t))))
+    (when (not (string= "" name))
+      (let (buf-point)
+	;; Blindly search for our buffer: it is very likely that it is
+	;; not in a hidden filter group.
+	(ibuffer-map-lines #'(lambda (buf marks)
+			       (when (string= (buffer-name buf) name)
+				 (setq buf-point (point))
+				 nil))
+			   t nil)
+	(when (and
+	       (null buf-point)
+	       (not (null ibuffer-hidden-filter-groups)))
+	  ;; We did not find our buffer.  It must be in a hidden filter
+	  ;; group, so go through all hidden filter groups to find it.
+	  (catch 'found
+	    (dolist (group ibuffer-hidden-filter-groups)
+	      (ibuffer-jump-to-filter-group group)
+	      (ibuffer-toggle-filter-group)
+	      (ibuffer-map-lines #'(lambda (buf marks)
+				     (when (string= (buffer-name buf) name)
+				       (setq buf-point (point))
+				       nil))
+				 t group)
+	      (if buf-point
+		  (throw 'found nil)
+		(ibuffer-toggle-filter-group)))))
+	(if (null buf-point)
+	    ;; Still not found even though we expanded all hidden filter
+	    ;; groups: that must be because it's hidden by predicate:
+	    ;; we won't bother trying to display it.
+	    (error "No buffer with name %s" name)
+	  (goto-char buf-point))))))
 
 ;;;###autoload
 (defun ibuffer-diff-with-file ()
--- a/lisp/ibuffer.el	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/ibuffer.el	Thu Jun 03 16:45:20 2004 +0000
@@ -1,6 +1,6 @@
 ;;; ibuffer.el --- operate on buffers like dired
 
-;; Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+;; Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
 
 ;; Author: Colin Walters <walters@verbum.org>
 ;; Maintainer: John Paul Wallington <jpw@gnu.org>
@@ -268,6 +268,12 @@
 		 (const :tag "Always except minibuffer" :value :nomini))
   :group 'ibuffer)
 
+(defcustom ibuffer-jump-offer-only-visible-buffers nil
+  "If non-nil, only offer buffers visible in the Ibuffer buffer
+in completion lists of the `ibuffer-jump-to-buffer' command."
+  :type 'boolean
+  :group 'ibuffer)
+
 (defcustom ibuffer-use-header-line (boundp 'header-line-format)
   "If non-nil, display a header line containing current filters."
   :type 'boolean
@@ -357,6 +363,7 @@
     (define-key map (kbd "u") 'ibuffer-unmark-forward)
     (define-key map (kbd "=") 'ibuffer-diff-with-file)
     (define-key map (kbd "j") 'ibuffer-jump-to-buffer)
+    (define-key map (kbd "M-g") 'ibuffer-jump-to-buffer)
     (define-key map (kbd "DEL") 'ibuffer-unmark-backward)
     (define-key map (kbd "M-DEL") 'ibuffer-unmark-all)
     (define-key map (kbd "* *") 'ibuffer-unmark-all)
--- a/lisp/international/mule.el	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/international/mule.el	Thu Jun 03 16:45:20 2004 +0000
@@ -592,11 +592,9 @@
 		 (make-char charset (+ i start) start)
 		 (make-char charset (+ i start) (+ start chars -1)))))))
 
-(defun register-char-codings (coding-system safe-chars)
-  "This is an obsolete function.
-It exists just for backward compatibility, and it does nothing.")
+(defalias 'register-char-codings 'ignore "")
 (make-obsolete 'register-char-codings
-	       "Unnecessary function.  Calling it has no effect."
+               "it exists just for backward compatibility, and does nothing."
 	       "21.3")
 
 (defconst char-coding-system-table nil
@@ -1401,7 +1399,7 @@
 	      (let* ((M (char-after (+ pos 4)))
 		     (L (char-after (+ pos 5)))
 		     (encoding (match-string 2))
-		     (encoding-info (assoc-string 
+		     (encoding-info (assoc-string
 				     encoding
 				     ctext-non-standard-encodings-alist t))
 		     (coding (if encoding-info
@@ -1445,7 +1443,7 @@
 		   (dolist (elt charset)
 		     (aset table (make-char elt) slot)))
 		  ((char-table-p charset)
-		   (map-char-table #'(lambda (k v) 
+		   (map-char-table #'(lambda (k v)
 				   (if (and v (> k 128)) (aset table k slot)))
 				   charset))))))
     table))
@@ -1501,7 +1499,7 @@
 				    (- (point) last-pos)))
 		       (save-excursion
 			 (goto-char last-pos)
-			 (insert (string-to-multibyte 
+			 (insert (string-to-multibyte
 				  (format "\e%%/%d%c%c%s"
 					  noctets
 					  (+ (/ len 128) 128)
@@ -1668,7 +1666,7 @@
 	  (goto-char tail-start)
 	  (re-search-forward "[\r\n]\^L" nil t)
 	  (if (re-search-forward
-	       "[\r\n]\\([^[\r\n]*\\)[ \t]*Local Variables:[ \t]*\\([^\r\n]*\\)[\r\n]" 
+	       "[\r\n]\\([^[\r\n]*\\)[ \t]*Local Variables:[ \t]*\\([^\r\n]*\\)[\r\n]"
 	       tail-end t)
 	      ;; The prefix is what comes before "local variables:" in its
 	      ;; line.  The suffix is what comes after "local variables:"
@@ -1688,7 +1686,7 @@
 		       "[ \t]*unibyte[ \t]*:[ \t]*\\([^ \t\r\n]+\\)[ \t]*"
 		       suffix "[\r\n]"))
 		     (re-end
-		      (concat "[\r\n]" prefix "[ \t]*End *:[ \t]*" suffix 
+		      (concat "[\r\n]" prefix "[ \t]*End *:[ \t]*" suffix
 			      "[\r\n]?"))
 		     (pos (1- (point))))
 		(forward-char -1)	; skip back \r or \n.
--- a/lisp/minibuf-eldef.el	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/minibuf-eldef.el	Thu Jun 03 16:45:20 2004 +0000
@@ -1,6 +1,6 @@
 ;;; minibuf-eldef.el --- Only show defaults in prompts when applicable
 ;;
-;; Copyright (C) 2000, 2001 Free Software Foundation, Inc.
+;; Copyright (C) 2000, 2001, 2004 Free Software Foundation, Inc.
 ;;
 ;; Author: Miles Bader <miles@gnu.org>
 ;; Keywords: convenience
@@ -36,7 +36,7 @@
 ;;; Code:
 
 (defvar minibuffer-default-in-prompt-regexps
-  '(("\\( (default\\>.*)\\):? \\'" . 1))
+  '(("\\( (default\\>.*)\\):? \\'" . 1) ("\\( \\[.*\\]\\):? *\\'" . 1))
   "*A list of regexps matching the parts of minibuffer prompts showing defaults.
 When `minibuffer-electric-default-mode' is active, these regexps are
 used to identify the portions of prompts to elide.
@@ -157,5 +157,5 @@
 
 (provide 'minibuf-eldef)
 
-;;; arch-tag: 7e421fae-c275-4729-b0da-7836af377d3d
+;; arch-tag: 7e421fae-c275-4729-b0da-7836af377d3d
 ;;; minibuf-eldef.el ends here
--- a/lisp/subr.el	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/subr.el	Thu Jun 03 16:45:20 2004 +0000
@@ -851,9 +851,11 @@
 (make-obsolete 'dot-min 'point-min	"before 19.15")
 (make-obsolete 'dot-marker 'point-marker "before 19.15")
 (make-obsolete 'buffer-flush-undo 'buffer-disable-undo "before 19.15")
-(make-obsolete 'baud-rate "use the baud-rate variable instead." "before 19.15")
+(make-obsolete 'baud-rate "use the `baud-rate' variable instead." "before 19.15")
 (make-obsolete 'compiled-function-p 'byte-code-function-p "before 19.15")
 (make-obsolete 'define-function 'defalias "20.1")
+(make-obsolete 'focus-frame "it does nothing." "19.32")
+(make-obsolete 'unfocus-frame "it does nothing." "19.32")
 
 (defun insert-string (&rest args)
   "Mocklisp-compatibility insert function.
@@ -870,8 +872,8 @@
   "Return the value of the `baud-rate' variable."
   baud-rate)
 
-(defalias 'focus-frame 'ignore)
-(defalias 'unfocus-frame 'ignore)
+(defalias 'focus-frame 'ignore "")
+(defalias 'unfocus-frame 'ignore "")
 
 
 ;;;; Obsolescence declarations for variables.
@@ -1186,7 +1188,7 @@
 ;; compatibility
 
 (make-obsolete 'process-kill-without-query
-               "use `process-query-on-exit-flag'\nor `set-process-query-on-exit-flag'."
+               "use `process-query-on-exit-flag' or `set-process-query-on-exit-flag'."
                "21.5")
 (defun process-kill-without-query (process &optional flag)
   "Say no query needed if PROCESS is running when Emacs is exited.
@@ -1333,9 +1335,11 @@
   (let ((n nil))
     (when default
       (setq prompt
-	    (if (string-match "\\(\\):[^:]*" prompt)
-		(replace-match (format " [%s]" default) t t prompt 1)
-	      (concat prompt (format " [%s] " default)))))
+	    (if (string-match "\\(\\):[ \t]*\\'" prompt)
+		(replace-match (format " (default %s)" default) t t prompt 1)
+	      (replace-regexp-in-string "[ \t]*\\'"
+					(format " (default %s) " default)
+					prompt t t)))) 
     (while
 	(progn
 	  (let ((str (read-from-minibuffer prompt nil nil nil nil
--- a/lisp/textmodes/bibtex.el	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/textmodes/bibtex.el	Thu Jun 03 16:45:20 2004 +0000
@@ -1793,7 +1793,7 @@
         (goto-char (point-min))
         (let* ((fields-alist (bibtex-parse-entry))
                (case-fold-search t)
-               (field (bibtex-assoc-regexp "\\(OPT\\)?crossref\\>"
+               (field (bibtex-assoc-regexp "\\`\\(OPT\\)?crossref\\'"
                                            fields-alist)))
           (setq crossref-key (and field
                                   (not (string-match bibtex-empty-field-re
@@ -1807,7 +1807,7 @@
             (when (nth 3 rfield) ; we should have an alternative
               (setq alternatives-there t
                     field (bibtex-assoc-regexp
-                           (concat "\\(ALT\\)?" (car rfield) "\\>")
+                           (concat "\\`\\(ALT\\)?" (car rfield) "\\'")
                            fields-alist))
               (if (and field
                        (not (string-match bibtex-empty-field-re
@@ -2317,7 +2317,7 @@
                 ;; user has aborted by typing a key --> return `aborted'
                 (throw 'userkey 'aborted))
             (setq key (bibtex-reference-key-in-string bounds))
-            (if (not (assoc-string key strings t))
+            (if (not (assoc key strings))
                 (push (cons key (bibtex-text-in-string bounds t))
                       strings))
             (goto-char (bibtex-end-of-text-in-string bounds)))
@@ -2722,24 +2722,27 @@
     (let* ((fields-alist (bibtex-parse-entry))
            (field-list (bibtex-field-list
                         (substring (cdr (assoc "=type=" fields-alist))
-                                   1)))) ; don't want @
+                                   1))) ; don't want @
+           (case-fold-search t))
       (dolist (field (car field-list))
-        (unless (assoc-string (car field) fields-alist t)
+        (unless (bibtex-assoc-regexp (concat "\\`\\(ALT\\)?" (car field) "\\'")
+                                     fields-alist)
           (bibtex-make-field field)))
       (dolist (field (cdr field-list))
-        (unless (assoc-string (car field) fields-alist t)
+        (unless (bibtex-assoc-regexp (concat "\\`\\(OPT\\)?" (car field) "\\'")
+                                     fields-alist)
           (bibtex-make-optional-field field))))))
 
 (defun bibtex-parse-entry ()
   "Parse entry at point, return an alist.
 The alist elements have the form (FIELD . TEXT), where FIELD can also be
-the special strings \"=type=\" and \"=key=\".
-Move point to the end of the last field."
+the special strings \"=type=\" and \"=key=\". For the FIELD \"=key=\"
+TEXT may be nil. Move point to the end of the last field."
   (let (alist bounds)
-    (when (looking-at bibtex-entry-head)
+    (when (looking-at bibtex-entry-maybe-empty-head)
       (push (cons "=type=" (match-string bibtex-type-in-head)) alist)
       (push (cons "=key=" (match-string bibtex-key-in-head)) alist)
-      (goto-char (match-end bibtex-key-in-head))
+      (goto-char (match-end 0))
       (while (setq bounds (bibtex-parse-field bibtex-field-name))
 	(push (cons (bibtex-name-in-field bounds)
 		    (bibtex-text-in-field-bounds bounds))
--- a/lisp/vc-arch.el	Mon May 31 13:48:26 2004 +0000
+++ b/lisp/vc-arch.el	Thu Jun 03 16:45:20 2004 +0000
@@ -272,7 +272,7 @@
 		;; Buh?  Unexpected format.
 		'edited
 	      (let ((ats (file-attributes file)))
-		(if (and (= (nth 7 ats) (string-to-number (match-string 2)))
+		(if (and (eq (nth 7 ats) (string-to-number (match-string 2)))
 			 (equal (format-time-string "%s" (nth 5 ats))
 				(match-string 1)))
 		    'up-to-date
--- a/src/ChangeLog	Mon May 31 13:48:26 2004 +0000
+++ b/src/ChangeLog	Thu Jun 03 16:45:20 2004 +0000
@@ -1,3 +1,23 @@
+2004-06-03  Juanma Barranquero  <lektu@terra.es>
+
+	* w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
+	(Vw32_color_map): Fix typo in docstring.
+	(Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
+	(Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
+	Make argument names match their use in docstring.
+
+2004-06-02  Juanma Barranquero  <lektu@terra.es>
+
+	Work around bugs/problems with MinGW builds of graphics libraries
+	called from MSVC builds of Emacs.
+
+	* image.c (lookup_image): Make pointer to img static.
+	(png_read_from_memory): Disable "global" optimization.
+
+2004-06-01  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
+
 2004-05-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 
 	* macfns.c: Don't include ccl.h.
@@ -13,7 +33,7 @@
 	(x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
 	(syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
 	and last_show_tip_args.
-	
+
 	* macgui.h [!MAC_OSX]: Include Gestalt.h.
 	(Cursor, No_Cursor): New defines.
 	[!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility
@@ -2012,7 +2032,7 @@
 	completion-regexp-list.  Define Qcase_fold_search and staticpro it.
 	(read_minibuf): Fix initial comment.
 	(Ftry_completion, Fall_completions, Ftest_completion): Bind
-	case-fold-serach to the value of completion-ignore-case when
+	case-fold-search to the value of completion-ignore-case when
 	checking completion-regexp-list.
 	(Fdisplay_completion_list): Make it handle arguments that are
 	symbols.  Doc fix.
@@ -8620,7 +8640,7 @@
 
 2002-08-19  Kim F. Storm  <storm@cua.dk>
 
-	* keyboard.c (Fclear_this_command_keys): Added optional arg
+	* keyboard.c (Fclear_this_command_keys): Add optional arg
 	KEEP-RECORD to avoid clearing lossage when we just want to clear
 	the current key sequence (kmacro needs this).
 
--- a/src/eval.c	Mon May 31 13:48:26 2004 +0000
+++ b/src/eval.c	Thu Jun 03 16:45:20 2004 +0000
@@ -1220,7 +1220,7 @@
 
 The value of the last BODY form is returned from the condition-case.
 See also the function `signal' for more info.
-usage: (condition-case VAR BODYFORM HANDLERS...)  */)
+usage: (condition-case VAR BODYFORM &rest HANDLERS)  */)
      (args)
      Lisp_Object args;
 {
@@ -1235,10 +1235,10 @@
   handlers = Fcdr (Fcdr (args));
   CHECK_SYMBOL (var);
 
-  for (val = handlers; ! NILP (val); val = Fcdr (val))
+  for (val = handlers; CONSP (val); val = XCDR (val))
     {
       Lisp_Object tem;
-      tem = Fcar (val);
+      tem = XCAR (val);
       if (! (NILP (tem)
 	     || (CONSP (tem)
 		 && (SYMBOLP (XCAR (tem))
--- a/src/image.c	Mon May 31 13:48:26 2004 +0000
+++ b/src/image.c	Thu Jun 03 16:45:20 2004 +0000
@@ -213,7 +213,7 @@
 {
   UnlockPixels (GetGWorldPixMap (ximg));
 }
-#endif
+#endif /* MAC_OS */
 
 
 /* Functions to access the contents of a bitmap, given an id.  */
@@ -1596,6 +1596,11 @@
      Lisp_Object spec;
 {
   struct image_cache *c = FRAME_X_IMAGE_CACHE (f);
+#ifdef _MSC_VER
+  /* Work around a problem with MinGW builds of graphics libraries
+     not honoring calling conventions.  */
+  static
+#endif
   struct image *img;
   int i;
   unsigned hash;
@@ -4238,7 +4243,7 @@
 }
 
 #endif /* MAC_OS */
- 
+
 
 
 /***********************************************************************
@@ -5688,6 +5693,12 @@
    PNG_PTR is a pointer to the PNG control structure.  Copy LENGTH
    bytes from the input to DATA.  */
 
+#ifdef _MSC_VER
+  /* Work around a problem with MinGW builds of graphics libraries
+     not honoring calling conventions.  */
+#pragma optimize("g", off)
+#endif
+
 static void
 png_read_from_memory (png_ptr, data, length)
      png_structp png_ptr;
@@ -5704,6 +5715,11 @@
   tbr->index = tbr->index + length;
 }
 
+#ifdef _MSC_VER
+/* Restore normal optimization, as specified on the command line.  */
+#pragma optimize("", on)
+#endif
+
 /* Load PNG image IMG for use on frame F.  Value is non-zero if
    successful.  */
 
--- a/src/mem-limits.h	Mon May 31 13:48:26 2004 +0000
+++ b/src/mem-limits.h	Thu Jun 03 16:45:20 2004 +0000
@@ -1,5 +1,5 @@
 /* Includes for memory limit warnings.
-   Copyright (C) 1990, 1993, 1994, 1995, 1996 Free Software Foundation, Inc.
+   Copyright (C) 1990, 93, 94, 95, 1996, 2004  Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
 
@@ -81,7 +81,9 @@
 #define NULL ((POINTER) 0)
 
 extern POINTER start_of_data ();
-#ifdef DATA_SEG_BITS
+#if defined USE_LSB_TAG
+#define EXCEEDS_LISP_PTR(ptr) 0
+#elif defined DATA_SEG_BITS
 #define EXCEEDS_LISP_PTR(ptr) \
   (((EMACS_UINT) (ptr) & ~DATA_SEG_BITS) >> VALBITS)
 #else
--- a/src/w32fns.c	Mon May 31 13:48:26 2004 +0000
+++ b/src/w32fns.c	Thu Jun 03 16:45:20 2004 +0000
@@ -1,5 +1,5 @@
 /* Graphical user interface functions for the Microsoft W32 API.
-   Copyright (C) 1989, 92, 93, 94, 95, 96, 97, 98, 1999, 2000, 01, 2004
+   Copyright (C) 1989, 1992, 93, 94, 95, 96, 97, 98, 99, 2000, 01, 04
      Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
@@ -4045,15 +4045,15 @@
        1, 1, 0,
        doc: /* Make a new window, which is called a \"frame\" in Emacs terms.
 Returns an Emacs frame object.
-ALIST is an alist of frame parameters.
+PARAMETERS is an alist of frame parameters.
 If the parameters specify that the frame should not have a minibuffer,
 and do not specify a specific minibuffer window to use,
 then `default-minibuffer-frame' must be a frame whose minibuffer can
 be shared by the new frame.
 
 This function is an internal primitive--use `make-frame' instead.  */)
-  (parms)
-     Lisp_Object parms;
+  (parameters)
+     Lisp_Object parameters;
 {
   struct frame *f;
   Lisp_Object frame, tem;
@@ -4074,7 +4074,7 @@
      until we know if this frame has a specified name.  */
   Vx_resource_name = Vinvocation_name;
 
-  display = w32_get_arg (parms, Qdisplay, 0, 0, RES_TYPE_STRING);
+  display = w32_get_arg (parameters, Qdisplay, 0, 0, RES_TYPE_STRING);
   if (EQ (display, Qunbound))
     display = Qnil;
   dpyinfo = check_x_display_info (display);
@@ -4084,7 +4084,7 @@
   kb = &the_only_kboard;
 #endif
 
-  name = w32_get_arg (parms, Qname, "name", "Name", RES_TYPE_STRING);
+  name = w32_get_arg (parameters, Qname, "name", "Name", RES_TYPE_STRING);
   if (!STRINGP (name)
       && ! EQ (name, Qunbound)
       && ! NILP (name))
@@ -4094,7 +4094,7 @@
     Vx_resource_name = name;
 
   /* See if parent window is specified.  */
-  parent = w32_get_arg (parms, Qparent_id, NULL, NULL, RES_TYPE_NUMBER);
+  parent = w32_get_arg (parameters, Qparent_id, NULL, NULL, RES_TYPE_NUMBER);
   if (EQ (parent, Qunbound))
     parent = Qnil;
   if (! NILP (parent))
@@ -4104,8 +4104,8 @@
   /* No need to protect DISPLAY because that's not used after passing
      it to make_frame_without_minibuffer.  */
   frame = Qnil;
-  GCPRO4 (parms, parent, name, frame);
-  tem = w32_get_arg (parms, Qminibuffer, "minibuffer", "Minibuffer",
+  GCPRO4 (parameters, parent, name, frame);
+  tem = w32_get_arg (parameters, Qminibuffer, "minibuffer", "Minibuffer",
                      RES_TYPE_SYMBOL);
   if (EQ (tem, Qnone) || NILP (tem))
     f = make_frame_without_minibuffer (Qnil, kb, display);
@@ -4135,7 +4135,7 @@
   record_unwind_protect (unwind_create_frame, frame);
 
   f->icon_name
-    = w32_get_arg (parms, Qicon_name, "iconName", "Title", RES_TYPE_STRING);
+    = w32_get_arg (parameters, Qicon_name, "iconName", "Title", RES_TYPE_STRING);
   if (! STRINGP (f->icon_name))
     f->icon_name = Qnil;
 
@@ -4177,7 +4177,7 @@
   {
     Lisp_Object font;
 
-    font = w32_get_arg (parms, Qfont, "font", "Font", RES_TYPE_STRING);
+    font = w32_get_arg (parameters, Qfont, "font", "Font", RES_TYPE_STRING);
 
     BLOCK_INPUT;
     /* First, try whatever font the caller has specified.  */
@@ -4201,49 +4201,49 @@
     if (! STRINGP (font))
       font = build_string ("Fixedsys");
 
-    x_default_parameter (f, parms, Qfont, font,
+    x_default_parameter (f, parameters, Qfont, font,
 			 "font", "Font", RES_TYPE_STRING);
   }
 
-  x_default_parameter (f, parms, Qborder_width, make_number (2),
+  x_default_parameter (f, parameters, Qborder_width, make_number (2),
 		       "borderWidth", "BorderWidth", RES_TYPE_NUMBER);
   /* This defaults to 2 in order to match xterm.  We recognize either
      internalBorderWidth or internalBorder (which is what xterm calls
      it).  */
-  if (NILP (Fassq (Qinternal_border_width, parms)))
+  if (NILP (Fassq (Qinternal_border_width, parameters)))
     {
       Lisp_Object value;
 
-      value = w32_get_arg (parms, Qinternal_border_width,
-			 "internalBorder", "InternalBorder", RES_TYPE_NUMBER);
+      value = w32_get_arg (parameters, Qinternal_border_width,
+                           "internalBorder", "InternalBorder", RES_TYPE_NUMBER);
       if (! EQ (value, Qunbound))
-	parms = Fcons (Fcons (Qinternal_border_width, value),
-		       parms);
+	parameters = Fcons (Fcons (Qinternal_border_width, value),
+                            parameters);
     }
   /* Default internalBorderWidth to 0 on Windows to match other programs.  */
-  x_default_parameter (f, parms, Qinternal_border_width, make_number (0),
+  x_default_parameter (f, parameters, Qinternal_border_width, make_number (0),
 		       "internalBorderWidth", "InternalBorder", RES_TYPE_NUMBER);
-  x_default_parameter (f, parms, Qvertical_scroll_bars, Qright,
+  x_default_parameter (f, parameters, Qvertical_scroll_bars, Qright,
 		       "verticalScrollBars", "ScrollBars", RES_TYPE_SYMBOL);
 
   /* Also do the stuff which must be set before the window exists.  */
-  x_default_parameter (f, parms, Qforeground_color, build_string ("black"),
+  x_default_parameter (f, parameters, Qforeground_color, build_string ("black"),
 		       "foreground", "Foreground", RES_TYPE_STRING);
-  x_default_parameter (f, parms, Qbackground_color, build_string ("white"),
+  x_default_parameter (f, parameters, Qbackground_color, build_string ("white"),
 		       "background", "Background", RES_TYPE_STRING);
-  x_default_parameter (f, parms, Qmouse_color, build_string ("black"),
+  x_default_parameter (f, parameters, Qmouse_color, build_string ("black"),
 		       "pointerColor", "Foreground", RES_TYPE_STRING);
-  x_default_parameter (f, parms, Qcursor_color, build_string ("black"),
+  x_default_parameter (f, parameters, Qcursor_color, build_string ("black"),
 		       "cursorColor", "Foreground", RES_TYPE_STRING);
-  x_default_parameter (f, parms, Qborder_color, build_string ("black"),
+  x_default_parameter (f, parameters, Qborder_color, build_string ("black"),
 		       "borderColor", "BorderColor", RES_TYPE_STRING);
-  x_default_parameter (f, parms, Qscreen_gamma, Qnil,
+  x_default_parameter (f, parameters, Qscreen_gamma, Qnil,
 		       "screenGamma", "ScreenGamma", RES_TYPE_FLOAT);
-  x_default_parameter (f, parms, Qline_spacing, Qnil,
+  x_default_parameter (f, parameters, Qline_spacing, Qnil,
 		       "lineSpacing", "LineSpacing", RES_TYPE_NUMBER);
-  x_default_parameter (f, parms, Qleft_fringe, Qnil,
+  x_default_parameter (f, parameters, Qleft_fringe, Qnil,
 		       "leftFringe", "LeftFringe", RES_TYPE_NUMBER);
-  x_default_parameter (f, parms, Qright_fringe, Qnil,
+  x_default_parameter (f, parameters, Qright_fringe, Qnil,
 		       "rightFringe", "RightFringe", RES_TYPE_NUMBER);
 
 
@@ -4255,16 +4255,16 @@
      happen.  */
   init_frame_faces (f);
 
-  x_default_parameter (f, parms, Qmenu_bar_lines, make_number (1),
+  x_default_parameter (f, parameters, Qmenu_bar_lines, make_number (1),
 		       "menuBar", "MenuBar", RES_TYPE_NUMBER);
-  x_default_parameter (f, parms, Qtool_bar_lines, make_number (1),
+  x_default_parameter (f, parameters, Qtool_bar_lines, make_number (1),
                        "toolBar", "ToolBar", RES_TYPE_NUMBER);
 
-  x_default_parameter (f, parms, Qbuffer_predicate, Qnil,
+  x_default_parameter (f, parameters, Qbuffer_predicate, Qnil,
 		       "bufferPredicate", "BufferPredicate", RES_TYPE_SYMBOL);
-  x_default_parameter (f, parms, Qtitle, Qnil,
+  x_default_parameter (f, parameters, Qtitle, Qnil,
 		       "title", "Title", RES_TYPE_STRING);
-  x_default_parameter (f, parms, Qfullscreen, Qnil,
+  x_default_parameter (f, parameters, Qfullscreen, Qnil,
                        "fullscreen", "Fullscreen", RES_TYPE_SYMBOL);
 
   f->output_data.w32->dwStyle = WS_OVERLAPPEDWINDOW;
@@ -4277,13 +4277,13 @@
   f->output_data.w32->hourglass_cursor = w32_load_cursor (IDC_WAIT);
   f->output_data.w32->horizontal_drag_cursor = w32_load_cursor (IDC_SIZEWE);
 
-  window_prompting = x_figure_window_size (f, parms, 1);
-
-  tem = w32_get_arg (parms, Qunsplittable, 0, 0, RES_TYPE_BOOLEAN);
+  window_prompting = x_figure_window_size (f, parameters, 1);
+
+  tem = w32_get_arg (parameters, Qunsplittable, 0, 0, RES_TYPE_BOOLEAN);
   f->no_split = minibuffer_only || EQ (tem, Qt);
 
   w32_window (f, window_prompting, minibuffer_only);
-  x_icon (f, parms);
+  x_icon (f, parameters);
 
   x_make_gc (f);
 
@@ -4293,16 +4293,16 @@
 
   /* We need to do this after creating the window, so that the
      icon-creation functions can say whose icon they're describing.  */
-  x_default_parameter (f, parms, Qicon_type, Qnil,
+  x_default_parameter (f, parameters, Qicon_type, Qnil,
 		       "bitmapIcon", "BitmapIcon", RES_TYPE_SYMBOL);
 
-  x_default_parameter (f, parms, Qauto_raise, Qnil,
+  x_default_parameter (f, parameters, Qauto_raise, Qnil,
 		       "autoRaise", "AutoRaiseLower", RES_TYPE_BOOLEAN);
-  x_default_parameter (f, parms, Qauto_lower, Qnil,
+  x_default_parameter (f, parameters, Qauto_lower, Qnil,
 		       "autoLower", "AutoRaiseLower", RES_TYPE_BOOLEAN);
-  x_default_parameter (f, parms, Qcursor_type, Qbox,
+  x_default_parameter (f, parameters, Qcursor_type, Qbox,
 		       "cursorType", "CursorType", RES_TYPE_SYMBOL);
-  x_default_parameter (f, parms, Qscroll_bar_width, Qnil,
+  x_default_parameter (f, parameters, Qscroll_bar_width, Qnil,
 		       "scrollBarWidth", "ScrollBarWidth", RES_TYPE_NUMBER);
 
   /* Dimensions, especially FRAME_LINES (f), must be done via change_frame_size.
@@ -4340,7 +4340,7 @@
     {
       Lisp_Object visibility;
 
-      visibility = w32_get_arg (parms, Qvisibility, 0, 0, RES_TYPE_SYMBOL);
+      visibility = w32_get_arg (parameters, Qvisibility, 0, 0, RES_TYPE_SYMBOL);
       if (EQ (visibility, Qunbound))
 	visibility = Qt;
 
@@ -6181,10 +6181,10 @@
 
 DEFUN ("w32-find-bdf-fonts", Fw32_find_bdf_fonts, Sw32_find_bdf_fonts,
        1, 1, 0,
-       doc: /* Return a list of BDF fonts in DIR.
-The list is suitable for appending to w32-bdf-filename-alist.  Fonts
-which do not contain an xlfd description will not be included in the
-list. DIR may be a list of directories.  */)
+       doc: /* Return a list of BDF fonts in DIRECTORY.
+The list is suitable for appending to `w32-bdf-filename-alist'.
+Fonts which do not contain an xlfd description will not be included
+in the list.  DIRECTORY may be a list of directories.  */)
      (directory)
      Lisp_Object directory;
 {
@@ -6265,7 +6265,7 @@
 
 DEFUN ("x-display-grayscale-p", Fx_display_grayscale_p,
        Sx_display_grayscale_p, 0, 1, 0,
-       doc: /* Return t if the X display supports shades of gray.
+       doc: /* Return t if DISPLAY supports shades of gray.
 Note that color displays do support shades of gray.
 The optional argument DISPLAY specifies which display to ask about.
 DISPLAY should be either a frame or a display name (a string).
@@ -6338,9 +6338,9 @@
 
   hdc = GetDC (dpyinfo->root_window);
   if (dpyinfo->has_palette)
-    cap = GetDeviceCaps (hdc,SIZEPALETTE);
+    cap = GetDeviceCaps (hdc, SIZEPALETTE);
   else
-    cap = GetDeviceCaps (hdc,NUMCOLORS);
+    cap = GetDeviceCaps (hdc, NUMCOLORS);
 
   /* We force 24+ bit depths to 24-bit, both to prevent an overflow
      and because probably is more meaningful on Windows anyway */
@@ -7394,7 +7394,7 @@
 Automatically hide the tooltip after TIMEOUT seconds.  TIMEOUT nil
 means use the default timeout of 5 seconds.
 
-If the list of frame parameters PARAMS contains a `left' parameter,
+If the list of frame parameters PARMS contains a `left' parameter,
 the tooltip is displayed at that x-position.  Otherwise it is
 displayed at the mouse position, with offset DX added (default is 5 if
 DX isn't specified).  Likewise for the y-position; if a `top' frame
@@ -7875,7 +7875,7 @@
 DEFUN ("w32-send-sys-command", Fw32_send_sys_command,
        Sw32_send_sys_command, 1, 2, 0,
        doc: /* Send frame a Windows WM_SYSCOMMAND message of type COMMAND.
-Some useful values for command are #xf030 to maximise frame (#xf020
+Some useful values for COMMAND are #xf030 to maximize frame (#xf020
 to minimize), #xf120 to restore frame to original size, and #xf100
 to activate the menubar for keyboard access.  #xf140 activates the
 screen saver if defined.
@@ -8070,7 +8070,7 @@
 
 DEFUN ("w32-unregister-hot-key", Fw32_unregister_hot_key,
        Sw32_unregister_hot_key, 1, 1, 0,
-       doc: /* Unregister HOTKEY as a hot-key combination.  */)
+       doc: /* Unregister KEY as a hot-key combination.  */)
   (key)
      Lisp_Object key;
 {
@@ -8112,7 +8112,8 @@
 
 DEFUN ("w32-reconstruct-hot-key", Fw32_reconstruct_hot_key,
        Sw32_reconstruct_hot_key, 1, 1, 0,
-       doc: /* Convert hot-key ID to a lisp key combination.  */)
+       doc: /* Convert hot-key ID to a lisp key combination.
+usage: (w32-reconstruct-hot-key ID)  */)
   (hotkeyid)
      Lisp_Object hotkeyid;
 {
@@ -8351,7 +8352,7 @@
 			    Initialization
  ***********************************************************************/
 
-/* Keep this list in the same order as frame_parms in frame.c. 
+/* Keep this list in the same order as frame_parms in frame.c.
    Use 0 for unsupported frame parameters.  */
 
 frame_parm_handler w32_frame_parm_handlers[] =
@@ -8436,7 +8437,7 @@
   w32_grabbed_keys = Qnil;
 
   DEFVAR_LISP ("w32-color-map", &Vw32_color_map,
-	       doc: /* An array of color name mappings for windows.  */);
+	       doc: /* An array of color name mappings for Windows.  */);
   Vw32_color_map = Qnil;
 
   DEFVAR_LISP ("w32-pass-alt-to-system", &Vw32_pass_alt_to_system,