From 86dcf21c0749f699678e42a605044d99de36dd28 Mon Sep 17 00:00:00 2001 From: enami tsugutomo Date: Fri, 16 Nov 2012 13:41:00 -0500 Subject: [PATCH 01/21] * src/unexelf.c (ELFSIZE) [__NetBSD__ && _LP64]: Set to 64 Needed following 2012-10-20 change. Fixes: debbugs:12902 --- src/ChangeLog | 5 +++++ src/unexelf.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/ChangeLog b/src/ChangeLog index b218e42b3f2..64adec7491a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-11-16 enami tsugutomo + + * unexelf.c (ELFSIZE) [__NetBSD__ && _LP64]: Set to 64. + Needed following 2012-10-20 change. (Bug#12902) + 2012-11-16 Glenn Morris * editfns.c (Fmessage): Mention message-log-max. (Bug#12849) diff --git a/src/unexelf.c b/src/unexelf.c index 121e6042fc9..b9f8e05e959 100644 --- a/src/unexelf.c +++ b/src/unexelf.c @@ -461,7 +461,7 @@ typedef struct { /* * 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 From 65463c4091fe92fd09295bcbbc38dcd18fa41a16 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Fri, 16 Nov 2012 20:26:24 -0500 Subject: [PATCH 02/21] * lisp/window.el (with-temp-buffer-window): Doc fix. --- lisp/ChangeLog | 4 ++++ lisp/window.el | 25 ++++++++++++------------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 343ea621e9e..416f0d0ec47 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,7 @@ +2012-11-17 Glenn Morris + + * window.el (with-temp-buffer-window): Doc fix. + 2012-11-16 Stefan Monnier * emacs-lisp/cl-lib.el: Set more meaningful version number. diff --git a/lisp/window.el b/lisp/window.el index 9ac3a4ecda0..486bb166fc1 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -147,12 +147,12 @@ to `display-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. +This first empties the specified buffer. It does not make the +buffer current, but rather binds `standard-output', so that +output generated with `prin1' and similar functions in BODY goes +into the buffer. -After evaluating BODY, this marks the specified buffer unmodified and +After evaluating BODY, it 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. @@ -162,21 +162,20 @@ a function. In that case, 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. +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. 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. +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 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." +\(with the specified buffer current and the window showing it selected)." (declare (debug t)) (let ((buffer (make-symbol "buffer")) (window (make-symbol "window")) From 9a5e2ee3cc86be6b052cba7033a24a8418a263f1 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Fri, 16 Nov 2012 20:29:24 -0500 Subject: [PATCH 03/21] Use set-face-underline rather than the alias set-face-underline-p * lisp/woman.el (woman-non-underline-faces): * lisp/emacs-lisp/cl-lib.el (face-underline-p): Use set-face-underline rather than the alias set-face-underline-p. --- lisp/ChangeLog | 4 ++++ lisp/emacs-lisp/cl-lib.el | 2 +- lisp/woman.el | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 416f0d0ec47..e67bc5b556c 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,9 @@ 2012-11-17 Glenn Morris + * 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. 2012-11-16 Stefan Monnier diff --git a/lisp/emacs-lisp/cl-lib.el b/lisp/emacs-lisp/cl-lib.el index 9515c6fd12f..7b22c7aac41 100644 --- a/lisp/emacs-lisp/cl-lib.el +++ b/lisp/emacs-lisp/cl-lib.el @@ -661,7 +661,7 @@ If ALIST is non-nil, the new pairs are prepended to it." (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) diff --git a/lisp/woman.el b/lisp/woman.el index 974a7d72465..a1836cdff0e 100644 --- a/lisp/woman.el +++ b/lisp/woman.el @@ -2191,7 +2191,7 @@ To be called on original buffer and any .so insertions." (face-underline-p face)) (let ((face-no-ul (intern (concat face-name "-no-ul")))) (copy-face face face-no-ul) - (set-face-underline-p face-no-ul nil))))))) + (set-face-underline face-no-ul nil))))))) ;; Preprocessors ;; ============= From 6439ae19665a12bd0a88a4a0fb7f38fa8c47504d Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Fri, 16 Nov 2012 20:33:26 -0500 Subject: [PATCH 04/21] Document fit-frame-to-buffer * doc/lispref/frames.texi (Size and Position): Add fit-frame-to-buffer command. * doc/lispref/windows.texi (Resizing Windows): Add fit-frame-to-buffer option. (Window Sizes): Add vindex for window-min-height, window-min-width. * etc/NEWS: Related markup. --- doc/lispref/ChangeLog | 6 ++++++ doc/lispref/frames.texi | 15 +++++++++++++++ doc/lispref/windows.texi | 6 ++++++ etc/NEWS | 3 +++ 4 files changed, 30 insertions(+) diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index 062692ee9f3..b7baac9c2fe 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog @@ -1,3 +1,9 @@ +2012-11-17 Glenn Morris + + * 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. + 2012-11-16 Martin Rudalics * windows.texi (Choosing Window): Rewrite description of diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi index 27d55c4fdb9..846dfbaf17c 100644 --- a/doc/lispref/frames.texi +++ b/doc/lispref/frames.texi @@ -1113,6 +1113,21 @@ The argument @var{pretend} has the same meaning as in @code{set-frame-height}. @end defun +@c FIXME? Belongs more in Emacs manual than here? +@c But eg fit-window-to-buffer is in this manual. +@deffn 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 +@var{max-height} and @var{min-height} specify the maximum and minimum +new frame heights, respectively. + +@vindex 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 +@code{fit-frame-to-buffer-bottom-margin}. +@end deffn + @node Geometry @subsection Geometry diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi index 77f1ff9a179..9a5c7f053e6 100644 --- a/doc/lispref/windows.texi +++ b/doc/lispref/windows.texi @@ -490,6 +490,8 @@ partially-visible line at the bottom of the text area is not counted. aliases are considered obsolete and will be removed in the future. @cindex fixed-size window +@vindex window-min-height +@vindex 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 @@ variable @code{window-min-height}. If the optional argument @var{override} is non-@code{nil}, this function ignores any size restrictions imposed by @code{window-min-height} and @code{window-min-width}. + +@vindex fit-frame-to-buffer +If the option @code{fit-frame-to-buffer} is non-@code{nil}, this +command may resize the frame to fit its contents. @end deffn @deffn Command shrink-window-if-larger-than-buffer &optional window diff --git a/etc/NEWS b/etc/NEWS index 3bd4ebae4fa..a951677bd1d 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -848,12 +848,15 @@ now accept a third argument to avoid choosing the selected window. *** New macro `with-temp-buffer-window'. +--- *** `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. From 95f0501e74d997dab47ae043e78c9d147d0c7e89 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Fri, 16 Nov 2012 21:03:58 -0500 Subject: [PATCH 05/21] Reword previous with-temp-buffer-window doc fixes * lisp/window.el (with-temp-buffer-window): Reword the doc to be more similar to with-output-to-temp-buffer. * lisp/subr.el (with-output-to-temp-buffer): Add doc xref to with-temp-buffer-window. --- lisp/ChangeLog | 2 ++ lisp/subr.el | 5 ++++- lisp/window.el | 44 +++++++++++++++++++++++++------------------- 3 files changed, 31 insertions(+), 20 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index e67bc5b556c..64075665bab 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -5,6 +5,8 @@ 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-16 Stefan Monnier diff --git a/lisp/subr.el b/lisp/subr.el index bb142e8680f..2088c7887b3 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -3188,6 +3188,7 @@ in which case `save-window-excursion' cannot help." ;; 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. @@ -3213,7 +3214,9 @@ with the buffer BUFNAME temporarily current. It runs the hook `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"))) diff --git a/lisp/window.el b/lisp/window.el index 486bb166fc1..d378ea5ff14 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -142,40 +142,46 @@ to `display-buffer'." ;; 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). -This first empties the specified buffer. It does not make the -buffer current, but rather binds `standard-output', so that -output generated with `prin1' and similar functions in BODY goes -into the buffer. +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. -After evaluating BODY, it 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. +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. -Returns the value returned by BODY, unless QUIT-FUNCTION specifies -a function. In that case, runs the function with two arguments - +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. -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. 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 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 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)." +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")) From 7fe37cfcce719480da3bafd2e7f1346c2f44b22e Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Fri, 16 Nov 2012 21:29:58 -0500 Subject: [PATCH 06/21] * display.texi (Temporary Displays): Document with-temp-buffer-window. * etc/NEWS: Related edit. --- doc/lispref/ChangeLog | 2 ++ doc/lispref/display.texi | 34 +++++++++++++++++++++++++++++++++- etc/NEWS | 4 +++- 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index b7baac9c2fe..6726c6d2ad0 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog @@ -1,5 +1,7 @@ 2012-11-17 Glenn Morris + * 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. diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi index 9fedd162da6..475a9550f99 100644 --- a/doc/lispref/display.texi +++ b/doc/lispref/display.texi @@ -1078,7 +1078,8 @@ editing. Many help commands use this feature. 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 @@ displaying the temporary buffer. When the hook runs, the temporary buffer is current, and the window it was displayed in is selected. @end defvar +@defmac with-temp-buffer-window buffer-or-name action quit-function forms@dots{} +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 +@code{with-temp-buffer-window} 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. + +@vindex temp-buffer-window-setup-hook +@vindex 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}. +@end 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 diff --git a/etc/NEWS b/etc/NEWS index a951677bd1d..d040ba7ddf8 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -846,7 +846,9 @@ now accept a third argument to avoid choosing the selected window. +++ *** 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 From 2279276c8415433b73d6ac62df9319fbcc097746 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Fri, 16 Nov 2012 19:33:34 -0800 Subject: [PATCH 07/21] * frames.texi (Display Action Functions): Mention pop-up-frame-parameters. * etc/NEWS: Related markup. --- doc/lispref/ChangeLog | 1 + doc/lispref/windows.texi | 4 +++- etc/NEWS | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index 6726c6d2ad0..32aca367546 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog @@ -5,6 +5,7 @@ * 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 diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi index 9a5c7f053e6..439e807260f 100644 --- a/doc/lispref/windows.texi +++ b/doc/lispref/windows.texi @@ -1932,7 +1932,9 @@ entry (@pxref{Choosing Window Options}), raises that frame if necessary. 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 +@code{pop-up-frame-parameters} entry, the associated value +is added to the newly created frame's parameters. @end defun @defun display-buffer-pop-up-window buffer alist diff --git a/etc/NEWS b/etc/NEWS index d040ba7ddf8..068fc5a809d 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -868,11 +868,11 @@ window's point when switching buffers. +++ *** 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. +++ From 33f8917c078dd5abcc531b8273939ce276e26819 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Sat, 17 Nov 2012 14:09:49 +0800 Subject: [PATCH 08/21] * filecache.el (file-cache-add-file-list): Doc fix. Fixes: debbugs:12694 --- lisp/ChangeLog | 4 ++++ lisp/filecache.el | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 64075665bab..0a9b22ebfff 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,7 @@ +2012-11-17 Chong Yidong + + * filecache.el (file-cache-add-file-list): Doc fix (Bug#12694). + 2012-11-17 Glenn Morris * woman.el (woman-non-underline-faces): diff --git a/lisp/filecache.el b/lisp/filecache.el index 10e23bddca2..422b33f5dcb 100644 --- a/lisp/filecache.el +++ b/lisp/filecache.el @@ -303,7 +303,9 @@ files in each directory, not to the directory list itself." 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)) From 0a27d94c9b7313f74b2b87c04b78379cb3dbcedb Mon Sep 17 00:00:00 2001 From: Dani Moncayo Date: Sat, 17 Nov 2012 14:38:05 +0800 Subject: [PATCH 09/21] * mark.texi (Disabled Transient Mark): Doc fixes. Fixes: debbugs:12746 --- doc/emacs/ChangeLog | 4 ++++ doc/emacs/mark.texi | 11 ++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog index 45d4377f34a..5f8a252b5d6 100644 --- a/doc/emacs/ChangeLog +++ b/doc/emacs/ChangeLog @@ -1,3 +1,7 @@ +2012-11-17 Dani Moncayo + + * mark.texi (Disabled Transient Mark): Doc fixes (Bug#12746). + 2012-11-12 Chong Yidong * building.texi (Multithreaded Debugging): gdb-stopped-hooks is diff --git a/doc/emacs/mark.texi b/doc/emacs/mark.texi index 83d519a4cd2..db191eb175c 100644 --- a/doc/emacs/mark.texi +++ b/doc/emacs/mark.texi @@ -429,10 +429,6 @@ soon, before you forget where it is. You can also check where the mark is by using @kbd{C-x C-x}, which exchanges the positions of the point and the mark (@pxref{Setting Mark}). -@item -Many commands that move point long distances, like @kbd{M-<} and -@kbd{C-s}, first set the mark where point was. - @item Some commands, which ordinarily act on the region when the mark is active, no longer do so. For example, normally @kbd{M-%} @@ -455,9 +451,10 @@ command twice.) @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, -@code{exchange-point-and-mark}, 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 +@kbd{C-x 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 From eaf5afb7478ca0eb1a89286e2bb73bf578fbc638 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Sat, 17 Nov 2012 14:48:51 +0800 Subject: [PATCH 10/21] * url-parse.el (url-path-and-query): Minor doc fix. --- lisp/url/url-parse.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/url/url-parse.el b/lisp/url/url-parse.el index cb61a021251..2efabed5cd8 100644 --- a/lisp/url/url-parse.el +++ b/lisp/url/url-parse.el @@ -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)) From c2d075572cdd9973f91805e55f57511ba58e1ec4 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Sat, 17 Nov 2012 15:06:57 +0800 Subject: [PATCH 11/21] Fix for vc-svn-merge-news. * vc/vc-svn.el (vc-svn-merge-news): Properly parse the merge response when the target file is in a subdirectory. Fixes: debbugs:12757 --- lisp/ChangeLog | 5 +++++ lisp/vc/vc-svn.el | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 0a9b22ebfff..75e09bff2a0 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2012-11-17 OKAZAKI Tetsurou (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-17 Chong Yidong * filecache.el (file-cache-add-file-list): Doc fix (Bug#12694). diff --git a/lisp/vc/vc-svn.el b/lisp/vc/vc-svn.el index 6c2367c7ba6..5142d252982 100644 --- a/lisp/vc/vc-svn.el +++ b/lisp/vc/vc-svn.el @@ -399,7 +399,7 @@ The changes are between FIRST-VERSION and SECOND-VERSION." ;; 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 From ec6f8ce637707a932574eeddfb543f0fb816f867 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Sat, 17 Nov 2012 15:33:01 +0800 Subject: [PATCH 12/21] * lisp/emacs-lisp/syntax.el (syntax-propertize-function): Doc fix. Fixes: debbugs:12810 --- lisp/ChangeLog | 5 +++++ lisp/emacs-lisp/syntax.el | 20 +++++++++++++------- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 75e09bff2a0..04eec6feab3 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2012-11-17 Chong Yidong + + * emacs-lisp/syntax.el (syntax-propertize-function): Doc fix + (Bug#12810). + 2012-11-17 OKAZAKI Tetsurou (tiny change) * vc/vc-svn.el (vc-svn-merge-news): Properly parse the merge diff --git a/lisp/emacs-lisp/syntax.el b/lisp/emacs-lisp/syntax.el index c3d78b3444b..592cb1b0174 100644 --- a/lisp/emacs-lisp/syntax.el +++ b/lisp/emacs-lisp/syntax.el @@ -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 arg RULES can be of the same form as in `syntax-propertize-rules'. 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: From 74ca4d394be5ea982419b5a0203426b78cb5cc0c Mon Sep 17 00:00:00 2001 From: Leo Liu Date: Sat, 17 Nov 2012 15:45:52 +0800 Subject: [PATCH 13/21] * minibuf.texi (Programmed Completion): Doc fix for metadata request. Fixes: debbugs:12850 --- doc/lispref/ChangeLog | 5 +++++ doc/lispref/minibuf.texi | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index 32aca367546..3aa947d22b7 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog @@ -1,3 +1,8 @@ +2012-11-17 Leo Liu + + * minibuf.texi (Programmed Completion): Doc fix for metadata + request (Bug#12850). + 2012-11-17 Glenn Morris * display.texi (Temporary Displays): Document with-temp-buffer-window. diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi index 7243f46b882..d1cc33b9f07 100644 --- a/doc/lispref/minibuf.texi +++ b/doc/lispref/minibuf.texi @@ -1710,8 +1710,9 @@ string, and @var{end} is the position of the end boundary in @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 +@code{(metadata . @var{alist})}, where @var{alist} is an alist whose +elements are described below. @end table @noindent From 7436fc63c0c24eb7fee800176c387db87f51de50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Dj=C3=A4rv?= Date: Sat, 17 Nov 2012 16:28:56 +0100 Subject: [PATCH 14/21] * nsterm.m (hold_event): Set send_appdefined to YES. (ns_select): Return at once if events are held (Bug#12834). --- src/ChangeLog | 5 +++++ src/nsterm.m | 9 +++++++++ 2 files changed, 14 insertions(+) diff --git a/src/ChangeLog b/src/ChangeLog index 64adec7491a..d88e43b2b7f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-11-17 Jan Djärv + + * nsterm.m (hold_event): Set send_appdefined to YES (Bug#12834). + (ns_select): Return at once if events are held (Bug#12834). + 2012-11-16 enami tsugutomo * unexelf.c (ELFSIZE) [__NetBSD__ && _LP64]: Set to 64. diff --git a/src/nsterm.m b/src/nsterm.m index f4982e0a7cb..9d52bd7f52b 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -314,6 +314,7 @@ Updated by Christian Limpach (chris@nice.ch) hold_event_q.q[hold_event_q.nr++] = *event; /* Make sure ns_read_socket is called, i.e. we have input. */ kill (0, SIGIO); + send_appdefined = YES; } static Lisp_Object @@ -3445,6 +3446,14 @@ overwriting cursor (usually when cursor on a tab) */ /* 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; From d8715cdf90538fa8abd3e2c23ed2efd23c4253c1 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sat, 17 Nov 2012 20:51:06 +0200 Subject: [PATCH 15/21] Fix bug #12878 with compilation failure with Visual C++ 11.0. src/w32select.c: Include w32common.h before w32term.h, so that windows.h gets included before w32term.h uses some of its features, see below. src/w32term.h (LOCALE_ENUMPROCA, LOCALE_ENUMPROCW) [_MSC_VER]: New typedefs. (EnumSystemLocalesA, EnumSystemLocalesW) [_MSC_VER]: New prototypes. (EnumSystemLocales) [_MSC_VER]: Define if undefined. --- src/ChangeLog | 12 ++++++++++++ src/w32select.c | 2 +- src/w32term.h | 15 +++++++++++++++ 3 files changed, 28 insertions(+), 1 deletion(-) diff --git a/src/ChangeLog b/src/ChangeLog index d88e43b2b7f..c12eff19ddd 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,15 @@ +2012-11-17 Eli Zaretskii + + * 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-17 Jan Djärv * nsterm.m (hold_event): Set send_appdefined to YES (Bug#12834). diff --git a/src/w32select.c b/src/w32select.c index 1b10c74cfe9..6a2a840f914 100644 --- a/src/w32select.c +++ b/src/w32select.c @@ -74,8 +74,8 @@ along with GNU Emacs. If not, see . */ #include #include "lisp.h" -#include "w32term.h" /* for all of the w32 includes */ #include "w32common.h" /* os_subtype */ +#include "w32term.h" /* for all of the w32 includes */ #include "keyboard.h" #include "blockinput.h" #include "charset.h" diff --git a/src/w32term.h b/src/w32term.h index af5b37a1171..6e30d374c82 100644 --- a/src/w32term.h +++ b/src/w32term.h @@ -752,6 +752,21 @@ extern int w32_system_caret_height; 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); From a045a16773e4953e2a68f060f9245d044ee5e345 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sat, 17 Nov 2012 14:45:24 -0800 Subject: [PATCH 16/21] * minibuf.texi (Basic Completion): Mention misc completion-table funcs. * etc/NEWS: Related edit. --- doc/lispref/ChangeLog | 4 ++++ doc/lispref/minibuf.texi | 17 +++++++++++++++++ etc/NEWS | 7 +------ 3 files changed, 22 insertions(+), 6 deletions(-) diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index 3aa947d22b7..da82ece39c1 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog @@ -1,3 +1,7 @@ +2012-11-17 Glenn Morris + + * minibuf.texi (Basic Completion): Mention misc completion-table funcs. + 2012-11-17 Leo Liu * minibuf.texi (Programmed Completion): Doc fix for metadata diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi index d1cc33b9f07..2c0fcc88f56 100644 --- a/doc/lispref/minibuf.texi +++ b/doc/lispref/minibuf.texi @@ -886,6 +886,23 @@ Here is an example: @end smallexample @end defmac +@c FIXME? completion-table-with-context? + +@findex completion-table-case-fold +@findex completion-table-in-turn +@findex completion-table-subvert +@findex completion-table-with-predicate +@findex completion-table-with-terminator +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-terminator} adds a terminating string. +@code{completion-table-with-predicate} filters a table with a +predicate function. + + @node Minibuffer Completion @subsection Completion and the Minibuffer @cindex minibuffer completion diff --git a/etc/NEWS b/etc/NEWS index 068fc5a809d..f518605b572 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -812,15 +812,10 @@ More commands use `read-regexp' now to read their regexp arguments. *** 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 +++ From e3369c41e6b2af7c2d77e67974e210c27c635c54 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sat, 17 Nov 2012 15:24:36 -0800 Subject: [PATCH 17/21] Add some cindex entries for previous change --- doc/lispref/minibuf.texi | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi index 2c0fcc88f56..120d84531f6 100644 --- a/doc/lispref/minibuf.texi +++ b/doc/lispref/minibuf.texi @@ -893,6 +893,8 @@ Here is an example: @findex completion-table-subvert @findex completion-table-with-predicate @findex completion-table-with-terminator +@cindex completion table, modifying +@cindex 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 From 7f6705c313ce5054fdcbc457fa32b9680bcb11a7 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sat, 17 Nov 2012 15:29:29 -0800 Subject: [PATCH 18/21] * minibuf.texi (Basic Completion): Mention completion-table-with-quoting --- doc/lispref/minibuf.texi | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi index 120d84531f6..033c10fbf7d 100644 --- a/doc/lispref/minibuf.texi +++ b/doc/lispref/minibuf.texi @@ -887,10 +887,10 @@ Here is an example: @end defmac @c FIXME? completion-table-with-context? - @findex completion-table-case-fold @findex completion-table-in-turn @findex completion-table-subvert +@findex completion-table-with-quoting @findex completion-table-with-predicate @findex completion-table-with-terminator @cindex completion table, modifying @@ -899,10 +899,11 @@ 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-terminator} adds a terminating string. +to use a different initial prefix. @code{completion-table-with-quoting} +returns a table suitable for operating on quoted text. @code{completion-table-with-predicate} filters a table with a -predicate function. +predicate function. @code{completion-table-with-terminator} adds a +terminating string. @node Minibuffer Completion From 7351b73d45a2f6f33230e6725fdfdf9e122eff14 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sat, 17 Nov 2012 17:38:42 -0800 Subject: [PATCH 19/21] Document eager macro expansion * doc/lispref/loading.texi (How Programs Do Loading): Add eager macro expansion. * doc/lispref/macros.texi (Expansion): Mention eager macro expansion. * etc/NEWS: Related edit. --- doc/lispref/ChangeLog | 5 +++++ doc/lispref/loading.texi | 19 +++++++++++++++++++ doc/lispref/macros.texi | 4 ++++ etc/NEWS | 12 ++++++------ 4 files changed, 34 insertions(+), 6 deletions(-) diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index da82ece39c1..43ca9ac4aa5 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog @@ -1,3 +1,8 @@ +2012-11-18 Glenn Morris + + * loading.texi (How Programs Do Loading): Add eager macro expansion. + * macros.texi (Expansion): Mention eager macro expansion. + 2012-11-17 Glenn Morris * minibuf.texi (Basic Completion): Mention misc completion-table funcs. diff --git a/doc/lispref/loading.texi b/doc/lispref/loading.texi index 3a511d34829..54acd0b4d4c 100644 --- a/doc/lispref/loading.texi +++ b/doc/lispref/loading.texi @@ -113,6 +113,25 @@ When loading a source file (not compiled), @code{load} performs character set translation just as Emacs would do when visiting the file. @xref{Coding Systems}. +@c This is referred to from the Macros chapter. +@c Not sure if it should be the other way round. +@cindex 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 +@dfn{eager 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 cycle@dots{}}) +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 non-@code{nil}. diff --git a/doc/lispref/macros.texi b/doc/lispref/macros.texi index 8be6a3fbcde..b0dee1bf215 100644 --- a/doc/lispref/macros.texi +++ b/doc/lispref/macros.texi @@ -86,6 +86,10 @@ macro. 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}. diff --git a/etc/NEWS b/etc/NEWS index f518605b572..388af4a7d40 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -923,13 +923,13 @@ Previously, they returned NaNs on some platforms but signaled errors 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. ** Miscellaneous new functions: +++ From 913c8291bdac169ca8cedb084c1381eafc892913 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sat, 17 Nov 2012 17:43:32 -0800 Subject: [PATCH 20/21] * lisp/image.el (insert-image, insert-sliced-image): Doc fix. --- lisp/ChangeLog | 4 ++++ lisp/image.el | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 04eec6feab3..00cf0c1afb6 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,7 @@ +2012-11-18 Glenn Morris + + * image.el (insert-image, insert-sliced-image): Doc fix. + 2012-11-17 Chong Yidong * emacs-lisp/syntax.el (syntax-propertize-function): Doc fix diff --git a/lisp/image.el b/lisp/image.el index aef44fc3701..a8577ad5a7f 100644 --- a/lisp/image.el +++ b/lisp/image.el @@ -432,7 +432,7 @@ means display it in the right marginal area." "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' @@ -470,8 +470,8 @@ height of the image; integer values are taken as pixel values." (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' From 291a654dad6d4604ed4db80885b3af04e64c944f Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sat, 17 Nov 2012 17:45:44 -0800 Subject: [PATCH 21/21] NEWS tweak --- etc/NEWS | 1 + 1 file changed, 1 insertion(+) diff --git a/etc/NEWS b/etc/NEWS index 388af4a7d40..c82dde7a01a 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -930,6 +930,7 @@ 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: +++