@c This is part of the Emacs manual.
-@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2014 Free Software
+@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software
@c Foundation, Inc.
@c See file emacs.texi for copying conditions.
(@code{delete-backward-char}), @key{delete}
(@code{delete-forward-char}), and @kbd{C-d} (@code{delete-char}).
@xref{Erasing}. With a numeric argument, they delete the specified
-number of characters. If the numeric argument is omitted or one, they
-delete all the text in the region if it is active (@pxref{Using
-Region}).
+number of characters. If the numeric argument is omitted or one,
+@key{DEL} and @key{delete} delete all the text in the region if it is
+active (@pxref{Using Region}).
@kindex M-\
@findex delete-horizontal-space
with the previous kill. @kbd{M-y} is allowed only after a @kbd{C-y}
or another @kbd{M-y}.
- You can understand @kbd{M-y} in terms of a ``last yank'' pointer which
-points at an entry in the kill ring. Each time you kill, the ``last
-yank'' pointer moves to the newly made entry at the front of the ring.
-@kbd{C-y} yanks the entry which the ``last yank'' pointer points to.
-@kbd{M-y} moves the ``last yank'' pointer to a different entry, and the
+ You can understand @kbd{M-y} in terms of a last-yank pointer which
+points at an entry in the kill ring. Each time you kill, the last-yank
+pointer moves to the newly made entry at the front of the ring.
+@kbd{C-y} yanks the entry which the last-yank pointer points to.
+@kbd{M-y} moves the last-yank pointer to a different entry, and the
text in the buffer changes to match. Enough @kbd{M-y} commands can move
the pointer to any entry in the ring, so you can get any entry into the
buffer. Eventually the pointer reaches the end of the ring; the next
@kbd{M-y} loops back around to the first entry again.
- @kbd{M-y} moves the ``last yank'' pointer around the ring, but it does
+ @kbd{M-y} moves the last-yank pointer around the ring, but it does
not change the order of the entries in the ring, which always runs from
the most recent kill at the front to the oldest one still remembered.
@kbd{M-y} can take a numeric argument, which tells it how many entries
-to advance the ``last yank'' pointer by. A negative argument moves the
+to advance the last-yank pointer by. A negative argument moves the
pointer toward the front of the ring; from the front of the ring, it
-moves ``around'' to the last entry and continues forward from there.
+moves around to the last entry and continues forward from there.
Once the text you are looking for is brought into the buffer, you can
stop doing @kbd{M-y} commands and it will stay there. It's just a copy
of the kill ring entry, so editing it in the buffer does not change
-what's in the ring. As long as no new killing is done, the ``last
-yank'' pointer remains at the same place in the kill ring, so repeating
+what's in the ring. As long as no new killing is done, the last-yank
+pointer remains at the same place in the kill ring, so repeating
@kbd{C-y} will yank another copy of the same previous kill.
When you call @kbd{C-y} with a numeric argument, that also sets the
-``last yank'' pointer to the entry that it yanks.
+last-yank pointer to the entry that it yanks.
@node Appending Kills
@subsection Appending Kills
@code{yank-pop-change-selection} to @code{t}, then @kbd{M-y} saves the
new yank to the clipboard.
-@vindex x-select-enable-clipboard
+@vindex select-enable-clipboard
To prevent kill and yank commands from accessing the clipboard,
-change the variable @code{x-select-enable-clipboard} to @code{nil}.
+change the variable @code{select-enable-clipboard} to @code{nil}.
@cindex clipboard manager
@vindex x-select-enable-clipboard-manager
data to the clipboard manager, change the variable
@code{x-select-enable-clipboard-manager} to @code{nil}.
-@vindex x-select-enable-primary
+@vindex select-enable-primary
@findex clipboard-kill-region
@findex clipboard-kill-ring-save
@findex clipboard-yank
Prior to Emacs 24, the kill and yank commands used the primary
selection (@pxref{Primary Selection}), not the clipboard. If you
-prefer this behavior, change @code{x-select-enable-clipboard} to
-@code{nil}, @code{x-select-enable-primary} to @code{t}, and
+prefer this behavior, change @code{select-enable-clipboard} to
+@code{nil}, @code{select-enable-primary} to @code{t}, and
@code{mouse-drag-copy-region} to @code{t}. In this case, you can use
the following commands to act explicitly on the clipboard:
@code{clipboard-kill-region} kills the region and saves it to the
(usually by dragging the mouse). Typically, this text can be inserted
into other X applications by @kbd{mouse-2} clicks. The primary
selection is separate from the clipboard. Its contents are more
-``fragile''; they are overwritten each time you select text with the
-mouse, whereas the clipboard is only overwritten by explicit ``cut''
-or ``copy'' commands.
+fragile; they are overwritten each time you select text with the
+mouse, whereas the clipboard is only overwritten by explicit cut
+or copy commands.
Under X, whenever the region is active (@pxref{Mark}), the text in
the region is saved in the primary selection. This applies regardless
@table @kbd
@findex mouse-set-secondary
@kindex M-Drag-Mouse-1
+@cindex secondary-selection face
@item M-Drag-Mouse-1
Set the secondary selection, with one end at the place where you press
down the button, and the other end at the place where you release it
@table @kbd
@item C-x r k
Kill the text of the region-rectangle, saving its contents as the
-``last killed rectangle'' (@code{kill-rectangle}).
+last killed rectangle (@code{kill-rectangle}).
@item C-x r M-w
-Save the text of the region-rectangle as the ``last killed rectangle''
+Save the text of the region-rectangle as the last killed rectangle
(@code{copy-rectangle-as-kill}).
@item C-x r d
Delete the text of the region-rectangle (@code{delete-rectangle}).
the rectangle; if there is any following text on the line, it moves
backwards to fill the gap.
- ``Killing'' a rectangle is not killing in the usual sense; the
+ Killing a rectangle is not killing in the usual sense; the
rectangle is not stored in the kill ring, but in a special place that
only records the most recent rectangle killed. This is because
yanking a rectangle is so different from yanking linear text that
@kindex C-x r M-w
@findex copy-rectangle-as-kill
@kbd{C-x r M-w} (@code{copy-rectangle-as-kill}) is the equivalent of
-@kbd{M-w} for rectangles: it records the rectangle as the ``last
-killed rectangle'', without deleting the text from the buffer.
+@kbd{M-w} for rectangles: it records the rectangle as the last
+killed rectangle, without deleting the text from the buffer.
@kindex C-x r y
@findex yank-rectangle
The command @kbd{C-x @key{SPC}} (@code{rectangle-mark-mode}) toggles
whether the region-rectangle or the standard region is highlighted
(first activating the region if necessary). When this mode is enabled,
-commands that resize the region (@kbd{C-f}, @kbd{C-n} etc.) do
+commands that resize the region (@kbd{C-f}, @kbd{C-n} etc.)@: do
so in a rectangular fashion, and killing and yanking operate on the
rectangle. @xref{Killing}. The mode persists only as long as the
region is active.
+Unlike the standard region, the region-rectangle can have its corners
+extended past the end of buffer, or inside stretches of white space
+that point normally cannot enter, like the TAB.
+
+@findex rectangle-exchange-point-and-mark
+@findex exchange-point-and-mark@r{, in rectangle-mark-mode}
+@kindex C-x C-x@r{, in rectangle-mark-mode}
+When the region is in rectangle-mark-mode, @kbd{C-x C-x} runs the
+command @code{rectangle-exchange-point-and-mark}, which cycles between
+the four corners of the region-rectangle. This comes in handy if you
+want to modify the dimensions of the region-rectangle before invoking
+an operation on the marked text.
+
@node CUA Bindings
@section CUA Bindings
@findex cua-mode