You have inserted text before the cursor with the sequence:
itext to be inserted[ESC]
You've also inserted text after the cursor with the a command.
There are other insert commands for inserting text at different
positions relative to the cursor:
A | Append text to end of current line. |
I | Insert text at beginning of line. |
o | Open blank line below cursor for text. |
O | Open blank line above cursor for text. |
s | Delete character at cursor and substitute text. |
S | Delete line and substitute text. |
R | Overstrike existing characters with new characters. |
A (append) and I (insert) save you from having to
move your cursor to the end or beginning of the line before
invoking insert mode.
(The A command saves one keystroke over $a.
Although one keystroke might not seem like much of a saving,
the more adept (and impatient) an editor you become, the more
keystrokes you will want to omit.)
o and O (open) save you from having to
insert a carriage return. You can type these commands from
anywhere within the line.
s and S (substitute) allow you to delete a character
or a whole line
and replace the deletion with any amount of new text.
s is the equivalent of the two-stroke command c
[SPACE]
and S is the same as cc. One of the best uses
for s is to change one character to several characters.
R ("large" replace) is useful when you
want to start changing text, but you don't know exactly how much. For
example, instead of guessing whether to say 3cw or
4cw, just type R and then enter your replacement text.
Except for o and O, the above insert commands
(plus i and a) take numeric prefixes.
With numeric prefixes, you might use the commands
i, I, a, and A to
insert a row of underlines or alternating characters.
For example, typing 50i*[ESC]
inserts 50 asterisks, and typing 25a*-
[ESC]
appends 50 characters (25 pairs of asterisk and hyphen).
It's better to repeat only a small string of characters.
vi has difficulty repeating the insertion of more than
one line's worth of text.
You can use a numeric prefix with S to substitute several lines.
It's quicker and more flexible, though, to use
c with a movement command.
A good case for
using the s command with a numeric prefix is when you
want to change a few characters in the middle of a word. Typing
r wouldn't be enough, but typing cw would change
too much text.
Using s with a numeric prefix is usually the same as
typing R.
There are other combinations of commands that work naturally
together.
For example, ea is useful for appending new text
to the end of a word.
It helps to train yourself to recognize such frequent
combinations so that they become automatic.