diff options
Diffstat (limited to 'doc/lispref')
-rw-r--r-- | doc/lispref/frames.texi | 50 | ||||
-rw-r--r-- | doc/lispref/text.texi | 37 |
2 files changed, 79 insertions, 8 deletions
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi index 7f2a6f75422..a15511dc9f5 100644 --- a/doc/lispref/frames.texi +++ b/doc/lispref/frames.texi @@ -694,9 +694,17 @@ parameter (@pxref{Management Parameters}). @item Internal Border The internal border is a border drawn by Emacs around the inner frame -(see below). Its width is specified by the @code{internal-border-width} -frame parameter (@pxref{Layout Parameters}). Its color is specified by -the background of the @code{internal-border} face. +(see below). The specification of its appearance depends on whether +or not the given frame is a child frame (@pxref{Child Frames}). + +For normal frames its width is specified by the @code{internal-border-width} +frame parameter (@pxref{Layout Parameters}), and its color is specified by the +background of the @code{internal-border} face. + +For child frames its width is specified by the @code{child-frame-border-width} +frame parameter (but will use the @code{internal-border-width} parameter as +fallback), and its color is specified by the background of the +@code{child-frame-border} face. @item Inner Frame @cindex inner frame @@ -1790,6 +1798,11 @@ The width in pixels of the frame's outer border (@pxref{Frame Geometry}). The width in pixels of the frame's internal border (@pxref{Frame Geometry}). +@vindex child-frame-border-width@r{, a frame parameter} +@item child-frame-border-width +The width in pixels of the frame's internal border (@pxref{Frame +Geometry}) if the given frame is a child frame (@pxref{Child Frames}). + @vindex vertical-scroll-bars@r{, a frame parameter} @item vertical-scroll-bars Whether the frame has scroll bars (@pxref{Scroll Bars}) for vertical @@ -2398,7 +2411,7 @@ attribute of the @code{default} face. @vindex foreground-color@r{, a frame parameter} @item foreground-color -The color to use for the image of a character. It is equivalent to +The color to use for characters. It is equivalent to the @code{:foreground} attribute of the @code{default} face. @vindex background-color@r{, a frame parameter} @@ -3748,10 +3761,31 @@ for instance using the window manager, then this produces a quit and You can specify the mouse pointer style for particular text or images using the @code{pointer} text property, and for images with the @code{:pointer} and @code{:map} image properties. The values you can -use in these properties are @code{text} (or @code{nil}), @code{arrow}, -@code{hand}, @code{vdrag}, @code{hdrag}, @code{modeline}, and -@code{hourglass}. @code{text} stands for the usual mouse pointer -style used over text. +use in these properties are in the table below. The actual shapes +may vary between systems; the descriptions are examples. + +@table @code +@item text +@itemx nil +The usual mouse pointer style used over text (an ``I''-like shape). + +@item arrow +@itemx vdrag +@itemx modeline +An arrow that points north-west. + +@item hand +A hand that points upwards. + +@item hdrag +A right-left arrow. + +@item nhdrag +An up-down arrow. + +@item hourglass +A rotating ring. +@end table Over void parts of the window (parts that do not correspond to any of the buffer contents), the mouse pointer usually uses the diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi index 0b567d82c61..b3673465240 100644 --- a/doc/lispref/text.texi +++ b/doc/lispref/text.texi @@ -334,6 +334,25 @@ but there is no peace. (thing-at-point 'whitespace) @result{} nil @end example + +@defvar thing-at-point-provider-alist +This variable allows users and modes to tweak how +@code{thing-at-point} works. It's an association list of @var{thing}s +and functions (called with zero parameters) to return that thing. +Entries for @var{thing} will be evaluated in turn until a +non-@code{nil} result is returned. + +For instance, a major mode could say: + +@lisp +(setq-local thing-at-point-provider-alist + (append thing-at-point-provider-alist + '((url . my-mode--url-at-point)))) +@end lisp + +If no providers have a non-@code{nil} return, the @var{thing} will be +computed the standard way. +@end defvar @end defun @node Comparing Text @@ -1422,6 +1441,11 @@ the @code{amalgamating-undo-limit} variable. If this variable is 1, no changes are amalgamated. @end defun +A Lisp program can amalgamate a series of changes into a single change +group by calling @code{undo-amalgamate-change-group} (@pxref{Atomic +Changes}). Note that @code{amalgamating-undo-limit} has no effect on +the groups produced by that function. + @defvar undo-auto-current-boundary-timer Some buffers, such as process buffers, can change even when no commands are executing. In these cases, @code{undo-boundary} is @@ -5610,6 +5634,19 @@ This function cancels and undoes all the changes in the change group specified by @var{handle}. @end defun + You can cause some or all of the changes in a change group to be +considered as a single unit for the purposes of the @code{undo} +commands (@pxref{Undo}) by using @code{undo-amalgamate-change-group}. + +@defun undo-amalgamate-change-group +Amalgamate all the changes made in the change-group since the state +identified by @var{handle}. This function removes all undo boundaries +between undo records of changes since the state described by +@var{handle}. Usually, @var{handle} is the handle returned by +@code{prepare-change-group}, in which case all the changes since the +beginning of the change-group are amalgamated into a single undo unit. +@end defun + Your code should use @code{unwind-protect} to make sure the group is always finished. The call to @code{activate-change-group} should be inside the @code{unwind-protect}, in case the user types @kbd{C-g} |