Epsilon User's Manual and Reference >
Commands by Topic >
Changing Text >
Inserting and Deleting
When you type most alphabetic or numeric
keys, they appear in the buffer before point. Typing one of these
keys runs the command normal-character, which simply inserts
the character that invoked it into the buffer.
When you type a character bound to the normal-character
command, Epsilon inserts the character before point, so that the
cursor moves forward as you type characters. Epsilon can also
overwrite as you type. The overwrite-mode command, bound to
the <Ins> key, toggles overwriting for the current buffer. If
you give it a nonzero numeric argument (for example, by typing Ctrl-U
before invoking the command, see Numeric Arguments), it
doesn't toggle overwriting, but turns it on. Similarly, a numeric
argument of zero always turns off overwriting. Overwriting will
occur for all characters except newline, and overwriting never occurs
at the end of a line. In these cases the usual insertion will
happen. The buffer-specific variable over-mode controls
The Ctrl-Q key inserts special characters, such as control characters,
into the current buffer. It waits for you to type a character, then
inserts it. This command ignores keys that don't represent
characters, such as <Home> or F3. If you "quote" an Alt key in
this way, Epsilon inserts the corresponding character with its high
bit on. You can use this command for inserting characters like Ctrl-Z
that would normally execute a command when typed.
Sometimes you may want to insert a character whose
numeric ASCII value you know, but you may not know which keystroke
that character corresponds to. Epsilon provides an insert-ascii
command on Alt-# for this purpose. It prompts you for a numeric
value, then inserts the character with that value into the buffer. By
default, the command interprets the value in base 10. You can specify
a hexadecimal value by prefixing the characters "0x" to the number,
or an octal value by prefixing the character "0o" to the number, or
a binary value by prefixing "0b". For example, the numbers "87",
"0x57", "0o127", and "0b1010111" all refer to the same number,
and they all would insert a "W" character if given to the
You can also use the name of a Unicode character inside angle
brackets, like "<square root>", with Alt-#. Press
see a list of characters with their Unicode names. You can use
completion on character names like this, and search in the list of
names as usual.
In most environments you can type graphics characters by holding down
the Alt key and typing the character's value on the numeric keypad,
but see the alt-numpad-keys variable. In some environments,
Epsilon will automatically quote the character so that it's inserted
in the buffer and not interpreted as a command. (You may need to type
a Ctrl-Q first to quote the character in other environments.)
The Ctrl-O command inserts a newline after point (or, to put it another
way, inserts a newline before point as usual, then backs up over it).
Use this command to break a line when you want to insert new text in
the middle, or to "open" up some space after point.
The <Backspace> key deletes the character before point, and the
<Del> key deletes the character after point. In other words,
<Backspace> deletes backwards, and <Del> deletes forwards.
These commands usually do not save deleted characters in the kill
ring (see the next section).
If you prefix these commands with a numeric argument of n, they
will delete n characters instead of one. In that case, you can
retrieve the deleted text from the kill ring with the Ctrl-Y key (see
the next section).
If <Backspace> or <Del> follows one of the kill commands, the
deleted character becomes part of the text removed by the kill
command. See the following section for information on the kill
commands, and the delete-options variable to change this
The buffer-specific variable delete-hacking-tabs makes
<Backspace> operate differently when deleting tabs or spaces. If
1, when <Backspace> deletes a tab, it first turns the tab into
the number of spaces necessary to keep the cursor in the same column,
then deletes one of the spaces. If
2, when <Backspace>
deletes a space, it deletes additional spaces and tabs until it
reaches the previous tab column. The first setting makes
<Backspace> treat tabs more like spaces; the second makes it
treats spaces more like tabs. Other bits in the variable limit
the circumstances where <Backspace> does this; see the variable's
documentation for details.
The key Alt-\ deletes spaces and tabs surrounding point.
The Ctrl-X Ctrl-O command deletes empty lines adjacent to point, or
lines that contain only spaces and tabs, turning two or more such
blank lines into a single blank line. Ctrl-X Ctrl-O deletes a lone
blank line. If you prefix a numeric argument of n, exactly n
blank lines appear regardless of the number of blank lines present
originally. With a highlighted region, the command does this at every
sequence of one or more blank lines throughout the region.
Copyright (C) 1984, 2020 by Lugaru Software Ltd. All rights reserved.