GNU Info

Info Node: (viper)Insert State

(viper)Insert State


Next: Replace State Prev: Vi State Up: States in Viper
Enter node , (file) or (file)node

Insert State
------------

   To avoid confusing the beginner (at Viper level 1 and 2), Viper
makes only the standard Vi keys available in Insert state.  The
implication is that Emacs major modes cannot be used in Insert state.
It is strongly recommended that as soon as you are comfortable, make the
Emacs state bindings visible (by changing your user level to 3 or
higher).  Note: Customization, to see how to do this.

   Once this is done, it is possible to do quite a bit of editing in
Insert state.  For instance, Emacs has a "yank" command, `C-y', which
is similar to Vi's `p'.  However, unlike `p', `C-y' can be used in
Insert state of Viper.  Emacs also has a kill ring where it keeps
pieces of text you deleted while editing buffers.  The command `M-y' is
used to delete the text previously put back by Emacs' `C-y' or by Vi's
`p' command and reinsert text that was placed on the kill-ring earlier.

   This works both in Vi and Insert states.  In Vi state, `M-y' is a
much better alternative to the usual Vi's way of recovering the 10
previously deleted chunks of text.  In Insert state, you can use this
as follows.  Suppose you deleted a piece of text and now you need to
re-insert it while editing in Insert mode.  The key `C-y' will put back
the most recently deleted chunk.  If this is not what you want, type
`M-y' repeatedly and, hopefully, you will find the chunk you want.

   Finally, in Insert and Replace states, Viper provides the history of
pieces of text inserted in previous insert or replace commands.  These
strings of text can be recovered by repeatedly typing `C-c M-p' or `C-c
M-n' while in Insert or Replace state.  (This feature is disabled in
the minibuffer: the above keys are usually bound to other histories,
which are more appropriate in the minibuffer.)

   You can call Meta functions from Insert state.  As in Vi state, the
Meta key is `C-\'.  Thus `M-x' is typed as `C-\ x'.

   Other Emacs commands that are useful in Insert state are `C-e' and
`C-a', which move the cursor to the end and the beginning of the
current line, respectively.  You can also use `M-f' and `M-b', which
move the cursor forward (or backward) one word.  If your display has a
Meta key, these functions are invoked by holding the Meta key and then
typing `f' and `b', respectively.  On displays without the Meta key,
these functions are invoked by typing `C-\ f' and `C-\ b' (`C-\'
simulates the Meta key in Insert state, as explained above).

   The key `C-z' is sometimes also useful in Insert state: it allows you
to execute a single command in Vi state without leaving the Insert
state!  For instance, `C-z d2w' will delete the next two words without
leaving the Insert state.

   When Viper is in Insert state, you will see <I> in the mode line.


automatically generated by info2www version 1.2.2.9