aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorGlenn Morris2019-04-10 09:07:16 -0700
committerGlenn Morris2019-04-10 09:07:16 -0700
commit7f88eecd7cd0054a83f5cad61ddde1830f3539a3 (patch)
treed7d0853b1619ac284ae14538dda1499864f0ebe9 /doc
parent0cef057b02b088ded8b46e3453ac0d891888423a (diff)
parenta5da653319a3018074debfc7b4fdd90ac7ea838c (diff)
downloademacs-7f88eecd7cd0054a83f5cad61ddde1830f3539a3.tar.gz
emacs-7f88eecd7cd0054a83f5cad61ddde1830f3539a3.zip
Merge from origin/emacs-26
a5da653 * src/editfns.c (Fnarrow_to_region): Doc fix. (Bug#35163) 646d33d Fix doc strings of 'vc-version-diff' and 'vc-version-ediff' a30a6c3 Improve documentation of set-window-start 92ce2dd Improve documentation of window parameters 6dc42c5 Improve commentary in frame.el a8cffcf Fix typo in a doc string 9e79f19 (emacs-26) ; * src/fontset.c (set-fontset-font): Use uppercas... # Conflicts: # lisp/vc/vc.el
Diffstat (limited to 'doc')
-rw-r--r--doc/lispref/windows.texi115
1 files changed, 66 insertions, 49 deletions
diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi
index 6b716323357..32e8c2afa31 100644
--- a/doc/lispref/windows.texi
+++ b/doc/lispref/windows.texi
@@ -1951,7 +1951,13 @@ The optional argument @var{all-frames} has the same meaning as in
1951@code{next-window}. 1951@code{next-window}.
1952 1952
1953This function does not select a window that has a non-@code{nil} 1953This function does not select a window that has a non-@code{nil}
1954@code{no-other-window} window parameter (@pxref{Window Parameters}). 1954@code{no-other-window} window parameter (@pxref{Window Parameters}),
1955provided that @code{ignore-window-parameters} is @code{nil}.
1956
1957If the @code{other-window} parameter of the selected window is a
1958function, and @code{ignore-window-parameters} is @code{nil}, that
1959function will be called with the arguments @var{count} and
1960@var{all-frames} instead of the normal operation of this function.
1955@end deffn 1961@end deffn
1956 1962
1957@defun walk-windows fun &optional minibuf all-frames 1963@defun walk-windows fun &optional minibuf all-frames
@@ -3936,8 +3942,33 @@ described next to deal with the window and its buffer.
3936This function handles @var{window} and its buffer after quitting. The 3942This function handles @var{window} and its buffer after quitting. The
3937optional argument @var{window} must be a live window and defaults to 3943optional argument @var{window} must be a live window and defaults to
3938the selected one. The function's behavior is determined by the four 3944the selected one. The function's behavior is determined by the four
3939elements of the @code{quit-restore} window parameter (@pxref{Window 3945elements of the list specified by the @code{quit-restore} window
3940Parameters}), which is set to @code{nil} afterwards. 3946parameter (@pxref{Window Parameters}), which is set to @code{nil}
3947afterwards.
3948
3949The first element of the @code{quit-restore} parameter is one of the
3950symbols @code{window}, meaning that the window has been specially
3951created by @code{display-buffer}; @code{frame}, a separate frame has
3952been created; @code{same}, the window has only ever displayed this
3953buffer; or @code{other}, the window showed another buffer before.
3954@code{frame} and @code{window} affect how the window is quit, while
3955@code{same} and @code{other} affect the redisplay of buffers
3956previously shown in this window.
3957
3958The second element is either one of the symbols @code{window} or
3959@code{frame}, or a list whose elements are the buffer shown in the
3960window before, that buffer's window start and window point positions,
3961and the window's height at that time. If that buffer is still live
3962when the window is quit, then the function @code{quit-restore-window}
3963reuses the window to display the buffer.
3964
3965The third element is the window selected at the time the parameter was
3966created. If @code{quit-restore-window} deletes the window passed to
3967it as argument, it then tries to reselect this window.
3968
3969The fourth element is the buffer whose display caused the creation of
3970this parameter. @code{quit-restore-window} deletes the specified window
3971only if it still shows that buffer.
3941 3972
3942The window is deleted entirely if: 1) the first element of the 3973The window is deleted entirely if: 1) the first element of the
3943@code{quit-restore} parameter is one of 'window or 'frame, 2) the 3974@code{quit-restore} parameter is one of 'window or 'frame, 2) the
@@ -4627,13 +4658,14 @@ This function sets the display-start position of @var{window} to
4627@var{position} in @var{window}'s buffer. It returns @var{position}. 4658@var{position} in @var{window}'s buffer. It returns @var{position}.
4628 4659
4629The display routines insist that the position of point be visible when a 4660The display routines insist that the position of point be visible when a
4630buffer is displayed. Normally, they change the display-start position 4661buffer is displayed. Normally, they select the display-start position
4631(that is, scroll the window) whenever necessary to make point visible. 4662according to their internal logic (and scroll the window if necessary)
4632However, if you specify the start position with this function using 4663to make point visible. However, if you specify the start position
4633@code{nil} for @var{noforce}, it means you want display to start at 4664with this function using @code{nil} for @var{noforce}, it means you
4634@var{position} even if that would put the location of point off the 4665want display to start at @var{position} even if that would put the
4635screen. If this does place point off screen, the display routines move 4666location of point off the screen. If this does place point off
4636point to the left margin on the middle line in the window. 4667screen, the display routines attempt to move point to the left margin
4668on the middle line in the window.
4637 4669
4638For example, if point @w{is 1} and you set the start of the window 4670For example, if point @w{is 1} and you set the start of the window
4639@w{to 37}, the start of the next line, point will be above the top 4671@w{to 37}, the start of the next line, point will be above the top
@@ -4680,6 +4712,13 @@ it is still 1 when redisplay occurs. Here is an example:
4680@end group 4712@end group
4681@end example 4713@end example
4682 4714
4715If the attempt to make point visible (i.e., in a fully-visible screen
4716line) fails, the display routines will disregard the requested
4717window-start position and compute a new one anyway. Thus, for
4718reliable results Lisp programs that call this function should always
4719move point to be inside the window whose display starts at
4720@var{position}.
4721
4683If @var{noforce} is non-@code{nil}, and @var{position} would place point 4722If @var{noforce} is non-@code{nil}, and @var{position} would place point
4684off screen at the next redisplay, then redisplay computes a new window-start 4723off screen at the next redisplay, then redisplay computes a new window-start
4685position that works well with point, and thus @var{position} is not used. 4724position that works well with point, and thus @var{position} is not used.
@@ -5796,8 +5835,8 @@ and heights, if possible. Frames are not resized by this function.
5796@section Window Parameters 5835@section Window Parameters
5797@cindex window parameters 5836@cindex window parameters
5798 5837
5799This section describes how window parameters can be used to associate 5838This section describes the window parameters that can be used to
5800additional information with windows. 5839associate additional information with windows.
5801 5840
5802@defun window-parameter window parameter 5841@defun window-parameter window parameter
5803This function returns @var{window}'s value for @var{parameter}. The 5842This function returns @var{window}'s value for @var{parameter}. The
@@ -5930,44 +5969,21 @@ parameter is installed and updated by the function
5930@vindex quit-restore@r{, a window parameter} 5969@vindex quit-restore@r{, a window parameter}
5931This parameter is installed by the buffer display functions 5970This parameter is installed by the buffer display functions
5932(@pxref{Choosing Window}) and consulted by @code{quit-restore-window} 5971(@pxref{Choosing Window}) and consulted by @code{quit-restore-window}
5933(@pxref{Quitting Windows}). It contains four elements: 5972(@pxref{Quitting Windows}). It is a list of four elements, see the
5934 5973description of @code{quit-restore-window} in @ref{Quitting Windows}
5935The first element is one of the symbols @code{window}, meaning that 5974for details.
5936the window has been specially created by @code{display-buffer};
5937@code{frame}, a separate frame has been created; @code{same}, the
5938window has only ever displayed this buffer; or @code{other}, the
5939window showed another buffer before. @code{frame} and @code{window}
5940affect how the window is quit, while @code{same} and @code{other}
5941affect the redisplay of buffers previously shown in this window.
5942 5975
5943The second element is either one of the symbols @code{window} or 5976@item window-side
5944@code{frame}, or a list whose elements are the buffer shown in the 5977@itemx window-slot
5945window before, that buffer's window start and window point positions,
5946and the window's height at that time. If that buffer is still live
5947when the window is quit, then the function @code{quit-restore-window}
5948reuses the window to display the buffer.
5949
5950The third element is the window selected at the time the parameter was
5951created. If @code{quit-restore-window} deletes the window passed to
5952it as argument, it then tries to reselect this window.
5953
5954The fourth element is the buffer whose display caused the creation of
5955this parameter. @code{quit-restore-window} deletes the specified window
5956only if it still shows that buffer.
5957
5958See the description of @code{quit-restore-window} in @ref{Quitting
5959Windows} for details.
5960
5961@item window-side window-slot
5962@vindex window-side@r{, a window parameter} 5978@vindex window-side@r{, a window parameter}
5963@vindex window-slot@r{, a window parameter} 5979@vindex window-slot@r{, a window parameter}
5964These parameters are used for implementing side windows (@pxref{Side 5980These parameters are used internally for implementing side windows
5965Windows}). 5981(@pxref{Side Windows}).
5966 5982
5967@item window-atom 5983@item window-atom
5968@vindex window-atom@r{, a window parameter} 5984@vindex window-atom@r{, a window parameter}
5969This parameter is used for implementing atomic windows, see @ref{Atomic 5985This parameter is used internally for implementing atomic windows, see
5970Windows}. 5986@ref{Atomic Windows}.
5971 5987
5972@item mode-line-format 5988@item mode-line-format
5973@vindex mode-line-format@r{, a window parameter} 5989@vindex mode-line-format@r{, a window parameter}
@@ -5989,11 +6005,12 @@ affected.
5989 6005
5990@item min-margins 6006@item min-margins
5991@vindex min-margins@r{, a window parameter} 6007@vindex min-margins@r{, a window parameter}
5992The value of this parameter is a cons cell whose @sc{car} and @sc{cdr}, 6008The value of this parameter is a cons cell whose @sc{car} and
5993if non-@code{nil}, specify the minimum values (in columns) for the left 6009@sc{cdr}, if non-@code{nil}, specify the minimum values (in columns)
5994and right margin of this window. When present, Emacs will use these 6010for the left and right margin of this window (@pxref{Display Margins}.
5995values instead of the actual margin widths for determining whether a 6011When present, Emacs will use these values instead of the actual margin
5996window can be split or shrunk horizontally. 6012widths for determining whether a window can be split or shrunk
6013horizontally.
5997 6014
5998Emacs never auto-adjusts the margins of any window after splitting or 6015Emacs never auto-adjusts the margins of any window after splitting or
5999resizing it. It is the sole responsibility of any application setting 6016resizing it. It is the sole responsibility of any application setting