42.1 Basic Editing in Picture Mode
Most keys do the same thing in Picture mode that they usually do, but
do it in a quarter-plane style. For example, C-f
is rebound to
run picture-forward-column
, a command which moves point one
column to the right, inserting a space if necessary so that the actual
end of the line makes no difference. C-b
is rebound to run
picture-backward-column
, which always moves point left one
column, converting a tab to multiple spaces if necessary. C-n
and
C-p
are rebound to run picture-move-down
and
picture-move-up
, which can either insert spaces or convert tabs
as necessary to make sure that point stays in exactly the same column.
C-e
runs picture-end-of-line
, which moves to after the last
nonblank character on the line. C-a
runs
picture-beginning-of-line
. (The choice of screen model does not
affect beginnings of lines; the only extra thing this command does is
update the current picture column to 0.)
Insertion of text is adapted to the quarter-plane screen model
through the use of Overwrite mode
(see Minor Modes.)
Self-inserting characters replace existing text, column by column,
rather than pushing existing text to the right. RET
runs
picture-newline
, which just moves to the beginning of the
following line so that new text will replace that line.
In Picture mode, the commands that normally delete or kill text,
instead erase text (replacing it with spaces). DEL
( picture-backward-clear-column
) replaces the preceding
character with a space rather than removing it; this moves point
backwards. C-d
( picture-clear-column
) replaces the next
character or characters with spaces, but does not move point. (If you
want to clear characters to spaces and move forward over them, use
SPC
.) C-k
( picture-clear-line
) really kills the
contents of lines, but does not delete the newlines from the buffer.
To do actual insertion, you must use special commands. C-o
( picture-open-line
) creates a blank line after the current
line; it never splits a line. C-M-o
( split-line
) makes
sense in Picture mode, so it is not changed. C-j
( picture-duplicate-line
) inserts another line with the same
contents below the current line.
To do actual deletion in Picture mode, use C-w
, C-c C-d
(which is defined as delete-char
, as C-d
is in other
modes), or one of the picture rectangle commands (see Picture Mode Rectangle Commands).