Now on revision 106461. ------------------------------------------------------------ revno: 106461 committer: martin rudalics branch nick: trunk timestamp: Mon 2011-11-21 08:28:06 +0100 message: Fix windows.texi typos. diff: === modified file 'doc/lispref/ChangeLog' --- doc/lispref/ChangeLog 2011-11-21 06:05:16 +0000 +++ doc/lispref/ChangeLog 2011-11-21 07:28:06 +0000 @@ -1,3 +1,8 @@ +2011-11-21 Martin Rudalics + + * windows.texi (Windows and Frames, Splitting Windows): Fix + typos. + 2011-11-21 Chong Yidong * windows.texi (Splitting Windows): Fix error in documentation of === modified file 'doc/lispref/windows.texi' --- doc/lispref/windows.texi 2011-11-21 06:05:16 +0000 +++ doc/lispref/windows.texi 2011-11-21 07:28:06 +0000 @@ -149,10 +149,10 @@ active. If @var{minibuffer} is neither @code{nil} nor @code{t}, the minibuffer window is never included. -The optional argument @var{window}, if non-@code{nil}, should be a -live window on the specified frame; then @var{window} will be the -first element in the returned list. If @var{window} is omitted or -@code{nil}, the window selected within the frame is first element. +The optional argument @var{window}, if non-@code{nil}, should be a live +window on the specified frame; then @var{window} will be the first +element in the returned list. If @var{window} is omitted or @code{nil}, +the window selected within the frame is the first element. @end defun @cindex window tree @@ -792,7 +792,7 @@ This example demonstrates splitting a live window as well as splitting an internal window. We begin with a frame containing a single window (a live root window), which we denote by @var{W4}. Calling -@code{(split-window W3)} yields this window configuration: +@code{(split-window W4)} yields this window configuration: @smallexample @group ------------------------------------------------------------ revno: 106460 fixes bug(s): http://debbugs.gnu.org/10032 committer: Chong Yidong branch nick: trunk timestamp: Mon 2011-11-21 14:16:49 +0800 message: * doc/emacs/mark.texi (Global Mark Ring): Fix global mark ring description. diff: === modified file 'doc/emacs/ChangeLog' --- doc/emacs/ChangeLog 2011-11-20 19:35:27 +0000 +++ doc/emacs/ChangeLog 2011-11-21 06:16:49 +0000 @@ -1,3 +1,8 @@ +2011-11-21 Chong Yidong + + * mark.texi (Global Mark Ring): Fix description of global mark + ring (Bug#10032). + 2011-11-20 Juanma Barranquero * msdog.texi (Windows Fonts): Fix typo. === modified file 'doc/emacs/mark.texi' --- doc/emacs/mark.texi 2011-10-13 16:03:49 +0000 +++ doc/emacs/mark.texi 2011-11-21 06:16:49 +0000 @@ -354,9 +354,12 @@ @vindex global-mark-ring-max In addition to the ordinary mark ring that belongs to each buffer, Emacs has a single @dfn{global mark ring}. Each time you set a mark, -in any buffer, this is recorded in the global mark ring in addition to -the current buffer's own mark ring. The length of this ring can be -controlled by @code{global-mark-ring-max}, and is 16 by default. +this is recorded in the global mark ring in addition to the current +buffer's own mark ring, if you have switched buffers since the +previous mark setting. Hence, the global mark ring records a sequence +of buffers that you have been in, and, for each buffer, a place where +you set the mark. The length of the global mark ring is controlled by +@code{global-mark-ring-max}, and is 16 by default. @kindex C-x C-@key{SPC} @findex pop-global-mark === modified file 'doc/emacs/windows.texi' --- doc/emacs/windows.texi 2011-11-06 06:14:01 +0000 +++ doc/emacs/windows.texi 2011-11-21 06:16:49 +0000 @@ -34,11 +34,11 @@ @cindex selected window At any time, one Emacs window is the @dfn{selected window}; the -buffer this window is displaying is the current buffer. Each window -has its own value of point. On graphical displays, the point is -indicated by a solid blinking cursor in the selected window, and by a -hollow box in non-selected windows. On text-only terminals, the -cursor is drawn only in the selected window. @xref{Cursor Display}. +buffer this window is displaying is the current buffer. On graphical +displays, the point is indicated by a solid blinking cursor in the +selected window, and by a hollow box in non-selected windows. On +text-only terminals, the cursor is drawn only in the selected window. +@xref{Cursor Display}. Commands to move point affect the value of point for the selected Emacs window only. They do not change the value of point in other ------------------------------------------------------------ revno: 106459 committer: Chong Yidong branch nick: trunk timestamp: Mon 2011-11-21 14:05:16 +0800 message: More updates to Windows chapter of Lisp manual. * doc/lispref/windows.texi (Splitting Windows): Fix error in documentation of window-combination-limit. (Cyclic Window Ordering): Minor fixes to next-window, one-window-p, and get-lru-window docs. Don't document window-list-1. (Buffers and Windows): Copyedits. (Choosing Window): Document special handling of special-display-*. (Choosing Window Options): Fix display-buffer-reuse-frames doc. Don't document even-window-heights, which is going away. Clarify which options are obeyed by which action functions. * src/window.c (Fnext_window, Fprevious_window): Doc fix. diff: === modified file 'doc/lispref/ChangeLog' --- doc/lispref/ChangeLog 2011-11-20 20:21:22 +0000 +++ doc/lispref/ChangeLog 2011-11-21 06:05:16 +0000 @@ -1,3 +1,16 @@ +2011-11-21 Chong Yidong + + * windows.texi (Splitting Windows): Fix error in documentation of + window-combination-limit. + (Cyclic Window Ordering): Minor fixes to next-window, + one-window-p, and get-lru-window docs. Don't document + window-list-1. + (Buffers and Windows): Copyedits. + (Choosing Window): Document special handling of special-display-*. + (Choosing Window Options): Fix display-buffer-reuse-frames doc. + Don't document even-window-heights, which is going away. Clarify + which options are obeyed by which action functions. + 2011-11-20 Stefan Monnier * display.texi (Invisible Text): Clarify point adjustment (bug#10072). === modified file 'doc/lispref/windows.texi' --- doc/lispref/windows.texi 2011-11-20 10:57:04 +0000 +++ doc/lispref/windows.texi 2011-11-21 06:05:16 +0000 @@ -970,10 +970,10 @@ The combination limit is meaningful only for an internal window. If it is @code{nil}, then Emacs is allowed to automatically delete @var{window}, in response to a window deletion, in order to group the -child windows of @var{window} with the child windows of one of its -siblings to form a new window combination. If the combination limit -is @code{t}, the child windows of @var{window} are never automatically -re-combined with its siblings. +child windows of @var{window} with its sibling windows to form a new +window combination. If the combination limit is @code{t}, the child +windows of @var{window} are never automatically re-combined with its +siblings. @end defun To illustrate the effect of @code{window-combination-limit}, @@ -1183,7 +1183,7 @@ @defun select-window window &optional norecord This function makes @var{window} the selected window, as well as the window selected within its frame (@pxref{Basic Windows}). -@var{window} must be a live winow. Unless @var{window} already is the +@var{window} must be a live window. Unless @var{window} already is the selected window, its buffer becomes the current buffer (@pxref{Buffers and Windows}). The return value is @var{window}. @@ -1258,28 +1258,22 @@ @cindex ordering of windows, cyclic @cindex window ordering, cyclic -When you use the command @kbd{C-x o} (@code{other-window}) to select + When you use the command @kbd{C-x o} (@code{other-window}) to select some other window, it moves through live windows in a specific order. -For any given configuration of windows, this order never varies. It is -called the @dfn{cyclic ordering of windows}. - - For a particular frame, this ordering is determined by the window -tree of that frame, see @ref{Windows and Frames}. More precisely, the -ordering is obtained by a depth-first traversal of the frame's window -tree supplemented, if requested, by the frame's minibuffer window. - - If there's just one live frame, the cyclic ordering is the ordering -for that frame. Otherwise, the cyclic ordering is obtained by appending -the orderings for individual frames in order of the list of all live -frames, @ref{Finding All Frames}. In any case, the ordering is made -``cyclic'' by having the last window precede the first window in the -ordering. +For any given configuration of windows, this order never varies. It +is called the @dfn{cyclic ordering of windows}. + + The ordering is determined by a depth-first traversal of the frame's +window tree, retrieving the live windows which are the leaf nodes of +the tree (@pxref{Windows and Frames}). If the minibuffer is active, +the minibuffer window is included too. The ordering is cyclic, so the +last window in the sequence is followed by the first one. @defun next-window &optional window minibuf all-frames @cindex minibuffer window, and @code{next-window} -This function returns the window following @var{window} in the cyclic -ordering of windows. The argument @var{window} must specify a live -window and defaults to the selected one. +This function returns a live window, the one following @var{window} in +the cyclic ordering of windows. @var{window} should be a live window; +if omitted or @code{nil}, it defaults to the selected window. The optional argument @var{minibuf} specifies whether minibuffer windows shall be included in the cyclic ordering. Normally, when @var{minibuf} @@ -1293,139 +1287,100 @@ @code{nil}, minibuffer windows are not included even if they are active. The optional argument @var{all-frames} specifies which frames to -consider. Here are the possible values and their meanings: +consider: @itemize @bullet @item @code{nil} -means consider all windows on @var{window}'s frame, plus the minibuffer -window used by that frame even if it lies in some other frame. If the -minibuffer counts (as determined by @var{minibuf}), then all windows on -all frames that share that minibuffer count too. +means to consider windows on @var{window}'s frame. If the minibuffer +window is considered (as specified by the @var{minibuf} argument), +then frames that share the minibuffer window are considered too. @item @code{t} -means consider all windows on all existing frames. +means to consider windows on all existing frames. @item @code{visible} -means consider all windows on all visible frames. (To get useful -results, ensure that @var{window} is on a visible frame.) +means to consider windows on all visible frames. @item 0 -means consider all windows on all visible or iconified frames. +means to consider windows on all visible or iconified frames. @item A frame -means consider all windows on that frame. +means to consider windows on that specific frame. @item Anything else -means consider the windows on @var{window}'s frame, and no others. +means to consider windows on @var{window}'s frame, and no others. @end itemize -This example assumes there are two windows, both displaying the -buffer @samp{windows.texi}: - -@example -@group -(selected-window) - @result{} # -@end group -@group -(next-window (selected-window)) - @result{} # -@end group -@group -(next-window (next-window (selected-window))) - @result{} # -@end group -@end example +If more than one frame is considered, the cyclic ordering is obtained +by appending the orderings for those frames, in the same order as the +list of all live frames (@pxref{Finding All Frames}). @end defun @defun previous-window &optional window minibuf all-frames -This function returns the window preceding @var{window} in the cyclic -ordering of windows. The other arguments specify which windows to -consider as in @code{next-window}. +This function returns a live window, the one preceding @var{window} in +the cyclic ordering of windows. The other arguments are handled like +in @code{next-window}. @end defun @deffn Command other-window count &optional all-frames -This function selects another window in the cyclic ordering of windows. -@var{count} specifies the number of windows to skip in the ordering, -starting with the selected window, before making the selection. If -@var{count} is a positive number, it skips @var{count} windows forwards. -@var{count} negative means skip @minus{}@var{count} windows backwards. -If @var{count} is zero, it does not skip any window, thus re-selecting -the selected window. In an interactive call, @var{count} is the numeric -prefix argument. +This function selects a live window, one @var{count} places from the +selected window in the cyclic ordering of windows. If @var{count} is +a positive number, it skips @var{count} windows forwards; if +@var{count} is negative, it skips @minus{}@var{count} windows +backwards; if @var{count} is zero, that simply re-selects the selected +window. When called interactively, @var{count} is the numeric prefix +argument. The optional argument @var{all-frames} has the same meaning as in -@code{next-window}, but the @var{minibuf} argument of @code{next-window} -is always effectively @code{nil}. This function returns @code{nil}. +@code{next-window}, like a @code{nil} @var{minibuf} argument to +@code{next-window}. This function does not select a window that has a non-@code{nil} @code{no-other-window} window parameter (@pxref{Window Parameters}). @end deffn -The following function returns a copy of the list of windows in the -cyclic ordering. - -@defun window-list-1 &optional window &optional minibuf &optional all_frames -This function returns a list of live windows. The optional arguments -@var{minibuf} and @var{all-frames} specify the set of windows to include -in the list. See the description of @code{next-window} for details. - -The optional argument @var{window} specifies the first window to list -and defaults to the selected window. If @var{window} is not on the list -of windows returned, some other window will be listed first but no error -is signaled. -@end defun - -The functions described below use @code{window-list-1} for generating a -copy of the list of all relevant windows. Hence, any change of the -window configuration that occurs while one of these functions is -executed is @emph{not} reflected in the list of windows investigated. - -@defun walk-windows proc &optional minibuf all-frames -This function cycles through live windows. It calls the function -@var{proc} once for each window, with the window as its sole argument. - -The optional arguments @var{minibuf} and @var{all-frames} specify the -set of windows to include in the walk, see @code{next-window} above. If -@var{all-frames} specifies a frame, the first window walked is the first -window on that frame as returned by @code{frame-first-window} and not -necessarily the selected window. - -If @var{proc} changes the window configuration by splitting or deleting -windows, that change is not reflected in the set of windows walked. -That set is determined entirely by the set of live windows at the time -this function was invoked. -@end defun - -The following function allows to determine whether a specific window is -the only live window. +@defun walk-windows fun &optional minibuf all-frames +This function calls the function @var{fun} once for each live window, +with the window as the argument. + +It follows the cyclic ordering of windows. The optional arguments +@var{minibuf} and @var{all-frames} specify the set of windows +included; these have the same arguments as in @code{next-window}. If +@var{all-frames} specifies a frame, the first window walked is the +first window on that frame (the one returned by +@code{frame-first-window}), not necessarily the selected window. + +If @var{fun} changes the window configuration by splitting or deleting +windows, that does not alter the set of windows walked, which is +determined prior to calling @var{fun} for the first time. +@end defun @defun one-window-p &optional no-mini all-frames -This function returns non-@code{nil} if the selected window is the only -window. +This function returns @code{t} if the selected window is the only live +window, and @code{nil} otherwise. -The optional argument @var{no-mini}, if non-@code{nil}, means don't -count the minibuffer even if it is active; otherwise, the minibuffer -window is counted when it is active. The optional argument -@var{all-frames} has the same meaning as for @code{next-window}, see -above. +If the minibuffer window is active, it is normally considered (so that +this function returns @code{nil}). However, if the optional argument +@var{no-mini} is non-@code{nil}, the minibuffer window is ignored even +if active. The optional argument @var{all-frames} has the same +meaning as for @code{next-window}. @end defun @cindex finding windows - The following functions choose (but do not select) one of the windows -on the screen, offering various criteria for the choice. + The following functions return a window which satisfies some +criterion, without selecting it: @cindex least recently used window @defun get-lru-window &optional all-frames dedicated -This function returns the window least recently ``used'' (that is, -selected). If any full-width windows are present, it only considers -these. The optional argument @var{all-frames} has the same meaning as -in @code{next-window}. +This function returns a live window which is heuristically the ``least +recently used'' window. The optional argument @var{all-frames} has +the same meaning as in @code{next-window}. -The selected window is returned if it is the only candidate. A -minibuffer window is never a candidate. A dedicated window -(@pxref{Dedicated Windows}) is never a candidate unless the optional -argument @var{dedicated} is non-@code{nil}. +If any full-width windows are present, only those windows are +considered. The selected window is never returned, unless it is the +only candidate. A minibuffer window is never a candidate. A +dedicated window (@pxref{Dedicated Windows}) is never a candidate +unless the optional argument @var{dedicated} is non-@code{nil}. @end defun @cindex largest window @@ -1439,22 +1394,23 @@ prefers the one that comes first in the cyclic ordering of windows, starting from the selected window. -The optional argument @var{all-frames} specifies which set of windows to -consider as with @code{next-window}, see above. +The optional argument @var{all-frames} specifies the windows to +search, and has the same meaning as in @code{next-window}. @end defun @cindex window that satisfies a predicate @cindex conditional selection of windows @defun get-window-with-predicate predicate &optional minibuf all-frames default -This function returns a window satisfying @var{predicate}. It cycles -through all visible windows calling @var{predicate} on each one of them -with that window as its argument. The function returns the first window -for which @var{predicate} returns a non-@code{nil} value; if that never -happens, it returns @var{default} (which defaults to @code{nil}). +This function calls the function @var{predicate} for each of the +windows in the cyclic order of windows in turn, passing it the window +as an argument. If the predicate returns non-@code{nil} for any +window, this function stops and returns that window. If no such +window is found, the return value is @var{default} (which defaults to +@code{nil}). The optional arguments @var{minibuf} and @var{all-frames} specify the -set of windows to investigate. See the description of -@code{next-window} for details. +windows to search, and have the same meanings as in +@code{next-window}. @end defun @node Buffers and Windows @@ -1463,47 +1419,41 @@ @cindex windows, controlling precisely @cindex buffers, controlled in windows -To find out which buffer is displayed in a given window the following -function is used. + This section describes low-level functions for examining and setting +the contents of windows. @xref{Switching Buffers}, for higher-level +functions for displaying a specific buffer in a window. @defun window-buffer &optional window -This function returns the buffer that @var{window} is displaying. The -argument @var{window} can be any window and defaults to the selected -one. If @var{window} is an internal window, this function returns +This function returns the buffer that @var{window} is displaying. If +@var{window} is omitted or @code{nil} it defaults to the selected +window. If @var{window} is an internal window, this function returns @code{nil}. @end defun -The basic, low-level function to associate a window with a buffer is -@code{set-window-buffer}. Higher-level functions like -@code{switch-to-buffer} and @code{display-buffer} try to obey a number -of user customizations regulating which windows are supposed to -display which buffers. @xref{Switching Buffers}. When writing an -application, you should avoid using @code{set-window-buffer} unless -you are sure you need it. - @defun set-window-buffer window buffer-or-name &optional keep-margins -This function makes @var{window} display @var{buffer-or-name} and -returns @code{nil}. The argument @var{window} has to denote a live -window and defaults to the selected one. The argument -@var{buffer-or-name} must specify a buffer or the name of an existing -buffer. An error is signaled when @var{window} is @dfn{strongly} -dedicated to its buffer (@pxref{Dedicated Windows}) and does not already -display @var{buffer-or-name}. - -Normally, displaying @var{buffer-or-name} in @var{window} resets the -window's position, display margins, fringe widths, and scroll bar -settings based on the local variables of the specified buffer. However, -if the optional argument @var{keep-margins} is non-@code{nil}, display -margins and fringe widths of @var{window} remain unchanged. -@xref{Fringes}. - -This function is the fundamental primitive for changing which buffer is -displayed in a window, and all ways of doing that call this function. -Neither the selected window nor the current buffer are changed by this -function. - -This function runs @code{window-scroll-functions} before running -@code{window-configuration-change-hook}, see @ref{Window Hooks}. +This function makes @var{window} display @var{buffer-or-name}. +@var{window} should be a live window; if @code{nil}, it defaults to +the selected window. @var{buffer-or-name} should be a buffer, or the +name of an existing buffer. This function does not change which +window is selected, nor does it directly change which buffer is +current (@pxref{Current Buffer}). Its return value is @code{nil}. + +If @var{window} is @dfn{strongly dedicated} to a buffer and +@var{buffer-or-name} does not specify that buffer, this function +signals an error. @xref{Dedicated Windows}. + +By default, this function resets @var{window}'s position, display +margins, fringe widths, and scroll bar settings, based on the local +variables in the specified buffer. However, if the optional argument +@var{keep-margins} is non-@code{nil}, it leaves the display margins +and fringe widths unchanged. + +When writing an application, you should normally use the higher-level +functions described in @ref{Switching Buffers}, instead of calling +@code{set-window-buffer} directly. + +This function runs @code{window-scroll-functions}, followed by +@code{window-configuration-change-hook}. @xref{Window Hooks}. @end defun @defvar buffer-display-count @@ -1513,28 +1463,26 @@ @end defvar @defvar buffer-display-time -This variable records the time at which a buffer was last made visible -in a window. It is always local in each buffer; each time -@code{set-window-buffer} is called, it sets this variable to -@code{(current-time)} in the specified buffer (@pxref{Time of Day}). -When a buffer is first created, @code{buffer-display-time} starts out -with the value @code{nil}. +This buffer-local variable records the time at which a buffer was last +displayed in a window. The value is @code{nil} if the buffer has +never been displayed. It is updated each time +@code{set-window-buffer} is called for the buffer, with the value +returned by @code{current-time} (@pxref{Time of Day}). @end defvar @defun get-buffer-window &optional buffer-or-name all-frames -This function returns a window displaying @var{buffer-or-name}, or -@code{nil} if there is none. If there are several such windows, then -the function returns the first one in the cyclic ordering of windows, -starting from the selected window, @xref{Cyclic Window Ordering}. +This function returns the first window displaying @var{buffer-or-name} +in the cyclic ordering of windows, starting from the selected window +(@pxref{Cyclic Window Ordering}). If no such window exists, the +return value is @code{nil}. -The argument @var{buffer-or-name} may be a buffer or a buffer name and -defaults to the current buffer. The optional argument @var{all-frames} -specifies which windows to consider: +@var{buffer-or-name} should be a buffer or the name of a buffer; if +omitted or @code{nil}, it defaults to the current buffer. The +optional argument @var{all-frames} specifies which windows to +consider: @itemize @bullet @item -@code{nil} means consider windows on the selected frame. -@item @code{t} means consider windows on all existing frames. @item @code{visible} means consider windows on all visible frames. @@ -1542,44 +1490,45 @@ 0 means consider windows on all visible or iconified frames. @item A frame means consider windows on that frame only. +@item +Any other value means consider windows on the selected frame. @end itemize -Observe that the behavior of @code{get-buffer-window} may differ from -that of @code{next-window} (@pxref{Cyclic Window Ordering}) when -@var{all-frames} equals @code{nil} or any value not listed here. -Perhaps we will change @code{get-buffer-window} in the future to make it -compatible with the other functions. +Note that these meanings differ slightly from those of the +@var{all-frames} argument to @code{next-window} (@pxref{Cyclic Window +Ordering}). This function may be changed in a future version of Emacs +to eliminate this discrepancy. @end defun @defun get-buffer-window-list &optional buffer-or-name minibuf all-frames This function returns a list of all windows currently displaying -@var{buffer-or-name}. The argument @var{buffer-or-name} may be a buffer -or the name of an existing buffer and defaults to the current buffer. +@var{buffer-or-name}. @var{buffer-or-name} should be a buffer or the +name of an existing buffer. If omitted or @code{nil}, it defaults to +the current buffer. -The two remaining arguments work like the same-named arguments of -@code{next-window} (@pxref{Cyclic Window Ordering}); they are @emph{not} -like the optional arguments of @code{get-buffer-window}. +The arguments @var{minibuf} and @var{all-frames} have the same +meanings as in the function @code{next-window} (@pxref{Cyclic Window +Ordering}). Note that the @var{all-frames} argument does @emph{not} +behave exactly like in @code{get-buffer-window}. @end defun @deffn Command replace-buffer-in-windows &optional buffer-or-name This command replaces @var{buffer-or-name} with some other buffer, in -all windows displaying it. For each such window, it choose another -buffer using @code{switch-to-prev-buffer} (@pxref{Window History}). - -The argument @var{buffer-or-name} may be a buffer, or the name of an -existing buffer; it defaults to the current buffer. - -If a window displaying @var{buffer-or-name} is dedicated -(@pxref{Dedicated Windows}) and is not the only window on its frame, -that window is deleted. If that window is the only window on its frame -and there are other frames on the frame's terminal, that frame is dealt -with by the function specified by @code{frame-auto-hide-function} -(@pxref{Quitting Windows}). Otherwise, the buffer provided by the -function @code{switch-to-prev-buffer} (@pxref{Window History}) is -displayed in the window instead. +all windows displaying it. @var{buffer-or-name} should be a buffer, +or the name of an existing buffer; if omitted or @code{nil}, it +defaults to the current buffer. + +The replacement buffer in each window is chosen via +@code{switch-to-prev-buffer} (@pxref{Window History}). Any dedicated +window displaying @var{buffer-or-name} is deleted (@pxref{Dedicated +Windows}), unless it is the only window on its frame---if it is the +only window, and that frame is not the only frame on its terminal, the +frame is ``dismissed'' by calling the function specified by +@code{frame-auto-hide-function} (@pxref{Quitting Windows}). If the +dedicated window is the only window on the only frame on its terminal, +the buffer is replaced anyway. @end deffn - @node Switching Buffers @section Switching to a Buffer in a Window @cindex switching to a buffer @@ -1655,9 +1604,12 @@ meanings as in @code{switch-to-buffer}. @end deffn -The above commands use @code{pop-to-buffer}, which is the function -used by Lisp programs to flexibly display a buffer in some window and -select that window for editing: +The above commands use the function @code{pop-to-buffer}, which +flexibly displays a buffer in some window and selects that window for +editing. In turn, @code{pop-to-buffer} uses @code{display-buffer} for +displaying the buffer. Hence, all the variables affecting +@code{display-buffer} will affect it as well. @xref{Choosing Window}, +for the documentation of @code{display-buffer}. @defun pop-to-buffer buffer-or-name &optional action norecord This function makes @var{buffer-or-name} the current buffer and @@ -1667,10 +1619,6 @@ possible (@pxref{Input Focus}). The return value is the buffer that was switched to. -This function uses @code{display-buffer} to display the buffer, so all -the variables affecting @code{display-buffer} will affect it as well. -@xref{Choosing Window}. - If @var{buffer-or-name} is @code{nil}, it defaults to the buffer returned by @code{other-buffer} (@pxref{The Buffer List}). If @var{buffer-or-name} is a string that is not the name of any existing @@ -1699,8 +1647,8 @@ Buffers}). @cindex display action -@cindex action function, for display-buffer -@cindex action alist, for display-buffer +@cindex action function, for @code{display-buffer} +@cindex action alist, for @code{display-buffer} This command performs several complex steps to find a window to display in. These steps are described by means of @dfn{display actions}, which have the form @code{(@var{function} . @var{alist})}. @@ -1739,6 +1687,11 @@ The user option @code{display-buffer-alist}. @item +A special action for handling @code{special-display-buffer-names} and +@code{special-display-regexps}, if either of those variables is +non-@code{nil}. @xref{Choosing Window Options}. + +@item The @var{action} argument. @item @@ -1810,10 +1763,9 @@ that is already displaying it. If @var{alist} has a non-@code{nil} @code{inhibit-same-window} entry, -the selected window is not eligible for reuse. - -If @var{alist} contains a @code{reusable-frames} entry, its value -determines which frames to search for a reusable window: +the selected window is not eligible for reuse. If @var{alist} +contains a @code{reusable-frames} entry, its value determines which +frames to search for a reusable window: @itemize @bullet @item @@ -1834,17 +1786,28 @@ variable @code{display-buffer-reuse-frames} or the variable @code{pop-up-frames} is non-@code{nil}, it searches all frames on the current terminal. @xref{Choosing Window Options}. + +If this function chooses a window on another frame, it makes that +frame visible and raises it if necessary. @end defun @defun display-buffer-pop-up-frame buffer alist This function creates a new frame, and displays the buffer in that -frame's window. +frame's window. It actually performs the frame creation by calling +the function specified in @code{pop-up-frame-function} +(@pxref{Choosing Window Options}). @end defun @defun display-buffer-pop-up-window buffer alist This function tries to display @var{buffer} by splitting the largest -or least recently-used window. It uses @code{split-window-sensibly} -as a subroutine (@pxref{Choosing Window Options}). +or least recently-used window (typically one on the selected frame). +It actually performs the split by calling the function specified in +@code{split-window-preferred-function} (@pxref{Choosing Window +Options}). + +It can fail if no window splitting can be performed for some reason +(e.g. if there is just one frame and it has an @code{unsplittable} +frame parameter; @pxref{Buffer Parameters}). @end defun @defun display-buffer-use-some-window buffer alist @@ -1861,142 +1824,108 @@ options. @defopt display-buffer-reuse-frames -If this variable is non-@code{nil}, @code{display-buffer} searches -visible and iconified frames for a window displaying -@var{buffer-or-name}. If there is such a window, @code{display-buffer} -makes that window's frame visible and raises it if necessary, and -returns the window. If there is no such window or -@code{display-buffer-reuse-frames} is @code{nil}, the behavior of -@code{display-buffer} is determined by the variables described next. +If the value of this variable is non-@code{nil}, @code{display-buffer} +may search all frames on the current terminal when looking for a +window already displaying the specified buffer. The default is +@code{nil}. This variable is consulted by the action function +@code{display-buffer-reuse-window} (@pxref{Display Action Functions}). @end defopt @defopt pop-up-windows -This variable specifies whether @code{display-buffer} is allowed to -split (@pxref{Splitting Windows}) an existing window. If this variable -is non-@code{nil}, @code{display-buffer} tries to split the largest or -least recently used window on the selected frame. (If the selected -frame is a minibuffer-only frame, @code{display-buffer} tries to split a -window on another frame instead.) If this variable is @code{nil} or the -variable @code{pop-up-frames} (see below) is non-@code{nil}, -@code{display-buffer} does not split any window. +If the value of this variable is non-@code{nil}, @code{display-buffer} +is allowed to split an existing window to make a new window for +displaying in. This is the default. + +This variable is provided mainly for backward compatibility. It is +obeyed by @code{display-buffer} via a special mechanism in +@code{display-buffer-fallback-action}, which only calls the action +function @code{display-buffer-pop-up-window} (@pxref{Display Action +Functions}) when the value is @code{nil}. It is not consulted by +@code{display-buffer-pop-up-window} itself, which the user may specify +directly in @code{display-buffer-alist} etc. @end defopt @defopt split-window-preferred-function -This variable must specify a function with one argument, which is a -window. The @code{display-buffer} routines will call this function with -one or more candidate windows when they look for a window to split. The -function is expected to split that window and return the new window. If -the function returns @code{nil}, this means that the argument window -cannot (or shall not) be split. - -The default value of @code{split-window-preferred-function} is the -function @code{split-window-sensibly} described below. If you -customize this option, bear in mind that the @code{display-buffer} -routines may call your function up to two times when trying to split a -window. The argument of the first call is the largest window on the -chosen frame (as returned by @code{get-largest-window}). If that call -fails to return a live window, your function is called a second time -with the least recently used window on that frame (as returned by -@code{get-lru-window}). - -The function specified by this option may try to split any other window -instead of the argument window. Note that the window selected at the -time @code{display-buffer} was invoked is still selected when your -function is called. Hence, you can split the selected window (instead -of the largest or least recently used one) by simply ignoring the window -argument in the body of your function. You can even choose to not split -any window as long as the return value of your function specifies a live -window or @code{nil}, but you are not encouraged to do so -unconditionally. If you want @code{display-buffer} to never split any -windows, set @code{pop-up-windows} to @code{nil}. +This variable specifies a function for splitting a window, in order to +make a new window for displaying a buffer. It is used by the +@code{display-buffer-pop-up-window} action function to actually split +the window (@pxref{Display Action Functions}). + +The default value is @code{split-window-sensibly}, which is documented +below. The value must be a function that takes one argument, a +window, and return either a new window (which is used to display the +desired buffer) or @code{nil} (which means the splitting failed). @end defopt @defun split-window-sensibly window -This function takes a window as argument and tries to split that window -in a suitable way. The two variables described next are useful for -tuning the behavior of this function. +This function tries to split @code{window}, and return the newly +created window. If @code{window} cannot be split, it returns +@code{nil}. + +This function obeys the usual rules that determine when a window may +be split (@pxref{Splitting Windows}). It first tries to split by +placing the new window below, subject to the restriction imposed by +@code{split-height-threshold} (see below) in addition to any other +restrictions. If that fails, it tries to split by placing the new +window to the right, subject to @code{split-width-threshold} (see +below). If that fails, and the window is the only window on its +frame, this function again tries to split and place the new window +below, disregarding @code{split-height-threshold}. If this fails as +well, this function gives up and returns @code{nil}. @end defun @defopt split-height-threshold -This variable specifies whether @code{split-window-sensibly} may split -windows vertically. If it is an integer, @code{split-window-sensibly} -tries to vertically split a window only if it has at least this many -lines. If the window has less lines, splitting fails, or the value of -this variable is @code{nil}, @code{split-window-sensibly} will try to -split the window horizontally, subject to restrictions of -@code{split-width-threshold} (see below). If splitting horizontally -fails too and the window is the only window on its frame, -@code{split-window-sensibly} will try to split the window vertically -disregarding the value of @code{split-height-threshold}. If this fails -as well, @code{split-window-sensibly} returns @code{nil}. - -@code{split-window-sensibly} does not split vertically a window whose -height is fixed (@pxref{Resizing Windows}). Also, it vertically splits -a window only if the space taken up by that window can accommodate two -windows one above the other that are both at least -@code{window-min-height} lines tall. Moreover, if the window that shall -be split has a mode line, @code{split-window-sensibly} does not split -the window unless the new window can accommodate a mode line too. +This variable, used by @code{split-window-sensibly}, specifies whether +to split the window placing the new window below. If it is an +integer, that means to split only if the original window has at least +that many lines. If it is @code{nil}, that means not to split this +way. @end defopt @defopt split-width-threshold -This variable specifies whether @code{split-window-sensibly} may split -windows horizontally. If it is an integer, @code{split-window-sensibly} -tries to horizontally split a window only if it has at least this many -columns. If it is @code{nil}, @code{split-window-sensibly} will not -split the window horizontally. (It still might split the window -vertically, though, see above.) - -@code{split-window-sensibly} does not split horizontally a window if -that window's width is fixed (@pxref{Resizing Windows}). Also, it -horizontally splits a window only if the space that window takes up can -accommodate two windows side by side that are both at least -@code{window-min-width} columns wide. -@end defopt - -@defopt even-window-heights -This variable specifies whether @code{display-buffer} should even out -window heights if the buffer gets displayed in an existing window, above -or beneath another window. If @code{even-window-heights} is -non-@code{nil}, the default, window heights will be evened out. If -either of the involved window has fixed height (@pxref{Resizing -Windows}) or @code{even-window-heights} is @code{nil}, the original -window heights will be left alone. -@end defopt - -@c Emacs 19 feature +This variable, used by @code{split-window-sensibly}, specifies whether +to split the window placing the new window to the right. If the value +is an integer, that means to split only if the original window has at +least that many columns. If the value is @code{nil}, that means not +to split this way. +@end defopt + @defopt pop-up-frames -This variable specifies whether @code{display-buffer} should make new -frames. If it is non-@code{nil}, @code{display-buffer} looks for a -window already displaying @var{buffer-or-name} on any visible or -iconified frame. If it finds such a window, it makes that window's -frame visible and raises it if necessary, and returns the window. -Otherwise it makes a new frame, unless the variable's value is -@code{graphic-only} and the selected frame is not on a graphic display. -@xref{Frames}, for more information. - -Note that the value of @code{pop-up-windows} does not matter if -@code{pop-up-frames} is non-@code{nil}. If @code{pop-up-frames} is -@code{nil}, then @code{display-buffer} either splits a window or reuses -one. +If the value of this variable is non-@code{nil}, that means +@code{display-buffer} may display buffers by making new frames. The +default is @code{nil}. + +A non-@code{nil} value also means that when @code{display-buffer} is +looking for a window already displaying @var{buffer-or-name}, it can +search any visible or iconified frame, not just the selected frame. + +This variable is provided mainly for backward compatibility. It is +obeyed by @code{display-buffer} via a special mechanism in +@code{display-buffer-fallback-action}, which calls the action function +@code{display-buffer-pop-up-frame} (@pxref{Display Action Functions}) +if the value is non-@code{nil}. (This is done before attempting to +split a window.) This variable is not consulted by +@code{display-buffer-pop-up-frame} itself, which the user may specify +directly in @code{display-buffer-alist} etc. @end defopt -@c Emacs 19 feature @defopt pop-up-frame-function -This variable specifies how to make a new frame if @code{pop-up-frames} -is non-@code{nil}. +This variable specifies a function for creating a new frame, in order +to make a new window for displaying a buffer. It is used by the +@code{display-buffer-pop-up-frame} action function (@pxref{Display +Action Functions}). -The value of this variable must be a function of no arguments. When -@code{display-buffer} makes a new frame, it does so by calling that -function, which should return a frame. The default value of this -variable is a function that creates a frame using the parameters -specified by @code{pop-up-frame-alist} described next. +The value should be a function that takes no arguments and returns a +frame, or @code{nil} if no frame could be created. The default value +is a function that creates a frame using the parameters specified by +@code{pop-up-frame-alist} (see below). @end defopt @defopt pop-up-frame-alist -This variable holds an alist specifying frame parameters used by the -default value of @code{pop-up-frame-function} for making new frames. -@xref{Frame Parameters}, for more information about frame parameters. +This variable holds an alist of frame parameters (@pxref{Frame +Parameters}), which is used by the default function in +@code{pop-up-frame-function} to make a new frame. The default is +@code{nil}. @end defopt @defopt special-display-buffer-names @@ -2117,12 +2046,6 @@ above. @end defopt -If all options described above fail to produce a suitable window, -@code{display-buffer} tries to reuse an existing window. As a last -resort, it will try to display @var{buffer-or-name} on a separate frame. -In that case, the value of @code{pop-up-frames} is disregarded. - - @node Window History @section Window History @cindex window history === modified file 'src/ChangeLog' --- src/ChangeLog 2011-11-20 20:17:13 +0000 +++ src/ChangeLog 2011-11-21 06:05:16 +0000 @@ -1,3 +1,7 @@ +2011-11-21 Chong Yidong + + * window.c (Fnext_window, Fprevious_window): Doc fix. + 2011-11-20 Stefan Monnier * window.c (get_phys_cursor_glyph): Fix Lisp_Object/int mixup. === modified file 'src/window.c' --- src/window.c 2011-11-20 20:17:13 +0000 +++ src/window.c 2011-11-21 06:05:16 +0000 @@ -2181,7 +2181,7 @@ DEFUN ("next-window", Fnext_window, Snext_window, 0, 3, 0, - doc: /* Return window following WINDOW in cyclic ordering of windows. + doc: /* Return live window after WINDOW in the cyclic ordering of windows. WINDOW must be a live window and defaults to the selected one. The optional arguments MINIBUF and ALL-FRAMES specify the set of windows to consider. @@ -2220,7 +2220,7 @@ DEFUN ("previous-window", Fprevious_window, Sprevious_window, 0, 3, 0, - doc: /* Return window preceding WINDOW in cyclic ordering of windows. + doc: /* Return live window before WINDOW in the cyclic ordering of windows. WINDOW must be a live window and defaults to the selected one. The optional arguments MINIBUF and ALL-FRAMES specify the set of windows to consider. ------------------------------------------------------------ revno: 106458 committer: Bill Wohler branch nick: trunk timestamp: Sun 2011-11-20 12:32:21 -0800 message: * NEWS, MH-E-NEWS: Update for MH-E release 8.3.1. diff: === modified file 'etc/ChangeLog' --- etc/ChangeLog 2011-11-20 19:35:27 +0000 +++ etc/ChangeLog 2011-11-20 20:32:21 +0000 @@ -1,3 +1,9 @@ +2011-11-20 Bill Wohler + + Release MH-E version 8.3.1. + + * NEWS, MH-E-NEWS: Update for MH-E release 8.3.1. + 2011-11-14 Juanma Barranquero * MAILINGLISTS: Fix typo. === modified file 'etc/MH-E-NEWS' --- etc/MH-E-NEWS 2011-11-20 03:48:53 +0000 +++ etc/MH-E-NEWS 2011-11-20 20:32:21 +0000 @@ -3,6 +3,11 @@ Copyright (C) 2001-2011 Free Software Foundation, Inc. See the end of the file for license conditions. +* Changes in MH-E 8.3.1 + +This version of MH-E fixes typos in the documentation and is packaged +with GNU Emacs 24.1 + * Changes in MH-E 8.3 In 2010, the version control system (VCS) of Emacs was upgraded from @@ -27,8 +32,6 @@ `load-path' to "/path/to/mh-e/emacs/trunk/lisp/mh-e" instead. Note the addition of "trunk." -This version of MH-E is packaged with GNU Emacs 24.1 - ** Bug Fixes in MH-E 8.3 *** Make mh-showing a legitimate minor mode === modified file 'etc/NEWS' --- etc/NEWS 2011-11-20 03:48:53 +0000 +++ etc/NEWS 2011-11-20 20:32:21 +0000 @@ -709,7 +709,7 @@ ** The Landmark game is now invoked with `landmark', not `lm'. -** MH-E has been upgraded to MH-E version 8.3. +** MH-E has been upgraded to MH-E version 8.3.1. See MH-E-NEWS for details. ** Modula-2 mode provides auto-indentation. ------------------------------------------------------------ revno: 106457 committer: Bill Wohler branch nick: trunk timestamp: Sun 2011-11-20 12:31:38 -0800 message: * mh-e.el (Version, mh-version): Update for release 8.3.1. diff: === modified file 'lisp/mh-e/ChangeLog' --- lisp/mh-e/ChangeLog 2011-11-20 19:35:27 +0000 +++ lisp/mh-e/ChangeLog 2011-11-20 20:31:38 +0000 @@ -1,3 +1,9 @@ +2011-11-20 Bill Wohler + + * Release MH-E version 8.3.1. + + * mh-e.el (Version, mh-version): Update for release 8.3.1. + 2011-11-20 Juanma Barranquero * mh-utils.el (mh-folder-list): Fix typo. === modified file 'lisp/mh-e/mh-e.el' --- lisp/mh-e/mh-e.el 2011-11-14 06:27:12 +0000 +++ lisp/mh-e/mh-e.el 2011-11-20 20:31:38 +0000 @@ -5,7 +5,7 @@ ;; Author: Bill Wohler ;; Maintainer: Bill Wohler -;; Version: 8.3 +;; Version: 8.3.1 ;; Keywords: mail ;; This file is part of GNU Emacs. @@ -127,7 +127,7 @@ ;; Try to keep variables local to a single file. Provide accessors if ;; variables are shared. Use this section as a last resort. -(defconst mh-version "8.3" "Version number of MH-E.") +(defconst mh-version "8.3.1" "Version number of MH-E.") ;; Variants ------------------------------------------------------------ revno: 106456 fixes bug(s): http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10072 committer: Stefan Monnier branch nick: trunk timestamp: Sun 2011-11-20 15:21:22 -0500 message: * doc/lispref/display.texi (Invisible Text): Clarify point adjustment. diff: === modified file 'doc/lispref/ChangeLog' --- doc/lispref/ChangeLog 2011-11-20 19:35:27 +0000 +++ doc/lispref/ChangeLog 2011-11-20 20:21:22 +0000 @@ -1,7 +1,11 @@ +2011-11-20 Stefan Monnier + + * display.texi (Invisible Text): Clarify point adjustment (bug#10072). + 2011-11-20 Martin Rudalics - * windows.texi (Resizing Windows, Splitting Windows): Remove - term "status" when talking about combination limits. + * windows.texi (Resizing Windows, Splitting Windows): + Remove term "status" when talking about combination limits. 2011-11-20 Juanma Barranquero @@ -12,8 +16,8 @@ * windows.texi (Splitting Windows): Clarify role of window parameters in split-window. Shorten the example. - (Deleting Windows): Rewrite intro to handle internal windows. Fix - delete-windows-on doc. + (Deleting Windows): Rewrite intro to handle internal windows. + Fix delete-windows-on doc. (Selecting Windows): Copyedits. 2011-11-17 Martin Rudalics @@ -24,8 +28,8 @@ 2011-11-16 Martin Rudalics - * windows.texi (Resizing Windows, Splitting Windows): Rename - occurrences of window-nest to window-combination-limit. + * windows.texi (Resizing Windows, Splitting Windows): + Rename occurrences of window-nest to window-combination-limit. 2011-11-14 Juanma Barranquero @@ -33,8 +37,8 @@ 2011-11-12 Martin Rudalics - * windows.texi (Splitting Windows, Deleting Windows): Remove - references to splits status of windows. + * windows.texi (Splitting Windows, Deleting Windows): + Remove references to splits status of windows. 2011-11-10 Glenn Morris @@ -86,8 +90,8 @@ (Windows and Frames): Various clarifications, e.g. non-live windows also belong to frames. Fix window-list description. Simplify window nesting example. - (Splitting Windows, Window Configurations): Use - split-window-below. + (Splitting Windows, Window Configurations): + Use split-window-below. 2011-11-04 Eli Zaretskii @@ -137,8 +141,8 @@ 2011-10-05 Chong Yidong - * display.texi (Low-Level Font, Face Attributes, Font Lookup): Fix - Emacs manual xref (Bug#9675). + * display.texi (Low-Level Font, Face Attributes, Font Lookup): + Fix Emacs manual xref (Bug#9675). 2011-10-01 Chong Yidong @@ -177,8 +181,8 @@ * windows.texi (Window History): New node. Move text here from Buffers and Windows. (Switching Buffers): Rename from Displaying Buffers, since we - don't document display-buffer here; callers changed. Document - FORCE-SAME-WINDOW arg to switch-to-buffer and + don't document display-buffer here; callers changed. + Document FORCE-SAME-WINDOW arg to switch-to-buffer and switch-to-buffer-other-frame. Delete duplicate replace-buffer-in-windows doc. (Choosing Window): Document display actions. @@ -209,10 +213,10 @@ Provide examples. Describe window-nest and window-splits options. (Deleting Windows): Minor rewrite. - (Selecting Windows): Minor rewrite. Describe - frame-selected-window and set-frame-selected-window here. - (Cyclic Window Ordering): Minor rewrite. Describe - window-list-1. + (Selecting Windows): Minor rewrite. + Describe frame-selected-window and set-frame-selected-window here. + (Cyclic Window Ordering): Minor rewrite. + Describe window-list-1. (Buffers and Windows): Rewrite. Explain a window's previous and next buffers and the corresponding functions. (Window Tree): Merge into Windows and Frames section. @@ -314,8 +318,8 @@ * display.texi (Bidirectional Display): Document the pitfalls of concatenating strings with bidirectional content, with possible - solutions. Document bidi-string-mark-left-to-right. Mention - paragraph direction in modes that inherit from prog-mode. + solutions. Document bidi-string-mark-left-to-right. + Mention paragraph direction in modes that inherit from prog-mode. Document use of `bidi-class' and `mirroring' properties as part of reordering. @@ -371,8 +375,8 @@ the next character, and doesn't affect longer sequences in particular (bug#8935). - * debugging.texi (Using Debugger): Mention - @code{eval-expression-debug-on-error} (bug#8549). + * debugging.texi (Using Debugger): + Mention @code{eval-expression-debug-on-error} (bug#8549). 2011-07-14 Eli Zaretskii @@ -521,7 +525,7 @@ 2011-06-15 Lars Magne Ingebrigtsen - * processes.texi (Process Information): Renamed `process-alive-p' + * processes.texi (Process Information): Rename `process-alive-p' to `process-live-p' for consistency with other `-live-p' functions. 2011-06-03 Paul Eggert @@ -538,8 +542,8 @@ 2011-05-31 Lars Magne Ingebrigtsen - * processes.texi (Process Information): Document - `process-alive-p'. + * processes.texi (Process Information): + Document `process-alive-p'. 2011-05-29 Chong Yidong @@ -1937,8 +1941,8 @@ 2009-05-09 Eli Zaretskii - * nonascii.texi (Default Coding Systems): Document - find-auto-coding, set-auto-coding, and auto-coding-alist. + * nonascii.texi (Default Coding Systems): + Document find-auto-coding, set-auto-coding, and auto-coding-alist. Add indexing. (Lisp and Coding Systems): Add index entries. @@ -5169,8 +5173,8 @@ (Saving Buffers): Mention code and EOL conversions by file I/O primitives and subroutines. - * nonascii.texi (Lisp and Coding Systems): Document - coding-system-eol-type. Add index entries for eol conversion. + * nonascii.texi (Lisp and Coding Systems): + Document coding-system-eol-type. Add index entries for eol conversion. * display.texi (Defining Faces): Mention `mac', and add an xref to where window-system is described. @@ -9120,7 +9124,7 @@ * functions.texi (Defining Functions): Explain about redefining primitives. - (Function Safety): Renamed. Minor changes. + (Function Safety): Rename. Minor changes. Comment out the detailed criteria for what is safe. 2003-06-22 Andreas Schwab @@ -9621,7 +9625,7 @@ * Makefile (infodir, prefix): New vars. (install): Use infodir. - (emacsinfodir): Deleted. + (emacsinfodir): Delete. 1993-05-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -9632,7 +9636,7 @@ 1993-05-16 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) - * Makefile (dist): Changed to use Gzip instead of compress. + * Makefile (dist): Change to use Gzip instead of compress. 1993-04-23 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) === modified file 'doc/lispref/display.texi' --- doc/lispref/display.texi 2011-11-20 02:29:42 +0000 +++ doc/lispref/display.texi 2011-11-20 20:21:22 +0000 @@ -870,15 +870,21 @@ non-@code{nil} (the default), but only because they are explicitly programmed to do so. - However, if a command ends with point inside or immediately before -invisible text, the main editing loop moves point further forward or -further backward (in the same direction that the command already moved -it) until that condition is no longer true. Thus, if the command -moved point back into an invisible range, Emacs moves point back to -the beginning of that range, and then back one more character. If the -command moved point forward into an invisible range, Emacs moves point -forward up to the first visible character that follows the invisible -text. + However, if a command ends with point inside or at the boundary of invisible +text, the main editing loop moves point to one of the two ends of the invisible +text. Which end to move to is chosen based on the following factors: make sure +that the overall movement of the command is still in the same direction, and +prefer a position where an inserted char would not inherit the @code{invisible} +property. Additionally, if the text is not replaced by an ellipsis and the +command only moved within the invisible text, then point is moved one extra +character so as to try and reflect the command's movement by a visible movement +of the cursor. + + Thus, if the command moved point back to an invisible range (with the usual +stickiness), Emacs moves point back to the beginning of that range. If the +command moved point forward into an invisible range, Emacs moves point forward +to the first visible character that follows the invisible text and then forward +one more character. Incremental search can make invisible overlays visible temporarily and/or permanently when a match includes invisible text. To enable ------------------------------------------------------------ revno: 106455 committer: Stefan Monnier branch nick: trunk timestamp: Sun 2011-11-20 15:17:46 -0500 message: * lisp/vc/pcvs-util.el (cvs-pop-to-buffer-same-frame): Use force-same-window. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2011-11-20 19:35:27 +0000 +++ lisp/ChangeLog 2011-11-20 20:17:46 +0000 @@ -1,3 +1,7 @@ +2011-11-20 Stefan Monnier + + * vc/pcvs-util.el (cvs-pop-to-buffer-same-frame): Use force-same-window. + 2011-11-20 Juanma Barranquero * descr-text.el (describe-char-unicode-data): === modified file 'lisp/vc/pcvs-util.el' --- lisp/vc/pcvs-util.el 2011-11-17 09:09:20 +0000 +++ lisp/vc/pcvs-util.el 2011-11-20 20:17:46 +0000 @@ -89,7 +89,7 @@ (or (let ((buf (get-buffer-window buf))) (and buf (select-window buf))) (and pop-up-windows (ignore-errors (select-window (split-window-below))) - (switch-to-buffer buf)) + (switch-to-buffer buf nil 'force-same-window)) (pop-to-buffer (current-buffer))))) (defun cvs-bury-buffer (buf &optional mainbuf) ------------------------------------------------------------ revno: 106454 committer: Stefan Monnier branch nick: trunk timestamp: Sun 2011-11-20 15:17:13 -0500 message: * src/window.c (get_phys_cursor_glyph): Fix Lisp_Object/int mixup. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2011-11-20 19:35:27 +0000 +++ src/ChangeLog 2011-11-20 20:17:13 +0000 @@ -1,3 +1,7 @@ +2011-11-20 Stefan Monnier + + * window.c (get_phys_cursor_glyph): Fix Lisp_Object/int mixup. + 2011-11-20 Juanma Barranquero * nsfont.m (syms_of_nsfont) : Fix typo. === modified file 'src/window.c' --- src/window.c 2011-11-20 10:57:04 +0000 +++ src/window.c 2011-11-20 20:17:13 +0000 @@ -5783,7 +5783,7 @@ if (!row->enabled_p) return NULL; - if (w->hscroll) + if (XINT (w->hscroll)) { /* When the window is hscrolled, cursor hpos can legitimately be out of bounds, but we draw the cursor at the corresponding ------------------------------------------------------------ revno: 106453 committer: Glenn Morris branch nick: trunk timestamp: Sun 2011-11-20 12:14:54 -0800 message: Removed deleted command from gnus.texi. * doc/misc/gnus.texi (Group Information): Remove gnus-group-fetch-faq, command deleted 2010-09-24. diff: === modified file 'doc/misc/ChangeLog' --- doc/misc/ChangeLog 2011-11-20 19:35:27 +0000 +++ doc/misc/ChangeLog 2011-11-20 20:14:54 +0000 @@ -1,3 +1,8 @@ +2011-11-20 Glenn Morris + + * gnus.texi (Group Information): + Remove gnus-group-fetch-faq, command deleted 2010-09-24. + 2011-11-20 Juanma Barranquero * gnus-coding.texi (Gnus Maintenance Guide): === modified file 'doc/misc/gnus.texi' --- doc/misc/gnus.texi 2011-11-20 19:35:27 +0000 +++ doc/misc/gnus.texi 2011-11-20 20:14:54 +0000 @@ -4491,23 +4491,6 @@ @table @kbd -@item H f -@kindex H f (Group) -@findex gnus-group-fetch-faq -@vindex gnus-group-faq-directory -@cindex FAQ -@cindex ange-ftp -Try to fetch the @acronym{FAQ} for the current group -(@code{gnus-group-fetch-faq}). Gnus will try to get the @acronym{FAQ} -from @code{gnus-group-faq-directory}, which is usually a directory on -a remote machine. This variable can also be a list of directories. -In that case, giving a prefix to this command will allow you to choose -between the various sites. @code{ange-ftp} (or @code{efs}) will be -used for fetching the file. - -If fetching from the first site is unsuccessful, Gnus will attempt to go -through @code{gnus-group-faq-directory} and try to open them one by one. - @item H d @itemx C-c C-d @c @icon{gnus-group-describe-group} ------------------------------------------------------------ revno: 106452 committer: Juanma Barranquero branch nick: trunk timestamp: Sun 2011-11-20 20:35:27 +0100 message: Fix typos. diff: === modified file 'admin/ChangeLog' --- admin/ChangeLog 2011-11-20 09:24:06 +0000 +++ admin/ChangeLog 2011-11-20 19:35:27 +0000 @@ -402,7 +402,7 @@ 2009-06-24 Kenichi Handa - * charsets/mapconv: For the UNICODE format files, do reverse sort + * charsets/mapconv: For the Unicode format files, do reverse sort and don't compact the map. This is to prefer the first one in the duplicated mappings (e.g. 0x20->U+0020, 0x20->U+00A0). === modified file 'admin/grammars/java-tags.wy' --- admin/grammars/java-tags.wy 2011-08-04 00:58:07 +0000 +++ admin/grammars/java-tags.wy 2011-11-20 19:35:27 +0000 @@ -740,7 +740,7 @@ wisent-java-tags-wy---regexp-analyzer wisent-java-tags-wy---string-analyzer wisent-java-tags-wy---block-analyzer - ;; In theory, unicode chars should be turned into normal chars + ;; In theory, Unicode chars should be turned into normal chars ;; and then combined into regular ascii keywords and text. This ;; analyzer just keeps these things from making the lexer go boom. wisent-java-tags-wy---regexp-analyzer === modified file 'admin/notes/nextstep' --- admin/notes/nextstep 2011-11-14 23:59:56 +0000 +++ admin/notes/nextstep 2011-11-20 19:35:27 +0000 @@ -83,7 +83,7 @@ Cocoa, these were removed and Quartz drawing functions replaced them. In both cases, font glyphs are accessed through UTF8 character -representations. It would be preferable to use unicode indices, but prior +representations. It would be preferable to use Unicode indices, but prior attempts at this have failed. Multi-script fontsets are auto-created in nsfont_make_fontset_for_font() using === modified file 'doc/emacs/ChangeLog' --- doc/emacs/ChangeLog 2011-11-17 17:40:48 +0000 +++ doc/emacs/ChangeLog 2011-11-20 19:35:27 +0000 @@ -1,3 +1,7 @@ +2011-11-20 Juanma Barranquero + + * msdog.texi (Windows Fonts): Fix typo. + 2011-11-17 Glenn Morris * regs.texi (Bookmarks): Small fixes related to saving. (Bug#10058) === modified file 'doc/emacs/msdog.texi' --- doc/emacs/msdog.texi 2011-11-17 17:40:48 +0000 +++ doc/emacs/msdog.texi 2011-11-20 19:35:27 +0000 @@ -914,7 +914,7 @@ @vindex w32-charset-info-alist @item registry Specifies the character set registry that the font is -expected to cover. Most TrueType and OpenType fonts will be unicode fonts +expected to cover. Most TrueType and OpenType fonts will be Unicode fonts that cover several national character sets, but you can narrow down the selection of fonts to those that support a particular character set by using a specific registry from @code{w32-charset-info-alist} here. @@ -936,9 +936,9 @@ @table @code @cindex font scripts (MS Windows) -@cindex font unicode subranges (MS Windows) +@cindex font Unicode subranges (MS Windows) @item script -Specifies a unicode subrange the font should support. +Specifies a Unicode subrange the font should support. The following scripts are recognized on Windows: @code{latin}, @code{greek}, @code{coptic}, @code{cyrillic}, @code{armenian}, @code{hebrew}, @code{arabic}, === modified file 'doc/lispref/ChangeLog' --- doc/lispref/ChangeLog 2011-11-20 10:57:04 +0000 +++ doc/lispref/ChangeLog 2011-11-20 19:35:27 +0000 @@ -2255,7 +2255,7 @@ (Future Local Variables): Node deleted. * objects.texi (General Escape Syntax): Update explanation of - unicode escape syntax. + Unicode escape syntax. 2009-02-23 Chong Yidong === modified file 'doc/misc/ChangeLog' --- doc/misc/ChangeLog 2011-11-20 03:48:53 +0000 +++ doc/misc/ChangeLog 2011-11-20 19:35:27 +0000 @@ -5,7 +5,9 @@ * ede.texi (ede-compilation-program, ede-compiler, ede-linker): * eieio.texi (Customizing): - * gnus-news.texi: Fix typos. + * gnus.texi (Article Washing): + * gnus-news.texi: + * sem-user.texi (Smart Jump): Fix typos. 2011-11-16 Juanma Barranquero === modified file 'doc/misc/gnus.texi' --- doc/misc/gnus.texi 2011-11-20 07:30:16 +0000 +++ doc/misc/gnus.texi 2011-11-20 19:35:27 +0000 @@ -8992,7 +8992,7 @@ Translate many non-@acronym{ASCII} characters into their @acronym{ASCII} equivalents (@code{gnus-article-treat-non-ascii}). This is mostly useful if you're on a terminal that has a limited font -and does't show accented characters, ``advanced'' punctuation, and the +and doesn't show accented characters, ``advanced'' punctuation, and the like. For instance, @samp{} is tranlated into @samp{>>}, and so on. @item W Y f === modified file 'doc/misc/sem-user.texi' --- doc/misc/sem-user.texi 2011-11-14 21:00:24 +0000 +++ doc/misc/sem-user.texi 2011-11-20 19:35:27 +0000 @@ -880,7 +880,7 @@ @end example @end defun -These commands are often more accurate than than the @code{find-tag} +These commands are often more accurate than the @code{find-tag} command (@pxref{Tags,,,emacs,Emacs manual}), because the Semantic Analyzer is context-sensitive. === modified file 'etc/ChangeLog' --- etc/ChangeLog 2011-11-18 08:31:02 +0000 +++ etc/ChangeLog 2011-11-20 19:35:27 +0000 @@ -1413,7 +1413,7 @@ 2008-02-01 Kenichi Handa - * HELLO: Remove non-unicode character from Tibetan text. + * HELLO: Remove non-Unicode character from Tibetan text. 2008-02-01 Miles Bader === modified file 'etc/NEWS.22' --- etc/NEWS.22 2011-11-20 03:48:53 +0000 +++ etc/NEWS.22 2011-11-20 19:35:27 +0000 @@ -1275,7 +1275,7 @@ of a file. *** New command `ucs-insert' inserts a character specified by its -unicode. +Unicode code point or character name. *** New command quail-show-key shows what key (or key sequence) to type in the current input method to input a character at point. === modified file 'etc/NEWS.23' --- etc/NEWS.23 2011-11-16 17:47:25 +0000 +++ etc/NEWS.23 2011-11-20 19:35:27 +0000 @@ -843,7 +843,7 @@ *** There is a new charset implementation with many new charsets. See M-x list-character-sets. New charsets can be defined conveniently -as tables of unicodes. +as tables of Unicode code points. *** There are new language environments for Chinese-GBK, Chinese-GB18030, Khmer, Bengali, Punjabi, Gujarati, Oriya, Telugu, @@ -1837,7 +1837,7 @@ ** BDF fonts no longer supported on MS-Windows. The font backend was completely rewritten for this release. The focus -on Windows has been getting acceptable performance and full unicode +on Windows has been getting acceptable performance and full Unicode support, including complex script shaping for native Windows fonts. A rewrite of the BDF font support has not happened due to lack of time and developers. If demand still exists for such a backend even with === modified file 'etc/TODO' --- etc/TODO 2011-11-16 17:47:25 +0000 +++ etc/TODO 2011-11-20 19:35:27 +0000 @@ -205,7 +205,7 @@ scroll bars are extensible. ** Provide user-friendly ways to list all available font families, - list fonts, display a font as a sample, etc. [fx is looking at + list fonts, display a font as a sample, etc. [fx is looking at multilingual font selection for the Unicode branch of Emacs.] ** Provide a convenient way to select a color with the mouse. @@ -635,7 +635,7 @@ *** Other / Low Priority: -**** Better recognition of unicode scripts / Greek / composition. +**** Better recognition of Unicode scripts / Greek / composition. **** Undo for color-drag face customization. === modified file 'leim/CXTERM-DIC/CCDOSPY.tit' --- leim/CXTERM-DIC/CCDOSPY.tit 2011-06-12 10:37:40 +0000 +++ leim/CXTERM-DIC/CCDOSPY.tit 2011-11-20 19:35:27 +0000 @@ -2,7 +2,7 @@ # Header added for Emacs # # This file is included in the directory contrib/clients/cxterm of the -# distribution of X11R6. As the file itself does't contain copyright +# distribution of X11R6. As the file itself doesn't contain copyright # and license notices, the following statements in the section 6 of # the file .../cxterm/README covers it. # === modified file 'leim/CXTERM-DIC/PY-b5.tit' --- leim/CXTERM-DIC/PY-b5.tit 2011-06-12 10:37:40 +0000 +++ leim/CXTERM-DIC/PY-b5.tit 2011-11-20 19:35:27 +0000 @@ -2,7 +2,7 @@ # Header added for Emacs # # This file is included in the directory contrib/clients/cxterm of the -# distribution of X11R6. As the file itself does't contain copyright +# distribution of X11R6. As the file itself doesn't contain copyright # and license notices, the following statements in the section 6 of # the file .../cxterm/README covers it. # === modified file 'leim/CXTERM-DIC/SW.tit' --- leim/CXTERM-DIC/SW.tit 2011-06-12 10:37:40 +0000 +++ leim/CXTERM-DIC/SW.tit 2011-11-20 19:35:27 +0000 @@ -2,7 +2,7 @@ # Header added for Emacs # # This file is included in the directory contrib/clients/cxterm of the -# distribution of X11R6. As the file itself does't contain copyright +# distribution of X11R6. As the file itself doesn't contain copyright # and license notices, the following statements in the section 6 of # the file .../cxterm/README covers it. # === modified file 'leim/CXTERM-DIC/TONEPY.tit' --- leim/CXTERM-DIC/TONEPY.tit 2011-06-12 10:37:40 +0000 +++ leim/CXTERM-DIC/TONEPY.tit 2011-11-20 19:35:27 +0000 @@ -2,7 +2,7 @@ # Header added for Emacs # # This file is included in the directory contrib/clients/cxterm of the -# distribution of X11R6. As the file itself does't contain copyright +# distribution of X11R6. As the file itself doesn't contain copyright # and license notices, the following statements in the section 6 of # the file .../cxterm/README covers it. # === modified file 'leim/ChangeLog' --- leim/ChangeLog 2011-11-16 12:34:47 +0000 +++ leim/ChangeLog 2011-11-20 19:35:27 +0000 @@ -1,3 +1,7 @@ +2011-11-20 Juanma Barranquero + + * quail/hangul.el (hangul-character): Fix typo. + 2011-09-27 Jambunathan K * quail/indian.el (quail-tamil-itrans-misc-table): Delete it. === modified file 'leim/quail/hangul.el' --- leim/quail/hangul.el 2011-01-25 04:08:28 +0000 +++ leim/quail/hangul.el 2011-11-20 19:35:27 +0000 @@ -112,7 +112,7 @@ (defun hangul-character (cho jung jong) "Convert CHO, JUNG, JONG to the precomposed `Hangul Syllables' character. -CHO, JUNG, JONG are relative indices in `Hangul Compatibility Jamo' of unicode. +CHO, JUNG, JONG are relative indices in `Hangul Compatibility Jamo' of Unicode. Return a zero-length string if the conversion fails." (or (decode-char === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2011-11-20 06:37:46 +0000 +++ lisp/ChangeLog 2011-11-20 19:35:27 +0000 @@ -1,3 +1,11 @@ +2011-11-20 Juanma Barranquero + + * descr-text.el (describe-char-unicode-data): + * json.el (json-string-escape): + * mail/footnote.el (footnote-unicode-string, footnote-unicode-regexp) + (Footnote-unicode, Footnote-style-p): + * net/ntlm.el (ntlm-get-password-hashes): Fix typos. + 2011-11-20 Chong Yidong * window.el (replace-buffer-in-windows): Restore interactive spec. === modified file 'lisp/ChangeLog.10' --- lisp/ChangeLog.10 2011-11-20 03:48:53 +0000 +++ lisp/ChangeLog.10 2011-11-20 19:35:27 +0000 @@ -2016,7 +2016,7 @@ 2003-05-28 Andreas Schwab * descr-text.el (describe-char): Use `char' instead of - `(char-after)'. Fix display of unicode. + `(char-after)'. Fix display of Unicode. 2003-05-28 Nick Roberts @@ -2429,8 +2429,8 @@ 2003-05-21 Dave Love * descr-text.el (unicodedata-file): New. - (unicode-data): New (adapted from unicode branch). - (describe-char): Use it. Print char's unicode differently. + (unicode-data): New (adapted from Unicode branch). + (describe-char): Use it. Print char's Unicode code point differently. Avoid elements with null cadr when formatting list. Clarify error message when used in Help buffer. (button): Require when compiling. @@ -17991,7 +17991,7 @@ * international/ucs-tables.el (ucs-unify-8859, ucs-fragment-8859): Use unify-8859-on-decoding-mode. (unify-8859-on-decoding-mode): Also set translation-table-for-input. - (ucs-insert): Give an error if the unicode char can't be created. + (ucs-insert): Give an error if the Unicode char can't be created. * pcvs-parse.el (cvs-parse-table): Be a bit more lenient. (cvs-parse-status): Handle the "used to have a conflict" marker. @@ -19206,7 +19206,7 @@ * language/cyril-util.el (cyrillic-encode-koi8-r-char) (cyrillic-encode-alternativnyj-char): Get translation tables from symbol properties, not as variables. - (standard-display-cyrillic-translit): Include unicodes. + (standard-display-cyrillic-translit): Include Unicode characters. 2002-02-06 Kim F. Storm === modified file 'lisp/ChangeLog.11' --- lisp/ChangeLog.11 2011-11-15 00:54:19 +0000 +++ lisp/ChangeLog.11 2011-11-20 19:35:27 +0000 @@ -6884,7 +6884,7 @@ 2004-05-22 Richard M. Stallman - * textmodes/paragraphs.el (sentence-end): Match unicode curly quotes + * textmodes/paragraphs.el (sentence-end): Match Unicode curly quotes as a close quote. * textmodes/bibtex.el: Use assoc-string, not assoc-ignore-case. @@ -7074,7 +7074,7 @@ 2004-05-14 Stefan Monnier * descr-text.el (describe-char-unicode-data) - (describe-char-unicodedata-file): Re-enable the unicode code now that + (describe-char-unicodedata-file): Re-enable the Unicode code now that the licensing issues have been cleared in the unicode-4 license. (describe-text-properties-1): Remove unused `overlay' var. (describe-char): Remove unused var `buffer'. === modified file 'lisp/ChangeLog.12' --- lisp/ChangeLog.12 2011-11-20 02:29:42 +0000 +++ lisp/ChangeLog.12 2011-11-20 19:35:27 +0000 @@ -1741,8 +1741,8 @@ * outline.el (hide-sublevels): Keep empty last line, if available. - * buff-menu.el (list-buffers-noselect): Use explicit unicode code - rather than the corresponding unicode char, to make the code + * buff-menu.el (list-buffers-noselect): Use explicit Unicode code + rather than the corresponding Unicode char, to make the code more readable. 2007-02-19 Juanma Barranquero === modified file 'lisp/ChangeLog.13' --- lisp/ChangeLog.13 2011-11-20 03:48:53 +0000 +++ lisp/ChangeLog.13 2011-11-20 19:35:27 +0000 @@ -315,7 +315,7 @@ * language/ethio-util.el: * international/characters.el: Use utf-8 rather than utf-8-emacs since it works as well and has the advantage of working with - non-unicode versions of Emacs. + non-Unicode versions of Emacs. * international/encoded-kb.el (encoded-kbd-setup-display): Use the new multi-tty code, which includes the previous local change. @@ -1171,7 +1171,7 @@ * international/encoded-kb.el (encoded-kbd-self-insert-charset) (encoded-kbd-self-insert-utf-8, encoded-kbd-setup-keymap) - (encoded-kbd-mode): Adjust code merged from trunk for unicode branch. + (encoded-kbd-mode): Adjust code merged from trunk for Unicode branch. 2008-02-01 Kenichi Handa @@ -1668,7 +1668,7 @@ 2008-02-01 Kenichi Handa * international/fontset.el: Enable the default fontset to use - unicode fonts for ASCII characters. + Unicode fonts for ASCII characters. (x-decompose-font-name): Don't try to resolve PATTERN by x-resolve-font-name. (x-complement-fontset-spec): Never prepend an ASCII font. @@ -2331,9 +2331,9 @@ New coding systems. ("Chinese-GBK"): New environment. - * language/thai-util.el: Remove redundant unicodes in category-setting. - - * language/lao-util.el: Remove redundant unicodes in category-setting. + * language/thai-util.el: + * language/lao-util.el: Remove redundant Unicode characters + in category-setting. * international/mule-conf.el (japanese-jisx0213-1) (japanese-jisx0213-2): Add unify-map. @@ -2358,7 +2358,8 @@ * language/cyril-util.el (cyrillic-encode-koi8-r-char) (cyrillic-encode-alternativnyj-char): Fix. - (standard-display-cyrillic-translit): Remove redundant unicodes. + (standard-display-cyrillic-translit): + Remove redundant Unicode characters. 2008-02-01 Dave Love @@ -2417,7 +2418,7 @@ lengths of the pair. * international/characters.el: Add Vietnamese category to - equivalent unicodes. + equivalent Unicode characters. 2008-02-01 Dave Love @@ -2518,7 +2519,7 @@ (print-designation): Partial re-write. (describe-coding-system): Deal with iso-2022 designations, flags. Fix shift_jis case. - (describe-char-after): Use characterp. Print explicit unicode. + (describe-char-after): Use characterp. Print explicit Unicode code point. Remove some obsolete code. (print-coding-system-briefly): Fix printing aliases. (print-coding-system): Use coding-system-aliases. @@ -2587,7 +2588,7 @@ * Makefile.in: Cancel the 2008-02-01 change of mine. - * international/fontset.el: Add setting for unicode font at the + * international/fontset.el: Add setting for Unicode font at the end of the default fontset. 2008-02-01 Dave Love @@ -2742,7 +2743,7 @@ * international/ja-dic-utl.el (skkdic-jisx0208-hiragana-block): Fix the initial value to specify character range of - japanese-jisx0208, not unicode. + japanese-jisx0208, not Unicode. * international/characters.el: Set syntax/category for japanese-jisx0208. @@ -6265,7 +6266,7 @@ delete .elc files. * nxml/char-name/unicode: Move to etc/nxml/. - * nxml/nxml-uchnm.el (top-level): Adapt for moved unicode files. + * nxml/nxml-uchnm.el (top-level): Adapt for moved Unicode files. * nxml/nxml-enc.el (xmltok-get-declared-encoding-position): Declare as a function. @@ -15910,7 +15911,7 @@ 2007-06-08 Stefan Monnier * textmodes/css-mode.el (css-navigation-syntax-table): - Use set-char-table-range so it also works in the unicode branch. + Use set-char-table-range so it also works in the Unicode branch. 2007-06-08 Nick Roberts === modified file 'lisp/ChangeLog.14' --- lisp/ChangeLog.14 2011-11-20 02:29:42 +0000 +++ lisp/ChangeLog.14 2011-11-20 19:35:27 +0000 @@ -30,7 +30,7 @@ 2009-06-19 Kenichi Handa * international/fontset.el (setup-default-fontset): Add a spec of - non-OTF unicode font for Thai. + non-OTF Unicode font for Thai. * fringe.el: Add coding: utf-8 cookie. @@ -8483,7 +8483,7 @@ 2008-07-31 Chong Yidong - * Makefile.in: Avoid maintainer warning for autogenerated unicode + * Makefile.in: Avoid maintainer warning for autogenerated Unicode files. * apropos.el (apropos-symbol): Don't set button skip by default. @@ -16095,10 +16095,10 @@ covering IPA (previously Latin), Phonetic Extensions and Phonetic Extensions Supplement (both previously unassigned). - * international/fontset.el (setup-default-fontset): Use unicode fonts + * international/fontset.el (setup-default-fontset): Use Unicode fonts that cover bopomofo script for bopomofo. Likewise for braille and mathematical. - Use unicode scripts that cover the phonetic script for IPA. + Use Unicode scripts that cover the phonetic script for IPA. 2008-04-01 Johan Bockgård === modified file 'lisp/ChangeLog.5' --- lisp/ChangeLog.5 2011-11-20 02:29:42 +0000 +++ lisp/ChangeLog.5 2011-11-20 19:35:27 +0000 @@ -475,8 +475,8 @@ * viper.el (vip-put-back, vip-Put-back): Now emulate Vi's behavior more closely. - * viper.el (vip-line): No longer not bombs out. - (vip-exec-shift) now preserves the point. + * viper.el (vip-line): No longer bombs out. + (vip-exec-shift): Now preserves the point. * viper.el: Fixed the behavior of the Vi commands M, L, G, yw, dg, etc. @@ -2880,7 +2880,7 @@ 1995-03-02 Simon Marshall - * font-lock.el (font-lock-maximum-decoration) New variable. + * font-lock.el (font-lock-maximum-decoration): New variable. (font-lock-after-fontify-buffer-hook): New variable. (font-lock-fontify-buffer): Run it after fontifying. (font-lock-thing-lock-cleanup): New function to turn things off. @@ -4133,7 +4133,7 @@ * startup.el (command-line-1): Handle -f with kbd macro. - * msb.el (mouse-select-buffer) Handle an aborted selection. + * msb.el (mouse-select-buffer): Handle an aborted selection. 1995-01-11 Richard Stallman @@ -4522,7 +4522,7 @@ * gud.el (gdb): Correct tbreak doc string. (gud-mode): Define a Gud menu. (gdb): Set debugger-specific menu entries. - (sdb) (dbx) (xdb): Likewise. + (sdb, dbx, xdb): Likewise. 1994-12-22 Richard Stallman @@ -6861,7 +6861,7 @@ (Man-mode-map): Changed the meanings of ",", ".", "q". Added new keys ">", "<", "k". (Man-page-mode-string): Function deleted. - (Man-init-defvars): New function used for initialising the system + (Man-init-defvars): New function used for initializing the system and environment dependent variables Man-fontify-manpage-flag, Man-uses-untabify, Man-sed-script, Man-filter-list. (Man-delete-trailing-newlines): Function deleted. @@ -8114,9 +8114,9 @@ Modified to work with remote and compressed files. * ediff.el (ediff-read-file-name, ediff-buffers): Better defaults. - (ediff-read-file-name) Handle OS/2. + (ediff-read-file-name): Handle OS/2. - * ediff.el (ediff-forward-word-function) New function. + * ediff.el (ediff-forward-word-function): New function. (ediff-wordify-function): Variable deleted. (ediff-toggle-regexp-match, ediff-hide-regexp-matches): New functions. (ediff-focus-on-regexp-matches): New function. @@ -8813,7 +8813,7 @@ (gnus-uu-ask-to-save-file): New function. * gnus-uu.el (gnus-uu-interactive-set-up-windows): New function. - (gnus-uu-interactive-scan-directory) New function. + (gnus-uu-interactive-scan-directory): New function. (gnus-uu-interactive-rescan-directory): New function. (gnus-uu-ignore-files-by-name, gnus-uu-ignore-files-by-type): New vars. (gnus-uu-interactive-execute): Change directory to work dir before === modified file 'lisp/cedet/semantic/db-find.el' --- lisp/cedet/semantic/db-find.el 2011-11-14 23:59:56 +0000 +++ lisp/cedet/semantic/db-find.el 2011-11-20 19:35:27 +0000 @@ -675,7 +675,7 @@ ;; ;; NOTE: Not used if EDE is active! ((and (semanticdb-find-throttle-active-p 'project) - ;; And dont do this if it is a system include. Not supported by all languages, + ;; And don't do this if it is a system include. Not supported by all languages, ;; but when it is, this is a nice fast way to skip this step. (not (semantic-tag-include-system-p includetag)) ;; Don't do this if we have an EDE project. === modified file 'lisp/cedet/semantic/wisent/javat-wy.el' --- lisp/cedet/semantic/wisent/javat-wy.el 2011-08-04 00:58:07 +0000 +++ lisp/cedet/semantic/wisent/javat-wy.el 2011-11-20 19:35:27 +0000 @@ -669,7 +669,7 @@ wisent-java-tags-wy---regexp-analyzer wisent-java-tags-wy---string-analyzer wisent-java-tags-wy---block-analyzer - ;; In theory, unicode chars should be turned into normal chars + ;; In theory, Unicode chars should be turned into normal chars ;; and then combined into regular ascii keywords and text. This ;; analyzer just keeps these things from making the lexer go boom. wisent-java-tags-wy---regexp-analyzer === modified file 'lisp/cedet/semantic/wisent/python.el' --- lisp/cedet/semantic/wisent/python.el 2011-11-14 21:00:24 +0000 +++ lisp/cedet/semantic/wisent/python.el 2011-11-20 19:35:27 +0000 @@ -43,7 +43,7 @@ ;; The 'r' prefix means raw, i.e., normal backslash substitutions are ;; to be suppressed. For example, r"01\n34" is a string with six ;; characters 0, 1, \, n, 3 and 4. The 'u' prefix means the following -;; string is a unicode. +;; string is Unicode. (defconst wisent-python-string-re (concat (regexp-opt '("r" "u" "ur" "R" "U" "UR" "Ur" "uR") t) "?['\"]") === modified file 'lisp/descr-text.el' --- lisp/descr-text.el 2011-10-19 22:35:48 +0000 +++ lisp/descr-text.el 2011-11-20 19:35:27 +0000 @@ -221,7 +221,7 @@ file)) (defun describe-char-unicode-data (char) - "Return a list of Unicode data for unicode CHAR. + "Return a list of Unicode data for Unicode CHAR. Each element is a list of a property description and the property value. The list is null if CHAR isn't found in `describe-char-unicodedata-file'. This function is semi-obsolete. Use `get-char-code-property'." === modified file 'lisp/emacs-lisp/tabulated-list.el' --- lisp/emacs-lisp/tabulated-list.el 2011-11-14 06:27:12 +0000 +++ lisp/emacs-lisp/tabulated-list.el 2011-11-20 19:35:27 +0000 @@ -146,7 +146,7 @@ (defvar tabulated-list-glyphless-char-display (let ((table (make-char-table 'glyphless-char-display nil))) (set-char-table-parent table glyphless-char-display) - ;; Some text terminals can't display the unicode arrows; be safe. + ;; Some text terminals can't display the Unicode arrows; be safe. (aset table 9650 (cons nil "^")) (aset table 9660 (cons nil "v")) table) === modified file 'lisp/follow.el' --- lisp/follow.el 2011-11-20 07:30:16 +0000 +++ lisp/follow.el 2011-11-20 19:35:27 +0000 @@ -154,7 +154,7 @@ ;; follow-delete-other-windows-and-split C-c . 1 ;; Maximize the visible area of the current buffer, ;; and enter Follow mode. This is a very convenient -;; way to start Follow mode, hence we recomend that +;; way to start Follow mode, hence we recommend that ;; this command be added to the global keymap. ;; ;; follow-recenter C-c . C-l === modified file 'lisp/gnus/ChangeLog.2' --- lisp/gnus/ChangeLog.2 2011-11-20 03:48:53 +0000 +++ lisp/gnus/ChangeLog.2 2011-11-20 19:35:27 +0000 @@ -8170,7 +8170,7 @@ 2002-09-03 Simon Josefsson - * nntp.el (nntp-wait-for-string): Dont infloop if process died. + * nntp.el (nntp-wait-for-string): Don't infloop if process died. * gnus-agent.el (gnus-agent-batch): Add doc. === modified file 'lisp/gnus/nnir.el' --- lisp/gnus/nnir.el 2011-11-02 07:28:14 +0000 +++ lisp/gnus/nnir.el 2011-11-20 19:35:27 +0000 @@ -1269,7 +1269,7 @@ ;; nnir-search failure reason is in this buffer, show it if ;; the user wants it. (when (> gnus-verbose 6) - (display-buffer nnir-tmp-buffer)))) ;; FIXME: Dont clear buffer ! + (display-buffer nnir-tmp-buffer)))) ;; FIXME: Don't clear buffer ! (message "Doing hyrex-search query \"%s\"...done" qstring) (sit-for 0) ;; nnir-search returns: === modified file 'lisp/gnus/smime.el' --- lisp/gnus/smime.el 2011-11-20 07:30:16 +0000 +++ lisp/gnus/smime.el 2011-11-20 19:35:27 +0000 @@ -99,7 +99,7 @@ ;; ;; I would include pointers to introductory text on concepts used in ;; this library here, but the material I've read are so horrible I -;; don't want to recomend them. +;; don't want to recommend them. ;; ;; Why can't someone write a simple introduction to all this stuff? ;; Until then, much of this resemble security by obscurity. === modified file 'lisp/international/mule-conf.el' --- lisp/international/mule-conf.el 2011-10-26 14:07:31 +0000 +++ lisp/international/mule-conf.el 2011-11-20 19:35:27 +0000 @@ -218,7 +218,7 @@ (fmakunbound 'define-iso-single-byte-charset) ;; Can this be shared with 8859-11? -;; N.b. not all of these are defined unicodes. +;; N.b. not all of these are defined in Unicode. (define-charset 'thai-tis620 "TIS620.2533" :short-name "TIS620.2533" @@ -865,7 +865,7 @@ ;; Lao script. ;; Codes 0x21..0x7E are mapped to Unicode U+0E81..U+0EDF. -;; Not all of them are defined unicodes. +;; Not all of them are defined in Unicode. (define-charset 'lao "Lao characters (ISO10646 0E81..0EDF)" :short-name "Lao" === modified file 'lisp/json.el' --- lisp/json.el 2011-10-17 17:40:27 +0000 +++ lisp/json.el 2011-11-20 19:35:27 +0000 @@ -166,7 +166,7 @@ (put 'json-number-format 'error-conditions '(json-number-format json-error error)) -(put 'json-string-escape 'error-message "Bad unicode escape") +(put 'json-string-escape 'error-message "Bad Unicode escape") (put 'json-string-escape 'error-conditions '(json-string-escape json-error error)) === modified file 'lisp/mail/footnote.el' --- lisp/mail/footnote.el 2011-10-20 00:26:14 +0000 +++ lisp/mail/footnote.el 2011-11-20 19:35:27 +0000 @@ -294,14 +294,14 @@ ;; Unicode (defconst footnote-unicode-string "⁰¹²³⁴⁵⁶⁷⁸⁹" - "String of unicode footnoting characters.") + "String of Unicode footnoting characters.") (defconst footnote-unicode-regexp (concat "[" footnote-unicode-string "]+") - "Regexp for unicode footnoting characters.") + "Regexp for Unicode footnoting characters.") (defun Footnote-unicode (n) "Unicode footnote style. -Use unicode characters for footnoting." +Use Unicode characters for footnoting." (let (modulus result done) (while (not done) (setq modulus (mod n 10) @@ -348,7 +348,7 @@ ;;; Style utilities & functions (defun Footnote-style-p (style) - "Return non-nil if style is a valid style known to footnote-mode." + "Return non-nil if style is a valid style known to `footnote-mode'." (assq style footnote-style-alist)) (defun Footnote-index-to-string (index) === modified file 'lisp/mh-e/ChangeLog' --- lisp/mh-e/ChangeLog 2011-11-20 03:48:53 +0000 +++ lisp/mh-e/ChangeLog 2011-11-20 19:35:27 +0000 @@ -352,7 +352,7 @@ 2008-06-20 Stephen Eglen - * mh-show.el (mh-defun-show-buffer): Use `...' rather than than + * mh-show.el (mh-defun-show-buffer): Use `...' rather than "..." in generated docstrings. 2008-06-12 Glenn Morris === modified file 'lisp/mh-e/mh-utils.el' --- lisp/mh-e/mh-utils.el 2011-11-20 03:48:53 +0000 +++ lisp/mh-e/mh-utils.el 2011-11-20 19:35:27 +0000 @@ -488,7 +488,7 @@ ;; The car of folder is the name, and the cdr is either t or some ;; sort of count that I do not understand. It's too small to be the ;; number of messages in the sub-folders and too large to be the -;; number of sub-folders. XXX" +;; number of sub-folders. XXX `(if (cdr ,folder) t nil)) === modified file 'lisp/net/ntlm.el' --- lisp/net/ntlm.el 2011-01-25 04:08:28 +0000 +++ lisp/net/ntlm.el 2011-11-20 19:35:27 +0000 @@ -102,8 +102,8 @@ (md4-pack-int16 ld) ;domain field, count field (md4-pack-int16 ld) ;domain field, max count field (md4-pack-int32 (cons 0 off-d)) ;domain field, offset field - user ;bufer field - domain ;bufer field + user ;buffer field + domain ;buffer field ))) (eval-when-compile @@ -207,16 +207,16 @@ ;; buffer field lmRespData ;lmResponse, 24 bytes ntRespData ;ntResponse, 24 bytes - (ntlm-ascii2unicode domain ;unicode domain string, 2*ld bytes + (ntlm-ascii2unicode domain ;Unicode domain string, 2*ld bytes (length domain)) ; - (ntlm-ascii2unicode user ;unicode user string, 2*lu bytes + (ntlm-ascii2unicode user ;Unicode user string, 2*lu bytes (length user)) ; - (ntlm-ascii2unicode user ;unicode user string, 2*lu bytes + (ntlm-ascii2unicode user ;Unicode user string, 2*lu bytes (length user)) ; ))) (defun ntlm-get-password-hashes (password) - "Return a pair of SMB hash and NT MD4 hash of the given password PASSWORD" + "Return a pair of SMB hash and NT MD4 hash of the given password PASSWORD." (list (ntlm-smb-passwd-hash password) (ntlm-md4hash password))) @@ -526,7 +526,7 @@ (setq len (length passwd)) (if (> len 128) (setq len 128)) - ;; Password must be converted to NT unicode + ;; Password must be converted to NT Unicode (setq wpwd (ntlm-ascii2unicode passwd len)) ;; Calculate length in bytes (setq len (* len 2)) === modified file 'lisp/net/rcirc.el' --- lisp/net/rcirc.el 2011-10-28 14:47:50 +0000 +++ lisp/net/rcirc.el 2011-11-20 19:35:27 +0000 @@ -659,7 +659,7 @@ (defun rcirc-disconnect-buffer (&optional buffer) (with-current-buffer (or buffer (current-buffer)) ;; set rcirc-target to nil for each channel so cleanup - ;; doesnt happen when we reconnect + ;; doesn't happen when we reconnect (setq rcirc-target nil) (setq mode-line-process ":disconnected"))) === modified file 'lisp/org/ChangeLog' --- lisp/org/ChangeLog 2011-11-20 09:44:39 +0000 +++ lisp/org/ChangeLog 2011-11-20 19:35:27 +0000 @@ -1,3 +1,7 @@ +2011-11-20 Juanma Barranquero + + * org.el (org-link-unescape, org-link-unescape-compound): Fix typos. + 2011-11-20 Andreas Schwab * org-list.el (org-list-send-item): Use sort instead of sort*. @@ -4173,7 +4177,7 @@ 2011-07-28 David Maus - * org.el (org-link-escape): New unicode aware percent encoding + * org.el (org-link-escape): New Unicode aware percent encoding algorithm. 2011-07-28 Sebastian Rose @@ -4181,7 +4185,7 @@ * org-protocol.el (org-protocol-unhex-single-byte-sequence): New function. Decode hex-encoded singly byte sequences. (org-protocol-unhex-compound): Use new function if decoding sequence - as unicode character failed. + as Unicode character failed. 2011-07-28 Bastien Guerry @@ -14394,7 +14398,7 @@ 2009-08-06 Carsten Dominik * org.el (org-edit-src-code, org-edit-fixed-width-region): Use a - better bufer-generating mechanism. + better buffer-generating mechanism. (org-edit-src-find-buffer): New function. * org-icalendar.el (org-print-icalendar-entries): Don't check for === modified file 'lisp/org/org.el' --- lisp/org/org.el 2011-11-17 17:40:48 +0000 +++ lisp/org/org.el 2011-11-20 19:35:27 +0000 @@ -8775,8 +8775,8 @@ (char-to-string char))) text ""))) (defun org-link-unescape (str) - "Unhex hexified unicode strings as returned from the JavaScript function -encodeURIComponent. E.g. `%C3%B6' is the german Umlaut `ö'." + "Unhex hexified Unicode strings as returned from the JavaScript function +encodeURIComponent. E.g. `%C3%B6' is the german Umlaut `ö'." (unless (and (null str) (string= "" str)) (let ((pos 0) (case-fold-search t) unhexed) (while (setq pos (string-match "\\(%[0-9a-f][0-9a-f]\\)+" str pos)) @@ -8786,7 +8786,7 @@ str) (defun org-link-unescape-compound (hex) - "Unhexify unicode hex-chars. E.g. `%C3%B6' is the German Umlaut `ö'. + "Unhexify Unicode hex-chars. E.g. `%C3%B6' is the German Umlaut `ö'. Note: this function also decodes single byte encodings like `%E1' (\"á\") if not followed by another `%[A-F0-9]{2}' group." (save-match-data === modified file 'lisp/progmodes/gdb-mi.el' --- lisp/progmodes/gdb-mi.el 2011-11-20 02:29:42 +0000 +++ lisp/progmodes/gdb-mi.el 2011-11-20 19:35:27 +0000 @@ -74,7 +74,7 @@ ;; GDB in Emacs on Mac OSX works best with FSF GDB as Apple have made ;; some changes to the version that they include as part of Mac OSX. ;; This requires GDB version 7.0 or later (estimated release date Aug 2009) -;; as earlier versions don not compile on Mac OSX. +;; as earlier versions do not compile on Mac OSX. ;;; Known Bugs: @@ -3578,7 +3578,7 @@ (gud-basic-call (concat "-gdb-set variable " var " = " value))))) -;; Dont display values of arrays or structures. +;; Don't display values of arrays or structures. ;; These can be expanded using gud-watch. (defun gdb-locals-handler-custom () (let ((locals-list (bindat-get-field (gdb-json-partial-output) 'locals)) === modified file 'lisp/progmodes/python.el' --- lisp/progmodes/python.el 2011-11-20 02:29:42 +0000 +++ lisp/progmodes/python.el 2011-11-20 19:35:27 +0000 @@ -1549,7 +1549,7 @@ (if path (concat path path-separator)) data-directory) process-environment)) - ;; If we use a pipe, unicode characters are not printed + ;; If we use a pipe, Unicode characters are not printed ;; correctly (Bug#5794) and IPython does not work at ;; all (Bug#5390). (process-connection-type t)) === modified file 'lisp/term/ns-win.el' --- lisp/term/ns-win.el 2011-11-15 01:04:06 +0000 +++ lisp/term/ns-win.el 2011-11-20 19:35:27 +0000 @@ -662,7 +662,7 @@ (defvar ns-reg-to-script) ; nsfont.m ;; This maps font registries (not exposed by NS APIs for font selection) to -;; unicode scripts (which can be mapped to unicode character ranges which are). +;; Unicode scripts (which can be mapped to Unicode character ranges which are). ;; See ../international/fontset.el (setq ns-reg-to-script '(("iso8859-1" . latin) === modified file 'lisp/textmodes/artist.el' --- lisp/textmodes/artist.el 2011-11-20 03:48:53 +0000 +++ lisp/textmodes/artist.el 2011-11-20 19:35:27 +0000 @@ -1985,7 +1985,7 @@ "Retrieve a replacement for character C from `artist-replacement-table'. The replacement is used to convert tabs and new-lines to spaces." ;; Characters may be outside the range of the `artist-replacement-table', - ;; for example if they are unicode code points >= 256. + ;; for example if they are Unicode code points >= 256. ;; Check so we don't attempt to access the array out of its bounds, ;; assuming no such character needs to be replaced. (if (< c (length artist-replacement-table)) === modified file 'lisp/vc/ediff-diff.el' --- lisp/vc/ediff-diff.el 2011-05-23 17:57:17 +0000 +++ lisp/vc/ediff-diff.el 2011-11-20 19:35:27 +0000 @@ -1292,7 +1292,7 @@ Used for splitting difference regions into individual words.") (make-variable-buffer-local 'ediff-forward-word-function) -;; \240 is unicode symbol for nonbreakable whitespace +;; \240 is Unicode symbol for nonbreakable whitespace (defvar ediff-whitespace " \n\t\f\r\240" "*Characters constituting white space. These characters are ignored when differing regions are split into words.") === modified file 'lisp/vc/ediff-util.el' --- lisp/vc/ediff-util.el 2011-07-01 04:44:40 +0000 +++ lisp/vc/ediff-util.el 2011-11-20 19:35:27 +0000 @@ -452,7 +452,7 @@ (if ediff-3way-job (ediff-with-current-buffer ediff-buffer-C (ediff-nuke-selective-display) - ;; the merge bufer should never be narrowed + ;; the merge buffer should never be narrowed ;; (it can happen if it is on rmail-mode or similar) (if (ediff-with-current-buffer control-buffer ediff-merge-job) (widen)) === modified file 'lisp/w32-fns.el' --- lisp/w32-fns.el 2011-06-30 03:13:35 +0000 +++ lisp/w32-fns.el 2011-11-20 19:35:27 +0000 @@ -381,7 +381,7 @@ (w32-add-charset-info "mac-roman" 'w32-charset-mac 10000) (w32-add-charset-info "iso10646-1" 'w32-charset-default t) -;; ;; If unicode windows charset is not defined, use ansi fonts. +;; ;; If Unicode Windows charset is not defined, use ansi fonts. ;; (w32-add-charset-info "iso10646-1" 'w32-charset-ansi t)) ;; Prefered names === modified file 'src/ChangeLog' --- src/ChangeLog 2011-11-20 10:57:04 +0000 +++ src/ChangeLog 2011-11-20 19:35:27 +0000 @@ -1,3 +1,7 @@ +2011-11-20 Juanma Barranquero + + * nsfont.m (syms_of_nsfont) : Fix typo. + 2011-11-20 Martin Rudalics * window.c (Fset_window_combination_limit): Rename argument === modified file 'src/ChangeLog.1' --- src/ChangeLog.1 2011-11-16 12:34:47 +0000 +++ src/ChangeLog.1 2011-11-20 19:35:27 +0000 @@ -2237,7 +2237,7 @@ * data.c (Fset): If Vautoload_queue non-nil, record function and old definition - by consing onto Vautoload_qeueue. + by consing onto Vautoload_queue. * fns.c (Fprovide): If Vautoload_queue is non-nil, record old value of Vfeatures. === modified file 'src/ChangeLog.10' --- src/ChangeLog.10 2011-11-20 02:29:42 +0000 +++ src/ChangeLog.10 2011-11-20 19:35:27 +0000 @@ -18755,7 +18755,7 @@ 2003-05-21 Dave Love - [Merged from unicode branch.] + [Merged from Unicode branch.] * xfns.c (x_window, x_window): Use use_xim. === modified file 'src/ChangeLog.11' --- src/ChangeLog.11 2011-11-20 07:30:16 +0000 +++ src/ChangeLog.11 2011-11-20 19:35:27 +0000 @@ -4839,7 +4839,7 @@ 2010-08-13 Jason Rumney - * w32menu.c (simple_dialog_show): Use unicode message box if available. + * w32menu.c (simple_dialog_show): Use Unicode message box if available. (MessageBoxW_Proc): New function typedef. (unicode-message-box): New function pointer. (globals_of_w32menu): Import it from user32.dll. (Bug#5629) @@ -8991,8 +8991,8 @@ 2010-04-13 Jan Djärv * gtkutil.c (xg_set_geometry): Set geometry for PPosition also. - (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry - does that. + (x_wm_set_size_hint): Don't set position flags, + gtk_window_parse_geometry does that. * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width to zero. @@ -9864,8 +9864,8 @@ 2010-01-27 Jason Rumney - * w32inevt.c (w32_kbd_patch_key): Save the unicode character. - (key_event): Use unicode for characters 128 and higher (Bug#4567). + * w32inevt.c (w32_kbd_patch_key): Save the Unicode character. + (key_event): Use Unicode for characters 128 and higher (Bug#4567). 2010-01-27 Kenichi Handa @@ -11541,7 +11541,7 @@ (syms_of_nsfont): Declare it. (ns_registry_to_script): New function. (ns_get_req_script): Call it. - (ns_findfonts): Don't give up on non-unicode registry. + (ns_findfonts): Don't give up on non-Unicode registry. * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case. @@ -17147,10 +17147,10 @@ 2008-07-30 Jason Rumney - * w32font.h (struct w32font_info): Use unicode version of textmetrics. + * w32font.h (struct w32font_info): Use Unicode version of textmetrics. - * w32font.c (w32font_encode_char): Leave as unicode if in range. - (w32font_open_internal): Get unicode version of textmetrics. + * w32font.c (w32font_encode_char): Leave as Unicode if in range. + (w32font_open_internal): Get Unicode version of textmetrics. Don't enable or disable glyph indices here. (w32font_open): Disable use of glyph indices. @@ -19178,7 +19178,7 @@ 2008-06-10 Jason Rumney * w32uniscribe.c (add_opentype_font_name_to_list): - Skip non unicode fonts. + Skip non Unicode fonts. 2008-06-10 Chong Yidong @@ -19647,7 +19647,7 @@ `raster' specified. (add_font_entity_to_list): Allow non-opentype truetype fonts back in the uniscribe backend, but disallow any font that has no - unicode subrange support. + Unicode subrange support. 2008-05-29 Juanma Barranquero @@ -21813,8 +21813,8 @@ 2008-03-06 Jason Rumney * w32font.c (w32_registry): Take font_type argument. Use ANSI - when charset not specified. Only translate ANSI to unicode when - font_type is truetype. + when charset not specified. Only translate ANSI to Unicode when + font_type is TrueType. (w32font_coverage_ok): New function. (add_font_entity_to_list): Use it to filter unsuitable fonts. @@ -23463,10 +23463,10 @@ (w32font_list, w32font_match): Use it. (w32font_open): Don't populate subranges. (w32font_has_char): Use script Lisp symbols, not subrange bitmask. - (w32font_encode_char): Always return unicode code-point as-is. + (w32font_encode_char): Always return Unicode code-point as-is. (w32font_text_extents): Supply a transformation matrix to GetGlyphOutline. Never look up by glyph index. Avoid looping - twice. Use unicode version of GetTexExtentPoint32 instead of + twice. Use Unicode version of GetTexExtentPoint32 instead of glyph index version. (set_fonts_frame): Remove. (w32_enumfont_pattern_entity): Add frame parameter, use it to @@ -25425,16 +25425,16 @@ (pfnGetFontUnicodeRanges): New dynamically loaded function. (w32_initialize): Try to load it. (x_get_font_repertory): Use it if available. - (w32_encode_char): Add shortcut for unicode output. + (w32_encode_char): Add shortcut for Unicode output. * w32fns.c (w32_load_system_font): Default charset to -1. - (x_to_w32_charset): Match all fonts for unicode. + (x_to_w32_charset): Match all fonts for Unicode. (w32_to_x_charset): New parameter matching. Don't return partial or wildcard charsets. (w32_to_all_x_charsets): Don't return partial or wildcard charsets. - (w32_codepage_for_font): Return CP_UNICODE for unicode. + (w32_codepage_for_font): Return CP_UNICODE for Unicode. (w32_to_x_font): Match charset to real charset. - (enum_font_cb2): Always list unicode versions. + (enum_font_cb2): Always list Unicode versions. * makefile.w32-in (temacs): Increase EMHEAP. @@ -25458,7 +25458,7 @@ * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version of x_new_fontset. - (w32_load_system_font): Initialize charset as unicode. + (w32_load_system_font): Initialize charset as Unicode. font_info.encoding becomes encoding_type. (w32_to_x_font): Use decode_coding_c_string in place of decode_coding. (x_to_w32_font): Use encode_coding_object in place of encode_coding. @@ -27685,7 +27685,7 @@ * xterm.c (handle_one_xevent): Revert to counting chars not bytes. * w32term.c (w32_read_socket) : Decode characters outside - the unicode range available in MULE by locale-coding-system. + the Unicode range available in MULE by locale-coding-system. Improve dbcs lead byte detection. Set event timestamp and modifiers earlier. @@ -30873,7 +30873,7 @@ 2007-06-17 Jason Rumney * w32menu.c (add_menu_item): Don't use multibyte string functions on - unicode strings. + Unicode strings. 2007-06-16 Juanma Barranquero === modified file 'src/ChangeLog.9' --- src/ChangeLog.9 2011-11-15 17:37:37 +0000 +++ src/ChangeLog.9 2011-11-20 19:35:27 +0000 @@ -5150,7 +5150,7 @@ 2000-11-27 Jason Rumney * w32fns.c (w32_load_system_font): Always mark font as double byte - if codepage is unicode. + if codepage is Unicode. 2000-11-27 Gerd Moellmann === modified file 'src/keyboard.c' --- src/keyboard.c 2011-11-20 02:29:42 +0000 +++ src/keyboard.c 2011-11-20 19:35:27 +0000 @@ -4813,7 +4813,7 @@ "ico-00", /* VK_ICO_00 0xE4 */ 0, /* VK_PROCESSKEY 0xE5 - used by IME */ "ico-clear", /* VK_ICO_CLEAR 0xE6 */ - 0, /* VK_PACKET 0xE7 - used to pass unicode chars */ + 0, /* VK_PACKET 0xE7 - used to pass Unicode chars */ 0, /* 0xE8 */ "reset", /* VK_OEM_RESET 0xE9 */ "jump", /* VK_OEM_JUMP 0xEA */ === modified file 'src/nsfont.m' --- src/nsfont.m 2011-08-23 14:41:07 +0000 +++ src/nsfont.m 2011-11-20 19:35:27 +0000 @@ -256,7 +256,7 @@ /* Return whether set1 covers set2 to a reasonable extent given by pct. - We check, out of each 16 unicode char range containing chars in set2, + We check, out of each 16 Unicode char range containing chars in set2, whether at least one character is present in set1. This must be true for pct of the pairs to consider it covering. */ static BOOL @@ -297,7 +297,7 @@ /* Convert OTF 4-letter script code to emacs script name. (Why can't - everyone just use some standard unicode names for these?) */ + everyone just use some standard Unicode names for these?) */ static NSString *ns_otf_to_script (Lisp_Object otf) { @@ -329,7 +329,7 @@ /* Searches the :script, :lang, and :otf extra-bundle properties of the spec, plus registry regular property, for something that can be mapped to a - unicode script. Empty string returned if no script spec found. */ + Unicode script. Empty string returned if no script spec found. */ static NSString *ns_get_req_script (Lisp_Object font_spec) { @@ -385,7 +385,7 @@ } -/* Use the unicode range information in Vchar_script_table to convert a script +/* Use the Unicode range information in Vchar_script_table to convert a script name into an NSCharacterSet. */ static NSCharacterSet *ns_script_to_charset (NSString *scriptName) @@ -426,7 +426,7 @@ If none are found, we reduce the percentage and try again, until 5%. This provides a font with at least some characters if such can be found. We don't use isSupersetOfSet: because (a) it doesn't work on Tiger, and - (b) need approximate match as fonts covering full unicode ranges are rare. */ + (b) need approximate match as fonts covering full Unicode ranges are rare. */ static NSSet *ns_get_covering_families (NSString *script, float pct) { @@ -1292,7 +1292,7 @@ if (!unichars || !(font_info->glyphs[block])) abort (); - /* create a string containing all unicode characters in this block */ + /* create a string containing all Unicode characters in this block */ for (idx = block<<8, i =0; i<0x100; idx++, i++) if (idx < 0xD800 || idx > 0xDFFF) unichars[i] = idx; @@ -1487,5 +1487,5 @@ DEFSYM (Qroman, "roman"); DEFSYM (Qmedium, "medium"); DEFVAR_LISP ("ns-reg-to-script", Vns_reg_to_script, - doc: /* Internal use: maps font registry to unicode script. */); + doc: /* Internal use: maps font registry to Unicode script. */); } === modified file 'src/nsterm.h' --- src/nsterm.h 2011-11-16 17:47:25 +0000 +++ src/nsterm.h 2011-11-20 19:35:27 +0000 @@ -470,7 +470,7 @@ XCharStruct max_bounds; /* we compute glyph codes and metrics on-demand in blocks of 256 indexed by hibyte, lobyte */ - unsigned short **glyphs; /* map unicode index to glyph */ + unsigned short **glyphs; /* map Unicode index to glyph */ struct font_metrics **metrics; }; === modified file 'src/w32fns.c' --- src/w32fns.c 2011-11-20 02:29:42 +0000 +++ src/w32fns.c 2011-11-20 19:35:27 +0000 @@ -2943,7 +2943,7 @@ break; case WM_IME_CHAR: - /* If we can't get the IME result as unicode, use default processing, + /* If we can't get the IME result as Unicode, use default processing, which will at least allow characters decodable in the system locale get through. */ if (!get_composition_string_fn) === modified file 'src/w32font.c' --- src/w32font.c 2011-11-17 09:09:20 +0000 +++ src/w32font.c 2011-11-20 19:35:27 +0000 @@ -462,7 +462,7 @@ Return a glyph code of FONT for character C (Unicode code point). If FONT doesn't have such a glyph, return FONT_INVALID_CODE. - For speed, the gdi backend uses unicode (Emacs calls encode_char + For speed, the gdi backend uses Unicode (Emacs calls encode_char far too often for it to be efficient). But we still need to detect which characters are not supported by the font. */ @@ -620,7 +620,7 @@ total_width = size.cx; } - /* On 95/98/ME, only some unicode functions are available, so fallback + /* On 95/98/ME, only some Unicode functions are available, so fallback on doing a dummy draw to find the total width. */ if (!total_width) { @@ -1153,7 +1153,7 @@ else ASET (entity, FONT_SIZE_INDEX, make_number (0)); - /* Cache unicode codepoints covered by this font, as there is no other way + /* Cache Unicode codepoints covered by this font, as there is no other way of getting this information easily. */ if (font_type & TRUETYPE_FONTTYPE) { @@ -1514,7 +1514,7 @@ /* Skip non matching fonts. */ /* For uniscribe backend, consider only truetype or opentype fonts - that have some unicode coverage. */ + that have some Unicode coverage. */ if (match_data->opentype_only && ((!(physical_font->ntmTm.ntmFlags & NTMFLAGS_OPENTYPE) && !(font_type & TRUETYPE_FONTTYPE)) @@ -1557,7 +1557,7 @@ Lisp_Object spec_charset = AREF (match_data->orig_font_spec, FONT_REGISTRY_INDEX); - /* iso10646-1 fonts must contain unicode mapping tables. */ + /* iso10646-1 fonts must contain Unicode mapping tables. */ if (EQ (spec_charset, Qiso10646_1)) { if (!is_unicode) @@ -1572,7 +1572,7 @@ && !(physical_font->ntmFontSig.fsUsb[0] & 0x007F001F)) return 1; } - /* unicode-sip fonts must contain characters in unicode plane 2. + /* unicode-sip fonts must contain characters in Unicode plane 2. so look for bit 57 (surrogates) in the Unicode subranges, plus the bits for CJK ranges that include those characters. */ else if (EQ (spec_charset, Qunicode_sip)) @@ -1597,7 +1597,7 @@ ASET (entity, FONT_REGISTRY_INDEX, spec_charset); } /* Otherwise if using the uniscribe backend, report ANSI and DEFAULT - fonts as unicode and skip other charsets. */ + fonts as Unicode and skip other charsets. */ else if (match_data->opentype_only) { if (logical_font->elfLogFont.lfCharSet == ANSI_CHARSET @@ -1640,7 +1640,7 @@ if (strncmp (lpcs, "*-#", 3) == 0) return atoi (lpcs + 3); - /* All Windows fonts qualify as unicode. */ + /* All Windows fonts qualify as Unicode. */ if (!strncmp (lpcs, "iso10646", 8)) return DEFAULT_CHARSET; @@ -1925,7 +1925,7 @@ { char *charset; - /* If charset is defaulted, charset is unicode or unknown, depending on + /* If charset is defaulted, charset is Unicode or unknown, depending on font type. */ if (w32_charset == DEFAULT_CHARSET) return font_type == TRUETYPE_FONTTYPE ? Qiso10646_1 : Qunknown; @@ -2080,7 +2080,7 @@ { Lisp_Object key, val; key = XCAR (tmp), val = XCDR (tmp); - /* Only use QCscript if charset is not provided, or is unicode + /* Only use QCscript if charset is not provided, or is Unicode and a single script is specified. This is rather crude, and is only used to narrow down the fonts returned where there is a definite match. Some scripts, such as latin, han, === modified file 'src/w32menu.c' --- src/w32menu.c 2011-11-14 23:59:56 +0000 +++ src/w32menu.c 2011-11-20 19:35:27 +0000 @@ -1219,7 +1219,7 @@ is_simple_dialog, we don't need to worry about checking contents to see what type of dialog to use. */ - /* Use unicode if possible, so any language can be displayed. */ + /* Use Unicode if possible, so any language can be displayed. */ if (unicode_message_box) { WCHAR *text, *title; @@ -1476,7 +1476,7 @@ utf16_string); if (!return_value) { - /* On W9x/ME, unicode menus are not supported, though AppendMenuW + /* On W9x/ME, Unicode menus are not supported, though AppendMenuW apparently does exist at least in some cases and appears to be stubbed out to do nothing. out_string is UTF-8, but since our standard menus are in English and this is only going to @@ -1486,7 +1486,7 @@ AppendMenu (menu, fuFlags, item != NULL ? (UINT) item: (UINT) wv->call_data, out_string); - /* Don't use unicode menus in future. */ + /* Don't use Unicode menus in future. */ unicode_append_menu = NULL; } === modified file 'src/w32uniscribe.c' --- src/w32uniscribe.c 2011-11-16 17:47:25 +0000 +++ src/w32uniscribe.c 2011-11-20 19:35:27 +0000 @@ -469,7 +469,7 @@ /* Non BMP characters must be handled by the uniscribe shaping engine as GDI functions (except blindly displaying lines of - unicode text) and the promising looking ScriptGetCMap do not + Unicode text) and the promising looking ScriptGetCMap do not convert surrogate pairs to glyph indexes correctly. */ { items = (SCRIPT_ITEM *) alloca (sizeof (SCRIPT_ITEM) * 2 + 1); @@ -581,7 +581,7 @@ && font_type != TRUETYPE_FONTTYPE) return 1; - /* Skip fonts that have no unicode coverage. */ + /* Skip fonts that have no Unicode coverage. */ if (!physical_font->ntmFontSig.fsUsb[3] && !physical_font->ntmFontSig.fsUsb[2] && !physical_font->ntmFontSig.fsUsb[1] === modified file 'test/cedet/semantic-utest.el' --- test/cedet/semantic-utest.el 2011-11-20 02:29:42 +0000 +++ test/cedet/semantic-utest.el 2011-11-20 19:35:27 +0000 @@ -622,7 +622,7 @@ ) ;look at http://mfgames.com/linux/csharp-mode -(defun semantic-utest-Csharp() ;; hmm i dont even know how to edit a scharp file. need a csharp mode implementation i suppose +(defun semantic-utest-Csharp() ;; hmm i don't even know how to edit a scharp file. need a csharp mode implementation i suppose (interactive) (if (fboundp 'csharp-mode) (semantic-utest-generic "C#" (semantic-utest-fname "csharptest.cs") semantic-utest-Csharp-buffer-contents semantic-utest-Csharp-name-contents '("fun2") "//1" "//deleted line") ------------------------------------------------------------ revno: 106451 committer: Glenn Morris branch nick: trunk timestamp: Sun 2011-11-20 06:27:56 -0500 message: Auto-commit of loaddefs files. diff: === modified file 'lisp/mail/rmail.el' --- lisp/mail/rmail.el 2011-11-20 03:48:53 +0000 +++ lisp/mail/rmail.el 2011-11-20 11:27:56 +0000 @@ -4606,7 +4606,7 @@ ;;;### (autoloads (rmail-summary-by-senders rmail-summary-by-topic ;;;;;; rmail-summary-by-regexp rmail-summary-by-recipients rmail-summary-by-labels -;;;;;; rmail-summary) "rmailsum" "rmailsum.el" "35e07b0a5ea8e41971f31a8780eba6bb") +;;;;;; rmail-summary) "rmailsum" "rmailsum.el" "1375d6512b953c0d7c3bde52192f4055") ;;; Generated autoloads from rmailsum.el (autoload 'rmail-summary "rmailsum" "\ === modified file 'lisp/ps-print.el' --- lisp/ps-print.el 2011-11-20 07:30:16 +0000 +++ lisp/ps-print.el 2011-11-20 11:27:56 +0000 @@ -6658,7 +6658,7 @@ ;; But autoload them here to make the separation invisible. ;;;### (autoloads (ps-mule-end-job ps-mule-begin-job ps-mule-initialize -;;;;;; ps-multibyte-buffer) "ps-mule" "ps-mule.el" "cf055ee6ba398da614a675dc25bdb123") +;;;;;; ps-multibyte-buffer) "ps-mule" "ps-mule.el" "afb9022f2e1e366c51672aa11a3bd76f") ;;; Generated autoloads from ps-mule.el (defvar ps-multibyte-buffer nil "\ ------------------------------------------------------------ revno: 106450 committer: Glenn Morris branch nick: trunk timestamp: Sun 2011-11-20 06:21:03 -0500 message: Auto-commit of generated files. diff: === modified file 'autogen/configure' --- autogen/configure 2011-11-05 10:18:32 +0000 +++ autogen/configure 2011-11-20 11:21:03 +0000 @@ -4396,7 +4396,6 @@ opsys=gnu-linux case ${canonical} in alpha*) machine=alpha ;; - s390-*) machine=ibms390 ;; s390x-*) machine=ibms390x ;; powerpc*) machine=macppc ;; sparc*) machine=sparc ;; === modified file 'autogen/install-sh' --- autogen/install-sh 2011-11-20 03:48:53 +0000 +++ autogen/install-sh 2011-11-20 11:21:03 +0000 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2011-11-20.02; # UTC +scriptversion=2009-04-28.21; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -347,7 +347,7 @@ if test -z "$dir_arg" || { # Check for POSIX incompatibilities with -m. # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or - # other-writable bit of parent directory when it shouldn't. + # other-writeable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. ls_ld_tmpdir=`ls -ld "$tmpdir"` case $ls_ld_tmpdir in ------------------------------------------------------------ revno: 106449 committer: martin rudalics branch nick: trunk timestamp: Sun 2011-11-20 11:57:04 +0100 message: Remove term "status" with "window combination limits". * window.c (Fset_window_combination_limit): Rename argument STATUS to LIMIT. (Vwindow_combination_limit): Remove "status" from doc-string. * windows.texi (Resizing Windows, Splitting Windows): Remove term "status" when talking about combination limits. diff: === modified file 'doc/lispref/ChangeLog' --- doc/lispref/ChangeLog 2011-11-20 03:48:53 +0000 +++ doc/lispref/ChangeLog 2011-11-20 10:57:04 +0000 @@ -1,3 +1,8 @@ +2011-11-20 Martin Rudalics + + * windows.texi (Resizing Windows, Splitting Windows): Remove + term "status" when talking about combination limits. + 2011-11-20 Juanma Barranquero * compile.texi (Compiler Errors): === modified file 'doc/lispref/windows.texi' --- doc/lispref/windows.texi 2011-11-19 11:11:38 +0000 +++ doc/lispref/windows.texi 2011-11-20 10:57:04 +0000 @@ -635,9 +635,9 @@ The choice of which window edges this function alters depends on the values of the option @code{window-combination-resize} and the -combination-limit status of the involved windows; in some cases, it may -alter both edges. @xref{Splitting Windows}. To resize by moving only -the bottom or right edge of a window, use the function +combination limits of the involved windows; in some cases, it may alter +both edges. @xref{Splitting Windows}. To resize by moving only the +bottom or right edge of a window, use the function @code{adjust-window-trailing-edge}, below. @end defun @@ -954,14 +954,14 @@ @end defopt @cindex window combination limit -@defun set-window-combination-limit window status +@defun set-window-combination-limit window limit This functions sets the @dfn{combination limit} of the window -@var{window} to @var{status}. This value can be retrieved via the +@var{window} to @var{limit}. This value can be retrieved via the function @code{window-combination-limit}. See below for its effects; note that it is only meaningful for internal windows. The -@code{split-window} function automatically calls this function, -passing the value of the variable @code{window-combination-limit} as -@var{status}. +@code{split-window} function automatically calls this function, passing +the value of the variable @code{window-combination-limit} as +@var{limit}. @end defun @defun window-combination-limit window @@ -973,7 +973,7 @@ child windows of @var{window} with the child windows of one of its siblings to form a new window combination. If the combination limit is @code{t}, the child windows of @var{window} are never automatically -re-combined with its siblings'. +re-combined with its siblings. @end defun To illustrate the effect of @code{window-combination-limit}, === modified file 'src/ChangeLog' --- src/ChangeLog 2011-11-20 09:24:06 +0000 +++ src/ChangeLog 2011-11-20 10:57:04 +0000 @@ -1,3 +1,9 @@ +2011-11-20 Martin Rudalics + + * window.c (Fset_window_combination_limit): Rename argument + STATUS to LIMIT. + (Vwindow_combination_limit): Remove "status" from doc-string. + 2011-11-20 Andreas Schwab * m/ibms390.h: Remove. === modified file 'src/window.c' --- src/window.c 2011-11-19 15:50:23 +0000 +++ src/window.c 2011-11-20 10:57:04 +0000 @@ -476,16 +476,16 @@ } DEFUN ("set-window-combination-limit", Fset_window_combination_limit, Sset_window_combination_limit, 2, 2, 0, - doc: /* Set combination limit of window WINDOW to STATUS; return STATUS. -If STATUS is nil, child windows of WINDOW can be recombined with -WINDOW's siblings. STATUS t means that child windows of WINDOW are + doc: /* Set combination limit of window WINDOW to LIMIT; return LIMIT. +If LIMIT is nil, child windows of WINDOW can be recombined with +WINDOW's siblings. LIMIT t means that child windows of WINDOW are never \(re-)combined with WINDOW's siblings. Other values are reserved for future use. */) - (Lisp_Object window, Lisp_Object status) + (Lisp_Object window, Lisp_Object limit) { register struct window *w = decode_any_window (window); - w->combination_limit = status; + w->combination_limit = limit; return w->combination_limit; } @@ -6532,10 +6532,10 @@ Other values are reserved for future use. -The value of this variable is also assigned to the combination-limit -status of the new parent window. The combination-limit status of a -window can be retrieved via the function `window-combination-limit' and -altered by the function `set-window-combination-limit'. */); +The value of this variable is also assigned to the combination limit of +the new parent window. The combination limit of a window can be +retrieved via the function `window-combination-limit' and altered by the +function `set-window-combination-limit'. */); Vwindow_combination_limit = Qnil; defsubr (&Sselected_window); ------------------------------------------------------------ revno: 106448 committer: Andreas Schwab branch nick: emacs timestamp: Sun 2011-11-20 10:44:39 +0100 message: * org-list.el (org-list-send-item): Use sort instead of sort*. diff: === modified file 'lisp/org/ChangeLog' --- lisp/org/ChangeLog 2011-11-20 03:48:53 +0000 +++ lisp/org/ChangeLog 2011-11-20 09:44:39 +0000 @@ -1,3 +1,7 @@ +2011-11-20 Andreas Schwab + + * org-list.el (org-list-send-item): Use sort instead of sort*. + 2011-11-20 Juanma Barranquero * org-table.el (org-table-line-to-dline): Fix typo. === modified file 'lisp/org/org-list.el' --- lisp/org/org-list.el 2011-11-20 07:30:16 +0000 +++ lisp/org/org-list.el 2011-11-20 09:44:39 +0000 @@ -1439,7 +1439,7 @@ ;; 1.1. Remove the item just created in structure. (setq struct (delete (assq new-item struct) struct)) ;; 1.2. Copy ITEM and any of its sub-items at NEW-ITEM. - (setq struct (sort* + (setq struct (sort (append struct (mapcar (lambda (e) ------------------------------------------------------------ revno: 106447 committer: Andreas Schwab branch nick: emacs timestamp: Sun 2011-11-20 10:24:06 +0100 message: * configure.in: Remove reference to src/m/ibms390.h. * admin/CPP-DEFINES (VIRT_ADDR_VARIES): Remove. * src/m/ibms390.h: Remove. * src/m/ibms390x.h: Don't include "ibms390.h". diff: === modified file 'ChangeLog' --- ChangeLog 2011-11-20 03:48:53 +0000 +++ ChangeLog 2011-11-20 09:24:06 +0000 @@ -1,3 +1,7 @@ +2011-11-20 Andreas Schwab + + * configure.in: Remove reference to src/m/ibms390.h. + 2011-11-13 Glenn Morris * INSTALL: Tiny updates for disk space used during installation. === modified file 'admin/CPP-DEFINES' --- admin/CPP-DEFINES 2011-11-20 03:48:53 +0000 +++ admin/CPP-DEFINES 2011-11-20 09:24:06 +0000 @@ -58,9 +58,6 @@ SEPCHAR SYSTEM_TYPE -** Machine specific macros, described in detail in src/m/template.h -VIRT_ADDR_VARIES - ** Misc macros USER_FULL_NAME If defined, overrides the default pw->pw_gecos for getting at the full user name. Only MSDOS overrides the default. === modified file 'admin/ChangeLog' --- admin/ChangeLog 2011-11-16 17:47:25 +0000 +++ admin/ChangeLog 2011-11-20 09:24:06 +0000 @@ -1,3 +1,7 @@ +2011-11-20 Andreas Schwab + + * CPP-DEFINES (VIRT_ADDR_VARIES): Remove. + 2011-11-16 Juanma Barranquero * admin.el (manual-dvi): Fix typo. === modified file 'configure.in' --- configure.in 2011-11-17 09:09:20 +0000 +++ configure.in 2011-11-20 09:24:06 +0000 @@ -416,7 +416,6 @@ opsys=gnu-linux case ${canonical} in alpha*) machine=alpha ;; - s390-*) machine=ibms390 ;; s390x-*) machine=ibms390x ;; powerpc*) machine=macppc ;; sparc*) machine=sparc ;; === modified file 'src/ChangeLog' --- src/ChangeLog 2011-11-20 04:34:32 +0000 +++ src/ChangeLog 2011-11-20 09:24:06 +0000 @@ -1,3 +1,8 @@ +2011-11-20 Andreas Schwab + + * m/ibms390.h: Remove. + * m/ibms390x.h: Don't include "ibms390.h". + 2011-11-20 Stefan Monnier * fileio.c (Finsert_file_contents): Add missing gcpro1 variable. === removed file 'src/m/ibms390.h' --- src/m/ibms390.h 2011-11-10 08:14:27 +0000 +++ src/m/ibms390.h 1970-01-01 00:00:00 +0000 @@ -1,22 +0,0 @@ -/* Machine description file for IBM S390 in 32-bit mode - -Copyright (C) 1985-1986, 2001-2011 Free Software Foundation, Inc. - -This file is part of GNU Emacs. - -GNU Emacs is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -GNU Emacs is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Emacs. If not, see . */ - -/* This file is a placeholder -- it does not contain any definitions. - At some point we should probably fix this by removing the file - and removing all uses of it. */ === modified file 'src/m/ibms390x.h' --- src/m/ibms390x.h 2011-04-19 00:34:42 +0000 +++ src/m/ibms390x.h 2011-11-20 09:24:06 +0000 @@ -17,8 +17,6 @@ You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see . */ -#include "ibms390.h" - #define BITS_PER_LONG 64 #define BITS_PER_EMACS_INT 64 ------------------------------------------------------------ revno: 106446 committer: Paul Eggert branch nick: trunk timestamp: Sat 2011-11-19 23:30:16 -0800 message: Spelling fixes. diff: === modified file 'admin/grammars/c.by' --- admin/grammars/c.by 2011-11-16 12:34:47 +0000 +++ admin/grammars/c.by 2011-11-20 07:30:16 +0000 @@ -122,7 +122,7 @@ %put DELETE summary "delete ;" ;; Despite this, this parser can find templates by ignoring the TEMPLATE -;; keyword, and finding the class/method being templateized. +;; keyword, and finding the class/method being templatized. %token TEMPLATE "template" %put TEMPLATE summary "template TYPE_OR_FUNCTION" === modified file 'doc/lispintro/emacs-lisp-intro.texi' --- doc/lispintro/emacs-lisp-intro.texi 2011-11-16 17:47:25 +0000 +++ doc/lispintro/emacs-lisp-intro.texi 2011-11-20 07:30:16 +0000 @@ -887,7 +887,7 @@ to a country not yet visited: interesting, but not the same as being there. -Much of this introduction is dedicated to walk-throughs or guided tours +Much of this introduction is dedicated to walkthroughs or guided tours of code used in GNU Emacs. These tours are designed for two purposes: first, to give you familiarity with real, working code (code you use every day); and, second, to give you familiarity with the way Emacs === modified file 'doc/lispref/spellfile' --- doc/lispref/spellfile 2011-11-20 02:29:42 +0000 +++ doc/lispref/spellfile 2011-11-20 07:30:16 +0000 @@ -639,7 +639,7 @@ symbolp symlink syms -syntatic +syntactic tabname temacs temporarily' === modified file 'doc/misc/calc.texi' --- doc/misc/calc.texi 2011-11-20 02:29:42 +0000 +++ doc/misc/calc.texi 2011-11-20 07:30:16 +0000 @@ -90,7 +90,7 @@ This file documents Calc, the GNU Emacs calculator. @end ifinfo @ifnotinfo -This file documents Calc, the GNU Emacs calculator, included with +This file documents Calc, the GNU Emacs calculator, included with GNU Emacs @value{EMACSVER}. @end ifnotinfo @@ -324,7 +324,7 @@ @c @cindex Marginal notes Every Calc keyboard command is listed in the Calc Summary, and also in the Key Index. Algebraic functions, @kbd{M-x} commands, and -variables also have their own indices. +variables also have their own indices. @c @texline Each @c @infoline In the printed manual, each @c paragraph that is referenced in the Key or Function Index is marked @@ -338,7 +338,7 @@ command @kbd{C-x * t} will jump to the Tutorial and start Calc if necessary. Pressing @kbd{h s} or @kbd{C-x * s} will take you directly to the Calc Summary. Within Calc, you can also go to the part of the -manual describing any Calc key, function, or variable using +manual describing any Calc key, function, or variable using @w{@kbd{h k}}, @kbd{h f}, or @kbd{h v}, respectively. @xref{Help Commands}. @ifnottex @@ -437,12 +437,12 @@ then the command to operate on the numbers. @noindent -Type @kbd{2 @key{RET} 3 + Q} to compute +Type @kbd{2 @key{RET} 3 + Q} to compute @texline @math{\sqrt{2+3} = 2.2360679775}. @infoline the square root of 2+3, which is 2.2360679775. @noindent -Type @kbd{P 2 ^} to compute +Type @kbd{P 2 ^} to compute @texline @math{\pi^2 = 9.86960440109}. @infoline the value of `pi' squared, 9.86960440109. @@ -461,14 +461,14 @@ use the apostrophe key. @noindent -Type @kbd{' sqrt(2+3) @key{RET}} to compute +Type @kbd{' sqrt(2+3) @key{RET}} to compute @texline @math{\sqrt{2+3}}. @infoline the square root of 2+3. @noindent -Type @kbd{' pi^2 @key{RET}} to enter +Type @kbd{' pi^2 @key{RET}} to enter @texline @math{\pi^2}. -@infoline `pi' squared. +@infoline `pi' squared. To evaluate this symbolic formula as a number, type @kbd{=}. @noindent @@ -526,10 +526,10 @@ the lower-right @samp{8} and press @kbd{C-x * r}. @noindent -Type @kbd{v t} to transpose this +Type @kbd{v t} to transpose this @texline @math{3\times2} -@infoline 3x2 -matrix into a +@infoline 3x2 +matrix into a @texline @math{2\times3} @infoline 2x3 matrix. Type @w{@kbd{v u}} to unpack the rows into two separate @@ -605,7 +605,7 @@ @noindent On most systems, you can type @kbd{C-x *} to start the Calculator. -The key sequence @kbd{C-x *} is bound to the command @code{calc-dispatch}, +The key sequence @kbd{C-x *} is bound to the command @code{calc-dispatch}, which can be rebound if convenient (@pxref{Customizing Calc}). When you press @kbd{C-x *}, Emacs waits for you to press a second key to @@ -1154,9 +1154,9 @@ @noindent Calc was originally started as a two-week project to occupy a lull in the author's schedule. Basically, a friend asked if I remembered -the value of +the value of @texline @math{2^{32}}. -@infoline @expr{2^32}. +@infoline @expr{2^32}. I didn't offhand, but I said, ``that's easy, just call up an @code{xcalc}.'' @code{Xcalc} duly reported that the answer to our question was @samp{4.294967e+09}---with no way to see the full ten @@ -1213,7 +1213,7 @@ Many people have contributed to Calc by reporting bugs and suggesting features, large and small. A few deserve special mention: Tim Peters, who helped develop the ideas that led to the selection commands, rewrite -rules, and many other algebra features; +rules, and many other algebra features; @texline Fran\c{c}ois @infoline Francois Pinard, who contributed an early prototype of the Calc Summary appendix @@ -1226,7 +1226,7 @@ Sarlin, who first worked out how to split Calc into quickly-loading parts; Bob Weiner, who helped immensely with the Lucid Emacs port; and Robert J. Chassell, who suggested the Calc Tutorial and exercises as -well as many other things. +well as many other things. @cindex Bibliography @cindex Knuth, Art of Computer Programming @@ -1472,9 +1472,9 @@ multiplication.) Figure it out by hand, then try it with Calc to see if you're right. @xref{RPN Answer 1, 1}. (@bullet{}) -(@bullet{}) @strong{Exercise 2.} Compute +(@bullet{}) @strong{Exercise 2.} Compute @texline @math{(2\times4) + (7\times9.4) + {5\over4}} -@infoline @expr{2*4 + 7*9.5 + 5/4} +@infoline @expr{2*4 + 7*9.5 + 5/4} using the stack. @xref{RPN Answer 2, 2}. (@bullet{}) The @key{DEL} key is called Backspace on some keyboards. It is @@ -1889,7 +1889,7 @@ accomplish this in Calc by performing your calculation as a series of algebraic entries, using the @kbd{$} sign to tie them together. In an algebraic formula, @kbd{$} represents the number on the top -of the stack. Here, we perform the calculation +of the stack. Here, we perform the calculation @texline @math{\sqrt{2\times4+1}}, @infoline @expr{sqrt(2*4+1)}, which on a traditional calculator would be done by pressing @@ -2149,7 +2149,7 @@ to cancel it. (In fact, you can press @kbd{C-g} to cancel almost anything in Emacs.) To get help on a prefix key, press that key followed by @kbd{?}. Some prefixes have several lines of help, -so you need to press @kbd{?} repeatedly to see them all. +so you need to press @kbd{?} repeatedly to see them all. You can also type @kbd{h h} to see all the help at once. Try pressing @kbd{t ?} now. You will see a line of the form, @@ -2550,13 +2550,13 @@ @noindent The shift-@kbd{S} command computes the sine of an angle. The sine -of 45 degrees is +of 45 degrees is @texline @math{\sqrt{2}/2}; -@infoline @expr{sqrt(2)/2}; +@infoline @expr{sqrt(2)/2}; squaring this yields @expr{2/4 = 0.5}. However, there has been a slight -roundoff error because the representation of +roundoff error because the representation of @texline @math{\sqrt{2}/2} -@infoline @expr{sqrt(2)/2} +@infoline @expr{sqrt(2)/2} wasn't exact. The @kbd{c 1} command is a handy way to clean up numbers in this case; it temporarily reduces the precision by one digit while it re-rounds the number on the top of the stack. @@ -2595,9 +2595,9 @@ @end smallexample @noindent -Here we compute the Inverse Sine of +Here we compute the Inverse Sine of @texline @math{\sqrt{0.5}}, -@infoline @expr{sqrt(0.5)}, +@infoline @expr{sqrt(0.5)}, first in radians, then in degrees. Use @kbd{c d} and @kbd{c r} to convert a number from radians to degrees @@ -2783,9 +2783,9 @@ @kbd{H} (hyperbolic) prefix keys. Let's compute the sine and cosine of an angle, and verify the -identity +identity @texline @math{\sin^2x + \cos^2x = 1}. -@infoline @expr{sin(x)^2 + cos(x)^2 = 1}. +@infoline @expr{sin(x)^2 + cos(x)^2 = 1}. We'll arbitrarily pick @mathit{-64} degrees as a good value for @expr{x}. With the angular mode set to degrees (type @w{@kbd{m d}}), do: @@ -2806,7 +2806,7 @@ Remember, @kbd{f h} is the @code{calc-hypot}, or square-root of sum of squares, command. -Another identity is +Another identity is @texline @math{\displaystyle\tan x = {\sin x \over \cos x}}. @infoline @expr{tan(x) = sin(x) / cos(x)}. @smallexample @@ -2871,7 +2871,7 @@ A similar identity is supposed to hold for hyperbolic sines and cosines, except that it is the @emph{difference} @texline @math{\cosh^2x - \sinh^2x} -@infoline @expr{cosh(x)^2 - sinh(x)^2} +@infoline @expr{cosh(x)^2 - sinh(x)^2} that always equals one. Let's try to verify this identity. @smallexample @@ -2993,7 +2993,7 @@ @end smallexample @noindent -Here we verify the identity +Here we verify the identity @texline @math{n! = \Gamma(n+1)}. @infoline @expr{@var{n}!@: = gamma(@var{n}+1)}. @@ -3283,11 +3283,11 @@ vector. (@bullet{}) @strong{Exercise 1.} Use @samp{*} to sum along the rows -of the above +of the above @texline @math{2\times3} -@infoline 2x3 +@infoline 2x3 matrix to get @expr{[6, 15]}. Now use @samp{*} to sum along the columns -to get @expr{[5, 7, 9]}. +to get @expr{[5, 7, 9]}. @xref{Matrix Answer 1, 1}. (@bullet{}) @cindex Identity matrix @@ -3432,7 +3432,7 @@ assume the vector was a row vector in order to make the dimensions come out right, and the answer would be incorrect. If you don't feel safe letting Calc take either interpretation of your -vectors, use explicit +vectors, use explicit @texline @math{N\times1} @infoline Nx1 or @@ -3482,9 +3482,9 @@ @tex $A^T A \, X = A^T B$, where $A^T$ is the transpose \samp{trn(A)}. @end tex -Now +Now @texline @math{A^T A} -@infoline @expr{trn(A)*A} +@infoline @expr{trn(A)*A} is a square matrix so a solution is possible. It turns out that the @expr{X} vector you compute in this way will be a ``least-squares'' solution, which can be regarded as the ``closest'' solution to the set @@ -3577,9 +3577,9 @@ of each element. (@bullet{}) @strong{Exercise 1.} Compute a vector of powers of two -from +from @texline @math{2^{-4}} -@infoline @expr{2^-4} +@infoline @expr{2^-4} to @expr{2^4}. @xref{List Answer 1, 1}. (@bullet{}) You can also @dfn{reduce} a binary operator across a vector. @@ -3780,9 +3780,9 @@ @end tex @noindent -where +where @texline @math{\sum x} -@infoline @expr{sum(x)} +@infoline @expr{sum(x)} represents the sum of all the values of @expr{x}. While there is an actual @code{sum} function in Calc, it's easier to sum a vector using a simple reduction. First, let's compute the four different sums that @@ -3883,9 +3883,9 @@ @end group @end smallexample -Let's ``plot'' this straight line approximation, +Let's ``plot'' this straight line approximation, @texline @math{y \approx m x + b}, -@infoline @expr{m x + b}, +@infoline @expr{m x + b}, and compare it with the original data. @smallexample @@ -3959,7 +3959,7 @@ (If you are reading this tutorial on-line while running Calc, typing @kbd{g a} may cause the tutorial to disappear from its window and be replaced by a buffer named @samp{*Gnuplot Commands*}. The tutorial -will reappear when you terminate GNUPLOT by typing @kbd{g q}.) +will reappear when you terminate GNUPLOT by typing @kbd{g q}.) @end ifinfo @smallexample @@ -4138,7 +4138,7 @@ @c [fix-ref Numerical Solutions] (@bullet{}) @strong{Exercise 8.} Compute a list of values of Bessel's @texline @math{J_1(x)} -@infoline @expr{J1} +@infoline @expr{J1} function @samp{besJ(1,x)} for @expr{x} from 0 to 5 in steps of 0.25. Find the value of @expr{x} (from among the above set of values) for which @samp{besJ(1,x)} is a maximum. Use an ``automatic'' method, @@ -4150,7 +4150,7 @@ @cindex Digits, vectors of (@bullet{}) @strong{Exercise 9.} You are given an integer in the range @texline @math{0 \le N < 10^m} -@infoline @expr{0 <= N < 10^m} +@infoline @expr{0 <= N < 10^m} for @expr{m=12} (i.e., an integer of less than twelve digits). Convert this integer into a vector of @expr{m} digits, each in the range from 0 to 9. In vector-of-digits notation, @@ -4164,12 +4164,12 @@ happened? How would you do this test? @xref{List Answer 10, 10}. (@bullet{}) (@bullet{}) @strong{Exercise 11.} The area of a circle of radius one -is @cpi{}. The area of the +is @cpi{}. The area of the @texline @math{2\times2} @infoline 2x2 square that encloses that circle is 4. So if we throw @var{n} darts at random points in the square, about @cpiover{4} of them will land inside -the circle. This gives us an entertaining way to estimate the value of +the circle. This gives us an entertaining way to estimate the value of @cpi{}. The @w{@kbd{k r}} command picks a random number between zero and the value on the stack. We could get a random floating-point number between @mathit{-1} and 1 by typing @@ -4183,12 +4183,12 @@ another way to calculate @cpi{}. Say you have an infinite field of vertical lines with a spacing of one inch. Toss a one-inch matchstick onto the field. The probability that the matchstick will land crossing -a line turns out to be +a line turns out to be @texline @math{2/\pi}. -@infoline @expr{2/pi}. +@infoline @expr{2/pi}. Toss 100 matchsticks to estimate @cpi{}. (If you want still more fun, the probability that the GCD (@w{@kbd{k g}}) of two large integers is -one turns out to be +one turns out to be @texline @math{6/\pi^2}. @infoline @expr{6/pi^2}. That provides yet another way to estimate @cpi{}.) @@ -4488,7 +4488,7 @@ @cindex Torus, volume of (@bullet{}) @strong{Exercise 7.} The volume of a torus (a donut shape) is @texline @math{2 \pi^2 R r^2} -@infoline @w{@expr{2 pi^2 R r^2}} +@infoline @w{@expr{2 pi^2 R r^2}} where @expr{R} is the radius of the circle that defines the center of the tube and @expr{r} is the radius of the tube itself. Suppose @expr{R} is 20 cm and @expr{r} is 4 cm, each known to @@ -4569,7 +4569,7 @@ new number which, when multiplied by 5 modulo 24, produces the original number, 21. If @var{m} is prime and the divisor is not a multiple of @var{m}, it is always possible to find such a number. For non-prime -@var{m} like 24, it is only sometimes possible. +@var{m} like 24, it is only sometimes possible. @smallexample @group @@ -4587,7 +4587,7 @@ @cindex Fermat, primality test of (@bullet{}) @strong{Exercise 10.} A theorem of Pierre de Fermat -says that +says that @texline @w{@math{x^{n-1} \bmod n = 1}} @infoline @expr{x^(n-1) mod n = 1} if @expr{n} is a prime number and @expr{x} is an integer less than @@ -4615,9 +4615,9 @@ This calculation tells me it is six hours and 22 minutes until midnight. (@bullet{}) @strong{Exercise 11.} A rule of thumb is that one year -is about +is about @texline @math{\pi \times 10^7} -@infoline @w{@expr{pi * 10^7}} +@infoline @w{@expr{pi * 10^7}} seconds. What time will it be that many seconds from right now? @xref{Types Answer 11, 11}. (@bullet{}) @@ -5093,18 +5093,18 @@ @end smallexample (@bullet{}) @strong{Exercise 3.} Find the integral from 1 to @expr{y} -of +of @texline @math{x \sin \pi x} -@infoline @w{@expr{x sin(pi x)}} +@infoline @w{@expr{x sin(pi x)}} (where the sine is calculated in radians). Find the values of the integral for integers @expr{y} from 1 to 5. @xref{Algebra Answer 3, 3}. (@bullet{}) Calc's integrator can do many simple integrals symbolically, but many others are beyond its capabilities. Suppose we wish to find the area -under the curve +under the curve @texline @math{\sin x \ln x} -@infoline @expr{sin(x) ln(x)} +@infoline @expr{sin(x) ln(x)} over the same range of @expr{x}. If you entered this formula and typed @kbd{a i x @key{RET}} (don't bother to try this), Calc would work for a long time but would be unable to find a solution. In fact, there is no @@ -5242,10 +5242,10 @@ \afterdisplay @end tex -Compute the integral from 1 to 2 of +Compute the integral from 1 to 2 of @texline @math{\sin x \ln x} -@infoline @expr{sin(x) ln(x)} -using Simpson's rule with 10 slices. +@infoline @expr{sin(x) ln(x)} +using Simpson's rule with 10 slices. @xref{Algebra Answer 4, 4}. (@bullet{}) Calc has a built-in @kbd{a I} command for doing numerical integration. @@ -5396,7 +5396,7 @@ To edit a variable, type @kbd{s e} and the variable name, use regular Emacs editing commands as necessary, then type @kbd{C-c C-c} to store -the edited value back into the variable. +the edited value back into the variable. You can also use @w{@kbd{s e}} to create a new variable if you wish. Notice that the first time you use each rule, Calc puts up a ``compiling'' @@ -5780,7 +5780,7 @@ @tindex Si (@bullet{}) @strong{Exercise 1.} The ``sine integral'' function @texline @math{{\rm Si}(x)} -@infoline @expr{Si(x)} +@infoline @expr{Si(x)} is defined as the integral of @samp{sin(t)/t} for @expr{t = 0} to @expr{x} in radians. (It was invented because this integral has no solution in terms of basic functions; if you give it @@ -5857,9 +5857,9 @@ @enumerate @item -Compute +Compute @texline @math{\displaystyle{\sin x \over x}}, -@infoline @expr{sin(x) / x}, +@infoline @expr{sin(x) / x}, where @expr{x} is the number on the top of the stack. @item @@ -5923,15 +5923,15 @@ @cindex Golden ratio @cindex Phi, golden ratio A fascinating property of the Fibonacci numbers is that the @expr{n}th -Fibonacci number can be found directly by computing +Fibonacci number can be found directly by computing @texline @math{\phi^n / \sqrt{5}} @infoline @expr{phi^n / sqrt(5)} -and then rounding to the nearest integer, where +and then rounding to the nearest integer, where @texline @math{\phi} (``phi''), -@infoline @expr{phi}, -the ``golden ratio,'' is +@infoline @expr{phi}, +the ``golden ratio,'' is @texline @math{(1 + \sqrt{5}) / 2}. -@infoline @expr{(1 + sqrt(5)) / 2}. +@infoline @expr{(1 + sqrt(5)) / 2}. (For convenience, this constant is available from the @code{phi} variable, or the @kbd{I H P} command.) @@ -5946,19 +5946,19 @@ @cindex Continued fractions (@bullet{}) @strong{Exercise 5.} The @dfn{continued fraction} -representation of +representation of @texline @math{\phi} -@infoline @expr{phi} -is +@infoline @expr{phi} +is @texline @math{1 + 1/(1 + 1/(1 + 1/( \ldots )))}. @infoline @expr{1 + 1/(1 + 1/(1 + 1/( ...@: )))}. We can compute an approximate value by carrying this however far -and then replacing the innermost +and then replacing the innermost @texline @math{1/( \ldots )} -@infoline @expr{1/( ...@: )} +@infoline @expr{1/( ...@: )} by 1. Approximate @texline @math{\phi} -@infoline @expr{phi} +@infoline @expr{phi} using a twenty-term continued fraction. @xref{Programming Answer 5, 5}. (@bullet{}) @@ -6056,9 +6056,9 @@ The @dfn{Bernoulli numbers} are a sequence with the interesting property that all of the odd Bernoulli numbers are zero, and the even ones, while difficult to compute, can be roughly approximated -by the formula +by the formula @texline @math{\displaystyle{2 n! \over (2 \pi)^n}}. -@infoline @expr{2 n!@: / (2 pi)^n}. +@infoline @expr{2 n!@: / (2 pi)^n}. Let's write a keyboard macro to compute (approximate) Bernoulli numbers. (Calc has a command, @kbd{k b}, to compute exact Bernoulli numbers, but this command is very slow for large @expr{n} since the higher Bernoulli @@ -6166,7 +6166,7 @@ 0 ;; calc digits (Push a zero onto the stack) st ;; calc-store-into (Store it in the following variable) 1 ;; calc quick variable (Quick variable q1) -1 ;; calc digits (Initial value for the loop) +1 ;; calc digits (Initial value for the loop) TAB ;; calc-roll-down (Swap initial and final) Z( ;; calc-kbd-for (Begin the "for" loop) & ;; calc-inv (Take the reciprocal) @@ -6193,10 +6193,10 @@ The @file{edmacro} package defines a handy @code{read-kbd-macro} command which reads the current region of the current buffer as a sequence of -keystroke names, and defines that sequence on the @kbd{X} +keystroke names, and defines that sequence on the @kbd{X} (and @kbd{C-x e}) key. Because this is so useful, Calc puts this command on the @kbd{C-x * m} key. Try reading in this macro in the -following form: Press @kbd{C-@@} (or @kbd{C-@key{SPC}}) at +following form: Press @kbd{C-@@} (or @kbd{C-@key{SPC}}) at one end of the text below, then type @kbd{C-x * m} at the other. @example @@ -6230,12 +6230,12 @@ where @expr{f'(x)} is the derivative of @expr{f}. The @expr{x} values will quickly converge to a solution, i.e., eventually @texline @math{x_{\rm new}} -@infoline @expr{new_x} +@infoline @expr{new_x} and @expr{x} will be equal to within the limits of the current precision. Write a program which takes a formula involving the variable @expr{x}, and an initial guess @expr{x_0}, on the stack, and produces a value of @expr{x} for which the formula -is zero. Use it to find a solution of +is zero. Use it to find a solution of @texline @math{\sin(\cos x) = 0.5} @infoline @expr{sin(cos(x)) = 0.5} near @expr{x = 4.5}. (Use angles measured in radians.) Note that @@ -6245,12 +6245,12 @@ @cindex Digamma function @cindex Gamma constant, Euler's @cindex Euler's gamma constant -(@bullet{}) @strong{Exercise 9.} The @dfn{digamma} function +(@bullet{}) @strong{Exercise 9.} The @dfn{digamma} function @texline @math{\psi(z) (``psi'')} @infoline @expr{psi(z)} -is defined as the derivative of +is defined as the derivative of @texline @math{\ln \Gamma(z)}. -@infoline @expr{ln(gamma(z))}. +@infoline @expr{ln(gamma(z))}. For large values of @expr{z}, it can be approximated by the infinite sum @ifnottex @@ -6267,9 +6267,9 @@ @end tex @noindent -where +where @texline @math{\sum} -@infoline @expr{sum} +@infoline @expr{sum} represents the sum over @expr{n} from 1 to infinity (or to some limit high enough to give the desired accuracy), and the @code{bern} function produces (exact) Bernoulli numbers. @@ -6277,27 +6277,27 @@ An interesting mathematical constant is Euler's gamma, which is equal to about 0.5772. One way to compute it is by the formula, @texline @math{\gamma = -\psi(1)}. -@infoline @expr{gamma = -psi(1)}. +@infoline @expr{gamma = -psi(1)}. Unfortunately, 1 isn't a large enough argument for the above formula to work (5 is a much safer value for @expr{z}). -Fortunately, we can compute +Fortunately, we can compute @texline @math{\psi(1)} -@infoline @expr{psi(1)} -from +@infoline @expr{psi(1)} +from @texline @math{\psi(5)} -@infoline @expr{psi(5)} -using the recurrence +@infoline @expr{psi(5)} +using the recurrence @texline @math{\psi(z+1) = \psi(z) + {1 \over z}}. -@infoline @expr{psi(z+1) = psi(z) + 1/z}. -Your task: Develop a program to compute +@infoline @expr{psi(z+1) = psi(z) + 1/z}. +Your task: Develop a program to compute @texline @math{\psi(z)}; -@infoline @expr{psi(z)}; +@infoline @expr{psi(z)}; it should ``pump up'' @expr{z} if necessary to be greater than 5, then use the above summation formula. Use looping commands to compute the sum. Use your function -to compute +to compute @texline @math{\gamma} -@infoline @expr{gamma} +@infoline @expr{gamma} to twelve decimal places. (Calc has a built-in command for Euler's constant, @kbd{I P}, which you can use to check your answer.) @xref{Programming Answer 9, 9}. (@bullet{}) @@ -6470,7 +6470,7 @@ @noindent @kbd{1 @key{RET} 2 @key{RET} 3 @key{RET} 4 + * -} -The result is +The result is @texline @math{1 - (2 \times (3 + 4)) = -13}. @infoline @expr{1 - (2 * (3 + 4)) = -13}. @@ -6481,9 +6481,9 @@ @texline @math{2\times4 + 7\times9.5 + {5\over4} = 75.75} @infoline @expr{2*4 + 7*9.5 + 5/4 = 75.75} -After computing the intermediate term +After computing the intermediate term @texline @math{2\times4 = 8}, -@infoline @expr{2*4 = 8}, +@infoline @expr{2*4 = 8}, you can leave that result on the stack while you compute the second term. With both of these results waiting on the stack you can then compute the final term, then press @kbd{+ +} to add everything up. @@ -6790,7 +6790,7 @@ give a floating-point result that is inaccurate even when rounded down to an integer. Consider @expr{123456789 / 2} when the current precision is 6 digits. The true answer is @expr{61728394.5}, but -with a precision of 6 this will be rounded to +with a precision of 6 this will be rounded to @texline @math{12345700.0/2.0 = 61728500.0}. @infoline @expr{12345700.@: / 2.@: = 61728500.}. The result, when converted to an integer, will be off by 106. @@ -6900,18 +6900,18 @@ @subsection Matrix Tutorial Exercise 3 @noindent -To solve +To solve @texline @math{A^T A \, X = A^T B}, -@infoline @expr{trn(A) * A * X = trn(A) * B}, +@infoline @expr{trn(A) * A * X = trn(A) * B}, first we compute @texline @math{A' = A^T A} -@infoline @expr{A2 = trn(A) * A} -and +@infoline @expr{A2 = trn(A) * A} +and @texline @math{B' = A^T B}; -@infoline @expr{B2 = trn(A) * B}; -now, we have a system +@infoline @expr{B2 = trn(A) * B}; +now, we have a system @texline @math{A' X = B'} -@infoline @expr{A2 * X = B2} +@infoline @expr{A2 * X = B2} which we can solve using Calc's @samp{/} command. @ifnottex @@ -6942,7 +6942,7 @@ The first step is to enter the coefficient matrix. We'll store it in quick variable number 7 for later reference. Next, we compute the @texline @math{B'} -@infoline @expr{B2} +@infoline @expr{B2} vector. @smallexample @@ -6958,9 +6958,9 @@ @end smallexample @noindent -Now we compute the matrix +Now we compute the matrix @texline @math{A'} -@infoline @expr{A2} +@infoline @expr{A2} and divide. @smallexample @@ -6979,16 +6979,16 @@ (The actual computed answer will be slightly inexact due to round-off error.) -Notice that the answers are similar to those for the +Notice that the answers are similar to those for the @texline @math{3\times3} @infoline 3x3 -system solved in the text. That's because the fourth equation that was +system solved in the text. That's because the fourth equation that was added to the system is almost identical to the first one multiplied by two. (If it were identical, we would have gotten the exact same -answer since the +answer since the @texline @math{4\times3} @infoline 4x3 -system would be equivalent to the original +system would be equivalent to the original @texline @math{3\times3} @infoline 3x3 system.) @@ -7064,7 +7064,7 @@ \afterdisplay @end tex -Thus we want a +Thus we want a @texline @math{19\times2} @infoline 19x2 matrix with our @expr{x} vector as one column and @@ -7083,12 +7083,12 @@ @end smallexample @noindent -Now we compute +Now we compute @texline @math{A^T y} -@infoline @expr{trn(A) * y} -and +@infoline @expr{trn(A) * y} +and @texline @math{A^T A} -@infoline @expr{trn(A) * A} +@infoline @expr{trn(A) * A} and divide. @smallexample @@ -7114,9 +7114,9 @@ @end group @end smallexample -Since we were solving equations of the form +Since we were solving equations of the form @texline @math{m \times x + b \times 1 = y}, -@infoline @expr{m*x + b*1 = y}, +@infoline @expr{m*x + b*1 = y}, these numbers should be @expr{m} and @expr{b}, respectively. Sure enough, they agree exactly with the result computed using @kbd{V M} and @kbd{V R}! @@ -7177,9 +7177,9 @@ @subsection List Tutorial Exercise 4 @noindent -A number @expr{j} is a divisor of @expr{n} if +A number @expr{j} is a divisor of @expr{n} if @texline @math{n \mathbin{\hbox{\code{\%}}} j = 0}. -@infoline @samp{n % j = 0}. +@infoline @samp{n % j = 0}. The first step is to get a vector that identifies the divisors. @smallexample @@ -7248,9 +7248,9 @@ zero, so adding zeros on the left and right is safe. From then on the job is pretty straightforward. -Incidentally, Calc provides the +Incidentally, Calc provides the @texline @dfn{M@"obius} @math{\mu} -@infoline @dfn{Moebius mu} +@infoline @dfn{Moebius mu} function which is zero if and only if its argument is square-free. It would be a much more convenient way to do the above test in practice. @@ -7282,7 +7282,7 @@ The numbers down the lefthand edge of the list we desire are called the ``triangular numbers'' (now you know why!). The @expr{n}th triangular number is the sum of the integers from 1 to @expr{n}, and -can be computed directly by the formula +can be computed directly by the formula @texline @math{n (n+1) \over 2}. @infoline @expr{n * (n+1) / 2}. @@ -7378,7 +7378,7 @@ @noindent It's a good idea to verify, as in the last step above, that only -one value is equal to the maximum. (After all, a plot of +one value is equal to the maximum. (After all, a plot of @texline @math{\sin x} @infoline @expr{sin(x)} might have many points all equal to the maximum value, 1.) @@ -7650,12 +7650,12 @@ This problem can be made a lot easier by taking advantage of some symmetries. First of all, after some thought it's clear that the @expr{y} axis can be ignored altogether. Just pick a random @expr{x} -component for one end of the match, pick a random direction +component for one end of the match, pick a random direction @texline @math{\theta}, @infoline @expr{theta}, -and see if @expr{x} and +and see if @expr{x} and @texline @math{x + \cos \theta} -@infoline @expr{x + cos(theta)} +@infoline @expr{x + cos(theta)} (which is the @expr{x} coordinate of the other endpoint) cross a line. The lines are at integer coordinates, so this happens when the two numbers surround an integer. @@ -7670,9 +7670,9 @@ coordinates 0 and 1 for the lines on either side of the leftmost endpoint. The rightmost endpoint will be between 0 and 1 if the match does not cross a line, or between 1 and 2 if it does. So: -Pick random @expr{x} and +Pick random @expr{x} and @texline @math{\theta}, -@infoline @expr{theta}, +@infoline @expr{theta}, compute @texline @math{x + \cos \theta}, @infoline @expr{x + cos(theta)}, @@ -8997,7 +8997,7 @@ algebraic entry, whichever way you prefer: @noindent -Computing +Computing @texline @math{\displaystyle{\sin x \over x}}: @infoline @expr{sin(x) / x}: @@ -9068,7 +9068,7 @@ @noindent This program is quite efficient because Calc knows how to raise a -matrix (or other value) to the power @expr{n} in only +matrix (or other value) to the power @expr{n} in only @texline @math{\log_2 n} @infoline @expr{log(n,2)} steps. For example, this program can compute the 1000th Fibonacci @@ -9122,7 +9122,7 @@ @noindent The first step is to compute the derivative @expr{f'(x)} and thus -the formula +the formula @texline @math{\displaystyle{x - {f(x) \over f'(x)}}}. @infoline @expr{x - f(x)/f'(x)}. @@ -9239,12 +9239,12 @@ @noindent The first step is to adjust @expr{z} to be greater than 5. A simple ``for'' loop will do the job here. If @expr{z} is less than 5, we -reduce the problem using +reduce the problem using @texline @math{\psi(z) = \psi(z+1) - 1/z}. @infoline @expr{psi(z) = psi(z+1) - 1/z}. We go -on to compute +on to compute @texline @math{\psi(z+1)}, -@infoline @expr{psi(z+1)}, +@infoline @expr{psi(z+1)}, and remember to add back a factor of @expr{-1/z} when we're done. This step is repeated until @expr{z > 5}. @@ -9283,7 +9283,7 @@ @end group @end smallexample -Now we compute the initial part of the sum: +Now we compute the initial part of the sum: @texline @math{\ln z - {1 \over 2z}} @infoline @expr{ln(z) - 1/2z} minus the adjustment factor. @@ -9326,9 +9326,9 @@ @end group @end smallexample -This is the value of +This is the value of @texline @math{-\gamma}, -@infoline @expr{- gamma}, +@infoline @expr{- gamma}, with a slight bit of roundoff error. To get a full 12 digits, let's use a higher precision: @@ -9361,9 +9361,9 @@ @noindent Taking the derivative of a term of the form @expr{x^n} will produce -a term like +a term like @texline @math{n x^{n-1}}. -@infoline @expr{n x^(n-1)}. +@infoline @expr{n x^(n-1)}. Taking the derivative of a constant produces zero. From this it is easy to see that the @expr{n}th derivative of a polynomial, evaluated at @expr{x = 0}, will equal the @@ -9652,7 +9652,7 @@ @mindex @null @end ignore In most installations, the @kbd{C-x * c} key sequence is a more -convenient way to start the Calculator. Also, @kbd{C-x * *} +convenient way to start the Calculator. Also, @kbd{C-x * *} is a synonym for @kbd{C-x * c} unless you last used Calc in its Keypad mode. @@ -9908,9 +9908,9 @@ The @kbd{h f} (@code{calc-describe-function}) command looks up an algebraic function or a command name in the Calc manual. Enter an algebraic function name to look up that function in the Function -Index or enter a command name beginning with @samp{calc-} to look it +Index or enter a command name beginning with @samp{calc-} to look it up in the Command Index. This command will also look up operator -symbols that can appear in algebraic formulas, like @samp{%} and +symbols that can appear in algebraic formulas, like @samp{%} and @samp{=>}. @kindex h v @@ -10038,7 +10038,7 @@ @cindex Formulas, entering The @kbd{'} (@code{calc-algebraic-entry}) command can be used to enter calculations in algebraic form. This is accomplished by typing the -apostrophe key, ', followed by the expression in standard format: +apostrophe key, ', followed by the expression in standard format: @example ' 2+3*4 @key{RET}. @@ -10047,7 +10047,7 @@ @noindent This will compute @texline @math{2+(3\times4) = 14} -@infoline @expr{2+(3*4) = 14} +@infoline @expr{2+(3*4) = 14} and push it on the stack. If you wish you can ignore the RPN aspect of Calc altogether and simply enter algebraic expressions in this way. You may want to use @key{DEL} every so often to @@ -10453,9 +10453,9 @@ approximation. This value will not need to be recomputed ever again unless you raise the precision still further. Many operations such as logarithms and sines make use of similarly cached values such as -@cpiover{4} and +@cpiover{4} and @texline @math{\ln 2}. -@infoline @expr{ln(2)}. +@infoline @expr{ln(2)}. The visible effect of caching is that high-precision computations may seem to do extra work the first time. Other things cached include powers of two (for the binary arithmetic @@ -10612,10 +10612,10 @@ A floating-point number or @dfn{float} is a number stored in scientific notation. The number of significant digits in the fractional part is governed by the current floating precision (@pxref{Precision}). The -range of acceptable values is from +range of acceptable values is from @texline @math{10^{-3999999}} -@infoline @expr{10^-3999999} -(inclusive) to +@infoline @expr{10^-3999999} +(inclusive) to @texline @math{10^{4000000}} @infoline @expr{10^4000000} (exclusive), plus the corresponding negative values and zero. @@ -10690,18 +10690,18 @@ Rectangular complex numbers can also be displayed in @samp{@var{a}+@var{b}i} notation; @pxref{Complex Formats}. -Polar complex numbers are displayed in the form +Polar complex numbers are displayed in the form @texline `@tfn{(}@var{r}@tfn{;}@math{\theta}@tfn{)}' @infoline `@tfn{(}@var{r}@tfn{;}@var{theta}@tfn{)}' -where @var{r} is the nonnegative magnitude and -@texline @math{\theta} -@infoline @var{theta} -is the argument or phase angle. The range of -@texline @math{\theta} -@infoline @var{theta} +where @var{r} is the nonnegative magnitude and +@texline @math{\theta} +@infoline @var{theta} +is the argument or phase angle. The range of +@texline @math{\theta} +@infoline @var{theta} depends on the current angular mode (@pxref{Angular Modes}); it is generally between @mathit{-180} and @mathit{+180} degrees or the equivalent range -in radians. +in radians. Complex numbers are entered in stages using incomplete objects. @xref{Incomplete Objects}. @@ -10742,9 +10742,9 @@ larger, becomes arbitrarily close to zero. So you can imagine that if @expr{x} got ``all the way to infinity,'' then @expr{1 / x} would go all the way to zero. Similarly, when they say that -@samp{exp(inf) = inf}, they mean that +@samp{exp(inf) = inf}, they mean that @texline @math{e^x} -@infoline @expr{exp(x)} +@infoline @expr{exp(x)} grows without bound as @expr{x} grows. The symbol @samp{-inf} likewise stands for an infinitely negative real value; for example, we say that @samp{exp(-inf) = 0}. You can have an infinity pointing in any @@ -10839,7 +10839,7 @@ @end ignore @tindex vec Algebraic functions for building vectors include @samp{vec(a, b, c)} -to build @samp{[a, b, c]}, @samp{cvec(a, n, m)} to build an +to build @samp{[a, b, c]}, @samp{cvec(a, n, m)} to build an @texline @math{n\times m} @infoline @var{n}x@var{m} matrix of @samp{a}s, and @samp{index(n)} to build a vector of integers @@ -11184,9 +11184,9 @@ division is left in symbolic form. Other operations, such as square roots, are not yet supported for modulo forms. (Note that, although @w{`@tfn{(}@var{a} @tfn{mod} @var{M}@tfn{)^.5}'} will compute a ``modulo square root'' -in the sense of reducing +in the sense of reducing @texline @math{\sqrt a} -@infoline @expr{sqrt(a)} +@infoline @expr{sqrt(a)} modulo @expr{M}, this is not a useful definition from the number-theoretical point of view.) @@ -11220,11 +11220,11 @@ @cindex Standard deviations An @dfn{error form} is a number with an associated standard deviation, as in @samp{2.3 +/- 0.12}. The notation -@texline `@var{x} @tfn{+/-} @math{\sigma}' -@infoline `@var{x} @tfn{+/-} sigma' +@texline `@var{x} @tfn{+/-} @math{\sigma}' +@infoline `@var{x} @tfn{+/-} sigma' stands for an uncertain value which follows a normal or Gaussian distribution of mean @expr{x} and standard -deviation or ``error'' +deviation or ``error'' @texline @math{\sigma}. @infoline @expr{sigma}. Both the mean and the error can be either numbers or @@ -11235,7 +11235,7 @@ All arithmetic and transcendental functions accept error forms as input. Operations on the mean-value part work just like operations on regular -numbers. The error part for any function @expr{f(x)} (such as +numbers. The error part for any function @expr{f(x)} (such as @texline @math{\sin x} @infoline @expr{sin(x)}) is defined by the error of @expr{x} times the derivative of @expr{f} @@ -11267,35 +11267,35 @@ of standard deviations. Actual errors often are neither Gaussian-distributed nor uncorrelated, and the above formulas are valid only when errors are small. As an example, the error arising from -@texline `@tfn{sin(}@var{x} @tfn{+/-} @math{\sigma}@tfn{)}' -@infoline `@tfn{sin(}@var{x} @tfn{+/-} @var{sigma}@tfn{)}' -is -@texline `@math{\sigma} @tfn{abs(cos(}@var{x}@tfn{))}'. -@infoline `@var{sigma} @tfn{abs(cos(}@var{x}@tfn{))}'. +@texline `@tfn{sin(}@var{x} @tfn{+/-} @math{\sigma}@tfn{)}' +@infoline `@tfn{sin(}@var{x} @tfn{+/-} @var{sigma}@tfn{)}' +is +@texline `@math{\sigma} @tfn{abs(cos(}@var{x}@tfn{))}'. +@infoline `@var{sigma} @tfn{abs(cos(}@var{x}@tfn{))}'. When @expr{x} is close to zero, @texline @math{\cos x} -@infoline @expr{cos(x)} -is close to one so the error in the sine is close to +@infoline @expr{cos(x)} +is close to one so the error in the sine is close to @texline @math{\sigma}; @infoline @expr{sigma}; -this makes sense, since +this makes sense, since @texline @math{\sin x} -@infoline @expr{sin(x)} +@infoline @expr{sin(x)} is approximately @expr{x} near zero, so a given error in @expr{x} will produce about the same error in the sine. Likewise, near 90 degrees @texline @math{\cos x} -@infoline @expr{cos(x)} +@infoline @expr{cos(x)} is nearly zero and so the computed error is small: The sine curve is nearly flat in that region, so an error in @expr{x} -has relatively little effect on the value of +has relatively little effect on the value of @texline @math{\sin x}. -@infoline @expr{sin(x)}. +@infoline @expr{sin(x)}. However, consider @samp{sin(90 +/- 1000)}. The cosine of 90 is zero, so Calc will report zero error! We get an obviously wrong result because we have violated the small-error approximation underlying the error analysis. If the error in @expr{x} had been small, the error in @texline @math{\sin x} -@infoline @expr{sin(x)} +@infoline @expr{sin(x)} would indeed have been negligible. @ignore @@ -11402,14 +11402,14 @@ While it may seem that intervals and error forms are similar, they are based on entirely different concepts of inexact quantities. An error -form -@texline `@var{x} @tfn{+/-} @math{\sigma}' -@infoline `@var{x} @tfn{+/-} @var{sigma}' +form +@texline `@var{x} @tfn{+/-} @math{\sigma}' +@infoline `@var{x} @tfn{+/-} @var{sigma}' means a variable is random, and its value could -be anything but is ``probably'' within one -@texline @math{\sigma} -@infoline @var{sigma} -of the mean value @expr{x}. An interval +be anything but is ``probably'' within one +@texline @math{\sigma} +@infoline @var{sigma} +of the mean value @expr{x}. An interval `@tfn{[}@var{a} @tfn{..@:} @var{b}@tfn{]}' means a variable's value is unknown, but guaranteed to lie in the specified range. Error forms are statistical or ``average case'' approximations; @@ -11641,7 +11641,7 @@ @samp{=>} [@code{evalto}]. Note that, unlike in usual computer notation, multiplication binds more -strongly than division: @samp{a*b/c*d} is equivalent to +strongly than division: @samp{a*b/c*d} is equivalent to @texline @math{a b \over c d}. @infoline @expr{(a*b)/(c*d)}. @@ -11858,13 +11858,13 @@ stack and the point on the line containing @samp{30}, @kbd{C-x C-t} creates @samp{10 20 40 30 50}. More generally, @kbd{C-x C-t} acts on the stack objects determined by the current point (and mark) similar -to how the text-mode command @code{transpose-lines} acts on +to how the text-mode command @code{transpose-lines} acts on lines. With argument @var{n}, @kbd{C-x C-t} will move the stack object at the level above the current point and move it past N other objects; for example, with @samp{10 20 30 40 50} on the stack and the point on -the line containing @samp{30}, @kbd{C-u 2 C-x C-t} creates +the line containing @samp{30}, @kbd{C-u 2 C-x C-t} creates @samp{10 40 20 30 50}. With an argument of 0, @kbd{C-x C-t} will switch -the stack objects at the levels determined by the point and the mark. +the stack objects at the levels determined by the point and the mark. @node Editing Stack Entries, Trail Commands, Stack Manipulation, Stack and Trail @section Editing Stack Entries @@ -12056,7 +12056,7 @@ With the exception of keyboard macros, this works for all commands that take arguments off the stack. (To avoid potentially unpleasant behavior, a @kbd{K} prefix before a keyboard macro will be ignored. A @kbd{K} -prefix called @emph{within} the keyboard macro will still take effect.) +prefix called @emph{within} the keyboard macro will still take effect.) As another example, @kbd{K a s} simplifies a formula, pushing the simplified version of the formula onto the stack after the original formula (rather than replacing the original formula). Note that you @@ -12064,7 +12064,7 @@ formula and then simplifying the copy. One difference is that for a very large formula the time taken to format the intermediate copy in @kbd{@key{RET} a s} could be noticeable; @kbd{K a s} would avoid this -extra work. +extra work. Even stack manipulation commands are affected. @key{TAB} works by popping two values and pushing them back in the opposite order, @@ -12155,7 +12155,7 @@ If the file name you give is your user init file (typically @file{~/.emacs}), @kbd{m F} will not automatically load the new file. This is because your user init file may contain other things you don't want -to reread. You can give +to reread. You can give a numeric prefix argument of 1 to @kbd{m F} to force it to read the file no matter what. Conversely, an argument of @mathit{-1} tells @kbd{m F} @emph{not} to read the new file. An argument of 2 or @mathit{-2} @@ -12274,7 +12274,7 @@ @pindex calc-option The @kbd{O} key (@code{calc-option}) sets another flag, the @dfn{Option Flag}, which also can alter the subsequent Calc command in -various ways. +various ways. The Inverse, Hyperbolic and Option flags apply only to the next Calculator command, after which they are automatically cleared. (They @@ -12366,7 +12366,7 @@ rather get an exact fractional answer. One way to accomplish this is to use the @kbd{:} (@code{calc-fdiv}) [@code{fdiv}] command, which divides the two integers on the top of the stack to produce a fraction: -@kbd{6 @key{RET} 4 :} produces @expr{3:2} even though +@kbd{6 @key{RET} 4 :} produces @expr{3:2} even though @kbd{6 @key{RET} 4 /} produces @expr{1.5}. @kindex m f @@ -13155,11 +13155,11 @@ command causes integers to be padded out with leading zeros according to the current binary word size. (@xref{Binary Functions}, for a discussion of word size.) If the absolute value of the word size is @expr{w}, all integers -are displayed with at least enough digits to represent +are displayed with at least enough digits to represent @texline @math{2^w-1} -@infoline @expr{(2^w)-1} +@infoline @expr{(2^w)-1} in the current radix. (Larger integers will still be displayed in their -entirety.) +entirety.) @cindex Two's complements Calc can display @expr{w}-bit integers using two's complement @@ -13181,7 +13181,7 @@ are represented by themselves and the integers from @texline @math{-2^{w-1}} @infoline @expr{-2^(w-1)} -to @expr{-1} are represented by the integers from +to @expr{-1} are represented by the integers from @texline @math{2^{w-1}} @infoline @expr{2^(w-1)} to @expr{2^w-1} (the integer @expr{k} is represented by @expr{k+2^w}). @@ -13190,7 +13190,7 @@ representation (including any leading zeros necessary to include all @expr{w} bits). In a two's complement display mode, numbers that are not displayed in two's complement notation (i.e., that aren't -integers from +integers from @texline @math{-2^{w-1}} @infoline @expr{-2^(w-1)} to @@ -14095,13 +14095,13 @@ formulas (a reference to an existing entry on the stack). Complex numbers are displayed as in @samp{3 + 4i}. Fractions and -quotients are written using @code{\over} in @TeX{} mode (as in +quotients are written using @code{\over} in @TeX{} mode (as in @code{@{a \over b@}}) and @code{\frac} in La@TeX{} mode (as in @code{\frac@{a@}@{b@}}); binomial coefficients are written with @code{\choose} in @TeX{} mode (as in @code{@{a \choose b@}}) and @code{\binom} in La@TeX{} mode (as in @code{\binom@{a@}@{b@}}). Interval forms are written with @code{\ldots}, and error forms are -written with @code{\pm}. Absolute values are written as in +written with @code{\pm}. Absolute values are written as in @samp{|x + 1|}, and the floor and ceiling functions are written with @code{\lfloor}, @code{\rfloor}, etc. The words @code{\left} and @code{\right} are ignored when reading formulas in @TeX{} and La@TeX{} @@ -14114,10 +14114,10 @@ instead of parentheses for very simple arguments. During input, curly braces and parentheses work equally well for grouping, but when the document is formatted the curly braces will be invisible. Thus the -printed result is +printed result is @texline @math{\sin{2 x}} -@infoline @expr{sin 2x} -but +@infoline @expr{sin 2x} +but @texline @math{\sin(2 + x)}. @infoline @expr{sin(2 + x)}. @@ -14131,7 +14131,7 @@ @kbd{d L} with a positive numeric prefix argument, names of more than one character will instead be enclosed in a protective commands that will prevent them from being typeset in the math italics; they will be -written @samp{\hbox@{@var{name}@}} in @TeX{} mode and +written @samp{\hbox@{@var{name}@}} in @TeX{} mode and @samp{\text@{@var{name}@}} in La@TeX{} mode. The @samp{\hbox@{ @}} and @samp{\text@{ @}} notations are ignored during reading. If you use a negative prefix argument, such function names are @@ -14143,7 +14143,7 @@ During reading, text of the form @samp{\matrix@{ ...@: @}} is replaced by @samp{[ ...@: ]}. The same also applies to @code{\pmatrix} and -@code{\bmatrix}. In La@TeX{} mode this also applies to +@code{\bmatrix}. In La@TeX{} mode this also applies to @samp{\begin@{matrix@} ... \end@{matrix@}}, @samp{\begin@{bmatrix@} ... \end@{bmatrix@}}, @samp{\begin@{pmatrix@} ... \end@{pmatrix@}}, as well as @@ -14151,12 +14151,12 @@ The symbol @samp{&} is interpreted as a comma, and the symbols @samp{\cr} and @samp{\\} are interpreted as semicolons. During output, matrices are displayed in @samp{\matrix@{ a & b \\ c & d@}} -format in @TeX{} mode and in +format in @TeX{} mode and in @samp{\begin@{pmatrix@} a & b \\ c & d \end@{pmatrix@}} format in La@TeX{} mode; you may need to edit this afterwards to change to your preferred matrix form. If you invoke @kbd{d T} or @kbd{d L} with an argument of 2 or -2, then matrices will be displayed in two-dimensional -form, such as +form, such as @example \begin@{pmatrix@} @@ -14300,25 +14300,25 @@ @example Calc TeX LaTeX eqn ---- --- ----- --- -acute \acute \acute -Acute \Acute +acute \acute \acute +Acute \Acute bar \bar \bar bar Bar \Bar -breve \breve \breve -Breve \Breve -check \check \check -Check \Check +breve \breve \breve +Breve \Breve +check \check \check +Check \Check dddot \dddot ddddot \ddddot dot \dot \dot dot Dot \Dot dotdot \ddot \ddot dotdot -DotDot \Ddot +DotDot \Ddot dyad dyad -grave \grave \grave -Grave \Grave +grave \grave \grave +Grave \Grave hat \hat \hat hat -Hat \Hat +Hat \Hat Prime prime tilde \tilde \tilde tilde Tilde \Tilde @@ -14363,7 +14363,7 @@ Note that, because these symbols are ignored, reading a @TeX{} or La@TeX{} formula into Calc and writing it back out may lose spacing and -font information. +font information. Also, the ``discretionary multiplication sign'' @samp{\*} is read the same as @samp{*}. @@ -14542,7 +14542,7 @@ of quotes in @dfn{eqn}, but it is good enough for most uses. Accent codes (@samp{@var{x} dot}) are handled by treating them as -function calls (@samp{dot(@var{x})}) internally. +function calls (@samp{dot(@var{x})}) internally. @xref{TeX and LaTeX Language Modes}, for a table of these accent functions. The @code{prime} accent is treated specially if it occurs on a variable or function name: @samp{f prime prime @w{( x prime )}} is @@ -14572,7 +14572,7 @@ The @kbd{d Y} (@code{calc-yacas-language}) command selects the conventions of Yacas, a free computer algebra system. While the operators and functions in Yacas are similar to those of Calc, the names -of built-in functions in Yacas are capitalized. The Calc formula +of built-in functions in Yacas are capitalized. The Calc formula @samp{sin(2 x)}, for example, is entered and displayed @samp{Sin(2 x)} in Yacas mode, and `@samp{arcsin(x^2)} is @samp{ArcSin(x^2)} in Yacas mode. Complex numbers are written are written @samp{3 + 4 I}. @@ -14581,9 +14581,9 @@ represents both @code{inf} and @code{uinf}, and @code{Undefined} represents @code{nan}. -Certain operators on functions, such as @code{D} for differentiation +Certain operators on functions, such as @code{D} for differentiation and @code{Integrate} for integration, take a prefix form in Yacas. For -example, the derivative of @w{@samp{e^x sin(x)}} can be computed with +example, the derivative of @w{@samp{e^x sin(x)}} can be computed with @w{@samp{D(x) Exp(x)*Sin(x)}}. Other notable differences between Yacas and standard Calc expressions @@ -14602,7 +14602,7 @@ The @kbd{d X} (@code{calc-maxima-language}) command selects the conventions of Maxima, another free computer algebra system. The function names in Maxima are similar, but not always identical, to Calc. -For example, instead of @samp{arcsin(x)}, Maxima will use +For example, instead of @samp{arcsin(x)}, Maxima will use @samp{asin(x)}. Complex numbers are written @samp{3 + 4 %i}. The standard special constants are written @code{%pi}, @code{%e}, @code{%i}, @code{%phi} and @code{%gamma}. In Maxima, @code{inf} means @@ -14610,8 +14610,8 @@ Underscores as well as percent signs are allowed in function and variable names in Maxima mode. The underscore again is equivalent to -the @samp{#} in Normal mode, and the percent sign is equivalent to -@samp{o'o}. +the @samp{#} in Normal mode, and the percent sign is equivalent to +@samp{o'o}. Maxima uses square brackets for lists and vectors, and matrices are written as calls to the function @code{matrix}, given the row vectors of @@ -14629,7 +14629,7 @@ names in Giac are similar to Maxima. Complex numbers are written @samp{3 + 4 i}. The standard special constants in Giac are the same as in Calc, except that @code{infinity} represents both Calc's @code{inf} -and @code{uinf}. +and @code{uinf}. Underscores are allowed in function and variable names in Giac mode. Brackets are used for subscripts. In Giac, indexing of lists begins at @@ -15786,9 +15786,9 @@ @item Matrix/Scalar mode. Default value is @mathit{-1}. Value is 0 for Scalar mode, @mathit{-2} for Matrix mode, @mathit{-3} for square Matrix mode, -or @var{N} for +or @var{N} for @texline @math{N\times N} -@infoline @var{N}x@var{N} +@infoline @var{N}x@var{N} Matrix mode. Command is @kbd{m v}. @item @@ -16178,7 +16178,7 @@ @mindex @null @end ignore @tindex / -The @kbd{/} (@code{calc-divide}) command divides two numbers. +The @kbd{/} (@code{calc-divide}) command divides two numbers. When combining multiplication and division in an algebraic formula, it is good style to use parentheses to distinguish between possible @@ -16187,7 +16187,7 @@ parentheses, Calc will interpret @samp{a/b*c} as @samp{a/(b*c)}, since in algebraic entry Calc gives division a lower precedence than multiplication. (This is not standard across all computer languages, and -Calc may change the precedence depending on the language mode being used. +Calc may change the precedence depending on the language mode being used. @xref{Language Modes}.) This default ordering can be changed by setting the customizable variable @code{calc-multiplication-has-precedence} to @code{nil} (@pxref{Customizing Calc}); this will give multiplication and @@ -16373,7 +16373,7 @@ The @kbd{f M} (@code{calc-mant-part}) [@code{mant}] function extracts the ``mantissa'' part @expr{m} of its floating-point argument; @kbd{f X} (@code{calc-xpon-part}) [@code{xpon}] extracts the ``exponent'' part -@expr{e}. The original number is equal to +@expr{e}. The original number is equal to @texline @math{m \times 10^e}, @infoline @expr{m * 10^e}, where @expr{m} is in the interval @samp{[1.0 ..@: 10.0)} except that @@ -16406,9 +16406,9 @@ For example, incrementing @samp{12.3456} when the current precision is 6 digits yields @samp{12.3457}. If the current precision had been 8 digits, the result would have been @samp{12.345601}. Incrementing -@samp{0.0} produces +@samp{0.0} produces @texline @math{10^{-p}}, -@infoline @expr{10^-p}, +@infoline @expr{10^-p}, where @expr{p} is the current precision. These operations are defined only on integers and floats. With numeric prefix arguments, they change the number by @expr{n} units. @@ -16852,7 +16852,7 @@ The @kbd{t J} (@code{calc-julian}) [@code{julian}] command converts a date form into a Julian day count, which is the number of days since noon (GMT) on Jan 1, 4713 BC. A pure date is converted to an -integer Julian count representing noon of that day. A date/time form +integer Julian count representing noon of that day. A date/time form is converted to an exact floating-point Julian count, adjusted to interpret the date form in the current time zone but the Julian day count in Greenwich Mean Time. A numeric prefix argument allows @@ -17294,12 +17294,12 @@ default get the time zone and daylight saving information from the calendar (@pxref{Daylight Saving,Calendar/Diary,The Calendar and the Diary, emacs,The GNU Emacs Manual}). To use a different time zone, or if the -calendar does not give the desired result, you can set the Calc variable +calendar does not give the desired result, you can set the Calc variable @code{TimeZone} (which is by default @code{nil}) to an appropriate time zone name. (The easiest way to do this is to edit the @code{TimeZone} variable using Calc's @kbd{s T} command, then use the @kbd{s p} (@code{calc-permanent-variable}) command to save the value of -@code{TimeZone} permanently.) +@code{TimeZone} permanently.) If the time zone given by @code{TimeZone} is a generalized time zone, e.g., @code{EGT}, Calc examines the date being converted to tell whether to use standard or daylight saving time. But if the current time zone @@ -17311,12 +17311,12 @@ The @kbd{t J} and @code{t U} commands with no numeric prefix arguments do the same thing as @samp{tzone()}; namely, use the -information from the calendar if @code{TimeZone} is @code{nil}, +information from the calendar if @code{TimeZone} is @code{nil}, otherwise use the time zone given by @code{TimeZone}. @vindex math-daylight-savings-hook @findex math-std-daylight-savings -When Calc computes the daylight saving information itself (i.e., when +When Calc computes the daylight saving information itself (i.e., when the @code{TimeZone} variable is set), it will by default consider daylight saving time to begin at 2 a.m.@: on the second Sunday of March (for years from 2007 on) or on the last Sunday in April (for years @@ -17392,7 +17392,7 @@ from 3 a.m.@: to 4 a.m. At the end of daylight saving time, the hour from 1 a.m.@: to 2 a.m.@: repeats itself; converting a date/time form that falls in this hour results in a time value for the first -manifestation of that time (@emph{not} the one that occurs one hour +manifestation of that time (@emph{not} the one that occurs one hour later). If @code{math-daylight-savings-hook} is @code{nil}, then the @@ -17995,12 +17995,12 @@ @expr{2^w} by all binary functions. If the word size is negative, binary operations produce twos-complement -integers from +integers from @texline @math{-2^{-w-1}} -@infoline @expr{-(2^(-w-1))} -to +@infoline @expr{-(2^(-w-1))} +to @texline @math{2^{-w-1}-1} -@infoline @expr{2^(-w-1)-1} +@infoline @expr{2^(-w-1)-1} inclusive. Either mode accepts inputs in any range; the sign of @expr{w} affects only the results produced. @@ -18182,13 +18182,13 @@ One miscellaneous command is shift-@kbd{P} (@code{calc-pi}), which pushes the value of @cpi{} (at the current precision) onto the stack. With the Hyperbolic flag, it pushes the value @expr{e}, the base of natural logarithms. -With the Inverse flag, it pushes Euler's constant +With the Inverse flag, it pushes Euler's constant @texline @math{\gamma} -@infoline @expr{gamma} +@infoline @expr{gamma} (about 0.5772). With both Inverse and Hyperbolic, it -pushes the ``golden ratio'' +pushes the ``golden ratio'' @texline @math{\phi} -@infoline @expr{phi} +@infoline @expr{phi} (about 1.618). (At present, Euler's constant is not available to unlimited precision; Calc knows only the first 100 digits.) In Symbolic mode, these commands push the @@ -18266,7 +18266,7 @@ (base-10) logarithm of a number. (With the Inverse flag [@code{exp10}], it raises ten to a given power.) Note that the common logarithm of a complex number is computed by taking the natural logarithm and dividing -by +by @texline @math{\ln10}. @infoline @expr{ln(10)}. @@ -18278,7 +18278,7 @@ The @kbd{B} (@code{calc-log}) [@code{log}] command computes a logarithm to any base. For example, @kbd{1024 @key{RET} 2 B} produces 10, since @texline @math{2^{10} = 1024}. -@infoline @expr{2^10 = 1024}. +@infoline @expr{2^10 = 1024}. In certain cases like @samp{log(3,9)}, the result will be either @expr{1:2} or @expr{0.5} depending on the current Fraction mode setting. With the Inverse flag [@code{alog}], this command is @@ -18300,11 +18300,11 @@ @tindex expm1 The @kbd{f E} (@code{calc-expm1}) [@code{expm1}] command computes @texline @math{e^x - 1}, -@infoline @expr{exp(x)-1}, +@infoline @expr{exp(x)-1}, but using an algorithm that produces a more accurate -answer when the result is close to zero, i.e., when +answer when the result is close to zero, i.e., when @texline @math{e^x} -@infoline @expr{exp(x)} +@infoline @expr{exp(x)} is close to one. @kindex f L @@ -18312,7 +18312,7 @@ @tindex lnp1 The @kbd{f L} (@code{calc-lnp1}) [@code{lnp1}] command computes @texline @math{\ln(x+1)}, -@infoline @expr{ln(x+1)}, +@infoline @expr{ln(x+1)}, producing a more accurate answer when @expr{x} is close to zero. @node Trigonometric and Hyperbolic Functions, Advanced Math Functions, Logarithmic Functions, Scientific Functions @@ -18515,9 +18515,9 @@ gamma function. For positive integer arguments, this is related to the factorial function: @samp{gamma(n+1) = fact(n)}. For general complex arguments the gamma function can be defined by the following definite -integral: +integral: @texline @math{\Gamma(a) = \int_0^\infty t^{a-1} e^t dt}. -@infoline @expr{gamma(a) = integ(t^(a-1) exp(t), t, 0, inf)}. +@infoline @expr{gamma(a) = integ(t^(a-1) exp(t), t, 0, inf)}. (The actual implementation uses far more efficient computational methods.) @kindex f G @@ -18549,7 +18549,7 @@ @tindex gammaG The @kbd{f G} (@code{calc-inc-gamma}) [@code{gammaP}] command computes the incomplete gamma function, denoted @samp{P(a,x)}. This is defined by -the integral, +the integral, @texline @math{P(a,x) = \left( \int_0^x t^{a-1} e^t dt \right) / \Gamma(a)}. @infoline @expr{gammaP(a,x) = integ(t^(a-1) exp(t), t, 0, x) / gamma(a)}. This implies that @samp{gammaP(a,inf) = 1} for any @expr{a} (see the @@ -18583,7 +18583,7 @@ The @kbd{f b} (@code{calc-beta}) [@code{beta}] command computes the Euler beta function, which is defined in terms of the gamma function as @texline @math{B(a,b) = \Gamma(a) \Gamma(b) / \Gamma(a+b)}, -@infoline @expr{beta(a,b) = gamma(a) gamma(b) / gamma(a+b)}, +@infoline @expr{beta(a,b) = gamma(a) gamma(b) / gamma(a+b)}, or by @texline @math{B(a,b) = \int_0^1 t^{a-1} (1-t)^{b-1} dt}. @infoline @expr{beta(a,b) = integ(t^(a-1) (1-t)^(b-1), t, 0, 1)}. @@ -18606,7 +18606,7 @@ @tindex erf @tindex erfc The @kbd{f e} (@code{calc-erf}) [@code{erf}] command computes the -error function +error function @texline @math{\hbox{erf}(x) = {2 \over \sqrt{\pi}} \int_0^x e^{-t^2} dt}. @infoline @expr{erf(x) = 2 integ(exp(-(t^2)), t, 0, x) / sqrt(pi)}. The complementary error function @kbd{I f e} (@code{calc-erfc}) [@code{erfc}] @@ -18784,9 +18784,9 @@ random numbers of various sorts. Given a positive numeric prefix argument @expr{M}, it produces a random -integer @expr{N} in the range +integer @expr{N} in the range @texline @math{0 \le N < M}. -@infoline @expr{0 <= N < M}. +@infoline @expr{0 <= N < M}. Each possible value @expr{N} appears with equal probability. With no numeric prefix argument, the @kbd{k r} command takes its argument @@ -18794,17 +18794,17 @@ the result is a random integer less than @expr{M}. However, note that while numeric prefix arguments are limited to six digits or so, an @expr{M} taken from the stack can be arbitrarily large. If @expr{M} is negative, -the result is a random integer in the range +the result is a random integer in the range @texline @math{M < N \le 0}. @infoline @expr{M < N <= 0}. If the value on the stack is a floating-point number @expr{M}, the result -is a random floating-point number @expr{N} in the range +is a random floating-point number @expr{N} in the range @texline @math{0 \le N < M} @infoline @expr{0 <= N < M} -or +or @texline @math{M < N \le 0}, -@infoline @expr{M < N <= 0}, +@infoline @expr{M < N <= 0}, according to the sign of @expr{M}. If @expr{M} is zero, the result is a Gaussian-distributed random real @@ -18812,14 +18812,14 @@ of one. The algorithm used generates random numbers in pairs; thus, every other call to this function will be especially fast. -If @expr{M} is an error form +If @expr{M} is an error form @texline @math{m} @code{+/-} @math{\sigma} -@infoline @samp{m +/- s} -where @var{m} and +@infoline @samp{m +/- s} +where @var{m} and @texline @math{\sigma} -@infoline @var{s} +@infoline @var{s} are both real numbers, the result uses a Gaussian distribution with mean -@var{m} and standard deviation +@var{m} and standard deviation @texline @math{\sigma}. @infoline @var{s}. @@ -18932,9 +18932,9 @@ If @code{RandSeed} contains an integer, Calc uses this integer to seed an ``additive congruential'' method (Knuth's algorithm 3.2.2A, -computing +computing @texline @math{X_{n-55} - X_{n-24}}. -@infoline @expr{X_n-55 - X_n-24}). +@infoline @expr{X_n-55 - X_n-24}). This method expands the seed value into a large table which is maintained internally; the variable @code{RandSeed} is changed from, e.g., 42 to the vector @expr{[42]} @@ -18970,18 +18970,18 @@ To create a random floating-point number with precision @var{p}, Calc simply creates a random @var{p}-digit integer and multiplies by @texline @math{10^{-p}}. -@infoline @expr{10^-p}. +@infoline @expr{10^-p}. The resulting random numbers should be very clean, but note that relatively small numbers will have few significant random digits. In other words, with a precision of 12, you will occasionally get -numbers on the order of +numbers on the order of @texline @math{10^{-9}} -@infoline @expr{10^-9} -or +@infoline @expr{10^-9} +or @texline @math{10^{-10}}, -@infoline @expr{10^-10}, +@infoline @expr{10^-10}, but those numbers will only have two or three random digits since they -correspond to small integers times +correspond to small integers times @texline @math{10^{-12}}. @infoline @expr{10^-12}. @@ -19032,7 +19032,7 @@ @tindex egcd The @kbd{k E} (@code{calc-extended-gcd}) [@code{egcd}] command computes the GCD of two integers @expr{x} and @expr{y} and returns a vector -@expr{[g, a, b]} where +@expr{[g, a, b]} where @texline @math{g = \gcd(x,y) = a x + b y}. @infoline @expr{g = gcd(x,y) = a x + b y}. @@ -19119,11 +19119,11 @@ @tindex stir1 @tindex stir2 The @kbd{k s} (@code{calc-stirling-number}) [@code{stir1}] command -computes a Stirling number of the first +computes a Stirling number of the first @texline kind@tie{}@math{n \brack m}, @infoline kind, given two integers @expr{n} and @expr{m} on the stack. The @kbd{H k s} -[@code{stir2}] command computes a Stirling number of the second +[@code{stir2}] command computes a Stirling number of the second @texline kind@tie{}@math{n \brace m}. @infoline kind. These are the number of @expr{m}-cycle permutations of @expr{n} objects, @@ -19202,7 +19202,7 @@ @pindex calc-totient @tindex totient The @kbd{k t} (@code{calc-totient}) [@code{totient}] command computes the -Euler ``totient'' +Euler ``totient'' @texline function@tie{}@math{\phi(n)}, @infoline function, the number of integers less than @expr{n} which @@ -19277,7 +19277,7 @@ @tindex ltpc The @samp{utpc(x,v)} function uses the chi-square distribution with @texline @math{\nu} -@infoline @expr{v} +@infoline @expr{v} degrees of freedom. It is the probability that a model is correct if its chi-square statistic is @expr{x}. @@ -19293,10 +19293,10 @@ @end ignore @tindex ltpf The @samp{utpf(F,v1,v2)} function uses the F distribution, used in -various statistical tests. The parameters +various statistical tests. The parameters @texline @math{\nu_1} -@infoline @expr{v1} -and +@infoline @expr{v1} +and @texline @math{\nu_2} @infoline @expr{v2} are the degrees of freedom in the numerator and denominator, @@ -19314,9 +19314,9 @@ @end ignore @tindex ltpn The @samp{utpn(x,m,s)} function uses a normal (Gaussian) distribution -with mean @expr{m} and standard deviation +with mean @expr{m} and standard deviation @texline @math{\sigma}. -@infoline @expr{s}. +@infoline @expr{s}. It is the probability that such a normal-distributed random variable would exceed @expr{x}. @@ -19347,20 +19347,20 @@ @end ignore @tindex ltpt The @samp{utpt(t,v)} function uses the Student's ``t'' distribution -with +with @texline @math{\nu} -@infoline @expr{v} +@infoline @expr{v} degrees of freedom. It is the probability that a t-distributed random variable will be greater than @expr{t}. -(Note: This computes the distribution function +(Note: This computes the distribution function @texline @math{A(t|\nu)} @infoline @expr{A(t|v)} -where +where @texline @math{A(0|\nu) = 1} -@infoline @expr{A(0|v) = 1} -and +@infoline @expr{A(0|v) = 1} +and @texline @math{A(\infty|\nu) \to 0}. -@infoline @expr{A(inf|v) -> 0}. +@infoline @expr{A(inf|v) -> 0}. The @code{UTPT} operation on the HP-48 uses a different definition which returns half of Calc's value: @samp{UTPT(t,v) = .5*utpt(t,v)}.) @@ -19670,7 +19670,7 @@ the stack is a scalar, it is used for each element on the diagonal, and the prefix argument is required. -To build a constant square matrix, e.g., a +To build a constant square matrix, e.g., a @texline @math{3\times3} @infoline 3x3 matrix filled with ones, use @kbd{0 M-3 v d 1 +}, i.e., build a zero @@ -19911,7 +19911,7 @@ With the Hyperbolic flag, @kbd{H v l} [@code{mdims}] computes a vector of the dimensions of a vector, matrix, or higher-order object. For example, @samp{mdims([[a,b,c],[d,e,f]])} returns @samp{[2, 3]} since -its argument is a +its argument is a @texline @math{2\times3} @infoline 2x3 matrix. @@ -19945,17 +19945,17 @@ in the vector, the last row will be short and the result will not be suitable for use as a matrix. For example, with the matrix @samp{[[1, 2], @w{[3, 4]}]} on the stack, @kbd{v a 4} produces -@samp{[[1, 2, 3, 4]]} (a +@samp{[[1, 2, 3, 4]]} (a @texline @math{1\times4} @infoline 1x4 -matrix), @kbd{v a 1} produces @samp{[[1], [2], [3], [4]]} (a +matrix), @kbd{v a 1} produces @samp{[[1], [2], [3], [4]]} (a @texline @math{4\times1} @infoline 4x1 -matrix), @kbd{v a 2} produces @samp{[[1, 2], [3, 4]]} (the original +matrix), @kbd{v a 2} produces @samp{[[1, 2], [3, 4]]} (the original @texline @math{2\times2} @infoline 2x2 matrix), @w{@kbd{v a 3}} produces @samp{[[1, 2, 3], [4]]} (not a -matrix), and @kbd{v a 0} produces the flattened list +matrix), and @kbd{v a 0} produces the flattened list @samp{[1, 2, @w{3, 4}]}. @cindex Sorting data @@ -20040,9 +20040,9 @@ will be used to determine the bins. (If a positive integer is given at this prompt, it will be still treated as if it were given as a prefix.) Each bin will consist of the interval of numbers closest to -the corresponding number of this new vector; if the vector -@expr{[a, b, c, ...]} is entered at the prompt, the bins will be -@expr{(-inf, (a+b)/2]}, @expr{((a+b)/2, (b+c)/2]}, etc. The result of +the corresponding number of this new vector; if the vector +@expr{[a, b, c, ...]} is entered at the prompt, the bins will be +@expr{(-inf, (a+b)/2]}, @expr{((a+b)/2, (b+c)/2]}, etc. The result of this command will be a vector counting how many elements of the original vector are in each bin. @@ -20313,10 +20313,10 @@ sets are disjoint, i.e., if they share no common elements, the result will be the empty vector @samp{[]}. Note that the characters @kbd{V} and @kbd{^} were chosen to be close to the conventional mathematical -notation for set +notation for set @texline union@tie{}(@math{A \cup B}) @infoline union -and +and @texline intersection@tie{}(@math{A \cap B}). @infoline intersection. @@ -20432,7 +20432,7 @@ not include any negative numbers. The input is interpreted as a set of integers in the sense of @kbd{V F} (@code{vfloor}). Beware that a simple input like @samp{[100]} can result in a huge integer -representation +representation @texline (@math{2^{100}}, a 31-digit integer, in this case). @infoline (@expr{2^100}, a 31-digit integer, in this case). @@ -20544,10 +20544,10 @@ @cindex Mean of data values The @kbd{u M} (@code{calc-vector-mean}) [@code{vmean}] command computes the average (arithmetic mean) of the data values. -If the inputs are error forms +If the inputs are error forms @texline @math{x \pm \sigma}, -@infoline @samp{x +/- s}, -this is the weighted mean of the @expr{x} values with weights +@infoline @samp{x +/- s}, +this is the weighted mean of the @expr{x} values with weights @texline @math{1 /\sigma^2}. @infoline @expr{1 / s^2}. @tex @@ -20558,9 +20558,9 @@ values divided by the count of the values. Note that a plain number can be considered an error form with -error +error @texline @math{\sigma = 0}. -@infoline @expr{s = 0}. +@infoline @expr{s = 0}. If the input to @kbd{u M} is a mixture of plain numbers and error forms, the result is the mean of the plain numbers, ignoring all values with non-zero errors. (By the @@ -20662,7 +20662,7 @@ @cindex Standard deviation @cindex Sample statistics The @kbd{u S} (@code{calc-vector-sdev}) [@code{vsdev}] command -computes the standard +computes the standard @texline deviation@tie{}@math{\sigma} @infoline deviation of the data values. If the values are error forms, the errors are used @@ -20677,9 +20677,9 @@ This function also applies to distributions. The standard deviation of a single error form is simply the error part. The standard deviation of a continuous interval happens to equal the difference between the -limits, divided by +limits, divided by @texline @math{\sqrt{12}}. -@infoline @expr{sqrt(12)}. +@infoline @expr{sqrt(12)}. The standard deviation of an integer interval is the same as the standard deviation of a vector of those integers. @@ -20714,7 +20714,7 @@ The @kbd{H u S} (@code{calc-vector-variance}) [@code{vvar}] and @kbd{H I u S} (@code{calc-vector-pop-variance}) [@code{vpvar}] commands compute the variance of the data values. The variance -is the +is the @texline square@tie{}@math{\sigma^2} @infoline square of the standard deviation, i.e., the sum of the @@ -20738,7 +20738,7 @@ vectors of equal size. The vectors are each flattened in the same way as by the single-variable statistical functions. Given a numeric prefix argument of 1, these functions instead take one object from -the stack, which must be an +the stack, which must be an @texline @math{N\times2} @infoline Nx2 matrix of data values. Once again, variable names can be used in place @@ -20996,7 +20996,7 @@ If any argument to @kbd{V M} is a matrix, the operator is normally mapped across all elements of the matrix. For example, given the matrix @expr{[[1, -2, 3], [-4, 5, -6]]}, @kbd{V M A} takes six absolute values to -produce another +produce another @texline @math{3\times2} @infoline 3x2 matrix, @expr{[[1, 2, 3], [4, 5, 6]]}. @@ -21612,8 +21612,8 @@ @pindex calc-break-selections The @kbd{j b} (@code{calc-break-selections}) command controls a mode in which the ``deep structure'' of these associative formulas shows -through. Calc actually stores the above formulas as -@samp{((a + b) - c) + d} and @samp{x * (y * z)}. (Note that for certain +through. Calc actually stores the above formulas as +@samp{((a + b) - c) + d} and @samp{x * (y * z)}. (Note that for certain obscure reasons, by default Calc treats multiplication as right-associative.) Once you have enabled @kbd{j b} mode, selecting with the cursor on the @samp{-} sign would only select the @samp{a + b - @@ -22098,7 +22098,7 @@ example, if the formula on the stack is @samp{1 / (sqrt(a) + 1)}, you may wish to eliminate the square root in the denominator by multiplying the top and bottom by @samp{sqrt(a) - 1}. If you did this simply by using -a simple @kbd{j *} command, you would get +a simple @kbd{j *} command, you would get @samp{(sqrt(a)-1)/ (sqrt(a) (sqrt(a) - 1) + sqrt(a) - 1)}. Instead, you would probably want to use @kbd{C-u 0 j *}, which would expand the bottom and give you the desired result @samp{(sqrt(a)-1)/(a-1)}. More @@ -22405,7 +22405,7 @@ For example, @expr{2 + 3} is evaluated to @expr{5}, and @expr{@tfn{sqrt}(9)} is evaluated to @expr{3}. Evaluation does not occur if the arguments to a function are somehow of the wrong type @expr{@tfn{tan}([2,3,4])}), -range (@expr{@tfn{tan}(90)}), or number (@expr{@tfn{tan}(3,5)}), +range (@expr{@tfn{tan}(90)}), or number (@expr{@tfn{tan}(3,5)}), or if the function name is not recognized (@expr{@tfn{f}(5)}), or if Symbolic mode (@pxref{Symbolic Mode}) prevents evaluation (@expr{@tfn{sqrt}(2)}). @@ -22452,7 +22452,7 @@ arguments in Calc's internal form. Sums and products of three or more terms are arranged by the associative law of algebra into a left-associative form for sums, @expr{((a + b) + c) + d}, and -(by default) a right-associative form for products, +(by default) a right-associative form for products, @expr{a * (b * (c * d))}. Formulas like @expr{(a + b) + (c + d)} are rearranged to left-associative form, though this rarely matters since Calc's algebra commands are designed to hide the inner structure of sums @@ -22533,7 +22533,7 @@ rewritten to @expr{a (c - b)}. The distributive law of products and powers is used for adjacent -terms of the product: @expr{x^a x^b} goes to +terms of the product: @expr{x^a x^b} goes to @texline @math{x^{a+b}} @infoline @expr{x^(a+b)} where @expr{a} is a number, or an implicit 1 (as in @expr{x}), @@ -22544,9 +22544,9 @@ @expr{1} or to @samp{idn(1)} if Matrix mode is enabled. The product of a negative power times anything but another negative -power is changed to use division: +power is changed to use division: @texline @math{x^{-2} y} -@infoline @expr{x^(-2) y} +@infoline @expr{x^(-2) y} goes to @expr{y / x^2} unless Matrix mode is in effect and neither @expr{x} nor @expr{y} are scalar (in which case it is considered unsafe to rearrange the order of the terms). @@ -22568,13 +22568,13 @@ infinite quantity, as directed by the current infinite mode. @xref{Infinite Mode}. -The expression +The expression @texline @math{a / b^{-c}} -@infoline @expr{a / b^(-c)} +@infoline @expr{a / b^(-c)} is changed to @expr{a b^c}, where @expr{-c} is any negative-looking -power. Also, @expr{1 / b^c} is changed to +power. Also, @expr{1 / b^c} is changed to @texline @math{b^{-c}} -@infoline @expr{b^(-c)} +@infoline @expr{b^(-c)} for any power @expr{c}. Also, @expr{(-a) / b} and @expr{a / (-b)} go to @expr{-(a/b)}; @@ -22614,22 +22614,22 @@ is an integer, or if either @expr{a} or @expr{b} are nonnegative real numbers. Powers of powers @expr{(a^b)^c} are simplified to @texline @math{a^{b c}} -@infoline @expr{a^(b c)} +@infoline @expr{a^(b c)} only when @expr{c} is an integer and @expr{b c} also evaluates to an integer. Without these restrictions these simplifications would not be safe because of problems with principal values. -(In other words, +(In other words, @texline @math{((-3)^{1/2})^2} -@infoline @expr{((-3)^1:2)^2} +@infoline @expr{((-3)^1:2)^2} is safe to simplify, but @texline @math{((-3)^2)^{1/2}} -@infoline @expr{((-3)^2)^1:2} +@infoline @expr{((-3)^2)^1:2} is not.) @xref{Declarations}, for ways to inform Calc that your variables satisfy these requirements. As a special case of this rule, @expr{@tfn{sqrt}(x)^n} is simplified to @texline @math{x^{n/2}} -@infoline @expr{x^(n/2)} +@infoline @expr{x^(n/2)} only for even integers @expr{n}. If @expr{a} is known to be real, @expr{b} is an even integer, and @@ -22642,13 +22642,13 @@ Square roots @expr{@tfn{sqrt}(x)} generally act like one-half powers @texline @math{x^{1:2}} -@infoline @expr{x^1:2} +@infoline @expr{x^1:2} for the purposes of the above-listed simplifications. -Also, note that +Also, note that @texline @math{1 / x^{1:2}} -@infoline @expr{1 / x^1:2} -is changed to +@infoline @expr{1 / x^1:2} +is changed to @texline @math{x^{-1:2}}, @infoline @expr{x^(-1:2)}, but @expr{1 / @tfn{sqrt}(x)} is left alone. @@ -22660,9 +22660,9 @@ Generic identity matrices (@pxref{Matrix Mode}) are simplified by the following rules: @expr{@tfn{idn}(a) + b} to @expr{a + b} if @expr{b} is provably scalar, or expanded out if @expr{b} is a matrix; -@expr{@tfn{idn}(a) + @tfn{idn}(b)} to @expr{@tfn{idn}(a + b)}; -@expr{-@tfn{idn}(a)} to @expr{@tfn{idn}(-a)}; @expr{a @tfn{idn}(b)} to -@expr{@tfn{idn}(a b)} if @expr{a} is provably scalar, or to @expr{a b} +@expr{@tfn{idn}(a) + @tfn{idn}(b)} to @expr{@tfn{idn}(a + b)}; +@expr{-@tfn{idn}(a)} to @expr{@tfn{idn}(-a)}; @expr{a @tfn{idn}(b)} to +@expr{@tfn{idn}(a b)} if @expr{a} is provably scalar, or to @expr{a b} if @expr{a} is provably non-scalar; @expr{@tfn{idn}(a) @tfn{idn}(b)} to @expr{@tfn{idn}(a b)}; analogous simplifications for quotients involving @code{idn}; and @expr{@tfn{idn}(a)^n} to @expr{@tfn{idn}(a^n)} where @@ -22683,7 +22683,7 @@ The expression @expr{@tfn{abs}(@tfn{abs}(x))} changes to @expr{@tfn{abs}(x)}; in fact, @expr{@tfn{abs}(x)} changes to @expr{x} or @expr{-x} if @expr{x} is provably nonnegative or nonpositive -(@pxref{Declarations}). +(@pxref{Declarations}). While most functions do not recognize the variable @code{i} as an imaginary number, the @code{arg} function does handle the two cases @@ -22693,7 +22693,7 @@ Various other expressions involving @code{conj}, @code{re}, and @code{im} are simplified, especially if some of the arguments are provably real or involve the constant @code{i}. For example, -@expr{@tfn{conj}(a + b i)} is changed to +@expr{@tfn{conj}(a + b i)} is changed to @expr{@tfn{conj}(a) - @tfn{conj}(b) i}, or to @expr{a - b i} if @expr{a} and @expr{b} are known to be real. @@ -22836,7 +22836,7 @@ Symbolic mode.) First, square integer or rational factors are pulled out so that @expr{@tfn{sqrt}(8)} is rewritten as @texline @math{2\,@tfn{sqrt}(2)}. -@infoline @expr{2 sqrt(2)}. +@infoline @expr{2 sqrt(2)}. Conceptually speaking this implies factoring the argument into primes and moving pairs of primes out of the square root, but for reasons of efficiency Calc only looks for primes up to 29. @@ -22879,7 +22879,7 @@ Trigonometric functions are simplified in several ways. Whenever a products of two trigonometric functions can be replaced by a single function, the replacement is made; for example, -@expr{@tfn{tan}(x) @tfn{cos}(x)} is simplified to @expr{@tfn{sin}(x)}. +@expr{@tfn{tan}(x) @tfn{cos}(x)} is simplified to @expr{@tfn{sin}(x)}. Reciprocals of trigonometric functions are replaced by their reciprocal function; for example, @expr{1/@tfn{sec}(x)} is simplified to @expr{@tfn{cos}(x)}. The corresponding simplifications for the @@ -22887,7 +22887,7 @@ Trigonometric functions of their inverse functions are simplified. The expression @expr{@tfn{sin}(@tfn{arcsin}(x))} is -simplified to @expr{x}, and similarly for @code{cos} and @code{tan}. +simplified to @expr{x}, and similarly for @code{cos} and @code{tan}. Trigonometric functions of inverses of different trigonometric functions can also be simplified, as in @expr{@tfn{sin}(@tfn{arccos}(x))} to @expr{@tfn{sqrt}(1 - x^2)}. @@ -22905,30 +22905,30 @@ functions are known, except for negative arguments of @code{arcsin}, @code{arctan}, @code{arcsinh}, and @code{arctanh}. Note that @expr{@tfn{arcsin}(@tfn{sin}(x))} can @emph{not} safely change to -@expr{x}, since this only correct within an integer multiple of +@expr{x}, since this only correct within an integer multiple of @texline @math{2 \pi} -@infoline @expr{2 pi} +@infoline @expr{2 pi} radians or 360 degrees. However, @expr{@tfn{arcsinh}(@tfn{sinh}(x))} is simplified to @expr{x} if @expr{x} is known to be real. Several simplifications that apply to logarithms and exponentials -are that @expr{@tfn{exp}(@tfn{ln}(x))}, +are that @expr{@tfn{exp}(@tfn{ln}(x))}, @texline @tfn{e}@math{^{\ln(x)}}, -@infoline @expr{e^@tfn{ln}(x)}, +@infoline @expr{e^@tfn{ln}(x)}, and @texline @math{10^{{\rm log10}(x)}} -@infoline @expr{10^@tfn{log10}(x)} +@infoline @expr{10^@tfn{log10}(x)} all reduce to @expr{x}. Also, @expr{@tfn{ln}(@tfn{exp}(x))}, etc., can reduce to @expr{x} if @expr{x} is provably real. The form @expr{@tfn{exp}(x)^y} is simplified to @expr{@tfn{exp}(x y)}. If @expr{x} -is a suitable multiple of -@texline @math{\pi i} +is a suitable multiple of +@texline @math{\pi i} @infoline @expr{pi i} (as described above for the trigonometric functions), then @expr{@tfn{exp}(x)} or @expr{e^x} will be expanded. Finally, @expr{@tfn{ln}(x)} is simplified to a form involving @code{pi} and @code{i} where @expr{x} is provably negative, positive imaginary, or -negative imaginary. +negative imaginary. The error functions @code{erf} and @code{erfc} are simplified when their arguments are negative-looking or are calls to the @code{conj} @@ -23006,18 +23006,18 @@ are folded down to the 360-degree range that the inverse trigonometric functions always produce. -Powers of powers @expr{(x^a)^b} are simplified to +Powers of powers @expr{(x^a)^b} are simplified to @texline @math{x^{a b}} @infoline @expr{x^(a b)} for all @expr{a} and @expr{b}. These results will be valid only -in a restricted range of @expr{x}; for example, in +in a restricted range of @expr{x}; for example, in @texline @math{(x^2)^{1:2}} @infoline @expr{(x^2)^1:2} the powers cancel to get @expr{x}, which is valid for positive values of @expr{x} but not for negative or complex values. Similarly, @expr{@tfn{sqrt}(x^a)} and @expr{@tfn{sqrt}(x)^a} are both -simplified (possibly unsafely) to +simplified (possibly unsafely) to @texline @math{x^{a/2}}. @infoline @expr{x^(a/2)}. @@ -23027,7 +23027,7 @@ Arguments of square roots are partially factored to look for squared terms that can be extracted. For example, -@expr{@tfn{sqrt}(a^2 b^3 + a^3 b^2)} simplifies to +@expr{@tfn{sqrt}(a^2 b^3 + a^3 b^2)} simplifies to @expr{a b @tfn{sqrt}(a+b)}. The simplifications of @expr{@tfn{ln}(@tfn{exp}(x))}, @@ -23093,9 +23093,9 @@ For powers and square roots, the ``unsafe'' simplifications @expr{(a b)^c} to @expr{a^c b^c}, @expr{(a/b)^c} to @expr{a^c / b^c}, -and @expr{(a^b)^c} to +and @expr{(a^b)^c} to @texline @math{a^{b c}} -@infoline @expr{a^(b c)} +@infoline @expr{a^(b c)} are done if the powers are real numbers. (These are safe in the context of units because all numbers involved can reasonably be assumed to be real.) @@ -23108,12 +23108,12 @@ is simplified by noting that @expr{1.5 = 3:2}, that @samp{acre} is defined in terms of @samp{m^2}, and that the 2 in the power of @code{m} is a multiple of 2 in @expr{3:2}. Thus, @code{acre^1.5} is -replaced by approximately +replaced by approximately @texline @math{(4046 m^2)^{1.5}} -@infoline @expr{(4046 m^2)^1.5}, -which is then changed to +@infoline @expr{(4046 m^2)^1.5}, +which is then changed to @texline @math{4046^{1.5} \, (m^2)^{1.5}}, -@infoline @expr{4046^1.5 (m^2)^1.5}, +@infoline @expr{4046^1.5 (m^2)^1.5}, then to @expr{257440 m^3}. The functions @code{float}, @code{frac}, @code{clean}, @code{abs}, @@ -23401,7 +23401,7 @@ If you use the @code{deriv} function directly in an algebraic formula, you can write @samp{deriv(f,x,x0)} which represents the derivative -of @expr{f} with respect to @expr{x}, evaluated at the point +of @expr{f} with respect to @expr{x}, evaluated at the point @texline @math{x=x_0}. @infoline @expr{x=x0}. @@ -23441,7 +23441,7 @@ work for all integrable functions, but it is able to integrate several large classes of formulas. In particular, any polynomial or rational function (a polynomial divided by a polynomial) is acceptable. -(Rational functions don't have to be in explicit quotient form, however; +(Rational functions don't have to be in explicit quotient form, however; @texline @math{x/(1+x^{-2})} @infoline @expr{x/(1+x^-2)} is not strictly a quotient of polynomials, but it is equivalent to @@ -23472,7 +23472,7 @@ Please note that the current implementation of Calc's integrator sometimes produces results that are significantly more complex than they need to -be. For example, the integral Calc finds for +be. For example, the integral Calc finds for @texline @math{1/(x+\sqrt{x^2+1})} @infoline @expr{1/(x+sqrt(x^2+1))} is several times more complicated than the answer Mathematica @@ -23480,11 +23480,11 @@ equivalent. Also, any indefinite integral should be considered to have an arbitrary constant of integration added to it, although Calc does not write an explicit constant of integration in its result. For example, -Calc's solution for +Calc's solution for @texline @math{1/(1+\tan x)} -@infoline @expr{1/(1+tan(x))} +@infoline @expr{1/(1+tan(x))} differs from the solution given in the @emph{CRC Math Tables} by a -constant factor of +constant factor of @texline @math{\pi i / 2} @infoline @expr{pi i / 2}, due to a different choice of constant of integration. @@ -23544,9 +23544,9 @@ @tindex Ei As a more serious example, the expression @samp{exp(x)/x} cannot be integrated in terms of the standard functions, so the ``exponential -integral'' function +integral'' function @texline @math{{\rm Ei}(x)} -@infoline @expr{Ei(x)} +@infoline @expr{Ei(x)} was invented to describe it. We can get Calc to do this integral in terms of a made-up @code{Ei} function by adding the rule @samp{[integtry(exp(x)/x, x) := Ei(x)]} @@ -23717,18 +23717,18 @@ This command also works for inequalities, as in @expr{y < 3x + 6}. Some inequalities cannot be solved where the analogous equation could -be; for example, solving +be; for example, solving @texline @math{a < b \, c} -@infoline @expr{a < b c} +@infoline @expr{a < b c} for @expr{b} is impossible without knowing the sign of @expr{c}. In this case, @kbd{a S} will -produce the result +produce the result @texline @math{b \mathbin{\hbox{\code{!=}}} a/c} -@infoline @expr{b != a/c} +@infoline @expr{b != a/c} (using the not-equal-to operator) to signify that the direction of the -inequality is now unknown. The inequality +inequality is now unknown. The inequality @texline @math{a \le b \, c} -@infoline @expr{a <= b c} +@infoline @expr{a <= b c} is not even partially solved. @xref{Declarations}, for a way to tell Calc that the signs of the variables in a formula are in fact known. @@ -24186,13 +24186,13 @@ with the minimum value itself. Note that this command looks for a @emph{local} minimum. Many functions -have more than one minimum; some, like +have more than one minimum; some, like @texline @math{x \sin x}, -@infoline @expr{x sin(x)}, +@infoline @expr{x sin(x)}, have infinitely many. In fact, there is no easy way to define the -``global'' minimum of +``global'' minimum of @texline @math{x \sin x} -@infoline @expr{x sin(x)} +@infoline @expr{x sin(x)} but Calc can still locate any particular local minimum for you. Calc basically goes downhill from the initial guess until it finds a point at which the function's value is greater both to the left @@ -24271,7 +24271,7 @@ no single @expr{m} and @expr{b} that exactly fit the data; in this case, Calc chooses values of the parameters that provide the closest possible fit. The model formula can be entered in various ways after -the key sequence @kbd{a F} is pressed. +the key sequence @kbd{a F} is pressed. If the letter @kbd{P} is pressed after @kbd{a F} but before the model description is entered, the data as well as the model formula will be @@ -24319,7 +24319,7 @@ The @kbd{a F} command takes the data set to be fitted from the stack. By default, it expects the data in the form of a matrix. For example, -for a linear or polynomial fit, this would be a +for a linear or polynomial fit, this would be a @texline @math{2\times N} @infoline 2xN matrix where the first row is a list of @expr{x} values and the second @@ -24327,10 +24327,10 @@ shown above, the matrix would have four rows (@expr{x_1}, @expr{x_2}, @expr{x_3}, and @expr{y}, respectively). -If you happen to have an +If you happen to have an @texline @math{N\times2} @infoline Nx2 -matrix instead of a +matrix instead of a @texline @math{2\times N} @infoline 2xN matrix, just press @kbd{v t} first to transpose the matrix. @@ -24425,13 +24425,13 @@ which is clearly zero if @expr{a + b x} exactly fits all data points, and increases as various @expr{a + b x_i} values fail to match the corresponding @expr{y_i} values. There are several reasons why the -summand is squared, one of them being to ensure that +summand is squared, one of them being to ensure that @texline @math{\chi^2 \ge 0}. @infoline @expr{chi^2 >= 0}. Least-squares fitting simply chooses the values of @expr{a} and @expr{b} -for which the error +for which the error @texline @math{\chi^2} -@infoline @expr{chi^2} +@infoline @expr{chi^2} is as small as possible. Other kinds of models do the same thing but with a different model @@ -24593,9 +24593,9 @@ or all be plain numbers. Error forms can go anywhere but generally go on the numbers in the last row of the data matrix. If the last row contains error forms -@texline `@var{y_i}@w{ @tfn{+/-} }@math{\sigma_i}', -@infoline `@var{y_i}@w{ @tfn{+/-} }@var{sigma_i}', -then the +@texline `@var{y_i}@w{ @tfn{+/-} }@math{\sigma_i}', +@infoline `@var{y_i}@w{ @tfn{+/-} }@var{sigma_i}', +then the @texline @math{\chi^2} @infoline @expr{chi^2} statistic is now, @@ -24617,9 +24617,9 @@ If there are error forms on other rows of the data matrix, all the errors for a given data point are combined; the square root of the -sum of the squares of the errors forms the +sum of the squares of the errors forms the @texline @math{\sigma_i} -@infoline @expr{sigma_i} +@infoline @expr{sigma_i} used for the data point. Both @kbd{a F} and @kbd{H a F} can accept error forms in the input @@ -24627,19 +24627,19 @@ probably use @kbd{H a F} so that the output also contains error estimates. -If the input contains error forms but all the +If the input contains error forms but all the @texline @math{\sigma_i} -@infoline @expr{sigma_i} +@infoline @expr{sigma_i} values are the same, it is easy to see that the resulting fitted model -will be the same as if the input did not have error forms at all +will be the same as if the input did not have error forms at all @texline (@math{\chi^2} @infoline (@expr{chi^2} -is simply scaled uniformly by +is simply scaled uniformly by @texline @math{1 / \sigma^2}, -@infoline @expr{1 / sigma^2}, +@infoline @expr{1 / sigma^2}, which doesn't affect where it has a minimum). But there @emph{will} be a difference in the estimated errors of the coefficients reported by -@kbd{H a F}. +@kbd{H a F}. Consult any text on statistical modeling of data for a discussion of where these error estimates come from and how they should be @@ -24671,18 +24671,18 @@ The covariance matrix @expr{C} computed from the fit. This is an @var{m}x@var{m} symmetric matrix; the diagonal elements @texline @math{C_{jj}} -@infoline @expr{C_j_j} -are the variances +@infoline @expr{C_j_j} +are the variances @texline @math{\sigma_j^2} -@infoline @expr{sigma_j^2} +@infoline @expr{sigma_j^2} of the parameters. The other elements are covariances -@texline @math{\sigma_{ij}^2} -@infoline @expr{sigma_i_j^2} +@texline @math{\sigma_{ij}^2} +@infoline @expr{sigma_i_j^2} that describe the correlation between pairs of parameters. (A related -set of numbers, the @dfn{linear correlation coefficients} +set of numbers, the @dfn{linear correlation coefficients} @texline @math{r_{ij}}, @infoline @expr{r_i_j}, -are defined as +are defined as @texline @math{\sigma_{ij}^2 / \sigma_i \, \sigma_j}.) @infoline @expr{sigma_i_j^2 / sigma_i sigma_j}.) @@ -24693,35 +24693,35 @@ polynomial and multilinear fits described so far. @item -The value of +The value of @texline @math{\chi^2} -@infoline @expr{chi^2} +@infoline @expr{chi^2} for the fit, calculated by the formulas shown above. This gives a measure of the quality of the fit; statisticians consider @texline @math{\chi^2 \approx N - M} -@infoline @expr{chi^2 = N - M} +@infoline @expr{chi^2 = N - M} to indicate a moderately good fit (where again @expr{N} is the number of data points and @expr{M} is the number of parameters). @item A measure of goodness of fit expressed as a probability @expr{Q}. This is computed from the @code{utpc} probability distribution -function using +function using @texline @math{\chi^2} -@infoline @expr{chi^2} +@infoline @expr{chi^2} with @expr{N - M} degrees of freedom. A value of 0.5 implies a good fit; some texts recommend that often @expr{Q = 0.1} or even 0.001 can signify an acceptable fit. In -particular, +particular, @texline @math{\chi^2} -@infoline @expr{chi^2} +@infoline @expr{chi^2} statistics assume the errors in your inputs follow a normal (Gaussian) distribution; if they don't, you may have to accept smaller values of @expr{Q}. The @expr{Q} value is computed only if the input included error estimates. Otherwise, Calc will report the symbol @code{nan} -for @expr{Q}. The reason is that in this case the +for @expr{Q}. The reason is that in this case the @texline @math{\chi^2} @infoline @expr{chi^2} value has effectively been used to estimate the original errors @@ -24763,7 +24763,7 @@ @item q Quadratic. @mathit{a + b (x-c)^2 + d (x-e)^2}. @item g -Gaussian. +Gaussian. @texline @math{{a \over b \sqrt{2 \pi}} \exp\left( -{1 \over 2} \left( x - c \over b \right)^2 \right)}. @infoline @mathit{(a / b sqrt(2 pi)) exp(-0.5*((x-c)/b)^2)}. @item s @@ -24788,7 +24788,7 @@ All models except Gaussian, logistics, Hubbert and polynomials can generalize as shown to any number of independent variables. Also, all -the built-in models except for the logistic and Hubbert curves have an +the built-in models except for the logistic and Hubbert curves have an additive or multiplicative parameter shown as @expr{a} in the above table which can be replaced by zero or one, as appropriate, by typing @kbd{h} before the model key. @@ -24893,9 +24893,9 @@ returns results in the range from @mathit{-90} to 90 degrees (or the equivalent range in radians). Suppose you had data that you believed to represent roughly three oscillations of a sine wave, -so that the argument of the sine might go from zero to +so that the argument of the sine might go from zero to @texline @math{3\times360} -@infoline @mathit{3*360} +@infoline @mathit{3*360} degrees. The above model would appear to be a good way to determine the true frequency and phase of the sine wave, but in practice it @@ -24955,18 +24955,18 @@ @end example @noindent -which matches the desired form with +which matches the desired form with @texline @math{Y = \ln(y)}, -@infoline @expr{Y = ln(y)}, +@infoline @expr{Y = ln(y)}, @texline @math{A = \ln(a)}, @infoline @expr{A = ln(a)}, -@expr{F = 1}, @expr{B = b}, and +@expr{F = 1}, @expr{B = b}, and @texline @math{G = \ln(x)}. -@infoline @expr{G = ln(x)}. +@infoline @expr{G = ln(x)}. Calc thus computes the logarithms of your @expr{y} and @expr{x} values, -does a linear fit for @expr{A} and @expr{B}, then solves to get -@texline @math{a = \exp(A)} -@infoline @expr{a = exp(A)} +does a linear fit for @expr{A} and @expr{B}, then solves to get +@texline @math{a = \exp(A)} +@infoline @expr{a = exp(A)} and @expr{b = B}. Another interesting example is the ``quadratic'' model, which can @@ -25015,7 +25015,7 @@ A last desperate step would be to use the general-purpose @code{minimize} function rather than @code{fit}. After all, both -functions solve the problem of minimizing an expression (the +functions solve the problem of minimizing an expression (the @texline @math{\chi^2} @infoline @expr{chi^2} sum) by adjusting certain parameters in the expression. The @kbd{a F} @@ -25026,9 +25026,9 @@ A compromise would be to pick out a few parameters without which the fit is linearizable, and use @code{minimize} on a call to @code{fit} which efficiently takes care of the rest of the parameters. The thing -to be minimized would be the value of +to be minimized would be the value of @texline @math{\chi^2} -@infoline @expr{chi^2} +@infoline @expr{chi^2} returned as the fifth result of the @code{xfit} function: @smallexample @@ -25086,13 +25086,13 @@ and @expr{y} to be plain numbers, and makes @expr{z} into an error form with this combined error. The @expr{Y(x,y,z)} part of the linearized model is evaluated, and the result should be an error -form. The error part of that result is used for +form. The error part of that result is used for @texline @math{\sigma_i} -@infoline @expr{sigma_i} -for the data point. If for some reason @expr{Y(x,y,z)} does not return -an error form, the combined error from @expr{z} is used directly for +@infoline @expr{sigma_i} +for the data point. If for some reason @expr{Y(x,y,z)} does not return +an error form, the combined error from @expr{z} is used directly for @texline @math{\sigma_i}. -@infoline @expr{sigma_i}. +@infoline @expr{sigma_i}. Finally, @expr{z} is also stripped of its error for use in computing @expr{F(x,y,z)}, @expr{G(x,y,z)} and so on; the righthand side of the linearized model is computed in regular @@ -25104,7 +25104,7 @@ often simply equal to @expr{z}. For common cases like polynomials and multilinear models, the combined error is simply used as the @texline @math{\sigma} -@infoline @expr{sigma} +@infoline @expr{sigma} for the data point with no further ado.) @tex @@ -25481,7 +25481,7 @@ formula works out to the indeterminate form @expr{0 / 0}, which Calc will not assume is zero. Better would be to use @samp{(k != k_0) ? 1/(k-k_0) : 0}; the @samp{? :} operator does -an ``if-then-else'' test: This expression says, ``if +an ``if-then-else'' test: This expression says, ``if @texline @math{k \ne k_0}, @infoline @expr{k != k_0}, then @expr{1/(k-k_0)}, else zero.'' Now the formula @expr{1/(k-k_0)} @@ -26496,16 +26496,16 @@ then the rule set @samp{[f(0) := 0, import(linearF)]} will apply all three rules. It is possible to modify the imported rules slightly: @samp{import(x, v1, x1, v2, x2, @dots{})} imports -the rule set @expr{x} with all occurrences of +the rule set @expr{x} with all occurrences of @texline @math{v_1}, -@infoline @expr{v1}, -as either a variable name or a function name, replaced with +@infoline @expr{v1}, +as either a variable name or a function name, replaced with @texline @math{x_1} -@infoline @expr{x1} -and so on. (If +@infoline @expr{x1} +and so on. (If @texline @math{v_1} -@infoline @expr{v1} -is used as a function name, then +@infoline @expr{v1} +is used as a function name, then @texline @math{x_1} @infoline @expr{x1} must be either a function name itself or a @w{@samp{< >}} nameless @@ -27609,7 +27609,7 @@ @code{tri} to the value on the top of the stack. @xref{Programming}. @cindex Quaternions -The following rule set, contributed by +The following rule set, contributed by @texline Fran\c cois @infoline Francois Pinard, implements @dfn{quaternions}, a generalization of the concept of @@ -27764,9 +27764,9 @@ While many of Calc's conversion factors are exact, some are necessarily approximate. If Calc is in fraction mode (@pxref{Fraction Mode}), then unit conversions will try to give exact, rational conversions, but it -isn't always possible. Given @samp{55 mph} in fraction mode, typing -@kbd{u c m/s @key{RET}} produces @samp{15367:625 m/s}, for example, -while typing @kbd{u c au/yr @key{RET}} produces +isn't always possible. Given @samp{55 mph} in fraction mode, typing +@kbd{u c m/s @key{RET}} produces @samp{15367:625 m/s}, for example, +while typing @kbd{u c au/yr @key{RET}} produces @samp{5.18665819999e-3 au/yr}. If the units you request are inconsistent with the original units, the @@ -27994,7 +27994,7 @@ Other units used by @TeX{} are available; they are @code{texpc} (a pica), @code{texbp} (a ``big point'', equal to a standard point which is larger than the point used by @TeX{}), @code{texdd} (a Didot point), -@code{texcc} (a Cicero) and @code{texsp} (a scaled @TeX{} point, +@code{texcc} (a Cicero) and @code{texsp} (a scaled @TeX{} point, all dimensions representable in @TeX{} are multiples of this value). When Calc is using the @TeX{} or La@TeX{} language mode (@pxref{TeX @@ -28131,17 +28131,17 @@ units which are manipulated differently than standard units. Calc provides commands to work with these logarithmic units. -Decibels and nepers are used to measure power quantities as well as +Decibels and nepers are used to measure power quantities as well as field quantities (quantities whose squares are proportional to power); these two types of quantities are handled slightly different from each other. By default the Calc commands work as if power quantities are being used; with the @kbd{H} prefix the Calc commands work as if field quantities are being used. -The decibel level of a power +The decibel level of a power @infoline @math{P1}, @texline @math{P_1}, -relative to a reference power +relative to a reference power @infoline @math{P0}, @texline @math{P_0}, is defined to be @@ -28151,10 +28151,10 @@ one-tenth of a bel. The bel, named after Alexander Graham Bell, was considered to be too large of a unit and was effectively replaced by the decibel.) If @math{F} is a field quantity with power -@math{P=k F^2}, then a reference quantity of +@math{P=k F^2}, then a reference quantity of @infoline @math{F0} @texline @math{F_0} -would correspond to a power of +would correspond to a power of @infoline @math{P0=k F0^2}. @texline @math{P_{0}=kF_{0}^2}. If @@ -28163,7 +28163,7 @@ then @ifnottex -@example +@example 10 log10(P1/P0) = 10 log10(F1^2/F0^2) = 20 log10(F1/F0). @end example @end ifnottex @@ -28175,42 +28175,42 @@ @noindent In order to get the same decibel level regardless of whether a field quantity or the corresponding power quantity is used, the decibel -level of a field quantity +level of a field quantity @infoline @math{F1}, -@texline @math{F_1}, -relative to a reference +@texline @math{F_1}, +relative to a reference @infoline @math{F0}, -@texline @math{F_0}, +@texline @math{F_0}, is defined as @infoline @math{20 log10(F1/F0) dB}. @texline @math{20 \log_{10}(F_{1}/F_{0}) {\rm dB}}. -For example, the decibel value of a sound pressure level of +For example, the decibel value of a sound pressure level of @infoline @math{60 uPa} @texline @math{60 \mu{\rm Pa}} -relative to +relative to @infoline @math{20 uPa} @texline @math{20 \mu{\rm Pa}} -(the threshhold of human hearing) is +(the threshold of human hearing) is @infoline @math{20 log10(60 uPa/ 20 uPa) dB = 20 log10(3) dB}, @texline @math{20 \log_{10}(60 \mu{\rm Pa}/20 \mu{\rm Pa}) {\rm dB} = 20 \log_{10}(3) {\rm dB}}, -which is about +which is about @infoline @math{9.54 dB}. @texline @math{9.54 {\rm dB}}. Note that in taking the ratio, the original units cancel and so these -logarithmic units are dimensionless. +logarithmic units are dimensionless. Nepers (named after John Napier, who is credited with inventing the logarithm) are similar to bels except they use natural logarithms instead -of common logarithms. The neper level of a power +of common logarithms. The neper level of a power @infoline @math{P1}, @texline @math{P_1}, -relative to a reference power +relative to a reference power @infoline @math{P0}, @texline @math{P_0}, is @infoline @math{(1/2) ln(P1/P0) Np}. @texline @math{(1/2) \ln(P_1/P_0) {\rm Np}}. -The neper level of a field +The neper level of a field @infoline @math{F1}, @texline @math{F_1}, relative to a reference field @@ -28223,13 +28223,13 @@ @vindex calc-lu-power-reference @vindex calc-lu-field-reference For power quantities, Calc uses -@infoline @math{1 mW} +@infoline @math{1 mW} @texline @math{1 {\rm mW}} -as the default reference quantity; this default can be changed by changing +as the default reference quantity; this default can be changed by changing the value of the customizable variable @code{calc-lu-power-reference} (@pxref{Customizing Calc}). -For field quantities, Calc uses -@infoline @math{20 uPa} +For field quantities, Calc uses +@infoline @math{20 uPa} @texline @math{20 \mu{\rm Pa}} as the default reference quantity; this is the value used in acoustics which is where decibels are commonly encountered. This default can be @@ -28247,9 +28247,9 @@ logarithmic units. With the capital @kbd{O} prefix, @kbd{O l q}, the reference level will be read from the top of the stack. (In an algebraic formula, @code{lupquant} can be given an optional second -argument which will be used for the reference level.) For example, -@code{20 dB @key{RET} l q} will return @code{100 mW}; -@code{20 dB @key{RET} 4 W @key{RET} O l q} will return @code{400 W}. +argument which will be used for the reference level.) For example, +@code{20 dB @key{RET} l q} will return @code{100 mW}; +@code{20 dB @key{RET} 4 W @key{RET} O l q} will return @code{400 W}. The @kbd{H l q} [@code{lufquant}] command behaves like @kbd{l q} but computes field quantities instead of power quantities. @@ -28288,13 +28288,13 @@ @tindex lufdiv The sum of two power or field quantities doesn't correspond to the sum of the corresponding decibel or neper levels. If the powers -corresponding to decibel levels -@infoline @math{D1} -@texline @math{D_1} -and -@infoline @math{D2} -@texline @math{D_2} -are added, the corresponding decibel level ``sum'' will be +corresponding to decibel levels +@infoline @math{D1} +@texline @math{D_1} +and +@infoline @math{D2} +@texline @math{D_2} +are added, the corresponding decibel level ``sum'' will be @ifnottex @example @@ -28338,7 +28338,7 @@ @noindent if a field quantity is multiplied by @math{N} the corresponding decibel level -will be +will be @ifnottex @example @@ -28375,31 +28375,31 @@ Scientific pitch notation refers to a note by giving a letter A through G, possibly followed by a flat or sharp) with a subscript indicating an octave number. Each octave starts with C and ends with -B and +B and @c increasing each note by a semitone will result @c in the sequence @expr{C}, @expr{C} sharp, @expr{D}, @expr{E} flat, @expr{E}, @c @expr{F}, @expr{F} sharp, @expr{G}, @expr{A} flat, @expr{A}, @expr{B} -@c flat and @expr{B}. +@c flat and @expr{B}. the octave numbered 0 was chosen to correspond to the lowest audible frequency. Using this system, middle C (about 261.625 Hz) corresponds to the note @expr{C} in octave 4 and is denoted @expr{C_4}. Any frequency can be described by giving a note plus an offset in cents (where a cent is a ratio of frequencies so that a -semitone consists of 100 cents). +semitone consists of 100 cents). The midi note number system assigns numbers to notes so that @expr{C_(-1)} corresponds to the midi note number 0 and @expr{G_9} corresponds to the midi note number 127. A midi controller can have up to 128 keys and each midi note number from 0 to 127 corresponds to -a possible key. +a possible key. @kindex l s @pindex calc-spn @tindex spn The @kbd{l s} (@code{calc-spn}) [@code{spn}] command converts either a frequency or a midi number to scientific pitch notation. For -example, @code{500 Hz} gets converted to -@code{B_4 + 21.3094853649 cents} and @code{84} to @code{C_6}. +example, @code{500 Hz} gets converted to +@code{B_4 + 21.3094853649 cents} and @code{84} to @code{C_6}. @kindex l m @@ -28464,7 +28464,7 @@ the stack into a specified variable. It prompts you to enter the name of the variable. If you press a single digit, the value is stored immediately in one of the ``quick'' variables @code{q0} through -@code{q9}. Or you can enter any variable name. +@code{q9}. Or you can enter any variable name. @kindex s t @pindex calc-store-into @@ -28554,12 +28554,12 @@ All the arithmetic stores accept the Inverse prefix to reverse the order of the operands. If @expr{v} represents the contents of the variable, and @expr{a} is the value drawn from the stack, then regular -@w{@kbd{s -}} assigns +@w{@kbd{s -}} assigns @texline @math{v \coloneq v - a}, -@infoline @expr{v := v - a}, +@infoline @expr{v := v - a}, but @kbd{I s -} assigns @texline @math{v \coloneq a - v}. -@infoline @expr{v := a - v}. +@infoline @expr{v := a - v}. While @kbd{I s *} might seem pointless, it is useful if matrix multiplication is involved. Actually, all the arithmetic stores use formulas designed to behave usefully both @@ -28668,7 +28668,7 @@ @kindex s k @pindex calc-copy-special-constant If one of the ``special constants'' is redefined (or undefined) so that -it no longer has its magic property, the property can be restored with +it no longer has its magic property, the property can be restored with @kbd{s k} (@code{calc-copy-special-constant}). This command will prompt for a special constant and a variable to store it in, and so a special constant can be stored in any variable. Here, the special constant that @@ -28850,7 +28850,7 @@ The @kbd{s i} (@code{calc-insert-variables}) command writes the values of all Calc variables into a specified buffer. The variables are written with the prefix @code{var-} in the form of -Lisp @code{setq} commands +Lisp @code{setq} commands which store the values in string form. You can place these commands in your Calc init file (or @file{.emacs}) if you wish, though in this case it would be easier to use @kbd{s p @key{RET}}. (Note that @kbd{s i} @@ -29159,9 +29159,9 @@ the same length); either or both may instead be interval forms. The ``z'' value must be a matrix with the same number of rows as elements in ``x'', and the same number of columns as elements in ``y''. The -result is a surface plot where +result is a surface plot where @texline @math{z_{ij}} -@infoline @expr{z_ij} +@infoline @expr{z_ij} is the height of the point at coordinate @expr{(x_i, y_j)} on the surface. The 3D graph will be displayed from a certain default viewpoint; you can change this @@ -29270,9 +29270,9 @@ values covered by all the curves ought to be roughly the same if they are to look nice on the same graph.) -For example, to plot +For example, to plot @texline @math{\sin n x} -@infoline @expr{sin(n x)} +@infoline @expr{sin(n x)} for integers @expr{n} from 1 to 5, you could use @kbd{v x} to create a vector of integers (@expr{n}), then @kbd{V M '} or @kbd{V M $} to map @samp{sin(n x)} @@ -29510,8 +29510,8 @@ The @kbd{g S} (@code{calc-graph-point-style}) command similarly turns the symbols at the data points on or off, or sets the point style. If you turn both lines and points off, the data points will show as -tiny dots. If the ``y'' values being plotted contain error forms and -the connecting lines are turned off, then this command will also turn +tiny dots. If the ``y'' values being plotted contain error forms and +the connecting lines are turned off, then this command will also turn the error bars on or off. @cindex @code{LineStyles} variable @@ -29563,7 +29563,7 @@ picture of the graph composed of characters like @code{-} and @code{|} to a buffer called @samp{*Gnuplot Trail*}, which Calc then displays. The graph is made the same size as the Emacs screen, which on most -dumb terminals will be +dumb terminals will be @texline @math{80\times24} @infoline 80x24 characters. The graph is displayed in @@ -29820,7 +29820,7 @@ @pindex calc-prepend-to-register @pindex calc-append-to-register @cindex Registers -An alternative to killing and yanking stack entries is using +An alternative to killing and yanking stack entries is using registers in Calc. Saving stack entries in registers is like saving text in normal Emacs registers; although, like Calc's kill commands, register commands always operate on whole stack @@ -29935,7 +29935,7 @@ would correctly split the line into two error forms. @xref{Matrix Functions}, to see how to pull the matrix apart into its -constituent rows and columns. (If it is a +constituent rows and columns. (If it is a @texline @math{1\times1} @infoline 1x1 matrix, just hit @kbd{v u} (@code{calc-unpack}) twice.) @@ -30273,7 +30273,7 @@ @key{INV GCD} computes the LCM (least common multiple) function. -@key{INV FACT} is the gamma function. +@key{INV FACT} is the gamma function. @texline @math{\Gamma(x) = (x-1)!}. @infoline @expr{gamma(x) = (x-1)!}. @@ -30490,7 +30490,7 @@ @code{plain-tex-mode} and @code{context-mode}, C language for @code{c-mode} and @code{c++-mode}, FORTRAN language for @code{fortran-mode} and @code{f90-mode}, Pascal for @code{pascal-mode}, -and eqn for @code{nroff-mode} (@pxref{Customizing Calc}). +and eqn for @code{nroff-mode} (@pxref{Customizing Calc}). These can be overridden with Calc's mode changing commands (@pxref{Mode Settings in Embedded Mode}). If no suitable language is available, Calc will continue with its current language. @@ -30670,13 +30670,13 @@ Plain formulas are preceded and followed by @samp{%%%} signs by default. This notation has the advantage that the @samp{%} -character begins a comment in @TeX{} and La@TeX{}, so if your formula is +character begins a comment in @TeX{} and La@TeX{}, so if your formula is embedded in a @TeX{} or La@TeX{} document its plain version will be invisible in the final printed copy. Certain major modes have different -delimiters to ensure that the ``plain'' version will be -in a comment for those modes, also. +delimiters to ensure that the ``plain'' version will be +in a comment for those modes, also. See @ref{Customizing Embedded Mode} to see how to change the ``plain'' -formula delimiters. +formula delimiters. There are several notations which Calc's parser for ``big'' formatted formulas can't yet recognize. In particular, it can't @@ -31178,7 +31178,7 @@ on it in order to get it to notice the new annotation. Two more mode-recording modes selectable by @kbd{m R} are available -which are also available outside of Embedded mode. +which are also available outside of Embedded mode. (@pxref{General Mode Commands}.) They are @code{Save}, in which mode settings are recorded permanently in your Calc init file (the file given by the variable @code{calc-settings-file}, typically @file{~/.emacs.d/calc.el}) @@ -31195,11 +31195,11 @@ @noindent You can modify Embedded mode's behavior by setting various Lisp -variables described here. These variables are customizable +variables described here. These variables are customizable (@pxref{Customizing Calc}), or you can use @kbd{M-x set-variable} or @kbd{M-x edit-options} to adjust a variable on the fly. (Another possibility would be to use a file-local variable annotation at -the end of the file; +the end of the file; @pxref{File Variables, , Local Variables in Files, emacs, the Emacs manual}.) Many of the variables given mentioned here can be set to depend on the major mode of the editing buffer (@pxref{Customizing Calc}). @@ -31334,7 +31334,7 @@ annotation itself. But this is the string that is inserted before the opening bracket when Calc adds an annotation on its own. The default is @code{"% "}, but may be different for different major -modes. +modes. @vindex calc-embedded-close-mode The @code{calc-embedded-close-mode} variable is a string which @@ -31459,7 +31459,7 @@ (If the command you give implies a function, the function will be saved, and if the function has any display formats, those will be saved, but not the other way around: Saving a function will not save any commands -or key bindings associated with the function.) +or key bindings associated with the function.) @kindex Z E @pindex calc-user-define-edit @@ -31542,7 +31542,7 @@ @cindex Keyboard macros, editing The @kbd{Z E} (@code{calc-user-define-edit}) command on a key that has been defined by a keyboard macro tries to use the @code{edmacro} package -edit the macro. Type @kbd{C-c C-c} to finish editing and update +edit the macro. Type @kbd{C-c C-c} to finish editing and update the definition stored on the key, or, to cancel the edit, kill the buffer with @kbd{C-x k}. The special characters @code{RET}, @code{LFD}, @code{TAB}, @code{SPC}, @@ -31552,7 +31552,7 @@ copied verbatim into the keyboard macro. Basically, the notation is the same as is used in all of this manual's examples, except that the manual takes some liberties with spaces: When we say @kbd{' [1 2 3] @key{RET}}, -we take it for granted that it is clear we really mean +we take it for granted that it is clear we really mean @kbd{' [1 @key{SPC} 2 @key{SPC} 3] @key{RET}}. @kindex C-x * m @@ -31823,7 +31823,7 @@ subsequent calculations.) This command allows your keyboard macros to accept numbers or formulas as interactive input. -As an example, +As an example, @kbd{2 @key{RET} "Power: " @key{RET} Z # 3 @key{RET} ^} will prompt for input with ``Power: '' in the minibuffer, then return 2 to the provided power. (The response to the prompt that's given, 3 in this example, @@ -31900,7 +31900,7 @@ use the same name as the command name but without the @samp{calc-} prefix. (If this is of the form @samp{User-m}, the hyphen is removed so it won't be taken for a minus sign in algebraic formulas.) -This is the name you will use if you want to enter your +This is the name you will use if you want to enter your new function in an algebraic formula. Suppose we enter @kbd{yow @key{RET}}. Then the new function can be invoked by pushing two numbers on the stack and typing @kbd{z m} or @kbd{x spam}, or by entering the algebraic @@ -32695,7 +32695,7 @@ @end ignore @tindex mysin A somewhat limited sine function could be defined as follows, using the -well-known Taylor series expansion for +well-known Taylor series expansion for @texline @math{\sin x}: @infoline @samp{sin(x)}: @@ -35241,7 +35241,7 @@ @end example @noindent -in your .emacs file. +in your .emacs file. (@xref{Key Bindings,,Customizing Key Bindings,emacs, The GNU Emacs Manual}, for more information on binding keys.) A convenient way to start Calc is with @kbd{C-x * *}; to make it equally @@ -35269,7 +35269,7 @@ @defvar calc-settings-file The variable @code{calc-settings-file} holds the file name in which commands like @kbd{m m} and @kbd{Z P} store ``permanent'' -definitions. +definitions. If @code{calc-settings-file} is not your user init file (typically @file{~/.emacs}) and if the variable @code{calc-loaded-settings-file} is @code{nil}, then Calc will automatically load your settings file (if it @@ -35314,7 +35314,7 @@ determine what language should be used. (This can be overridden using Calc's mode changing commands, @xref{Mode Settings in Embedded Mode}.) The variable @code{calc-language-alist} consists of a list of pairs of -the form @code{(@var{MAJOR-MODE} . @var{LANGUAGE})}; for example, +the form @code{(@var{MAJOR-MODE} . @var{LANGUAGE})}; for example, @code{(latex-mode . latex)} is one such pair. If Calc embedded is activated in a buffer whose major mode is @var{MAJOR-MODE}, it will set itself to use the language @var{LANGUAGE}. @@ -35342,7 +35342,7 @@ regular expression, and when activating embedded formulas with @kbd{C-x * a}, it will tell Calc that what follows is a formula to be activated. (Calc also uses other patterns to find formulas, such as -@samp{=>} and @samp{:=}.) +@samp{=>} and @samp{:=}.) The default pattern is @code{"%Embed\n\\(% .*\n\\)*"}, which checks for @samp{%Embed} followed by any number of lines beginning with @@ -35367,7 +35367,7 @@ (texinfo-mode . "@@c Embed\n\\(@@c .*\n\\)*")) @end example Any major modes added to @code{calc-embedded-announce-formula-alist} -should also be added to @code{calc-embedded-open-close-plain-alist} +should also be added to @code{calc-embedded-open-close-plain-alist} and @code{calc-embedded-open-close-mode-alist}. @end defvar @@ -35378,7 +35378,7 @@ The variables @code{calc-embedded-open-formula} and @code{calc-embedded-close-formula} control the region that Calc will activate as a formula when Embedded mode is entered with @kbd{C-x * e}. -They are regular expressions; +They are regular expressions; Calc normally scans backward and forward in the buffer for the nearest text matching these regular expressions to be the ``formula delimiters''. @@ -35403,7 +35403,7 @@ set @code{calc-embedded-open-formula} and @code{calc-embedded-close-formula} to different regular expressions depending on the major mode of the editing buffer. -It consists of a list of lists of the form +It consists of a list of lists of the form @code{(@var{MAJOR-MODE} @var{OPEN-FORMULA-REGEXP} @var{CLOSE-FORMULA-REGEXP})}, and its default value is @code{nil}. @@ -35422,7 +35422,7 @@ The variable @code{calc-embedded-word-regexp-alist} is used to set @code{calc-embedded-word-regexp} to a different regular expression depending on the major mode of the editing buffer. -It consists of a list of lists of the form +It consists of a list of lists of the form @code{(@var{MAJOR-MODE} @var{WORD-REGEXP})}, and its default value is @code{nil}. @end defvar @@ -35437,8 +35437,8 @@ expressions, because Calc must be able to write these string into a buffer as well as to recognize them. -The default string for @code{calc-embedded-open-plain} is -@code{"%%% "}, note the trailing space. The default string for +The default string for @code{calc-embedded-open-plain} is +@code{"%%% "}, note the trailing space. The default string for @code{calc-embedded-close-plain} is @code{" %%%\n"}, without the trailing newline here, the first line of a Big mode formula that followed might be shifted over with respect to the other lines. @@ -35447,7 +35447,7 @@ set @code{calc-embedded-open-plain} and @code{calc-embedded-close-plain} to different strings depending on the major mode of the editing buffer. -It consists of a list of lists of the form +It consists of a list of lists of the form @code{(@var{MAJOR-MODE} @var{OPEN-PLAIN-STRING} @var{CLOSE-PLAIN-STRING})}, and its default value is @example @@ -35490,7 +35490,7 @@ set @code{calc-embedded-open-new-formula} and @code{calc-embedded-close-new-formula} to different strings depending on the major mode of the editing buffer. -It consists of a list of lists of the form +It consists of a list of lists of the form @code{(@var{MAJOR-MODE} @var{OPEN-NEW-FORMULA-STRING} @var{CLOSE-NEW-FORMULA-STRING})}, and its default value is @code{nil}. @@ -35508,7 +35508,7 @@ The default value of @code{calc-embedded-open-mode} is @code{"% "} and the default value of @code{calc-embedded-close-mode} is -@code{"\n"}. +@code{"\n"}. If you change the value of @code{calc-embedded-close-mode}, it is a good idea still to end with a newline so that mode annotations will appear on lines by themselves. @@ -35517,7 +35517,7 @@ set @code{calc-embedded-open-mode} and @code{calc-embedded-close-mode} to different strings expressions depending on the major mode of the editing buffer. -It consists of a list of lists of the form +It consists of a list of lists of the form @code{(@var{MAJOR-MODE} @var{OPEN-MODE-STRING} @var{CLOSE-MODE-STRING})}, and its default value is @example @@ -35548,7 +35548,7 @@ The default value of @code{calc-lu-power-reference} is @code{"mW"} and the default value of @code{calc-lu-field-reference} is -@code{"20 uPa"}. +@code{"20 uPa"}. @end defvar @defvar calc-note-threshold @@ -35564,15 +35564,15 @@ @defvarx calc-selected-face @defvarx calc-nonselected-face See @ref{Displaying Selections}.@* -The variable @code{calc-highlight-selections-with-faces} +The variable @code{calc-highlight-selections-with-faces} determines how selected sub-formulas are distinguished. -If @code{calc-highlight-selections-with-faces} is nil, then +If @code{calc-highlight-selections-with-faces} is nil, then a selected sub-formula is distinguished either by changing every character not part of the sub-formula with a dot or by changing every -character in the sub-formula with a @samp{#} sign. +character in the sub-formula with a @samp{#} sign. If @code{calc-highlight-selections-with-faces} is t, then a selected sub-formula is distinguished either by displaying the -non-selected portion of the formula with @code{calc-nonselected-face} +non-selected portion of the formula with @code{calc-nonselected-face} or by displaying the selected sub-formula with @code{calc-nonselected-face}. @end defvar @@ -36651,9 +36651,9 @@ @c 20 @item -With a prefix argument of 1, take a single +With a prefix argument of 1, take a single @texline @var{n}@math{\times2} -@infoline @mathit{@var{N}x2} +@infoline @mathit{@var{N}x2} matrix from the stack instead of two separate data vectors. @c 21 @@ -36754,7 +36754,7 @@ @c 30 @item -Editing occurs in a separate buffer. Press @kbd{C-c C-c} (or +Editing occurs in a separate buffer. Press @kbd{C-c C-c} (or @key{LFD}, or in some cases @key{RET}) to finish the edit, or kill the buffer with @kbd{C-x k} to cancel the edit. The @key{LFD} key prevents evaluation of the result of the edit. @@ -36854,7 +36854,7 @@ @item The variable is replaced by the formula shown on the right. The Inverse flag reverses the order of the operands, e.g., @kbd{I s - x} -assigns +assigns @texline @math{x \coloneq a-x}. @infoline @expr{x := a-x}. === modified file 'doc/misc/cc-mode.texi' --- doc/misc/cc-mode.texi 2011-11-17 17:40:48 +0000 +++ doc/misc/cc-mode.texi 2011-11-20 07:30:16 +0000 @@ -912,7 +912,7 @@ function beginnings or ends inside the current declaration scope, it will search the enclosing scopes. If you want @ccmode to recognize functions only at the top level@footnote{this was @ccmode{}'s -behavior prior to version 5.32.}, set @code{c-defun-tatic} to +behavior prior to version 5.32.}, set @code{c-defun-tactic} to @code{t}. These functions are analogous to the Emacs built-in commands === modified file 'doc/misc/faq.texi' --- doc/misc/faq.texi 2011-11-17 17:40:48 +0000 +++ doc/misc/faq.texi 2011-11-20 07:30:16 +0000 @@ -627,7 +627,7 @@ files named @file{etc/refcards/@var{lang}-refcard.*}, where @var{lang} is a two-letter code of the language. For example, the German version of the reference card is in the files @file{etc/refcards/de-refcard.tex} -and @file{etc/recards/de-refcard.pdf}. +and @file{etc/refcards/de-refcard.pdf}. @item There are many other commands in Emacs for getting help and === modified file 'doc/misc/gnus.texi' --- doc/misc/gnus.texi 2011-11-20 02:29:42 +0000 +++ doc/misc/gnus.texi 2011-11-20 07:30:16 +0000 @@ -25471,7 +25471,7 @@ Write @code{spam-blackbox-register-routine} and @code{spam-blackbox-unregister-routine} using the bogofilter -register/unregister routines as a start, or other restister/unregister +register/unregister routines as a start, or other register/unregister routines more appropriate to Blackbox, if Blackbox can register/unregister spam and ham. === modified file 'etc/NEWS.1-17' --- etc/NEWS.1-17 2011-11-19 09:18:31 +0000 +++ etc/NEWS.1-17 2011-11-20 07:30:16 +0000 @@ -775,7 +775,7 @@ `help-form' is expected at all times to contain either `nil' or an expression to be executed when C-h is typed (overriding -teh definition of C-h as a command). `minibuffer-help-form' +the definition of C-h as a command). `minibuffer-help-form' can be used to provide a different default way of handling C-h while in the minibuffer. @@ -1870,7 +1870,7 @@ * The variable global-minor-modes is used to display strings in the mode line of all buffers. It should be - a list of elements thaht are conses whose cdrs are strings + a list of elements that are conses whose cdrs are strings to be displayed. This complements the variable minor-modes, which has the same effect but has a separate value in each buffer. === modified file 'etc/NEWS.18' --- etc/NEWS.18 2011-11-20 02:29:42 +0000 +++ etc/NEWS.18 2011-11-20 07:30:16 +0000 @@ -1303,7 +1303,7 @@ The default value of this variable is `nil', because usually it is useful to have the uid of a file change according to who edited it -last. I recommend thet this variable be left normally `nil' and +last. I recommend that this variable be left normally `nil' and changed with a local variables list in those particular files where the uid needs to be preserved. === modified file 'etc/NEWS.19' --- etc/NEWS.19 2011-11-20 03:48:53 +0000 +++ etc/NEWS.19 2011-11-20 07:30:16 +0000 @@ -5484,7 +5484,7 @@ ** M-x revert-buffer no longer offers to revert from a recent auto-save file unless you give it a prefix argument. Otherwise it always reverts from the real file regardless of whether there has been an -auto-save since thenm. (Reverting from the auto-save file is no longer +auto-save since then. (Reverting from the auto-save file is no longer very useful now that the undo capacity is larger.) ** M-x recover-file no longer turns off Auto Save mode when it reads === modified file 'etc/THE-GNU-PROJECT' --- etc/THE-GNU-PROJECT 2007-09-21 22:50:37 +0000 +++ etc/THE-GNU-PROJECT 2011-11-20 07:30:16 +0000 @@ -762,7 +762,7 @@ Those of us who value free software for freedom's sake will stay with free software anyway. We will manage to get work done without the patented features. But those who value free software because they - expect it to be techically superior are likely to call it a failure + expect it to be technically superior are likely to call it a failure when a patent holds it back. Thus, while it is useful to talk about the practical effectiveness of the "cathedral" model of development (1), and the reliability and power of some free software, we must not stop === modified file 'leim/quail/sgml-input.el' --- leim/quail/sgml-input.el 2011-01-26 08:36:39 +0000 +++ leim/quail/sgml-input.el 2011-11-20 07:30:16 +0000 @@ -916,7 +916,7 @@ ("θ" ?\θ) ;; GREEK SMALL LETTER THETA ("Θ" ?\Θ) ;; GREEK CAPITAL LETTER THETA ("&thetas;" ?\θ) ;; GREEK SMALL LETTER THETA - ("&thetasyLsymbol;" ?\ϑ) ;; GREEK THETA SYMBOL + ("ϑ" ?\ϑ) ;; GREEK THETA SYMBOL ("ϑ" ?\ϑ) ;; GREEK THETA SYMBOL ("&THgr;" ?\Θ) ;; GREEK CAPITAL LETTER THETA ("&thgr;" ?\θ) ;; GREEK SMALL LETTER THETA === modified file 'lisp/allout.el' --- lisp/allout.el 2011-11-20 03:48:53 +0000 +++ lisp/allout.el 2011-11-20 07:30:16 +0000 @@ -612,7 +612,7 @@ the comment-start string, with an '_' appended, for `allout-primary-bullet'. String values are used as literals, not regular expressions, so -do not escape any regulare-expression characters. +do not escape any regular-expression characters. Value t means to first check for assoc value in `allout-mode-leaders' alist, then use comment-start string, if any, then use default (`.'). === modified file 'lisp/cedet/ede/generic.el' --- lisp/cedet/ede/generic.el 2011-11-19 09:18:31 +0000 +++ lisp/cedet/ede/generic.el 2011-11-20 07:30:16 +0000 @@ -359,7 +359,7 @@ (defun ede-generic-new-autoloader (internal-name external-name projectfile class) "Add a new EDE Autoload instance for identifying a generic project. -INTERNAL-NAME is a long name that identifies thsi project type. +INTERNAL-NAME is a long name that identifies this project type. EXTERNAL-NAME is a shorter human readable name to describe the project. PROJECTFILE is a file name that identifies a project of this type to EDE, such as a Makefile, or SConstruct file. === modified file 'lisp/cedet/ede/pconf.el' --- lisp/cedet/ede/pconf.el 2011-11-14 20:23:26 +0000 +++ lisp/cedet/ede/pconf.el 2011-11-20 07:30:16 +0000 @@ -82,7 +82,7 @@ (directory-file-name (ede-subproject-relative-path sp top-level-project-local))))) (when (string= dir "./") (setq dir "")) - ;; Use concat, because expand-file-name removes the relativeness. + ;; Use concat, because expand-file-name removes the relativity. (concat dir "Makefile") ))))) ;; ;; NOTE TO SELF. TURN THIS INTO THE OFFICIAL LIST === modified file 'lisp/cedet/ede/project-am.el' --- lisp/cedet/ede/project-am.el 2011-11-15 17:37:37 +0000 +++ lisp/cedet/ede/project-am.el 2011-11-20 07:30:16 +0000 @@ -284,7 +284,7 @@ (progn (forward-line -1) (end-of-line) (insert "\n")) - ;; If the above search fails, thats ok. We'd just want to be at + ;; If the above search fails, that's ok. We'd just want to be at ;; point-min anyway. ) (makefile-insert-macro (car (cdr (cdr ntype)))))) === modified file 'lisp/cedet/semantic/analyze.el' --- lisp/cedet/semantic/analyze.el 2011-11-15 17:37:37 +0000 +++ lisp/cedet/semantic/analyze.el 2011-11-20 07:30:16 +0000 @@ -161,7 +161,7 @@ (defclass semantic-analyze-context-return (semantic-analyze-context) () ; No extra data. "Analysis class for return data. -Return data methods identify the requred type by the return value +Return data methods identify the required type by the return value of the parent function.") ;;; METHODS === modified file 'lisp/cedet/semantic/bovine/c.el' --- lisp/cedet/semantic/bovine/c.el 2011-11-20 03:48:53 +0000 +++ lisp/cedet/semantic/bovine/c.el 2011-11-20 07:30:16 +0000 @@ -954,7 +954,7 @@ (nth 1 (car names)) ; name "typedef" (semantic-tag-type-members tag) - ;; parent is just tbe name of what + ;; parent is just the name of what ;; is passed down as a tag. (list (semantic-tag-name === modified file 'lisp/cedet/semantic/complete.el' --- lisp/cedet/semantic/complete.el 2011-11-20 02:29:42 +0000 +++ lisp/cedet/semantic/complete.el 2011-11-20 07:30:16 +0000 @@ -1478,7 +1478,7 @@ (tag (cdr nt)) (table (car nt)) ) - ;; If we fail to normalize, resete. + ;; If we fail to normalize, reset. (when (not tag) (setq table rtable tag rtag)) ;; Do the focus. (let ((buf (or (semantic-tag-buffer tag) === modified file 'lisp/cedet/semantic/db-javascript.el' --- lisp/cedet/semantic/db-javascript.el 2011-11-20 02:29:42 +0000 +++ lisp/cedet/semantic/db-javascript.el 2011-11-20 07:30:16 +0000 @@ -137,7 +137,7 @@ (defmethod semanticdb-get-tags ((table semanticdb-table-javascript )) "Return the list of tags belonging to TABLE." - ;; NOTE: Omniscient databases probably don't want to keep large tabes + ;; NOTE: Omniscient databases probably don't want to keep large tables ;; lolly-gagging about. Keep internal Emacs tables empty and ;; refer to alternate databases when you need something. semanticdb-javascript-tags) === modified file 'lisp/cedet/semantic/edit.el' --- lisp/cedet/semantic/edit.el 2011-11-20 03:48:53 +0000 +++ lisp/cedet/semantic/edit.el 2011-11-20 07:30:16 +0000 @@ -649,7 +649,7 @@ parent-tag (aref tmp 2)) ;; We can calculate parse begin/end by checking ;; out what is in TAGS. The one near start is - ;; always first. Make sure the reprase includes + ;; always first. Make sure the reparse includes ;; the `whitespace' around the snarfed tags. ;; Since cache-list is positioned properly, use it ;; to find that boundary. @@ -707,7 +707,7 @@ ;; since that is how the multi-tag parser works. Grab ;; the reparse symbol from the first of the returned tags. ;; - ;; Feb '06 - If repase-symbol is nil, then they are top level + ;; Feb '06 - If reparse-symbol is nil, then they are top level ;; tags. (I'm guessing.) Is this right? (setq reparse-symbol (semantic--tag-get-property (car (or tags cache-list)) === modified file 'lisp/cedet/semantic/fw.el' --- lisp/cedet/semantic/fw.el 2011-01-25 04:08:28 +0000 +++ lisp/cedet/semantic/fw.el 2011-11-20 07:30:16 +0000 @@ -251,7 +251,7 @@ (defmacro semantic-exit-on-input (symbol &rest forms) "Using SYMBOL as an argument to `throw', execute FORMS. -If FORMS includes a call to `semantic-thow-on-input', then +If FORMS includes a call to `semantic-throw-on-input', then if a user presses any key during execution, this form macro will exit with the value passed to `semantic-throw-on-input'. If FORMS completes, then the return value is the same as `progn'." === modified file 'lisp/cedet/semantic/scope.el' --- lisp/cedet/semantic/scope.el 2011-11-15 17:37:37 +0000 +++ lisp/cedet/semantic/scope.el 2011-11-20 07:30:16 +0000 @@ -303,7 +303,7 @@ (miniscope (semantic-scope-cache "mini")) ptag) - ;; Find the next entry in the refereneced type for + ;; Find the next entry in the referenced type for ;; our function, and append to return list till our ;; returnlist is empty. (while snlist === modified file 'lisp/cedet/semantic/tag.el' --- lisp/cedet/semantic/tag.el 2011-11-20 02:29:42 +0000 +++ lisp/cedet/semantic/tag.el 2011-11-20 07:30:16 +0000 @@ -919,7 +919,7 @@ "Return a filename representation of TAG. The default action is to return the `semantic-tag-name'. Some languages do not use full filenames in their include statements. -Override this method to translate the code represenation +Override this method to translate the code representation into a filename. (A relative filename if necessary.) See `semantic-dependency-tag-file' to expand an include === modified file 'lisp/cedet/srecode/document.el' --- lisp/cedet/srecode/document.el 2011-11-19 09:18:31 +0000 +++ lisp/cedet/srecode/document.el 2011-11-20 07:30:16 +0000 @@ -698,7 +698,7 @@ (cdr (car al))))) (setq al nil))) (setq al (cdr al))) - ;; add tailers to names which are obviously returning something. + ;; add trailers to names which are obviously returning something. (if tailit (progn (setq al srecode-document-autocomment-return-last-alist) === modified file 'lisp/comint.el' --- lisp/comint.el 2011-11-20 02:29:42 +0000 +++ lisp/comint.el 2011-11-20 07:30:16 +0000 @@ -1980,7 +1980,7 @@ ;; The point should float after any insertion we do. (saved-point (copy-marker (point) t))) - ;; We temporarly remove any buffer narrowing, in case the + ;; We temporarily remove any buffer narrowing, in case the ;; process mark is outside of the restriction (save-restriction (widen) === modified file 'lisp/dframe.el' --- lisp/dframe.el 2011-11-20 02:29:42 +0000 +++ lisp/dframe.el 2011-11-20 07:30:16 +0000 @@ -82,7 +82,7 @@ ;; c) If successful (your -frame variable has a value), call ;; timer setup if applicable. ;; your-frame-reposition- -- Function to call from after-create-hook to -;; reposition your frame with `dframe-repsoition-frame'. +;; reposition your frame with `dframe-reposition-frame'. ;; your-mode -- Set up the major mode of the buffer for your app. ;; Set these variables: dframe-track-mouse-function, ;; dframe-help-echo-function, @@ -726,7 +726,7 @@ (if timeout (add-to-list 'dframe-client-functions fn) (setq dframe-client-functions (delete fn dframe-client-functions))) - ;; Now decided what to do about the timout. + ;; Now decided what to do about the timeout. (if (or ;; We have a timer, restart the timer with the new time. timeout === modified file 'lisp/emacs-lisp/avl-tree.el' --- lisp/emacs-lisp/avl-tree.el 2011-05-27 22:58:29 +0000 +++ lisp/emacs-lisp/avl-tree.el 2011-11-20 07:30:16 +0000 @@ -206,7 +206,7 @@ Return cons cell (SHRUNK . DATA), where SHRUNK is t if the height of the tree has shrunk and nil otherwise, and DATA is -the releted data." +the related data." (let ((br (avl-tree--node-branch root branch))) (cond ;; DATA not in tree. === modified file 'lisp/emacs-lisp/elint.el' --- lisp/emacs-lisp/elint.el 2011-11-19 09:18:31 +0000 +++ lisp/emacs-lisp/elint.el 2011-11-20 07:30:16 +0000 @@ -335,7 +335,7 @@ Is measured in buffer-modified-ticks and is local in linted buffers.") ;; This is a minor optimization. It is local to every buffer, and so -;; does not prevent recursive requirs. It does not list the requires +;; does not prevent recursive requires. It does not list the requires ;; of requires. (defvar elint-features nil "List of all libraries this buffer has required, or that have been provided.") === modified file 'lisp/emulation/viper-init.el' --- lisp/emulation/viper-init.el 2011-01-25 04:08:28 +0000 +++ lisp/emulation/viper-init.el 2011-11-20 07:30:16 +0000 @@ -205,7 +205,7 @@ (viper-deflocalvar viper-insert-diehard-minor-mode nil "Minor mode that simulates Vi very closely. -Not recommened, except for the novice user.") +Not recommended, except for the novice user.") (viper-deflocalvar viper-insert-kbd-minor-mode nil "Minor mode for Ex command macros Insert state. @@ -679,7 +679,7 @@ :group 'viper-search) (defcustom viper-search-scroll-threshold 2 - "*If search lands within this threshnold from the window top/bottom, + "*If search lands within this threshold from the window top/bottom, the window will be scrolled up or down appropriately, to reveal context. If you want Viper search to behave as usual in Vi, set this variable to a negative number." === modified file 'lisp/erc/ChangeLog.01' --- lisp/erc/ChangeLog.01 2011-11-20 03:48:53 +0000 +++ lisp/erc/ChangeLog.01 2011-11-20 07:30:16 +0000 @@ -93,7 +93,7 @@ * erc.el 1.166: * erc-insert-hook: Changed strategy completely, no start end parameters any more. - We narrow-to-region now, thats much cleaner. + We narrow-to-region now, that's much cleaner. * rename erc-fill-region to erc-fill and change the autoload ** You'll probably need to restart Emacs @@ -221,7 +221,7 @@ * Applied antifuchs/mhp patches, the latest on erc-help, unmodified * New variable: erc-reuse-buffers default to t. * Modified erc-generate-new-buffer-name to use it. it checks if server and port are the same, - then one can assume thats the same channel/query target again. + then one can assume that's the same channel/query target again. 2001-11-23 Mario Lang @@ -415,7 +415,7 @@ * erc.el 1.104: only some code beautification * erc-imenu.el 1.2: - remove add-hook call, thats done in erc.el now for autoloadability + remove add-hook call, that's done in erc.el now for autoloadability * erc.el 1.103: * Make erc-imenu autoloadable === modified file 'lisp/ezimage.el' --- lisp/ezimage.el 2011-11-17 09:09:20 +0000 +++ lisp/ezimage.el 2011-11-20 07:30:16 +0000 @@ -239,7 +239,7 @@ ("[ ]" . ezimage-page) ("{+}" . ezimage-box-plus) ("{-}" . ezimage-box-minus) - ;; Some vaguely representitive entries + ;; Some vaguely representative entries ("*" . ezimage-checkout) ("#" . ezimage-object) ("!" . ezimage-object-out-of-date) === modified file 'lisp/faces.el' --- lisp/faces.el 2011-11-15 07:55:13 +0000 +++ lisp/faces.el 2011-11-20 07:30:16 +0000 @@ -1925,7 +1925,7 @@ (progn ;; Initialize faces from face spec and custom theme. (face-spec-recalc face frame) - ;; X resouces for the default face are applied during + ;; X resources for the default face are applied during ;; `x-create-frame'. (and (not (eq face 'default)) window-system-p (make-face-x-resource-internal face frame)) === modified file 'lisp/follow.el' --- lisp/follow.el 2011-11-19 09:18:31 +0000 +++ lisp/follow.el 2011-11-20 07:30:16 +0000 @@ -562,7 +562,7 @@ ;; ;; Almost like the real thing, except when the cursor ends up outside ;; the top or bottom... In our case however, we end up outside the -;; window and hence we are recenterd. Should we let `recenter' handle +;; window and hence we are recentered. Should we let `recenter' handle ;; the point position we would never leave the selected window. To do ;; it ourselves we would need to do our own redisplay, which is easier ;; said than done. (Why didn't I do a real display abstraction from === modified file 'lisp/font-lock.el' --- lisp/font-lock.el 2011-11-11 10:04:08 +0000 +++ lisp/font-lock.el 2011-11-20 07:30:16 +0000 @@ -981,7 +981,7 @@ ;; rules one way and C code another. Neat! ;; ;; A further reason to use the fontification indirection feature is when the -;; default syntactual fontification, or the default fontification in general, +;; default syntactic fontification, or the default fontification in general, ;; is not flexible enough for a particular major mode. For example, perhaps ;; comments are just too hairy for `font-lock-fontify-syntactically-region' to ;; cope with. You need to write your own version of that function, e.g., === modified file 'lisp/gnus/gnus-group.el' --- lisp/gnus/gnus-group.el 2011-10-03 23:27:29 +0000 +++ lisp/gnus/gnus-group.el 2011-11-20 07:30:16 +0000 @@ -1361,7 +1361,7 @@ ; We list groups with unread articles (and gnus-list-groups-with-ticked-articles (cdr (assq 'tick (gnus-info-marks info)))) - ; And groups with tickeds + ; And groups with ticked articles ;; Check for permanent visibility. (and gnus-permanently-visible-groups (string-match gnus-permanently-visible-groups === modified file 'lisp/gnus/gnus-sum.el' --- lisp/gnus/gnus-sum.el 2011-11-18 08:31:02 +0000 +++ lisp/gnus/gnus-sum.el 2011-11-20 07:30:16 +0000 @@ -1657,7 +1657,7 @@ This variable is a list of FUNCTION or (REGEXP . FUNCTION). If item is FUNCTION, FUNCTION will be apply to all newsgroups. If item is a -\(REGEXP . FUNCTION), FUNCTION will be only apply to thes newsgroups +\(REGEXP . FUNCTION), FUNCTION will be applied only to the newsgroups whose names match REGEXP. For example: === modified file 'lisp/gnus/message.el' --- lisp/gnus/message.el 2011-11-17 09:09:20 +0000 +++ lisp/gnus/message.el 2011-11-20 07:30:16 +0000 @@ -7167,7 +7167,7 @@ (defun message-wash-subject (subject) "Remove junk like \"Re:\", \"(fwd)\", etc. added to subject string SUBJECT. -Previous forwarders, replyers, etc. may add it." +Previous forwarders, repliers, etc. may add it." (with-temp-buffer (insert subject) (goto-char (point-min)) === modified file 'lisp/gnus/nntp.el' --- lisp/gnus/nntp.el 2011-08-21 09:39:07 +0000 +++ lisp/gnus/nntp.el 2011-11-20 07:30:16 +0000 @@ -1681,7 +1681,7 @@ ;; for the first available article. Obviously, a client can ;; use that entry to avoid making unnecessary requests. The ;; only problem is for a client that assumes that the response - ;; will always be within the requested ranage. For such a + ;; will always be within the requested range. For such a ;; client, we can get N copies of the same entry (one for each ;; XOVER command sent to the server). === modified file 'lisp/gnus/smime.el' --- lisp/gnus/smime.el 2011-11-15 07:55:13 +0000 +++ lisp/gnus/smime.el 2011-11-20 07:30:16 +0000 @@ -180,7 +180,7 @@ (defcustom smime-certificate-directory "~/Mail/certs/" "*Directory containing other people's certificates. It should contain files named to the X.509 hash of the certificate, -and the files themself should be in PEM format." +and the files themselves should be in PEM format." ;The S/MIME library provide simple functionality for fetching ;certificates into this directory, so there is no need to populate it ;manually. === modified file 'lisp/image-dired.el' --- lisp/image-dired.el 2011-10-30 01:56:03 +0000 +++ lisp/image-dired.el 2011-11-20 07:30:16 +0000 @@ -469,7 +469,7 @@ If non-nil, using `image-dired-next-line-and-display' and `image-dired-previous-line-and-display' will leave a trail of thumbnail images in the thumbnail buffer. If you enable this and want to clean -the thumbnail buffer because it is filled with too many thumbmnails, +the thumbnail buffer because it is filled with too many thumbnails, just call `image-dired-display-thumb' to display only the image at point. This value can be toggled using `image-dired-toggle-append-browsing'." :type 'boolean @@ -1605,7 +1605,7 @@ (setq thumb-name (image-dired-thumb-name curr-file)) ;; If the user overrides the exist check, we must clear the ;; image cache so that if the user wants to display the - ;; thumnail, it is not fetched from cache. + ;; thumbnail, it is not fetched from cache. (if arg (clear-image-cache)) (if (or (not (file-exists-p thumb-name)) @@ -2043,7 +2043,7 @@ files))) (defun image-dired-display-next-thumbnail-original () - "In thubnail buffer, move to next thumbnail and display the image." + "In thumbnail buffer, move to next thumbnail and display the image." (interactive) (image-dired-forward-image) (image-dired-display-thumbnail-original-image)) === modified file 'lisp/info-xref.el' --- lisp/info-xref.el 2011-11-18 08:31:02 +0000 +++ lisp/info-xref.el 2011-11-20 07:30:16 +0000 @@ -413,7 +413,7 @@ (unless (boundp 'viper-mode) (setq viper-mode nil)) ;; avoid viper.el ask about viperizing (unless (boundp 'gnus-registry-install) - (setq gnus-registry-install nil)) ;; avoid gnus-registery.el querying + (setq gnus-registry-install nil)) ;; avoid gnus-registry.el querying (mapatoms (lambda (symbol) === modified file 'lisp/international/titdic-cnv.el' --- lisp/international/titdic-cnv.el 2011-11-17 09:09:20 +0000 +++ lisp/international/titdic-cnv.el 2011-11-20 07:30:16 +0000 @@ -1179,7 +1179,7 @@ (setq tail (cdr tail))))) (defun batch-miscdic-convert () - "Run `miscdic-convert' on the files remaing on the command line. + "Run `miscdic-convert' on the files remaining on the command line. Use this from the command line, with `-batch'; it won't work in an interactive Emacs. If there's an argument \"-dir\", the next argument specifies a directory === modified file 'lisp/language/thai-util.el' --- lisp/language/thai-util.el 2011-01-25 04:08:28 +0000 +++ lisp/language/thai-util.el 2011-11-20 07:30:16 +0000 @@ -124,7 +124,7 @@ (?ใ vowel-base "VOWEL SIGN SARA MAI MUAN") ; 0xE3 (?ไ vowel-base "VOWEL SIGN SARA MAI MALAI") ; 0xE4 (?ๅ vowel-base "LAK KHANG YAO") ; 0xE5 - (?ๆ special "MAI YAMOK (repetion)") ; 0xE6 + (?ๆ special "MAI YAMOK (repetition)") ; 0xE6 (?็ sign-upper "VOWEL SIGN MAI TAI KHU N/S-T") ; 0xE7 (?่ tone "TONE MAI EK N/S-T") ; 0xE8 (?้ tone "TONE MAI THO N/S-T") ; 0xE9 === modified file 'lisp/loadhist.el' --- lisp/loadhist.el 2011-11-17 09:09:20 +0000 +++ lisp/loadhist.el 2011-11-20 07:30:16 +0000 @@ -133,7 +133,7 @@ font-lock-unfontify-region-function kill-buffer-query-functions kill-emacs-query-functions lisp-indent-function mouse-position-function - redisplaylay-end-trigger-functions suspend-tty-functions + redisplay-end-trigger-functions suspend-tty-functions temp-buffer-show-function window-scroll-functions window-size-change-functions write-contents-functions write-file-functions write-region-annotate-functions) === modified file 'lisp/mail/feedmail.el' --- lisp/mail/feedmail.el 2011-11-20 03:48:53 +0000 +++ lisp/mail/feedmail.el 2011-11-20 07:30:16 +0000 @@ -1010,7 +1010,7 @@ (defcustom feedmail-ask-before-queue-reprompt "FQM: Please type q, i, d, or e; or ? for help [%s]: " - "A string which will be used for repompting after invalid input. + "A string which will be used for reprompting after invalid input. If it contains a \"%s\", that will be replaced with the value of `feedmail-ask-before-queue-default'." :group 'feedmail-queue === modified file 'lisp/mpc.el' --- lisp/mpc.el 2011-11-14 20:23:26 +0000 +++ lisp/mpc.el 2011-11-20 07:30:16 +0000 @@ -1589,7 +1589,7 @@ (defvar mpc--changed-selection) (defun mpc-reorder (&optional nodeactivate) - "Reorder entries based on thre currently active selections. + "Reorder entries based on the currently active selections. I.e. split the current browser buffer into a first part containing the entries included in the selection, then a separator, and then the entries not included in the selection. === modified file 'lisp/net/tramp-cmds.el' --- lisp/net/tramp-cmds.el 2011-07-14 01:40:30 +0000 +++ lisp/net/tramp-cmds.el 2011-11-20 07:30:16 +0000 @@ -23,7 +23,7 @@ ;;; Commentary: -;; This package provides all interactive commands which are releated +;; This package provides all interactive commands which are related ;; to Tramp. ;;; Code: === modified file 'lisp/net/tramp-gw.el' --- lisp/net/tramp-gw.el 2011-01-25 04:08:28 +0000 +++ lisp/net/tramp-gw.el 2011-11-20 07:30:16 +0000 @@ -178,7 +178,7 @@ (tramp-file-name-host gw-vec))) ;; Declare the SOCKS server to be used. (socks-server - (list "Tramp tempory socks server list" + (list "Tramp temporary socks server list" ;; Host name. (tramp-file-name-real-host gw-vec) ;; Port number. === modified file 'lisp/net/tramp-sh.el' --- lisp/net/tramp-sh.el 2011-11-20 02:29:42 +0000 +++ lisp/net/tramp-sh.el 2011-11-20 07:30:16 +0000 @@ -4905,7 +4905,7 @@ (defun tramp-get-inline-coding (vec prop size) "Return the coding command related to PROP. -PROP is either `remote-encoding', `remode-decoding', +PROP is either `remote-encoding', `remote-decoding', `local-encoding' or `local-decoding'. SIZE is the length of the file to be coded. Depending on SIZE, === modified file 'lisp/notifications.el' --- lisp/notifications.el 2011-10-24 08:02:02 +0000 +++ lisp/notifications.el 2011-11-20 07:30:16 +0000 @@ -163,7 +163,7 @@ only URI schema supported right now) or a name in a freedesktop.org-compliant icon theme. :sound-file The path to a sound file to play when the notification pops up. - :sound-name A themeable named sound from the freedesktop.org sound naming + :sound-name A themable named sound from the freedesktop.org sound naming specification to play when the notification pops up. Similar to icon-name,only for sounds. An example would be \"message-new-instant\". === modified file 'lisp/org/org-capture.el' --- lisp/org/org-capture.el 2011-11-20 02:29:42 +0000 +++ lisp/org/org-capture.el 2011-11-20 07:30:16 +0000 @@ -1449,7 +1449,7 @@ (goto-char (point-min)) (while (looking-at "[ \t]*\n") (replace-match "")) (if (re-search-forward "[ \t\n]*\\'" nil t) (replace-match "\n")) - ;; Return the expanded tempate and kill the temporary buffer + ;; Return the expanded template and kill the temporary buffer (untabify (point-min) (point-max)) (set-buffer-modified-p nil) (prog1 (buffer-string) (kill-buffer (current-buffer)))))) === modified file 'lisp/org/org-list.el' --- lisp/org/org-list.el 2011-11-17 17:40:48 +0000 +++ lisp/org/org-list.el 2011-11-20 07:30:16 +0000 @@ -3008,7 +3008,7 @@ Alternatively, each parameter can also be a form returning a string. These sexp can use keywords `counter' and `depth', -reprensenting respectively counter associated to the current +representing respectively counter associated to the current item, and depth of the current sub-list, starting at 0. Obviously, `counter' is only available for parameters applying to items." === modified file 'lisp/org/org-table.el' --- lisp/org/org-table.el 2011-11-20 03:48:53 +0000 +++ lisp/org/org-table.el 2011-11-20 07:30:16 +0000 @@ -2641,7 +2641,7 @@ (prog1 (org-trim (org-table-get-field c1)) (if highlight (org-table-highlight-rectangle (point) (point))))) ;; A range, return a vector - ;; First sort the numbers to get a regular ractangle + ;; First sort the numbers to get a regular rectangle (if (< r2 r1) (setq tmp r1 r1 r2 r2 tmp)) (if (< c2 c1) (setq tmp c1 c1 c2 c2 tmp)) (if corners-only === modified file 'lisp/progmodes/cc-engine.el' --- lisp/progmodes/cc-engine.el 2011-11-20 02:29:42 +0000 +++ lisp/progmodes/cc-engine.el 2011-11-20 07:30:16 +0000 @@ -893,7 +893,7 @@ ((eq sym 'while) ;; Is this a real while, or a do-while? ;; The next `when' triggers unless we are SURE that - ;; the `while' is not the tailend of a `do-while'. + ;; the `while' is not the tail end of a `do-while'. (when (or (not pptok) (memq (char-after pptok) delims) ;; The following kludge is to prevent @@ -9784,7 +9784,7 @@ (c-beginning-of-statement-1 containing-sexp) (c-add-stmt-syntax 'statement nil t containing-sexp paren-state)) - ;;CASE 5N: We are at a tompmost continuation line and the only + ;;CASE 5N: We are at a topmost continuation line and the only ;;preceding items are annotations. ((and (c-major-mode-is 'java-mode) (setq placeholder (point)) === modified file 'lisp/progmodes/cperl-mode.el' --- lisp/progmodes/cperl-mode.el 2011-11-19 09:18:31 +0000 +++ lisp/progmodes/cperl-mode.el 2011-11-20 07:30:16 +0000 @@ -1277,7 +1277,7 @@ "----" ["Ispell PODs" cperl-pod-spell ;; Better not to update syntaxification here: - ;; debugging syntaxificatio can be broken by this??? + ;; debugging syntaxification can be broken by this??? (or (get-text-property (point-min) 'in-pod) (< (progn === modified file 'lisp/ps-print.el' --- lisp/ps-print.el 2011-09-20 10:18:55 +0000 +++ lisp/ps-print.el 2011-11-20 07:30:16 +0000 @@ -5372,9 +5372,9 @@ KIND is a valid value of `ps-n-up-filling'. XCOL YCOL are the relative position for the next column. XLIN YLIN are the relative position for the beginning of next line. -REPEAT is the number of repetions for external loop. -END is the number of repetions for internal loop and also the number of pages in - a row. +REPEAT is the number of repetitions for external loop. +END is the number of repetitions for internal loop and also the number + of pages in a row. XSTART YSTART are the relative position for the first page in a sheet.") === modified file 'lisp/startup.el' --- lisp/startup.el 2011-11-14 06:27:12 +0000 +++ lisp/startup.el 2011-11-20 07:30:16 +0000 @@ -943,7 +943,7 @@ (normal-erase-is-backspace-setup-frame) ;; Register default TTY colors for the case the terminal hasn't a - ;; terminal init file. We do this regardles of whether the terminal + ;; terminal init file. We do this regardless of whether the terminal ;; supports colors or not and regardless the current display type, ;; since users can connect to color-capable terminals and also ;; switch color support on or off in mid-session by setting the === modified file 'lisp/textmodes/reftex-cite.el' --- lisp/textmodes/reftex-cite.el 2011-11-19 09:18:31 +0000 +++ lisp/textmodes/reftex-cite.el 2011-11-20 07:30:16 +0000 @@ -76,7 +76,7 @@ (get 'reftex-default-bibliography :reftex-expanded)) (defun reftex-bib-or-thebib () - ;; Tests if BibTeX or \begin{tehbibliography} should be used for the + ;; Tests if BibTeX or \begin{thebibliography} should be used for the ;; citation ;; Find the bof of the current file (let* ((docstruct (symbol-value reftex-docstruct-symbol)) === modified file 'lisp/thumbs.el' --- lisp/thumbs.el 2011-11-20 02:29:42 +0000 +++ lisp/thumbs.el 2011-11-20 07:30:16 +0000 @@ -235,7 +235,7 @@ (setq dirsize (- dirsize (car (cdar files-list)))) (setq files-list (cdr files-list))))) -;; Check the thumbsnail directory size and clean it if necessary. +;; Check the thumbnail directory size and clean it if necessary. (when thumbs-thumbsdir-auto-clean (thumbs-cleanup-thumbsdir)) === modified file 'lisp/vc/ediff-mult.el' --- lisp/vc/ediff-mult.el 2011-02-12 23:40:43 +0000 +++ lisp/vc/ediff-mult.el 2011-11-20 07:30:16 +0000 @@ -2164,7 +2164,7 @@ ;; If meta-buf doesn't exist, it is created. In that case, id doesn't have a ;; parent meta-buf ;; Check if META-BUF exists before calling this function -;; Optional MUST-REDRAW, if non-nil, would force redrawal of the whole meta +;; Optional MUST-REDRAW, if non-nil, would force redrawing of the whole meta ;; buffer. Otherwise, it will just go over the buffer and update activity marks ;; and session status. ;; SESSION-NUMBER, if specified, says which session caused the update. === modified file 'lisp/vc/vc-dispatcher.el' --- lisp/vc/vc-dispatcher.el 2011-10-10 17:52:03 +0000 +++ lisp/vc/vc-dispatcher.el 2011-11-20 07:30:16 +0000 @@ -103,7 +103,7 @@ ;; ;; When the client mode adds a local vc-mode-line-hook to a buffer, it ;; will be called with the buffer file name as argument whenever the -;; dispatcher resynchs the buffer. +;; dispatcher resyncs the buffer. ;; To do: ;; === modified file 'lisp/vc/vc.el' --- lisp/vc/vc.el 2011-10-20 21:01:45 +0000 +++ lisp/vc/vc.el 2011-11-20 07:30:16 +0000 @@ -2690,7 +2690,7 @@ (substring rev 0 index)))) (defun vc-default-responsible-p (backend file) - "Indicate whether BACKEND is reponsible for FILE. + "Indicate whether BACKEND is responsible for FILE. The default is to return nil always." nil) === modified file 'lwlib/xlwmenu.c' --- lwlib/xlwmenu.c 2011-11-18 08:31:02 +0000 +++ lwlib/xlwmenu.c 2011-11-20 07:30:16 +0000 @@ -113,7 +113,7 @@ : key()\n\ "; -/* FIXME: Space should toggle toggleable menu item but not remove the menu +/* FIXME: Space should toggle togglable menu item but not remove the menu so you can toggle the next one without entering the menu again. */ /* FIXME: Should ESC close one level of menu structure or the complete menu? */ === modified file 'src/ChangeLog.11' --- src/ChangeLog.11 2011-11-20 03:48:53 +0000 +++ src/ChangeLog.11 2011-11-20 07:30:16 +0000 @@ -7199,7 +7199,7 @@ 2010-06-27 Chong Yidong - * xfns.c (Fx_create_frame): Don't consult X resouces when setting + * xfns.c (Fx_create_frame): Don't consult X resources when setting menu-bar-lines and tool-bar-lines. Use menu-bar-mode and tool-bar-mode, which are now set using these X resources at startup, to determine the defaults (Bug#2249). @@ -29136,7 +29136,7 @@ * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER): * lread.c (defvar_per_buffer): - * abbrev.c (syms_of_abbrev) : Move to buffer.c. + * abbrev.c (syms_of_abbrev) : Move to buffer.c. * window.c (candidate_window_p): Only consider as visible frames that are on the same terminal. === modified file 'src/ccl.c' --- src/ccl.c 2011-11-20 02:29:42 +0000 +++ src/ccl.c 2011-11-20 07:30:16 +0000 @@ -826,7 +826,7 @@ : (charset = CHARSET_FROM_ID ((id)), DECODE_CHAR (charset, (code)))) /* Encode character C by some of charsets in CHARSET_LIST. Set ID to - the id of the used charset, ENCODED to the resulf of encoding. + the id of the used charset, ENCODED to the result of encoding. Assume that we can use the variable `charset'. */ #define CCL_ENCODE_CHAR(c, charset_list, id, encoded) \ === modified file 'src/fontset.c' --- src/fontset.c 2011-11-20 02:29:42 +0000 +++ src/fontset.c 2011-11-20 07:30:16 +0000 @@ -905,7 +905,7 @@ /* Return ID of face suitable for displaying character C on frame F. - FACE must be reazlied for ASCII characters in advance. Called from + FACE must be realized for ASCII characters in advance. Called from the macro FACE_FOR_CHAR. */ int === modified file 'src/gtkutil.c' --- src/gtkutil.c 2011-11-20 02:29:42 +0000 +++ src/gtkutil.c 2011-11-20 07:30:16 +0000 @@ -2363,7 +2363,7 @@ HIGHLIGHT_CB is the callback to call when entering/leaving menu items. POP_UP_P is non-zero if we shall create a popup menu. MENU_BAR_P is non-zero if we shall create a menu bar. - ADD_TEAROFF_P is non-zero if we shall add a teroff menu item. Ignored + ADD_TEAROFF_P is non-zero if we shall add a tearoff menu item. Ignored if MENU_BAR_P is non-zero. TOPMENU is the topmost GtkWidget that others shall be placed under. It may be NULL, in that case we create the appropriate widget === modified file 'src/sound.c' --- src/sound.c 2011-11-14 23:59:56 +0000 +++ src/sound.c 2011-11-20 07:30:16 +0000 @@ -267,7 +267,7 @@ read from the start of a sound file. */ char *header; - /* Number of bytes raed from sound file. This is always <= + /* Number of bytes read from sound file. This is always <= MAX_SOUND_HEADER_BYTES. */ int header_size; === modified file 'src/sysdep.c' --- src/sysdep.c 2011-10-25 04:27:47 +0000 +++ src/sysdep.c 2011-11-20 07:30:16 +0000 @@ -1663,7 +1663,7 @@ sys_siglist[SIGQUIT] = "Quit"; # endif # ifdef SIGRETRACT - sys_siglist[SIGRETRACT] = "Need to relinguish monitor mode"; + sys_siglist[SIGRETRACT] = "Need to relinquish monitor mode"; # endif # ifdef SIGSAK sys_siglist[SIGSAK] = "Secure attention"; === modified file 'src/xfns.c' --- src/xfns.c 2011-11-20 02:29:42 +0000 +++ src/xfns.c 2011-11-20 07:30:16 +0000 @@ -5914,7 +5914,7 @@ x_gtk_whole_detached_tool_bar = 0; DEFVAR_BOOL ("x-gtk-use-system-tooltips", x_gtk_use_system_tooltips, - doc: /* *If non-nil with a Gtk+ built Emacs, the Gtk+ toolip is used. + doc: /* *If non-nil with a Gtk+ built Emacs, the Gtk+ tooltip is used. Otherwise use Emacs own tooltip implementation. When using Gtk+ tooltips, the tooltip face is not used. */); x_gtk_use_system_tooltips = 1;