mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2026-09-10 07:46:51 -04:00
; Improve documentation of deletion of composed characters
* doc/emacs/basic.texi (Erasing): Document 'composition-break-at-point' (bug#81790).
This commit is contained in:
parent
2890334e70
commit
cf1d8f9bc9
|
|
@ -424,13 +424,37 @@ Kill back to the beginning of the previous word
|
||||||
(@code{backward-kill-word}).
|
(@code{backward-kill-word}).
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
The @kbd{@key{DEL}} (@code{delete-backward-char}) command removes
|
@cindex grapheme cluster
|
||||||
the character before point, moving the cursor and the characters after
|
@cindex delete part of composed sequence of characters
|
||||||
it backwards. If point was at the beginning of a line, this deletes
|
The @kbd{@key{DEL}} (@code{delete-backward-char}) command removes the
|
||||||
the preceding newline, joining this line to the previous one.
|
character before point, moving the cursor and the characters after it
|
||||||
|
backwards. If point was at the beginning of a line, this deletes the
|
||||||
|
preceding newline, joining this line to the previous one. If the
|
||||||
|
character before point is composed with one or more of the preceding
|
||||||
|
characters, and is displayed together with them as a single display
|
||||||
|
unit, a so-called @dfn{grapheme cluster} representing the entire
|
||||||
|
sequence, @kbd{@key{DEL}} deletes only a single character from the
|
||||||
|
composed sequence, which in some cases can significantly change the
|
||||||
|
appearance of the text on display. (The command
|
||||||
|
@code{backward-delete-char-untabify}, usually bound to @key{DEL} in
|
||||||
|
programming modes, does the same, @pxref{Program Modes}.) This is in
|
||||||
|
contrast with commands like @code{delete-char-forward}, which delete the
|
||||||
|
entire composed sequence of characters after point, see below.
|
||||||
|
|
||||||
If, however, the region is active, @kbd{@key{DEL}} instead deletes
|
@vindex composition-break-at-point
|
||||||
the text in the region. @xref{Mark}, for a description of the region.
|
For long enough sequences of composed characters, using
|
||||||
|
@kbd{@key{DEL}} to delete them one by one might be inconvenient. In
|
||||||
|
those cases, you can customize the option
|
||||||
|
@code{composition-break-at-point} to a non-@code{nil} value, to have
|
||||||
|
Emacs show characters around point separately, instead of showing the
|
||||||
|
result of their composition. This allows editing the composed sequence
|
||||||
|
of characters more conveniently, because you can move point inside the
|
||||||
|
composed sequence and delete characters there without having to delete
|
||||||
|
(and later re-insert) the following ones.
|
||||||
|
|
||||||
|
If the region is active, @kbd{@key{DEL}} deletes the text in the
|
||||||
|
region instead of deleting a single character. @xref{Mark}, for a
|
||||||
|
description of the region.
|
||||||
|
|
||||||
On most keyboards, @key{DEL} is labeled @key{BACKSPACE}, but we
|
On most keyboards, @key{DEL} is labeled @key{BACKSPACE}, but we
|
||||||
refer to it as @key{DEL} in this manual. (Do not confuse @key{DEL}
|
refer to it as @key{DEL} in this manual. (Do not confuse @key{DEL}
|
||||||
|
|
@ -438,18 +462,20 @@ with the @key{Delete} key; we will discuss @key{Delete} momentarily.)
|
||||||
On some text terminals, Emacs may not recognize the @key{DEL} key
|
On some text terminals, Emacs may not recognize the @key{DEL} key
|
||||||
properly. @xref{DEL Does Not Delete}, if you encounter this problem.
|
properly. @xref{DEL Does Not Delete}, if you encounter this problem.
|
||||||
|
|
||||||
@cindex grapheme cluster, deletion
|
@cindex composed sequence of characters, deletion
|
||||||
@cindex delete entire grapheme cluster
|
@cindex delete entire grapheme cluster
|
||||||
The @key{Delete} (@code{delete-forward-char}) command deletes in the
|
The @key{Delete} (@code{delete-forward-char}) command deletes in the
|
||||||
opposite direction: it deletes the character after point, i.e., the
|
opposite direction: it deletes the character after point, i.e., the
|
||||||
character under the cursor. If point was at the end of a line, this
|
character under the cursor. If point was at the end of a line, this
|
||||||
joins the following line onto this one. Like @kbd{@key{DEL}}, it
|
joins the following line onto this one. Like @kbd{@key{DEL}}, it
|
||||||
deletes the text in the region if the region is active (@pxref{Mark}).
|
deletes the text in the region if the region is active (@pxref{Mark}).
|
||||||
If the character after point is composed with following characters and
|
If the character after point is composed with following characters,
|
||||||
displayed as a single display unit, a so-called @dfn{grapheme cluster}
|
@key{Delete} deletes the entire composed sequence in one go. This is in
|
||||||
representing the entire sequence, @key{Delete} deletes the entire
|
contrast to @key{DEL} which always deletes a single character, even if
|
||||||
sequence in one go. This is in contrast to @key{DEL} which always
|
the character is composed. If @code{composition-break-at-point} is
|
||||||
deletes a single character, even if the character is composed.
|
non-@code{nil}, @key{Delete} deletes all of the composed characters from
|
||||||
|
point to the end of the composed sequence, which could be only a part of
|
||||||
|
the sequence if you moved point into the sequence.
|
||||||
|
|
||||||
@kbd{C-d} (@code{delete-char}) deletes the character after point,
|
@kbd{C-d} (@code{delete-char}) deletes the character after point,
|
||||||
similar to @key{Delete}, but regardless of whether the region is
|
similar to @key{Delete}, but regardless of whether the region is
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue