vile's editing model, derived from emacs
through MicroEMACS, is different.
The editor has defined, named functions, each of which performs a single
editing task, such as delete-next-character
or delete-previous-character.
Many of the functions are then bound to keystrokes, such as binding
delete-next-character to x.
bind-key incremental-search /
bind-key reverse-incremental-search ?
These commands change the / and ?
search commands to do incremental searching.
In addition to pre-defined functions, vile contains a simple
programming language that allows you to write procedures.
You may then bind the command for executing a procedure to a keystroke
sequence.
GNU emacs uses a variant of Lisp for its language,
which is extremely powerful. vile has a somewhat simpler,
less general-purpose language.
Also, as in emacs, the vile
command line is very interactive. Many commands display a default
value for their operand, which you can edit if not appropriate, or
select by hitting RETURN.
As you type vi mode editing commands, such as those that
change or delete characters, you will see feedback about the
operation in the status line.
The last prompt line is broken for readability. vile
prints it all on one line.