emacs-diffs
[Top][All Lists]
Advanced

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

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


From: Glenn Morris
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r110936: Merge from emacs-24; up to r110908
Date: Sat, 17 Nov 2012 17:52:36 -0800
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 110936 [merge]
committer: Glenn Morris <address@hidden>
branch nick: trunk
timestamp: Sat 2012-11-17 17:52:36 -0800
message:
  Merge from emacs-24; up to r110908
modified:
  doc/emacs/ChangeLog
  doc/emacs/mark.texi
  doc/lispref/ChangeLog
  doc/lispref/display.texi
  doc/lispref/frames.texi
  doc/lispref/loading.texi
  doc/lispref/macros.texi
  doc/lispref/minibuf.texi
  doc/lispref/windows.texi
  etc/NEWS
  lisp/ChangeLog
  lisp/emacs-lisp/cl-lib.el
  lisp/emacs-lisp/syntax.el
  lisp/filecache.el
  lisp/image.el
  lisp/subr.el
  lisp/url/url-parse.el
  lisp/vc/vc-svn.el
  lisp/window.el
  src/ChangeLog
  src/nsterm.m
  src/unexelf.c
  src/w32select.c
  src/w32term.h
=== modified file 'doc/emacs/ChangeLog'
--- a/doc/emacs/ChangeLog       2012-11-16 18:54:42 +0000
+++ b/doc/emacs/ChangeLog       2012-11-18 01:52:36 +0000
@@ -1,3 +1,7 @@
+2012-11-18  Dani Moncayo  <address@hidden>
+
+       * mark.texi (Disabled Transient Mark): Doc fixes (Bug#12746).
+
 2012-11-16  Eli Zaretskii  <address@hidden>
 
        * trouble.texi (Crashing): Add information about MS-Windows and

=== modified file 'doc/emacs/mark.texi'
--- a/doc/emacs/mark.texi       2012-05-27 01:25:06 +0000
+++ b/doc/emacs/mark.texi       2012-11-17 06:38:05 +0000
@@ -430,10 +430,6 @@
 point and the mark (@pxref{Setting Mark}).
 
 @item
-Many commands that move point long distances, like @kbd{M-<} and
address@hidden, first set the mark where point was.
-
address@hidden
 Some commands, which ordinarily act on the region when the mark is
 active, no longer do so.  For example, normally @kbd{M-%}
 (@code{query-replace}) performs replacements within the region, if the
@@ -455,9 +451,10 @@
 
 @item C-u C-x C-x
 @kindex C-u C-x C-x
-Activate the mark and enable Transient Mark mode temporarily, until
-the mark is next deactivated.  (This is the @kbd{C-x C-x} command,
address@hidden, with a prefix argument.)
+Exchange point and mark, activate the mark and enable Transient Mark
+mode temporarily, until the mark is next deactivated.  (This is the
address@hidden C-x} command, @code{exchange-point-and-mark}, with a prefix
+argument.)
 @end table
 
   These commands set or activate the mark, and enable Transient Mark

=== modified file 'doc/lispref/ChangeLog'
--- a/doc/lispref/ChangeLog     2012-11-16 17:20:23 +0000
+++ b/doc/lispref/ChangeLog     2012-11-18 01:52:36 +0000
@@ -1,3 +1,24 @@
+2012-11-18  Glenn Morris  <address@hidden>
+
+       * loading.texi (How Programs Do Loading): Add eager macro expansion.
+       * macros.texi (Expansion): Mention eager macro expansion.
+
+       * minibuf.texi (Basic Completion): Mention misc completion-table funcs.
+
+2012-11-18  Leo Liu  <address@hidden>
+
+       * minibuf.texi (Programmed Completion): Doc fix for metadata
+       request (Bug#12850).
+
+2012-11-18  Glenn Morris  <address@hidden>
+
+       * display.texi (Temporary Displays): Document with-temp-buffer-window.
+
+       * frames.texi (Size and Position): Add fit-frame-to-buffer command.
+       * windows.texi (Resizing Windows): Add fit-frame-to-buffer option.
+       (Window Sizes): Add vindex for window-min-height, window-min-width.
+       (Display Action Functions): Mention pop-up-frame-parameters.
+
 2012-11-16  Martin Rudalics  <address@hidden>
 
        * windows.texi (Choosing Window): Rewrite description of

=== modified file 'doc/lispref/display.texi'
--- a/doc/lispref/display.texi  2012-11-15 07:30:46 +0000
+++ b/doc/lispref/display.texi  2012-11-17 02:29:58 +0000
@@ -1078,7 +1078,8 @@
 This function executes @var{forms} while arranging to insert any output
 they print into the buffer named @var{buffer-name}, which is first
 created if necessary, and put into Help mode.  Finally, the buffer is
-displayed in some window, but not selected.
+displayed in some window, but not selected.  (See the similar
+form @code{with-temp-buffer-window} below.)
 
 If the @var{forms} do not change the major mode in the output buffer,
 so that it is still Help mode at the end of their execution, then
@@ -1152,6 +1153,37 @@
 is current, and the window it was displayed in is selected.
 @end defvar
 
address@hidden with-temp-buffer-window buffer-or-name action quit-function 
address@hidden
+This macro is similar to @code{with-output-to-temp-buffer}.
+Like that construct, it executes @var{forms} while arranging to insert
+any output they print into the buffer named @var{buffer-or-name}.
+Finally, the buffer is displayed in some window, but not selected.
+Unlike @code{with-output-to-temp-buffer}, this does not switch to Help
+mode.
+
+The argument @var{buffer-or-name} specifies the temporary buffer.
+It can be either a buffer, which must already exist, or a string,
+in which case a buffer of that name is created if necessary.
+The buffer is marked as unmodified and read-only when
address@hidden exits.
+
+This macro does not call @code{temp-buffer-show-function}.  Rather, it
+passes the @var{action} argument to @code{display-buffer} in order to
+display the buffer.
+
+The value of the last form in @var{forms} is returned, unless the
+argument @var{quit-function} is specified.  In that case,
+it is called with two arguments: the window showing the buffer
+and the result of @var{forms}.  The final return value is then
+whatever @var{quit-function} returns.
+
address@hidden temp-buffer-window-setup-hook
address@hidden temp-buffer-window-show-hook
+This macro uses the normal hooks @code{temp-buffer-window-setup-hook}
+and @code{temp-buffer-window-show-hook} in place of the analogous hooks
+run by @code{with-output-to-temp-buffer}.
address@hidden defmac
+
 @defun momentary-string-display string position &optional char message
 This function momentarily displays @var{string} in the current buffer at
 @var{position}.  It has no effect on the undo list or on the buffer's

=== modified file 'doc/lispref/frames.texi'
--- a/doc/lispref/frames.texi   2012-11-05 14:30:58 +0000
+++ b/doc/lispref/frames.texi   2012-11-17 01:33:26 +0000
@@ -1113,6 +1113,21 @@
 @code{set-frame-height}.
 @end defun
 
address@hidden FIXME?  Belongs more in Emacs manual than here?
address@hidden But eg fit-window-to-buffer is in this manual.
address@hidden Command fit-frame-to-buffer &optional frame max-height min-height
+This command adjusts the height of @var{frame} (the default is the
+selected frame) to fit its contents.  The optional arguments
address@hidden and @var{min-height} specify the maximum and minimum
+new frame heights, respectively.
+
address@hidden fit-frame-to-buffer-bottom-margin
+The default minimum height corresponds to @code{window-min-height}.
+The default maximum height is the screen height below the current top
+position of the frame, minus any margin specified by the option
address@hidden
address@hidden deffn
+
 @node Geometry
 @subsection Geometry
 

=== modified file 'doc/lispref/loading.texi'
--- a/doc/lispref/loading.texi  2012-10-31 20:59:04 +0000
+++ b/doc/lispref/loading.texi  2012-11-18 01:38:42 +0000
@@ -113,6 +113,25 @@
 character set translation just as Emacs would do when visiting the file.
 @xref{Coding Systems}.
 
address@hidden This is referred to from the Macros chapter.
address@hidden Not sure if it should be the other way round.
address@hidden eager macro expansion
+When loading an uncompiled file, Emacs tries to expand any macros
+that the file contains (@pxref{Macros}).  We refer to this as
address@hidden macro expansion}.  Doing this (rather than deferring
+the expansion until the relevant code runs) can significantly speed
+up the execution of uncompiled code.  Sometimes, this macro expansion
+cannot be done, owing to a cyclic dependency.  In the simplest
+example of this, the file you are loading refers to a macro defined
+in another file, and that file in turn requires the file you are
+loading.  This is generally harmless.  Emacs prints a warning
+(@samp{Eager macro-expansion skipped due to address@hidden)
+giving details of the problem, but it still loads the file, just
+leaving the macro unexpanded for now.  You may wish to restructure
+your code so that this does not happen.  Loading a compiled file does
+not cause macroexpansion, because this should already have happened
+during compilation.  @xref{Compiling Macros}.
+
 Messages like @samp{Loading foo...} and @samp{Loading foo...done} appear
 in the echo area during loading unless @var{nomessage} is
 address@hidden

=== modified file 'doc/lispref/macros.texi'
--- a/doc/lispref/macros.texi   2012-10-15 04:03:04 +0000
+++ b/doc/lispref/macros.texi   2012-11-18 01:38:42 +0000
@@ -86,6 +86,10 @@
 calls to other macros.  It may even be a call to the same macro, though
 this is unusual.
 
+  Note that Emacs tries to expand macros when loading an uncompiled
+Lisp file.  This is not always possible, but if it is, it speeds up
+subsequent execution.  @xref{How Programs Do Loading}.
+
   You can see the expansion of a given macro call by calling
 @code{macroexpand}.
 

=== modified file 'doc/lispref/minibuf.texi'
--- a/doc/lispref/minibuf.texi  2012-10-27 05:03:52 +0000
+++ b/doc/lispref/minibuf.texi  2012-11-17 23:29:29 +0000
@@ -886,6 +886,26 @@
 @end smallexample
 @end defmac
 
address@hidden FIXME?  completion-table-with-context?
address@hidden completion-table-case-fold
address@hidden completion-table-in-turn
address@hidden completion-table-subvert
address@hidden completion-table-with-quoting
address@hidden completion-table-with-predicate
address@hidden completion-table-with-terminator
address@hidden completion table, modifying
address@hidden completion tables, combining
+There are several functions that take an existing completion table and
+return a modified version.  @code{completion-table-case-fold} returns
+a case-insensitive table.  @code{completion-table-in-turn} combines
+multiple input tables.  @code{completion-table-subvert} alters a table
+to use a different initial prefix.  @code{completion-table-with-quoting}
+returns a table suitable for operating on quoted text.
address@hidden filters a table with a
+predicate function.  @code{completion-table-with-terminator} adds a
+terminating string.
+
+
 @node Minibuffer Completion
 @subsection Completion and the Minibuffer
 @cindex minibuffer completion
@@ -1710,8 +1730,9 @@
 
 @item metadata
 This specifies a request for information about the state of the
-current completion.  The function should return an alist, as described
-below.  The alist may contain any number of elements.
+current completion.  The return value should have the form
address@hidden(metadata . @var{alist})}, where @var{alist} is an alist whose
+elements are described below.
 @end table
 
 @noindent

=== modified file 'doc/lispref/windows.texi'
--- a/doc/lispref/windows.texi  2012-11-16 17:20:23 +0000
+++ b/doc/lispref/windows.texi  2012-11-18 01:52:36 +0000
@@ -490,6 +490,8 @@
 aliases are considered obsolete and will be removed in the future.
 
 @cindex fixed-size window
address@hidden window-min-height
address@hidden window-min-width
   Commands that change the size of windows (@pxref{Resizing Windows}),
 or split them (@pxref{Splitting Windows}), obey the variables
 @code{window-min-height} and @code{window-min-width}, which specify
@@ -633,6 +635,10 @@
 If the optional argument @var{override} is address@hidden, this
 function ignores any size restrictions imposed by
 @code{window-min-height} and @code{window-min-width}.
+
address@hidden fit-frame-to-buffer
+If the option @code{fit-frame-to-buffer} is address@hidden, this
+command may resize the frame to fit its contents.
 @end deffn
 
 @deffn Command shrink-window-if-larger-than-buffer &optional window
@@ -1926,7 +1932,9 @@
 This function creates a new frame, and displays the buffer in that
 frame's window.  It actually performs the frame creation by calling
 the function specified in @code{pop-up-frame-function}
-(@pxref{Choosing Window Options}).
+(@pxref{Choosing Window Options}).  If @var{alist} contains a
address@hidden entry, the associated value
+is added to the newly created frame's parameters.
 @end defun
 
 @defun display-buffer-pop-up-window buffer alist

=== modified file 'etc/NEWS'
--- a/etc/NEWS  2012-11-17 19:01:09 +0000
+++ b/etc/NEWS  2012-11-18 01:52:36 +0000
@@ -858,15 +858,10 @@
 *** New function `completion-table-with-quoting' to handle completion
 in the presence of quoting, such as file completion in shell buffers.
 
++++
 *** New function `completion-table-subvert' to use an existing completion
 table, but with a different prefix.
 
-FIXME?
-*** There are several other completion-table- functions that never got
-added to NEWS or documented: completion-table-case-fold (24.1),
-completion-table-with-context (23,1), completion-table-with-terminator (23.1),
-completion-table-with-predicate (23.1), completion-table-in-turn (23.1)
-
 ** Debugger changes
 
 +++
@@ -892,14 +887,19 @@
 +++
 *** Additional values recognized for option `window-combination-limit'.
 
-*** New macro `with-temp-buffer-window'.
++++
+*** New macro `with-temp-buffer-window', similar to
+`with-output-to-temp-buffer'.
 
+---
 *** `temp-buffer-resize-mode' no longer resizes windows that have been
 reused.
 
++++
 *** New command `fit-frame-to-buffer' adjusts the frame height to
 fit the contents.
 
++++
 *** The command `fit-window-to-buffer' can adjust the frame height
 if the new option `fit-frame-to-buffer' is non-nil.
 
@@ -909,11 +909,11 @@
 +++
 *** New display action functions `display-buffer-below-selected',
 and `display-buffer-in-previous-window'.
-
++++
 *** New display action alist entry `inhibit-switch-frame', if non-nil,
 tells display action functions to avoid changing which frame is
 selected.
-
++++
 *** New display action alist entry `pop-up-frame-parameters', if
 non-nil, specifies frame parameters to give any newly-created frame.
 +++
@@ -969,13 +969,14 @@
 on others.  The affected functions are acos, asin, tan, exp, expt,
 log, log10, sqrt, and mod.
 
-** Interpreted files are eagerly macro-expanded during load.
++++
+** Emacs tries to macroexpand interpreted (non-compiled) files during load.
 This can significantly speed up execution of non-byte-compiled code,
-but can also bump into harmless and previously unnoticed cyclic
-dependencies.  These should not be fatal: they will simply cause the
-macro-calls to be left for later expansion (as before), but will also
-result in a warning ("Eager macro-expansion skipped due to cycle")
-describing the cycle.
+but can also bump into previously unnoticed cyclic dependencies.
+These are generally harmless: they will simply cause the macro calls
+to be left for later expansion (as before), but will result in a
+warning ("Eager macro-expansion skipped due to cycle") describing the cycle.
+You may wish to restructure your code so this does not happen.
 
 ** Miscellaneous new functions:
 +++

=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2012-11-18 01:20:04 +0000
+++ b/lisp/ChangeLog    2012-11-18 01:52:36 +0000
@@ -1,3 +1,31 @@
+2012-11-18  Glenn Morris  <address@hidden>
+
+       * image.el (insert-image, insert-sliced-image): Doc fix.
+
+2012-11-18  Chong Yidong  <address@hidden>
+
+       * emacs-lisp/syntax.el (syntax-propertize-function): Doc fix
+       (Bug#12810).
+
+2012-11-18  OKAZAKI Tetsurou  <address@hidden>  (tiny change)
+
+       * vc/vc-svn.el (vc-svn-merge-news): Properly parse the merge
+       response when the target file is in a subdirectory (Bug#12757).
+
+2012-11-18  Chong Yidong  <address@hidden>
+
+       * filecache.el (file-cache-add-file-list): Doc fix (Bug#12694).
+
+2012-11-18  Glenn Morris  <address@hidden>
+
+       * woman.el (woman-non-underline-faces):
+       * emacs-lisp/cl-lib.el (face-underline-p):
+       Use set-face-underline rather than the alias set-face-underline-p.
+
+       * window.el (with-temp-buffer-window): Doc fix.
+       * subr.el (with-output-to-temp-buffer):
+       Add doc xref to with-temp-buffer-window.
+
 2012-11-18  Juanma Barranquero  <address@hidden>
 
        * woman.el (woman-non-underline-faces): Use `set-face-underline'.

=== modified file 'lisp/emacs-lisp/cl-lib.el'
--- a/lisp/emacs-lisp/cl-lib.el 2012-11-16 17:20:23 +0000
+++ b/lisp/emacs-lisp/cl-lib.el 2012-11-18 01:52:36 +0000
@@ -661,7 +661,7 @@
 (gv-define-setter face-foreground (x f &optional s)
   `(set-face-foreground ,f ,x ,s))
 (gv-define-setter face-underline-p (x f &optional s)
-  `(set-face-underline-p ,f ,x ,s))
+  `(set-face-underline ,f ,x ,s))
 (gv-define-simple-setter file-modes set-file-modes t)
 (gv-define-simple-setter frame-height set-screen-height t)
 (gv-define-simple-setter frame-parameters modify-frame-parameters t)

=== modified file 'lisp/emacs-lisp/syntax.el'
--- a/lisp/emacs-lisp/syntax.el 2012-06-23 15:38:23 +0000
+++ b/lisp/emacs-lisp/syntax.el 2012-11-17 07:33:01 +0000
@@ -55,12 +55,18 @@
   ;; have to flush that cache between each function, and we couldn't use
   ;; syntax-ppss-flush-cache since that would not only flush the cache but also
   ;; reset syntax-propertize--done which should not be done in this case).
-  "Mode-specific function to apply the syntax-table properties.
-Called with two arguments: START and END.
-This function can call `syntax-ppss' on any position before END, but it
-should not call `syntax-ppss-flush-cache', which means that it should not
-call `syntax-ppss' on some position and later modify the buffer on some
-earlier position.")
+  "Mode-specific function to apply `syntax-table' text properties.
+The value of this variable is a function to be called by Font
+Lock mode, prior to performing syntactic fontification on a
+stretch of text.  It is given two arguments, START and END: the
+start and end of the text to be fontified.  Major modes can
+specify a custom function to apply `syntax-table' properties to
+override the default syntax table in special cases.
+
+The specified function may call `syntax-ppss' on any position
+before END, but it should not call `syntax-ppss-flush-cache',
+which means that it should not call `syntax-ppss' on some
+position and later modify the buffer on some earlier position.")
 
 (defvar syntax-propertize-chunk-size 500)
 
@@ -118,7 +124,7 @@
 The return value is an object that can be passed as a rule to
 `syntax-propertize-rules'.
 I.e. this is useful only when you want to share rules among several
-syntax-propertize-functions."
+`syntax-propertize-function's."
   (declare (debug syntax-propertize-rules))
   ;; Precompile?  Yeah, right!
   ;; Seriously, tho, this is a macro for 2 reasons:

=== modified file 'lisp/filecache.el'
--- a/lisp/filecache.el 2012-11-17 06:16:46 +0000
+++ b/lisp/filecache.el 2012-11-18 01:52:36 +0000
@@ -300,7 +300,9 @@
    directory-list))
 
 (defun file-cache-add-file-list  (file-list)
-  "Add FILE-LIST (a list of files names) to the file cache."
+  "Add FILE-LIST (a list of file names) to the file cache.
+Interactively, FILE-LIST is read as a Lisp expression, which
+should evaluate to the desired list of file names."
   (interactive "XFile List: ")
   (mapcar 'file-cache-add-file file-list))
 

=== modified file 'lisp/image.el'
--- a/lisp/image.el     2012-11-02 22:41:35 +0000
+++ b/lisp/image.el     2012-11-18 01:52:36 +0000
@@ -429,7 +429,7 @@
   "Insert IMAGE into current buffer at point.
 IMAGE is displayed by inserting STRING into the current buffer
 with a `display' property whose value is the image.  STRING
-defaults to the empty string if you omit it.
+defaults to a single space if you omit it.
 AREA is where to display the image.  AREA nil or omitted means
 display it in the text area, a value of `left-margin' means
 display it in the left marginal area, a value of `right-margin'
@@ -467,8 +467,8 @@
 (defun insert-sliced-image (image &optional string area rows cols)
   "Insert IMAGE into current buffer at point.
 IMAGE is displayed by inserting STRING into the current buffer
-with a `display' property whose value is the image.  STRING is
-defaulted if you omit it.
+with a `display' property whose value is the image.  The default
+STRING is a single space.
 AREA is where to display the image.  AREA nil or omitted means
 display it in the text area, a value of `left-margin' means
 display it in the left marginal area, a value of `right-margin'

=== modified file 'lisp/subr.el'
--- a/lisp/subr.el      2012-11-16 17:20:23 +0000
+++ b/lisp/subr.el      2012-11-18 01:52:36 +0000
@@ -3189,6 +3189,7 @@
   ;; Return nil.
   nil)
 
+;; Doc is very similar to with-temp-buffer-window.
 (defmacro with-output-to-temp-buffer (bufname &rest body)
   "Bind `standard-output' to buffer BUFNAME, eval BODY, then show that buffer.
 
@@ -3214,7 +3215,9 @@
 `temp-buffer-show-hook' after displaying buffer BUFNAME, with that
 buffer temporarily current, and the window that was used to display it
 temporarily selected.  But it doesn't run `temp-buffer-show-hook'
-if it uses `temp-buffer-show-function'."
+if it uses `temp-buffer-show-function'.
+
+See the related form `with-temp-buffer-window'."
   (declare (debug t))
   (let ((old-dir (make-symbol "old-dir"))
         (buf (make-symbol "buf")))

=== modified file 'lisp/url/url-parse.el'
--- a/lisp/url/url-parse.el     2012-09-25 04:13:02 +0000
+++ b/lisp/url/url-parse.el     2012-11-17 06:48:51 +0000
@@ -48,7 +48,7 @@
 
 (defun url-path-and-query (urlobj)
   "Return the path and query components of URLOBJ.
-These two components are store together in the FILENAME slot of
+These two components are stored together in the FILENAME slot of
 the object.  The return value of this function is (PATH . QUERY),
 where each of PATH and QUERY are strings or nil."
   (let ((name (url-filename urlobj))

=== modified file 'lisp/vc/vc-svn.el'
--- a/lisp/vc/vc-svn.el 2012-11-04 04:13:13 +0000
+++ b/lisp/vc/vc-svn.el 2012-11-18 01:52:36 +0000
@@ -414,7 +414,7 @@
                ;; We also used to match the filename in column 0 without any
                ;; meta-info before it, but I believe this can never happen.
                (concat "^\\(\\([ACGDU]\\)\\(.[B ]\\)?  \\)"
-                       (regexp-quote (file-name-nondirectory file)))
+                      (regexp-quote (file-relative-name file)))
                nil t)
               (cond
                ;; Merge successful, we are in sync with repository now

=== modified file 'lisp/window.el'
--- a/lisp/window.el    2012-11-16 10:29:48 +0000
+++ b/lisp/window.el    2012-11-17 02:03:58 +0000
@@ -142,41 +142,46 @@
        ;; Return the window.
        window))))
 
+;; Doc is very similar to with-output-to-temp-buffer.
 (defmacro with-temp-buffer-window (buffer-or-name action quit-function &rest 
body)
-  "Evaluate BODY and display the buffer specified by BUFFER-OR-NAME.
+  "Bind `standard-output' to BUFFER-OR-NAME, eval BODY, show the buffer.
 BUFFER-OR-NAME must specify either a live buffer, or the name of a
 buffer (if it does not exist, this macro creates it).
 
-Make sure the specified buffer is empty before evaluating BODY.
-Do not make that buffer current for BODY.  Instead, bind
-`standard-output' to that buffer, so that output generated with
-`prin1' and similar functions in BODY goes into that buffer.
-
-After evaluating BODY, this marks the specified buffer unmodified and
-read-only, and displays it in a window via `display-buffer', passing
-ACTION as the action argument to `display-buffer'.  It automatically
-shrinks the relevant window if `temp-buffer-resize-mode' is enabled.
-
-Returns the value returned by BODY, unless QUIT-FUNCTION specifies
-a function.  In that case, runs the function with two arguments -
+This construct makes buffer BUFFER-OR-NAME empty before running BODY.
+It does not make the buffer current for BODY.
+Instead it binds `standard-output' to that buffer, so that output
+generated with `prin1' and similar functions in BODY goes into
+the buffer.
+
+At the end of BODY, this marks the specified buffer unmodified and
+read-only, and displays it in a window (but does not select it, or make
+the buffer current).  The display happens by calling `display-buffer'
+with the ACTION argument.  If `temp-buffer-resize-mode' is enabled,
+the relevant window shrinks automatically.
+
+This returns the value returned by BODY, unless QUIT-FUNCTION specifies
+a function.  In that case, it runs the function with two arguments -
 the window showing the specified buffer and the value returned by
 BODY - and returns the value returned by that function.
 
 If the buffer is displayed on a new frame, the window manager may
 decide to select that frame.  In that case, it's usually a good
-strategy if the function specified by QUIT-FUNCTION selects the
-window showing the buffer before reading a value from the
-minibuffer; for example, when asking a `yes-or-no-p' question.
-
-This construct is similar to `with-output-to-temp-buffer', but does
-not put the buffer in help mode, or call `temp-buffer-show-function'.
-It also runs different hooks, namely `temp-buffer-window-setup-hook'
-\(with the specified buffer current) and `temp-buffer-window-show-hook'
-\(with the specified buffer current and the window showing it selected).
-
-Since this macro calls `display-buffer', the window displaying
-the buffer is usually not selected and the specified buffer
-usually not made current.  QUIT-FUNCTION can override that."
+strategy if QUIT-FUNCTION selects the window showing the buffer
+before reading any value from the minibuffer; for example, when
+asking a `yes-or-no-p' question.
+
+This runs the hook `temp-buffer-window-setup-hook' before BODY,
+with the specified buffer temporarily current.  It runs the
+hook `temp-buffer-window-show-hook' after displaying the buffer,
+with that buffer temporarily current, and the window that was used to
+display it temporarily selected.
+
+This construct is similar to `with-output-to-temp-buffer', but
+runs different hooks.  In particular, it does not run
+`temp-buffer-setup-hook', which usually puts the buffer in Help mode.
+Also, it does not call `temp-buffer-show-function' (the ACTION
+argument replaces this)."
   (declare (debug t))
   (let ((buffer (make-symbol "buffer"))
        (window (make-symbol "window"))

=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2012-11-18 01:12:17 +0000
+++ b/src/ChangeLog     2012-11-18 01:52:36 +0000
@@ -1,3 +1,25 @@
+2012-11-18  Eli Zaretskii  <address@hidden>
+
+       * w32select.c: Include w32common.h before w32term.h, so that
+       windows.h gets included before w32term.h uses some of its
+       features, see below.
+
+       * w32term.h (LOCALE_ENUMPROCA, LOCALE_ENUMPROCW) [_MSC_VER]: New
+       typedefs.
+       (EnumSystemLocalesA, EnumSystemLocalesW) [_MSC_VER]: New
+       prototypes.
+       (EnumSystemLocales) [_MSC_VER]: Define if undefined.  (Bug#12878)
+
+2012-11-18  Jan Djärv  <address@hidden>
+
+       * nsterm.m (hold_event): Set send_appdefined to YES (Bug#12834).
+       (ns_select): Return at once if events are held (Bug#12834).
+
+2012-11-18  enami tsugutomo  <address@hidden>
+
+       * unexelf.c (ELFSIZE) [__NetBSD__ && _LP64]: Set to 64.
+       Needed following 2012-10-20 change.  (Bug#12902)
+
 2012-11-18  Juanma Barranquero  <address@hidden>
 
        * w32proc.c (waitpid): Remove unused label get_result.

=== modified file 'src/nsterm.m'
--- a/src/nsterm.m      2012-11-17 22:12:47 +0000
+++ b/src/nsterm.m      2012-11-18 01:52:36 +0000
@@ -330,6 +330,7 @@
   hold_event_q.q[hold_event_q.nr++] = *event;
   /* Make sure ns_read_socket is called, i.e. we have input.  */
   raise (SIGIO);
+  send_appdefined = YES;
 }
 
 static Lisp_Object
@@ -3461,6 +3462,14 @@
 
 /*  NSTRACE (ns_select); */
 
+  if (hold_event_q.nr > 0) 
+    {
+      /* We already have events pending. */
+      kill (0, SIGIO);
+      errno = EINTR;
+      return -1;
+    }
+
   for (k = 0; k < nfds+1; k++)
     {
       if (readfds && FD_ISSET(k, readfds)) ++nr;

=== modified file 'src/unexelf.c'
--- a/src/unexelf.c     2012-10-20 21:30:51 +0000
+++ b/src/unexelf.c     2012-11-16 18:41:00 +0000
@@ -461,7 +461,7 @@
 /*
  * NetBSD does not have normal-looking user-land ELF support.
  */
-# if defined __alpha__ || defined __sparc_v9__
+# if defined __alpha__ || defined __sparc_v9__ || defined _LP64
 #  define ELFSIZE      64
 # else
 #  define ELFSIZE      32

=== modified file 'src/w32select.c'
--- a/src/w32select.c   2012-10-11 00:32:25 +0000
+++ b/src/w32select.c   2012-11-17 18:51:06 +0000
@@ -74,8 +74,8 @@
 
 #include <config.h>
 #include "lisp.h"
+#include "w32common.h" /* os_subtype */
 #include "w32term.h"   /* for all of the w32 includes */
-#include "w32common.h" /* os_subtype */
 #include "keyboard.h"
 #include "blockinput.h"
 #include "charset.h"

=== modified file 'src/w32term.h'
--- a/src/w32term.h     2012-11-09 14:45:15 +0000
+++ b/src/w32term.h     2012-11-18 01:52:36 +0000
@@ -745,6 +745,21 @@
 extern int w32_system_caret_x;
 extern int w32_system_caret_y;
 
+#ifdef _MSC_VER
+#ifndef EnumSystemLocales
+/* MSVC headers define these only for _WIN32_WINNT >= 0x0500.  */
+typedef BOOL (CALLBACK *LOCALE_ENUMPROCA)(LPSTR);
+typedef BOOL (CALLBACK *LOCALE_ENUMPROCW)(LPWSTR);
+BOOL WINAPI EnumSystemLocalesA(LOCALE_ENUMPROCA,DWORD);
+BOOL WINAPI EnumSystemLocalesW(LOCALE_ENUMPROCW,DWORD)
+#ifdef UNICODE
+#define EnumSystemLocales EnumSystemLocalesW
+#else
+#define EnumSystemLocales EnumSystemLocalesA
+#endif
+#endif
+#endif
+
 #if EMACSDEBUG
 extern const char*
 w32_name_of_message (UINT msg);


reply via email to

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