Go to the first, previous, next, last section, table of contents.

# Introduction

We believe that one or more of the following statements are adequate descriptions:

    Viper Is a Package for Emacs Rebels;
    it is a VI Plan for Emacs Rescue
    and/or a venomous VI PERil.

Technically speaking, Viper is a Vi emulation package for Emacs 19 and XEmacs 19. Because of its reliance on minor mode keymaps, it will not work under Emacs 18. Viper contains virtually all of Vi and Ex functionality and much more. It gives you the best of both worlds: Vi keystrokes for editing combined with the GNU Emacs environment. Viper also fixes some common complaints with Vi commands. This manual describes Viper, concentrating on the differences from Vi and on the new features of Viper.

Viper, formerly known as VIP-19, was written by Michael Kifer. It is based on VIP version 3.5 by Masahiko Sato and VIP version 4.4 by Aamod Sane. Viper tries to be compatible with these packages.

Viper is intended to be usable without reading this manual -- the defaults are set to make Viper as close to Vi as possible. At startup, Viper will attempt to set the most appropriate default environment for you, based on your familiarity with Emacs. It will also tell you the basic GNU Emacs window management commands to help you start immediately.

Although this manual explains how to customize Viper, some basic familiarity with Emacs Lisp would be a plus.

It is recommended that you read the chapter Overview. The other chapters will be useful for customization and advanced usage.

You should also learn to use the Info on-line hypertext manual system that comes with Emacs. This manual can be read as an Info file. Try the command `ESC x info` with vanilla Emacs sometime.

Comments and bug reports are welcome. `kifer@cs.sunysb.edu` is the current address for Viper bug reports. Please use the Ex command `:submitReport` for this purpose.

Go to the first, previous, next, last section, table of contents.